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 


other problem :(
Goto page 1, 2  Next
 
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine
View previous topic :: View next topic  
Author Message
Xblade Of Heaven
Master Cheater
Reputation: 0

Joined: 16 Oct 2005
Posts: 394
Location: DEAD

PostPosted: Wed Oct 26, 2005 5:47 pm    Post subject: other problem :( Reply with quote

Hi again, now well me to gone out a new mistake, for example in case of the trainer of hl2 when the life to find of freeman 100 and the direction happens to the trainer, in the game the enemies do not die either ¿? ¿? Where this my mistake? Thank you
_________________
Welcome to the Hell.
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Dark Byte
Site Admin
Reputation: 458

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

PostPosted: Wed Oct 26, 2005 7:08 pm    Post subject: Reply with quote

the game uses the same routine to decreae life for enemies as it uses for you.
when you removed it you also removed it for the enemy.

There is no simple way to solve this, except using pointers or code injection

_________________
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
Xblade Of Heaven
Master Cheater
Reputation: 0

Joined: 16 Oct 2005
Posts: 394
Location: DEAD

PostPosted: Thu Oct 27, 2005 12:39 am    Post subject: Reply with quote

It exists in the forum algun manually to solve it or as example? thanks Wink
_________________
Welcome to the Hell.
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
SunBeam
I post too much
Reputation: 65

Joined: 25 Feb 2005
Posts: 4022
Location: Romania

PostPosted: Thu Oct 27, 2005 9:20 pm    Post subject: Reply with quote

Xblade, post your asm instruction and I'll help...Code injection is fairly simple if you use the right "steps"...

Puedes hablar en espanol, translators SUK !
Back to top
View user's profile Send private message
Xblade Of Heaven
Master Cheater
Reputation: 0

Joined: 16 Oct 2005
Posts: 394
Location: DEAD

PostPosted: Fri Oct 28, 2005 2:31 am    Post subject: Reply with quote

SunBeam sabes hablar español?
_________________
Welcome to the Hell.
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Xblade Of Heaven
Master Cheater
Reputation: 0

Joined: 16 Oct 2005
Posts: 394
Location: DEAD

PostPosted: Fri Oct 28, 2005 3:05 am    Post subject: Reply with quote

Ok I am going to write the values that there gives me for example the game Serious Sam 2 that it is with that I have the problem, despues if I learn it will apply them to the others, only I need an example.

Serious Sam 2:

Energy value my and enemy:



Value change a 200:










Memori View and assembler:



And in future already not what there that to do, and seen the tutorial but I cannot understand it due to the fact that not very well English and the translators are very bad, he(she) would be grateful that help me with this example thank you very much

_________________
Welcome to the Hell.
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
SunBeam
I post too much
Reputation: 65

Joined: 25 Feb 2005
Posts: 4022
Location: Romania

PostPosted: Fri Oct 28, 2005 4:21 am    Post subject: Reply with quote

I'm afraid you can't simply use code injection in an engine, except if you manage to make it inside the engine. Code-caves inside an engine are poor and very few Smile I played SS2, and managed to only make an ammo hack. Health is a bit tricky, since the instructions it uses are directly implemented in the engine with especific functions...

Dark Byte is needed at this point. I can go on telling you how to code-inject, but as I tried and failed, I see no point in doing that...

And yes, I simply understand spanish. Can't write it well, but heh...
Back to top
View user's profile Send private message
Xblade Of Heaven
Master Cheater
Reputation: 0

Joined: 16 Oct 2005
Posts: 394
Location: DEAD

PostPosted: Fri Oct 28, 2005 4:45 am    Post subject: Reply with quote

k it(he,she) costs(suits) help me to do since(as,like) the injection, if I trump not there problem it(he,she) returns to try(mean)Very Happy, if you want you I add to the msn Smile
_________________
Welcome to the Hell.
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Xblade Of Heaven
Master Cheater
Reputation: 0

Joined: 16 Oct 2005
Posts: 394
Location: DEAD

PostPosted: Fri Oct 28, 2005 7:37 am    Post subject: Reply with quote

any help?¿?¿? Question Rolling Eyes
_________________
Welcome to the Hell.
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Dark Byte
Site Admin
Reputation: 458

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

PostPosted: Fri Oct 28, 2005 7:47 am    Post subject: Reply with quote

Let's look at that instruction:
Code:

mov edx,[eax+480]


That means that edx will get the value of health
EAX holds at that position the base address of the player object, and it looks that at offset 480 of he player object the health is stored

Usually you would have to compre the regions that eax is pointing at with eachother to see which one is the player and which one is a enemy (see if it has a teamnumber not yours, or has a 'istarget' flag, etc....)

BUT

that is not needed in this case, the routine you are in is called: SeriousEngine::CHealthSimpleHudElement::PrepareRenderingParameters.
This gets called when the game is going to DRAW the health value on the SCREEN, I'm almost 100% certain this code will NOT get called by the comp (unless somehow your in game heads up display gives you the health of enemies, I don't think so)

So, this greatly simplifies stuff, select the address
go to extra->auto assembler
click template->code injection
and make sure the address is the address of the mov edx,[eax+480]

It will fill in a framework where you can write your code

Now, all you probably want to do is set your health to 100, so at '//Place your code here' write:
Code:

mov [eax+480],64   //64=100 in hexadecimal  (c8=200...)


click write code, and with luck you will now be almost invulnerable. (almost because 1 hit kills can still kill you if the check happens before drawing the new health to the screen)

so the completed auto assembler script looks like:
Code:

alloc(newmem,2048) //2kb should be enough
label(returnhere)
label(originalcode)
label(exit)

01442519:
jmp newmem
nop
returnhere:

newmem: //this is allocated memory, you have read,write,execute access
//place your code here
mov [eax+480],64


originalcode:
mov edx,[eax+00000480]

exit:
jmp returnhere



Of course, this looks like it is part of a dll and the address may change, so you may have to find the location of 'SeriousEngine::CHealthSimpleHudElement::PrepareRenderingParameters' each time you run the game.

Next version of ce will allow you to put that in with a offset but for now you'll have to find it manually each time.
One method is open the memory browser wait a bit for the symbols to be loaded, and then ctrl+g and fill in "SeriousEngine::CHealthSimpleHudElement::PrepareRenderingParameters", now all you have to do is go to the right offset (always the same) and you'll have it

_________________
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
Xblade Of Heaven
Master Cheater
Reputation: 0

Joined: 16 Oct 2005
Posts: 394
Location: DEAD

PostPosted: Fri Oct 28, 2005 1:28 pm    Post subject: Reply with quote

working perfect!!! you are a genius Laughing Laughing Laughing bravo dark Wink
_________________
Welcome to the Hell.
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Xblade Of Heaven
Master Cheater
Reputation: 0

Joined: 16 Oct 2005
Posts: 394
Location: DEAD

PostPosted: Fri Oct 28, 2005 2:12 pm    Post subject: Reply with quote

Evil or Very Mad Evil or Very Mad Evil or Very Mad Evil or Very Mad Evil or Very Mad Evil or Very Mad

i close the cheat engine and re-open trainer and see this image:



Desesperation!!!!!!!!!!

only work con cheat engine open, i close CE an run trainer con the new code and not runnig the trainer!!!!!!!!!! Crying or Very sad

_________________
Welcome to the Hell.
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Dark Byte
Site Admin
Reputation: 458

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

PostPosted: Fri Oct 28, 2005 2:58 pm    Post subject: Reply with quote

That is because the location of the dll changes and also the location of the code.

CE adjusts to that as long as you don't close it, but the trainer doesn't

_________________
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
SunBeam
I post too much
Reputation: 65

Joined: 25 Feb 2005
Posts: 4022
Location: Romania

PostPosted: Fri Oct 28, 2005 3:27 pm    Post subject: Reply with quote

That reminds me of an even greater problem. STRUCTURES. Is there any way to find let's say a pointer that tells me a direction, an address, and starting from that pointer with adding a certain offset to get to the correct module instruction, like in this case ?

Or better and simple put : there are games that use same routines for player/enemy healths. I found no differences in the code instructions being used [yeah, I managed to play as the enemy in the same game] and none differs...

My question : how does the game differentiate player/enemy if all instructions contain same registers all the time... ?

EX : WarHammer 4k. Building the same unit as player/enemy. If debugger used, i get some codes [being the player]. I find the address for the building bar for the enemy using breakpoints. Looked at what accesses both addresses [mine/enemy's] and found no differences at all [not a single register different - except the involved one containing player/enemy pointers]. Problem : pointers are DMA. If i start the game I won't be able to work it. Pointer changes...How do I retrieve it always and use it in the code-injection ????
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 458

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

PostPosted: Fri Oct 28, 2005 4:40 pm    Post subject: Reply with quote

look in the structure for the offset that determines what player is associated with it(you may have to traverse some other pointers), then determine what player you are, and compare. if it is a match, don't decrease health, if it isn't decrease the health or even just set it to 0 for all death
_________________
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
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine 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