Cheat Engine Forum Index Cheat Engine
The Official Site of Cheat Engine
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


Lua breakpoint?
Goto page 1, 2  Next
 
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine Lua Scripting
View previous topic :: View next topic  
Author Message
Freiza
Grandmaster Cheater
Reputation: 22

Joined: 28 Jun 2010
Posts: 662

PostPosted: Sun Mar 11, 2012 2:49 am    Post subject: Lua breakpoint? Reply with quote

I want to set breakpoint at 0040CEA6
0040CEA6 - 89 50 04 - mov [eax+04],edx


I did these but not working. What Am I doing Wrong?

Code:


function debugger_onBreakpoint()

  local value=EAX
  if (value ==0x0C93E004 ) then
    return 0
  else
    return 1
  end
end

debug_setBreakpoint(0x0040CEA6)


And also this please.
http://forum.cheatengine.org/viewtopic.php?t=549228
Back to top
View user's profile Send private message Send e-mail
Dark Byte
Site Admin
Reputation: 457

Joined: 09 May 2003
Posts: 25262
Location: The netherlands

PostPosted: Sun Mar 11, 2012 1:15 pm    Post subject: Reply with quote

define what you mean with "not working"
Doesn't it break or does it break every single time even when it shouldn't?

Anyhow, make sure the process is being debugged when debug_setBreakpoint is executed

_________________
Do not ask me about online cheats. I don't know any and wont help finding them.

Like my help? Join me on Patreon so i can keep helping
Back to top
View user's profile Send private message MSN Messenger
atom0s
Moderator
Reputation: 198

Joined: 25 Jan 2006
Posts: 8516
Location: 127.0.0.1

PostPosted: Sun Mar 11, 2012 2:46 pm    Post subject: Reply with quote

Make sure that CE is attached to debug or the breakpoint wont get used.

Try adding a call to debugProcess in your script just in case.

_________________
- Retired.
Back to top
View user's profile Send private message Visit poster's website
Freiza
Grandmaster Cheater
Reputation: 22

Joined: 28 Jun 2010
Posts: 662

PostPosted: Sun Mar 11, 2012 3:20 pm    Post subject: Reply with quote

@DB
It never breaks. When I use lua. Otherwise when I use
EAX== Oxaddress in simple conditional break ,it breaks.

@Wiccaan
Make sure that CE is attached to debug or the breakpoint wont get used.

Is attached to debug? I do not get it.
I just executed the script and thought that it will break when EAX== my given address.

Doesn't it work that way?
How to attach to debug if I do not want to use debug process? Should I manually set the breakpoint? I am not getting it.

_________________
Back to top
View user's profile Send private message Send e-mail
atom0s
Moderator
Reputation: 198

Joined: 25 Jan 2006
Posts: 8516
Location: 127.0.0.1

PostPosted: Sun Mar 11, 2012 3:57 pm    Post subject: Reply with quote

You can't handle breakpoints if you aren't going to attach to the process to debug it. You need to attach to it. You can ignore all the breakpoints except the one you want which should allow the game to run fine without even noticing its being debugged. (Depending on if the game has any protections etc.)
_________________
- Retired.
Back to top
View user's profile Send private message Visit poster's website
Freiza
Grandmaster Cheater
Reputation: 22

Joined: 28 Jun 2010
Posts: 662

PostPosted: Thu Mar 15, 2012 10:26 am    Post subject: Reply with quote

Code:
function debugger_onBreakpoint()

  if(readInteger("[EDI+04]")>= 10000 and readInteger("[EDI+04]")<=11000) then
  print("hello hacking")


    return 0
  else

    return 1
  end
end

debug_setBreakpoint(0x0040CE7D)


Why it is breaking at 0x0040CE7D for any arbitary value of [edi+04]?
I also tried hexadecimal values like 0x2710 instead of 10000 and 0x2AF8 instead of 11000.
For example it also breaks when [EDI+04] equals FFFFFFFF or 116301

_________________
Back to top
View user's profile Send private message Send e-mail
Dark Byte
Site Admin
Reputation: 457

Joined: 09 May 2003
Posts: 25262
Location: The netherlands

PostPosted: Thu Mar 15, 2012 3:38 pm    Post subject: Reply with quote

Code:

if(readInteger("[EDI+04]")>= 10000 and readInteger("[EDI+04]")<=11000) then

Will raise an error because the symbolhandler does not know the value of EDI in this context

And because the result is not 1 but an undefined value, it will break


EDI is a numerical value of EDI and not a string, so you can do calculations on it.
so try this: readInteger(EDI+4)

_________________
Do not ask me about online cheats. I don't know any and wont help finding them.

Like my help? Join me on Patreon so i can keep helping
Back to top
View user's profile Send private message MSN Messenger
Freiza
Grandmaster Cheater
Reputation: 22

Joined: 28 Jun 2010
Posts: 662

PostPosted: Thu Mar 15, 2012 4:36 pm    Post subject: Reply with quote

And What to do for this situation
[[edi+edx*8-08]+4]

_________________
Back to top
View user's profile Send private message Send e-mail
Dark Byte
Site Admin
Reputation: 457

Joined: 09 May 2003
Posts: 25262
Location: The netherlands

PostPosted: Thu Mar 15, 2012 5:09 pm    Post subject: Reply with quote

readInteger(readInteger(EDI+EDX*8-8)+4)
_________________
Do not ask me about online cheats. I don't know any and wont help finding them.

Like my help? Join me on Patreon so i can keep helping
Back to top
View user's profile Send private message MSN Messenger
Freiza
Grandmaster Cheater
Reputation: 22

Joined: 28 Jun 2010
Posts: 662

PostPosted: Thu Mar 15, 2012 5:57 pm    Post subject: Reply with quote

Thank You very much
_________________
Back to top
View user's profile Send private message Send e-mail
eorenmh
How do I cheat?
Reputation: 0

Joined: 07 May 2012
Posts: 4

PostPosted: Tue May 08, 2012 9:31 pm    Post subject: Reply with quote

Freiza wrote:
Code:
function debugger_onBreakpoint()

  if(readInteger("[EDI+04]")>= 10000 and readInteger("[EDI+04]")<=11000) then
  print("hello hacking")


    return 0
  else

    return 1
  end
end

debug_setBreakpoint(0x0040CE7D)


Why it is breaking at 0x0040CE7D for any arbitary value of [edi+04]?
I also tried hexadecimal values like 0x2710 instead of 10000 and 0x2AF8 instead of 11000.
For example it also breaks when [EDI+04] equals FFFFFFFF or 116301


hi, i'm a beginner in this debugging process, and i wonder where could i set conditional breakpoint in CE?
already ctrl+B and a window pop up, and i dont understand what to do next

thank you in advance
Back to top
View user's profile Send private message
Freiza
Grandmaster Cheater
Reputation: 22

Joined: 28 Jun 2010
Posts: 662

PostPosted: Wed May 09, 2012 12:40 am    Post subject: Reply with quote

Ctrl+L in Dissembler view. And Paste the Lua code and press execute. ( You need to learn Lua.)

Or for simple breakpoint condition.
1) Set a breakpoint
2) Right click on the code and
3) Set/change break condition.
4) Choose easy
In the following textbox write one line condition.

For example:-

EAX==0x12345678 (Case sensitive and Hexadecimal starts with 0x).

_________________
Back to top
View user's profile Send private message Send e-mail
eorenmh
How do I cheat?
Reputation: 0

Joined: 07 May 2012
Posts: 4

PostPosted: Wed May 09, 2012 2:43 am    Post subject: Reply with quote

Freiza wrote:
Ctrl+L in Dissembler view. And Paste the Lua code and press execute. ( You need to learn Lua.)

Or for simple breakpoint condition.
1) Set a breakpoint
2) Right click on the code and
3) Set/change break condition.
4) Choose easy
In the following textbox write one line condition.

For example:-

EAX==0x12345678 (Case sensitive and Hexadecimal starts with 0x).


hi freiza

thanks for your reply

ok i already do that, by set breakpoint (still dont understand much of LUA)

but seems breakpoint doesnt work while it should be

example : EDI==0x01599904

also, how could i set several conditions?

example EDI==0x01599904 Or ESI==0x0E2B00B4 Or <another conditions> Or etc...

thank you again
Back to top
View user's profile Send private message
Freiza
Grandmaster Cheater
Reputation: 22

Joined: 28 Jun 2010
Posts: 662

PostPosted: Wed May 09, 2012 4:22 am    Post subject: Reply with quote

eorenmh wrote:
example : EDI==0x01599904


This code is fine. It should work well.

eorenmh wrote:
example EDI==0x01599904 Or ESI==0x0E2B00B4 Or <another conditions> Or etc...


EDI==0x01599904 or ESI==0x0E2B00B4 or EAX==0x2

like this.

But If you want to do it in lua then just copy paste the code below to lua engine (Ctrl+L) and press execute.
And yes modify the address according to your need.

Code:
debugProcess()  -- Attach Debugger to the process.
function debugger_onBreakpoint()

  if(EDI==0x01599904 ESI==0x0E2B00B4 or EAX==0x2) then
    return 0 --Break
  else
    return 1  --Not Break
  end
end

debug_setBreakpoint(0x0042276B)  -- Address where to set breakpoint

_________________
Back to top
View user's profile Send private message Send e-mail
eorenmh
How do I cheat?
Reputation: 0

Joined: 07 May 2012
Posts: 4

PostPosted: Wed May 09, 2012 6:27 am    Post subject: Reply with quote

Freiza wrote:
eorenmh wrote:
example : EDI==0x01599904


This code is fine. It should work well.

eorenmh wrote:
example EDI==0x01599904 Or ESI==0x0E2B00B4 Or <another conditions> Or etc...


EDI==0x01599904 or ESI==0x0E2B00B4 or EAX==0x2

like this.

But If you want to do it in lua then just copy paste the code below to lua engine (Ctrl+L) and press execute.
And yes modify the address according to your need.

Code:
debugProcess()  -- Attach Debugger to the process.
function debugger_onBreakpoint()

  if(EDI==0x01599904 ESI==0x0E2B00B4 or EAX==0x2) then
    return 0 --Break
  else
    return 1  --Not Break
  end
end

debug_setBreakpoint(0x0042276B)  -- Address where to set breakpoint


waw thank you
your a savior Smile

already could do that
and now im courious how to set BP on readfile procedure, or writefile?

thank you again
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine Lua Scripting All times are GMT - 6 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group

CE Wiki   IRC (#CEF)   Twitter
Third party websites