Problem with my bot menu

Shout-Out

User Tag List

Results 1 to 3 of 3
  1. #1
    mortel51's Avatar Private
    Reputation
    1
    Join Date
    Feb 2010
    Posts
    4
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Problem with my bot

    Hello to all

    Here, I am new to this site and a few weeks since I started the AutoIt to design a bot Me, I'm a beginner in this field and I would like to learn more.

    All my first script gives me trouble for some time, I can not read the data type exact name beyond caste or mount it or even spell the player's life or the reason for my request I joind an example of my first script that comes from this website a tutorial that i followed with a lil to be honest I do not go out.


    Code AutoIt :

    Code:

    Code:
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Res_requestedExecutionLevel=asInvoker
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    ;--------------------------------------------------------------------------------
    ;Getting My Player GUID
    ;--------------------------------------------------------------------------------
    #include <NomadMemory.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    
    $playerName = 0xE28460
    $MountsCount = 0xD26730
    $MountsList = $MountsCount + 0x4
    $IsCasting = 0xC38
    
    ;--------------------------------------------------------------------------------
    ;public enum UnitFields
    ;--------------------------------------------------------------------------------
    $UNIT_FIELD_HEALTH = 0x8 + 0x14
    
    Global Const $ClientConnection = 0xE28420						;The first 2 are you create you manager from the baseaddress wow
    Global Const $CurrMgrOffset = 0x462C
    Global Const $FirstObjectOffset = 0xCC 							;The next one is to get the address of your first object ONLY
    Global Const $NextObjectOffset = 0x3C 							;To cycle through the object you need this offset
    Global Const $DescriptorOffset = 0x8
    Global Const $localPlayerGUIDOffset = 0xD0
    Global Const $GameObjGUIDOffset = 0x30							;This next one is to find the objects type : 1 to 7
    Global Const $GameObjTypeOffset = 0x14
    
    ;Open WoW Process to enable Memory Reading and Get the WoW Base Address
    $ProcessID = ProcessExists("wow.exe")
    $WowProcess = _MemoryOpen($ProcessID)
    
    ;Getting WoWBase Address
    $WowBase = GetWoWBaseAddress($ProcessID)
    
    ;1) Getting CurrentManager_Pre
    $currMgr_pre = _MemoryRead("0x" & Hex($WowBase + $ClientConnection), $WowProcess , "dword")
    ;2) Getting CurrentManager
    $currMgr = _MemoryRead("0x" & Hex($currMgr_pre + $CurrMgrOffset), $WowProcess , "dword")
    
    ;Getting My Player GUID (Player Global Unique ID)
    $pGUID = _MemoryRead("0x" & Hex($currMgr + $localPlayerGUIDOffset), $WowProcess , "UINT64") ;Player Guid
    $pGUID2 = _MemoryRead("0x" & Hex($currMgr + $localPlayerGUIDOffset), $WowProcess , "dword") ;Player Guid 2
    
    ;Gettin My Player Address
    $ObjectMemLoc = GetMemLocByGUID($pGUID)
    
    $msgbox_text  = "";
    $msgbox_text &= "$ProcessID: " & $ProcessID & ;
    $msgbox_text &= "$WowBase: " & $WowBase & ;
    $msgbox_text &= "$currMgr_pre: " & $currMgr_pre & ;
    $msgbox_text &= "$currMgr: " & $currMgr & ;
    $msgbox_text &= "$pGUID: " & $pGUID & ;
    $msgbox_text &= "$pGUID2: " & $pGUID2 & ;
    $msgbox_text &= "Player Name: " & GetPlayerName() & ;
    $msgbox_text &= "Player health: " & GetPlayerHealth() & ;
    $msgbox_text &= "spellName: " & $IsCasting & ;
    $msgbox_text &= "Mount: " & $MountsList & ;
    
    MsgBox(1,"Test",$msgbox_text)
    
    Func GetPlayerName()
    	return _memoryread($WowBase + $playerName, $WowProcess, "char[20]")
     EndFunc
    
    Func GetPlayerHealth()
    	$pDescriptor = _MemoryRead("0x" & Hex($ObjectMemLoc + $DescriptorOffset), $WowProcess , "dword");<---essentially says that you want to use a descriptor (aka health)
    	$pHealth = _MemoryRead("0x" & Hex($pDescriptor + $UNIT_FIELD_HEALTH), $WowProcess ,"dword");<---looks up your health
    	return $pHealth
    EndFunc
    
    
    Func GetMemLocByGUID($guid)
    	;Read the first wow object by adding our current manager address and our first object offset together
    	$NextObject = _MemoryRead("0x" & Hex($currMgr + $FirstObjectOffset), $WowProcess , "dword")
    
    	;next get the object type buy adding our first object and our Objtype offset together  and reading that
    	$ObjType = _MemoryRead("0x" & Hex($NextObject + $GameObjTypeOffset), $WowProcess , "dword")
    
    	;If the return of object type is less than or equal to 7 (which it should always be) and more than 0 in the case that we do have an object in the list than do a while loop.
    
    	while (($ObjType <= 7) And ($ObjType > 0))
    
    		;NOTE: if there is an object in the list, objType will have to be = 1 to 7
    		; If our object plus the GUIDoffset = the GUID we are looking for (example our localplayer GUID) …
                IF (_MemoryRead("0x" & Hex($NextObject + $GameObjGUIDOffset), $WowProcess , "UINT64") = $guid) Then ; …then return our object
    			Return $NextObject ;found what we wanted.
    		EndIf
    
    
    		;if no return happens (stays in the function) then cycle through the objects using our next object offset on our next object (might also be called current object)
    		$NextObject = _MemoryRead("0x" & Hex($NextObject + $NextObjectOffset), $WowProcess , "dword")
    
     		;We will also need to see the type
    		$ObjType = _MemoryRead("0x" & Hex($NextObject + $GameObjTypeOffset), $WowProcess , "dword")
    
    	Wend
    
    	;if we find nothing Return 0 (address are probably wrong or you messed up code)
    	Return 0;
    EndFunc
    
    Func GetWoWBaseAddress($ProcessID)
            $HSNAP = DllCall("Kernel32.dll", "HANDLE", "CreateToolhelp32Snapshot", "DWORD", 8, "DWORD", $ProcessID)
            $STMODULE = DllStructCreate("DWORD dwSize;DWORD th32ModuleID;DWORD th32ProcessID;" & "DWORD GlblcntUsage;DWORD ProccntUsage;ptr modBaseAddr;" & "DWORD modBaseSize;HANDLE hModule;WCHAR szModule[256];" & "WCHAR szExePath[260]")
            DllStructSetData($STMODULE, "dwSize", DllStructGetSize($STMODULE))
            $RET = DllCall("Kernel32.dll", "BOOLEAN", "Module32FirstW", "HANDLE", $HSNAP[0], "ptr", DllStructGetPtr($STMODULE))
    
            IF ($RET[0] = False) Then
                    DllCall("Kernel32.dll", "BOOLEAN", "CloseHandle", "HANDLE", $HSNAP[0])
                    Return 0
            Else
                    $RET[0] = True
                    Do
                            If DllStructGetData($STMODULE, "szModule") = "Wow.exe" Then
    
                                    DllCall("Kernel32.dll", "BOOLEAN", "CloseHandle", "HANDLE", $HSNAP[0])
    
                                    Return DllStructGetData($STMODULE, "modBaseAddr")
                            EndIf
                            $RET = DllCall("Kernel32.dll", "BOOLEAN", "Module32NextW", "HANDLE", $HSNAP[0], "ptr", DllStructGetPtr($STMODULE))
                    Until $RET[0] = False
            EndIf
    EndFunc

    Résult:

    Problem with my bot-sans-titre-png


    The problem can also be offset, but I just learned I have taken the last
    as you can see the same guid me indicates 0, pending assistance or advice from you I remain at your disposal for any information.
    Last edited by mortel51; 11-30-2012 at 02:13 PM.

    Problem with my bot
  2. #2
    mortel51's Avatar Private
    Reputation
    1
    Join Date
    Feb 2010
    Posts
    4
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    person really put me on the track?
    because I can not find.
    thank you

  3. #3
    mortel51's Avatar Private
    Reputation
    1
    Join Date
    Feb 2010
    Posts
    4
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    hello people
    In fact I myself spend spellname and mount, as I prefer to go step by step, but I'm tjr block even the character's nickname is displayed but accented letters are replaced by special caracters really person m 'report? and no life after several research I'm still at the same point.

    Thank you very much

Similar Threads

  1. [Bot] Problem with Catchem BOT!
    By Raiforn in forum Pokemon GO Hacks|Cheats
    Replies: 12
    Last Post: 08-28-2016, 05:07 PM
  2. Problem with haxton bot
    By 7284262 in forum Pokemon GO Chat
    Replies: 2
    Last Post: 08-09-2016, 04:41 AM
  3. [Question] i have a problem with haxton bot
    By idant50 in forum Pokemon GO Chat
    Replies: 1
    Last Post: 07-31-2016, 03:06 AM
  4. Problems with farming bot help please
    By iSyn in forum Diablo 3 Bots Questions & Requests
    Replies: 1
    Last Post: 07-01-2012, 09:57 AM
  5. Having problems with autojoin BG bot
    By Exziled in forum WoW Bots Questions & Requests
    Replies: 0
    Last Post: 04-25-2010, 12:09 AM
All times are GMT -5. The time now is 10:45 AM. Powered by vBulletin® Version 4.2.3
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Google Authenticator verification provided by Two-Factor Authentication (Free) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search