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 


How do you make Auto Assemble if Process Name have symbol?

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine Lua Scripting
View previous topic :: View next topic  
Author Message
Alexandrite
Newbie cheater
Reputation: 0

Joined: 03 Jan 2017
Posts: 12

PostPosted: Wed Jan 11, 2017 11:31 am    Post subject: How do you make Auto Assemble if Process Name have symbol? Reply with quote

I know someone might suggest me to change process name :V
but that it's not correct way to solve the problem right?

my problem right now is this I have correct code
like this (just copy from Full Injection, so code surely correct)

Code:
define(address,"BIOHAZARD(R) 3 PC.exe"+56141)
define(bytes,66 29 96 CC 00 00 00)

[ENABLE]

assert(address,bytes)
alloc(newmem,$1000)

label(code)
label(return)

newmem:

code:
  sub [esi+000000CC],3E7
  jmp return

address:
  jmp newmem
  nop
  nop
return:

[DISABLE]

address:
  db bytes
  // sub [esi+000000CC],dx

dealloc(newmem)


At first, I'm very confuse about why I can't active this Auto Assemble

and I try find problem and now I know the problem but I did't know how to solve it , if anyone can please help me

Problem is because Process Name is "BIOHAZARD(R) 3 PC.exe"
the problem is (R) or symbol ( and ) on program name

I try later change the .exe file from BIOHAZARD(R) 3 PC.exe to just BIOHAZARD 3 PC.exe

and use same code above just by remove (R) out and code work correctly

but problem is... if im going to make trainer to public, I can't suggest everyone to change .exe game from BIOHAZARD(R) 3 PC.exe to BIOHAZARD 3 PC.exe right?

I try use another way and it worked!

Code:

define(bytes,66 29 96 CC 00 00 00)

[ENABLE]

alloc(newmem,$1000)

label(code)
label(return)

newmem:

code:
  sub [esi+000000CC],3E7
  jmp return

"BIOHAZARD(R) 3 PC.exe"+56141:
  jmp newmem
  nop
  nop
return:

[DISABLE]

"BIOHAZARD(R) 3 PC.exe"+56141:
  db bytes
  // sub [esi+000000CC],dx

dealloc(newmem)


But then i realize if I code like this without using define and assert() it will not check condition if Code already inject or not too so it quite half way fix






anyway to use Define + Assert with Process name content with symbol like ( ) guys?

Embarassed Embarassed Embarassed Embarassed Embarassed



error.png
 Description:
As It said, It's line 15, and line 15 is assert(address,bytes)

and its on line 9
and it because of (R) -*-
 Filesize:  51.48 KB
 Viewed:  4178 Time(s)

error.png


Back to top
View user's profile Send private message
++METHOS
I post too much
Reputation: 92

Joined: 29 Oct 2010
Posts: 4197

PostPosted: Wed Jan 11, 2017 12:19 pm    Post subject: Reply with quote

I cannot offer a solution, but as a possible workaround, you may be able to incorporate an LUA script that will auto-rename process and auto-attach.
Back to top
View user's profile Send private message
ParkourPenguin
I post too much
Reputation: 140

Joined: 06 Jul 2014
Posts: 4289

PostPosted: Wed Jan 11, 2017 12:53 pm    Post subject: Reply with quote

It's a bug when CE parses assert. I'd guess it looks for the first occurrence of ) from the left.
One workaround would be to use Lua for the definition.
Code:
{$lua}
return string.format('define(address,%08X)',getAddress('"BIOHAZARD(R) 3 PC.exe"+56141'))
{$asm}
define(bytes,83 44 24 1C 01)

[ENABLE]

_________________
I don't know where I'm going, but I'll figure it out when I get there.
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 458

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

PostPosted: Wed Jan 11, 2017 3:57 pm    Post subject: Reply with quote

have you tried this :
Code:

[ENABLE]

assert("BIOHAZARD(R) 3 PC.exe"+56141,66 29 96 CC 00 00 00)

_________________
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
Alexandrite
Newbie cheater
Reputation: 0

Joined: 03 Jan 2017
Posts: 12

PostPosted: Wed Jan 11, 2017 11:20 pm    Post subject: Reply with quote

ParkourPenguin wrote:
It's a bug when CE parses assert. I'd guess it looks for the first occurrence of ) from the left.
One workaround would be to use Lua for the definition.
Code:
{$lua}
return string.format('define(address,%08X)',getAddress('"BIOHAZARD(R) 3 PC.exe"+56141'))
{$asm}
define(bytes,83 44 24 1C 01)

[ENABLE]


Thank you, ill try this one soon





Dark Byte wrote:
have you tried this :
Code:

[ENABLE]

assert("BIOHAZARD(R) 3 PC.exe"+56141,66 29 96 CC 00 00 00)


Yes i tried directly use assert() before...
and it still not work, so i think problem it's not define but assert() > <"
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
Page 1 of 1

 
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