AwAke Posted January 3, 2009 Posted January 3, 2009 (edited) Ok im a little stuck, done lots of searching and havent found what I needed so I hope you guys can help me out. So I was intrigued by memory 'hacking' and decided I wanted to play about with it. So I downloaded myself Cheat Engine and got myself Nomad Memory. After reading the tutorials and finding out how to find the address you wanted I found my hp bar address value which is : 1F35CFB8. After reading forums I see many have '0x' infront of it and yet I dont know why this is however I just tried with what I had and this is what I have scripted atm: #Include <NomadMemory.au3> SetPrivilege("SeDebugPrivilege", 1) $address = '1F35CFB8' $Handle = _memoryopen(WinGetProcess("World of Warcraft")) $addressread = _MemoryRead($address, $Handle, 'dword') MsgBox(0, "", $addressread) _MemoryClose($Handle) Im unsure if 'dword' is the correct type however I did search for the memory address using the value type : text in cheatengine. Ive also tried 'char[9]' as NomadMemory said to add 1 to the number of how many digits there are. I hope someone can help me out on this, all help is greatly appreciated. =] Edited January 3, 2009 by AwAke
AwAke Posted January 3, 2009 Author Posted January 3, 2009 I have further read into memory scanning and have realised that memory addresses change etc therefore bringing in the need for pointers. However I am yet to figure this out but I want to get the example above working before I progress onto pointers.
Fend Posted January 4, 2009 Posted January 4, 2009 (edited) If you just want to see the value try this...#include <Array.au3>#include <NomadMemory.au3>SetPrivilege("SeDebugPrivilege", 1) $ID=_MemoryOpen(ProcessExists("WoW.exe"));;not sure what the process is for wow, that was a guess$Address=0x1F35CFB8$Res = _MemoryRead($Address,$ID)MsgBox(0,"My value",$Res)_MemoryClose($ID)As for resources with auto it here is a good post on dealing with them...http://www.autoitscript.com/forum/index.ph...ic=78834&hlAlso check outhttp://www.autoitscript.com/forum/index.ph...ic=78834&hlhas some memory functions on the 2nd postI dont play wow, but i have seen a serious thread devoted to memory scanning and what not...should check it out.Here is a little code if it helps...$ID = _MemoryOpen(ProcessExists("XYZ.exe"));;gets the process ID$baseADDR = _MemoryGetBaseAddress($ID, 1);;gets the base address after finding the ID$StaticOffset = Dec("37fc78");;the offset for the green address $CharHPPtrOffset = "0xAC";;2nd level pointer offset$CharHPOffset = "0x4C";;1st level pointer offset$CalcADDR = "0x" & Hex($baseADDR + $StaticOffset);;2nd level pointer$value = "0x" & Hex(_MemoryRead($CalcADDR,$ID));;calc to find 1st level pointer$CalcADDR = "0x" & Hex($value + $CharHPPtrOffset);;1st level pointer$value = "0x" & Hex(_MemoryRead($CalcADDR,$ID));;calc to find address of value$HPADDR = "0x" & Hex($value + $CharHPOffset);;address of value$HP = _MemoryRead($HPADDR,$ID);;the valueThat is for a value that had two pointers Good luck Edited January 4, 2009 by Fend I like cookies?
AwAke Posted January 4, 2009 Author Posted January 4, 2009 Wow, thank you you gave me all that I needed and more. I cant help but thank you mate Once again thank you for your contribution its highly appreciated.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now