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 


Command and Conquer 4: instant build
Goto page 1, 2  Next
 
Post new topic   Reply to topic    Cheat Engine Forum Index -> General Gamehacking
View previous topic :: View next topic  
Author Message
MohitKumarJangra
Newbie cheater
Reputation: 0

Joined: 30 Sep 2014
Posts: 17

PostPosted: Sat Oct 04, 2014 5:40 am    Post subject: Command and Conquer 4: instant build Reply with quote

Hi, this is to admin only because he is very fond of this game and I am sure he will help me. I have been playing this offline and cracked game for months. I cheated every thing in game except instant build(anyway they affects all players and crawlers in game Very Happy ). I found a unit's build timer which gets changed on every unit. I am a noob to programming so I opened it in asm.
The code was :- movss [esi+1C]xmm0
I tried to replace it:- :- mov [esi+1C](float)100
Now the problem is that enemy too does instant build Confused . I want that for my own crawler only so what should I do.

Henke37 tried to help me but setting breakpoint to ret 0004 crashes my game. Please give me some script for instant build or tell me how to do this.

IN ADDITION: I am active on irc so please HEEELP.No trainers work for my game
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 470

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

PostPosted: Sat Oct 04, 2014 6:06 am    Post subject: Reply with quote

find a way to distinguish between enemy and player

go to that address in memoryview and then "find out what addresses this instruction accesses"

then do a structure dissect and compare on the results (-1c) and see if you can find an indicator, or short path to an indicator that specifies what team it is

you may also do another code injection somewhere else to find out what your current team number actually is (unless it's always the same 0 like in the campaign)

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

Joined: 30 Sep 2014
Posts: 17

PostPosted: Sat Oct 04, 2014 7:16 am    Post subject: God Mode script for the Player team Reply with quote

Thanx for the reply, Admin. I am skipping instant build to God Mode to learn some basics.
I saw a tutorial and did dissact structure you told. this is all I did till now. Looks like I cant move forward this because the tutorial says to make script directly from this.

The Group 1 is the Player group.



structure dissact.PNG
 Description:
 Filesize:  446.95 KB
 Viewed:  28229 Time(s)

structure dissact.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: Sat Oct 04, 2014 11:20 am    Post subject: Reply with quote

When trying to find enemy/ally ID, it is better to compare more structures for better results. If possible, try to compare 3 or 4 enemy structures against 3 or 4 ally structures, simultaneously. Obviously, the more you can compare, the better. You may even find unit ID and more by doing this.
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 470

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

PostPosted: Sat Oct 04, 2014 11:25 am    Post subject: Reply with quote

my initial guess would be to go for offset 34, but as ++methos already mentioned, you need to compare to at least 1 more thing (friend or enemy) to get a clearer picture (that's why the tutorial doesn't only provide two players)
_________________
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
MohitKumarJangra
Newbie cheater
Reputation: 0

Joined: 30 Sep 2014
Posts: 17

PostPosted: Sat Oct 04, 2014 12:56 pm    Post subject: Reply with quote

Now I am really stuck Here Neutral


structure dissact1.PNG
 Description:
 Filesize:  229.5 KB
 Viewed:  28184 Time(s)

structure dissact1.PNG


Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 470

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

PostPosted: Sat Oct 04, 2014 1:15 pm    Post subject: Reply with quote

Perhaps the object that used to be at 15d231f4 got destroyed, meaning it's memory got used by something else
_________________
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
++METHOS
I post too much
Reputation: 92

Joined: 29 Oct 2010
Posts: 4197

PostPosted: Sat Oct 04, 2014 1:45 pm    Post subject: Reply with quote

When you check to see which addresses are being accessed by your targeted instruction, it is important to do the following:

1. Set the proper data type so that your values are displayed correctly (e.g. for health, it's usually float type, not 4 byte).
2. If any values seem unusual after changing the data type, you have to consider the possibility that those addresses may no longer be applicable for comparison, as Dark Byte explained, due to that particular unit being off-screen or being dead etc., or, the instruction is handling more than just health values - which means, you might consider using a more suitable instruction for your injection point (if available), or, take special notice of those unusual values in your data structure by examining their differences and/or removing them altogether. Repeat as needed to determine reliability of compare ID.

Regardless, you will want to test and retest to ensure reliability of compare ID. This is true for most newer games as it is rarely a straightforward, easy process.

Don't forget to use the -04 offset in your structure table. If using CE 6.4, you can add multiple values, simultaneously, to auto-create your structure table...which can save you a lot of time. By using this approach, the offset is also automatically incorporated.

I agree...the 15D231F4 address is probably no longer valid. You can use speedhack to slow the game down, considerably, in an effort to avoid this problem while you build your structure table etc..
Back to top
View user's profile Send private message
MohitKumarJangra
Newbie cheater
Reputation: 0

Joined: 30 Sep 2014
Posts: 17

PostPosted: Sat Oct 04, 2014 2:48 pm    Post subject: Too much frustrated Reply with quote

It now gives pointers for current healths now. Both in skirmish and campeign.


dissact.PNG
 Description:
 Filesize:  318.15 KB
 Viewed:  28144 Time(s)

dissact.PNG


Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 470

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

PostPosted: Sat Oct 04, 2014 3:33 pm    Post subject: Reply with quote

expand the pointers at offset 4 and 8 just to be sure

anyhow, see if you can somehow find out a way to find out the current team id. e.g perhaps something that only reads your current command vehicle health (so when you check what addresses it accesses it only access that one unit)
then use that to get the current value for offset 34 and 54 and then do a code injection that when hit do not allow it when offset 34 or 54 matches that of your command

tip: Try a pointerscan for the current command vehicle, or a pointerscan for the currently selected vehicle and manually activate it, then use that pointer to check the id

_________________
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
++METHOS
I post too much
Reputation: 92

Joined: 29 Oct 2010
Posts: 4197

PostPosted: Sat Oct 04, 2014 4:30 pm    Post subject: Re: Too much frustrated Reply with quote

MohitKumarJangra wrote:
It now gives pointers for current healths now. Both in skirmish and campeign.
-Just change the element so that it shows it as float type at that offset instead of a pointer.

I would restart the game and check to see if offsets 34 and 54 are the same at 33/3. If so, you can test those for your conditional jump. That is the simplest approach. Darkbyte's approach is more advanced, but may be a necessary one.
Back to top
View user's profile Send private message
MohitKumarJangra
Newbie cheater
Reputation: 0

Joined: 30 Sep 2014
Posts: 17

PostPosted: Sat Oct 04, 2014 9:44 pm    Post subject: Looks Like I have Found The Thing Reply with quote

There is no such other line in whole list like this. all are matching completely or different.
In my openion, 004C is the Player id.
One more thing, does reastrting the game changes the address and offset of the Player ID?

NOW TO CREATE GOD MODE SCRIPT WITH THIS PLAYER ID?



structure dissact.PNG
 Description:
 Filesize:  331.81 KB
 Viewed:  28054 Time(s)

structure dissact.PNG



structure dissact.PNG
 Description:
 Filesize:  331.81 KB
 Viewed:  28069 Time(s)

structure dissact.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: Sat Oct 04, 2014 11:06 pm    Post subject: Re: Looks Like I have Found The Thing Reply with quote

MohitKumarJangra wrote:
There is no such other line in whole list like this. all are matching completely or different.
In my openion, 004C is the Player id.
-Okay, good...you can try that.

MohitKumarJangra wrote:
One more thing, does reastrting the game changes the address and offset of the Player ID?
-The addresses are dynamic, but that doesn't matter because the instruction handles them all. The offsets should not change unless the developers release a patch/update that causes them to change (which is rare).

MohitKumarJangra wrote:
NOW TO CREATE GOD MODE SCRIPT WITH THIS PLAYER ID?
-Highlight the instruction in memory viewer, and select 'tools' from the drop-down menu. Click on 'Auto Assemble'. In the AA window, select 'Template' and click on 'Cheat table framework code'. Select 'Template' again, and click on 'Code injection'. Click 'okay'. When you are finished with writing your script, select 'File' and click on 'Assign to current cheat table'.

If you need help with writing your script, copy/paste it here. Someone will help you.
Back to top
View user's profile Send private message
MohitKumarJangra
Newbie cheater
Reputation: 0

Joined: 30 Sep 2014
Posts: 17

PostPosted: Sun Oct 05, 2014 1:29 am    Post subject: Reply with quote

I do not know why But I can not find any player id in that dissact window. The method surely correct and all four units were alive, I checked their healths in game. The one offset I show you in last screenshot was only one in the whole list inc pointers, but that too was changed.

Also, I need a script to be enabled and disabled with cheat engine framework code but cant guess how to do it disable. Here is the original script:
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here

originalcode:
movss [esi+1C],xmm0

exit:
jmp returnhere

"CNC4.game"+343634:
jmp newmem
returnhere:

and this is the code I am replacing it with: mov [esi+1C],(float)100
Back to top
View user's profile Send private message
++METHOS
I post too much
Reputation: 92

Joined: 29 Oct 2010
Posts: 4197

PostPosted: Sun Oct 05, 2014 2:47 am    Post subject: Reply with quote

MohitKumarJangra wrote:
I do not know why But I can not find any player id in that dissact window. The method surely correct and all four units were alive, I checked their healths in game. The one offset I show you in last screenshot was only one in the whole list inc pointers, but that too was changed.
-Then you must keep looking. Look inside pointer trees to dig deeper and use the structure spider to find possible ID strings.

MohitKumarJangra wrote:
Also, I need a script to be enabled and disabled with cheat engine framework code but cant guess how to do it disable.
-Follow the instructions that I posted and you will have enable/disable functions. Once you have done that, if you still need help, copy/paste your new script here and I will help you.

Writing the script is pointless, however, until you have found a proper ID for your filter.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> General Gamehacking 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