View previous topic :: View next topic |
Author |
Message |
Filipe_Br Master Cheater Reputation: 3
Joined: 07 Jan 2016 Posts: 272 Location: My house
|
Posted: Sun Jun 26, 2016 9:49 am Post subject: Debugging and Hotkeys Questions |
|
|
I'm using this script to jump hack for a game.
result = AOBScan("F3 0F 7E 51 20 F2 0F 59 D0 F2 0F 58 CA 66 0F D6 48 20 8B 43 58 85 C0")
address = getAddress(stringlist_getString(result,0))
debug_setBreakpoint(address)
debug_continueFromBreakpoint(co_run)
function jump()
writeDouble(addressJump,4000)
end
function debugger_onBreakpoint()
addressJump = ECX + 0x20
return 1
end
createHotkey(jump,VK_V)
The breakpoint will find the addresses of all players, so sometimes my player jumps sometimes not.
My questions:
1 - How can I specify which addresses this breakpoint I want to change?
2 - How can I change them all at once? so would not vary which player jumps.
3 - with this Hotkey value only changes for 4000, how can I make a Hotkey that when preciono changes the value to 4000, and when I release the key switch to 0?
|
|
Back to top |
|
|
mgr.inz.Player I post too much Reputation: 218
Joined: 07 Nov 2008 Posts: 4438 Location: W kraju nad Wisla. UTC+01:00
|
Posted: Sun Jun 26, 2016 10:24 am Post subject: |
|
|
Quote: | 2 - How can I change them all at once? so would not vary which player jumps. |
Quote: | addresses of all players |
Is it multiplayer game? If yes, then goodbye http://forum.cheatengine.org/faq.php#0
If not (local co-op or something similar), you can try this one:
Code: | function playersJumpAddressTrackerInit()
if playersJumpAddressTrackerInitialized then return end
local result = AOBScan("F3 0F 7E 51 20 F2 0F 59 D0 F2 0F 58 CA 66 0F D6 48 20 8B 43 58 85 C0")
local address=0
if result~=nil and result.Count > 0 then
address = result[0]
else
print('aob signature not found')
return
end
playersJumpAddressTrackerInitialized=true
listWithAddresses = createStringlist()
listWithAddresses.Duplicates=dupIgnore -- ignore duplicates
function debugger_onBreakpoint()
listWithAddresses.insert(0,ECX + 0x20) -- add address
while listWithAddresses.Count>8 do listWithAddresses.delete(8) end -- keep last eight addresses
debug_continueFromBreakpoint(co_run)
return 1
end
debug_setBreakpoint(address)
end
function jump()
if listWithAddresses==nil then return end
for i=0,listWithAddresses.Count do
writeDouble( tonumber(listWithAddresses[i]), 4000 )
end
end
playersJumpAddressTrackerInit()
if jumphotkey~=nil then jumphotkey.destroy(); jumphotkey=nil end
jumphotkey=createHotkey(jump,VK_V) |
_________________
|
|
Back to top |
|
|
Filipe_Br Master Cheater Reputation: 3
Joined: 07 Jan 2016 Posts: 272 Location: My house
|
Posted: Sun Jun 26, 2016 12:12 pm Post subject: |
|
|
mgr.inz.Player wrote: | Quote: | 2 - How can I change them all at once? so would not vary which player jumps. |
Quote: | addresses of all players |
If not (local co-op or something similar), you can try this one:
Code: | function playersJumpAddressTrackerInit()
if playersJumpAddressTrackerInitialized then return end
local result = AOBScan("F3 0F 7E 51 20 F2 0F 59 D0 F2 0F 58 CA 66 0F D6 48 20 8B 43 58 85 C0")
local address=0
if result~=nil and result.Count > 0 then
address = result[0]
else
print('aob signature not found')
return
end
playersJumpAddressTrackerInitialized=true
listWithAddresses = createStringlist()
listWithAddresses.Duplicates=dupIgnore -- ignore duplicates
function debugger_onBreakpoint()
listWithAddresses.insert(0,ECX + 0x20) -- add address
while listWithAddresses.Count>8 do listWithAddresses.delete(8) end -- keep last eight addresses
debug_continueFromBreakpoint(co_run)
return 1
end
debug_setBreakpoint(address)
end
function jump()
if listWithAddresses==nil then return end
for i=0,listWithAddresses.Count do
writeDouble( tonumber(listWithAddresses[i]), 4000 )
end
end
playersJumpAddressTrackerInit()
if jumphotkey~=nil then jumphotkey.destroy(); jumphotkey=nil end
jumphotkey=createHotkey(jump,VK_V) |
|
With this script all players jump, but when I press the Hotkey V appears this error "Error: List index ( out of bounds"
Could you show me another bad script not of this error?
And you know how to make a hotkey that works as I said?
The game is offline
|
|
Back to top |
|
|
mgr.inz.Player I post too much Reputation: 218
Joined: 07 Nov 2008 Posts: 4438 Location: W kraju nad Wisla. UTC+01:00
|
Posted: Sun Jun 26, 2016 12:48 pm Post subject: |
|
|
yeah, my bad
just change this line
Code: | for i=0,listWithAddresses.Count do |
to this
Code: | for i=0,listWithAddresses.Count-1 do |
Quote: | 3 - with this Hotkey value only changes for 4000, how can I make a Hotkey that when preciono changes the value to 4000, and when I release the key switch to 0? |
For this you will need timer object and isKeyPressed function.
_________________
|
|
Back to top |
|
|
Filipe_Br Master Cheater Reputation: 3
Joined: 07 Jan 2016 Posts: 272 Location: My house
|
Posted: Sun Jun 26, 2016 2:55 pm Post subject: |
|
|
mgr.inz.Player wrote: | yeah, my bad
just change this line
Code: | for i=0,listWithAddresses.Count do |
to this
Code: | for i=0,listWithAddresses.Count-1 do |
Quote: | 3 - with this Hotkey value only changes for 4000, how can I make a Hotkey that when preciono changes the value to 4000, and when I release the key switch to 0? |
For this you will need timer object and isKeyPressed function. |
With your script you helped me a lot, bad you give an example script for the Hotkey.
When you're writing a script in self assemble, you can use the function of Cheat Engine "Dissect data and structures" to comparable data from several players and so just change the address of your character. I wanted to do this using only the moon to change my address JUMP, you know how to do this?
|
|
Back to top |
|
|
mgr.inz.Player I post too much Reputation: 218
Joined: 07 Nov 2008 Posts: 4438 Location: W kraju nad Wisla. UTC+01:00
|
Posted: Sun Jun 26, 2016 3:52 pm Post subject: |
|
|
if, for example, you found out that at [ECX+4C] you have 1 and the rest of players have 0, just use this:
Code: | function playersJumpAddressTrackerInit()
if playersJumpAddressTrackerInitialized then return end
local result = AOBScan("F3 0F 7E 51 20 F2 0F 59 D0 F2 0F 58 CA 66 0F D6 48 20 8B 43 58 85 C0")
local address=0
if result~=nil and result.Count > 0 then
address = result[0]
else
print('aob signature not found')
return
end
playersJumpAddressTrackerInitialized=true
listWithAddresses = createStringlist()
listWithAddresses.Duplicates=dupIgnore -- ignore duplicates
local addressesToStore=8
function debugger_onBreakpoint()
listWithAddresses.insert(0,ECX) -- add address
while listWithAddresses.Count>addressesToStore do listWithAddresses.delete(addressesToStore) end
debug_continueFromBreakpoint(co_run)
return 1
end
debug_setBreakpoint(address)
end
function jump()
if listWithAddresses==nil then return end
for i=0,listWithAddresses.Count do
local address=tonumber(listWithAddresses[i])
if readInteger( address+0x4C)==1 then
writeDouble( address+0x20, 4000 )
end
end
end
playersJumpAddressTrackerInit()
if jumphotkey~=nil then jumphotkey.destroy(); jumphotkey=nil end
jumphotkey=createHotkey(jump,VK_V) |
_________________
|
|
Back to top |
|
|
Filipe_Br Master Cheater Reputation: 3
Joined: 07 Jan 2016 Posts: 272 Location: My house
|
Posted: Mon Jul 04, 2016 10:42 am Post subject: |
|
|
Very good, and how can I make a hotkey with 2 functions, 1 when pressed to change the value to 2000. 2 when not pressed to change the value to 0.
|
|
Back to top |
|
|
cooleko Grandmaster Cheater Reputation: 11
Joined: 04 May 2016 Posts: 717
|
Posted: Mon Jul 04, 2016 9:14 pm Post subject: |
|
|
Don't forget to look for yourself, you will always learn better by reading around, even if you dont find what you are looking for first.
http://forum.cheatengine.org/viewtopic.php?t=538178
PS, I didn't know how to do it, but i googled "ce lua button down" and this was the first result, which was exactly what you needed.
|
|
Back to top |
|
|
Supernick Newbie cheater Reputation: 0
Joined: 04 Jul 2016 Posts: 15
|
Posted: Tue Jul 05, 2016 8:55 pm Post subject: |
|
|
i 'm pretty sure it's multiplayer game ... from the signature
i think i talked to u ... it's me king dark
anyway about the first thing u talking about u can give the ECX + 0x20 local value for example
local x = ECX + 0x20
all the jump values will save to x and when u change x make sure u don't break the break point ... if u didn't then all the tanks will jump with u
--------------------------------------
about ur other question u want add another hotkey ... i have to ask u why ... why u wanna add value 0 ? is't cuz the tank keep flying without stopping ?
i understand if u want create program with ur language .. u only have to send me message to my skype : cyber.cheat .. i will give u everything u need
good luck
|
|
Back to top |
|
|
|