Call of Duty: Modern Warfare 2 Discussion

Call of Duty: Modern Warfare 2 Trainer

Trainer Tools and Resources

Request More Trainer Options
0 option(s) for voting
Request Trainer Update
0 report(s) filed
Boost Trainer Update Priority for Call of Duty: Modern Warfare 2
Boost currently not available

Message Board for PC version

Signup   Message Boards Home   Newest Posts   My Favorite Boards   My Threads
Page 2 of 2   •  First Page  •  Previous Page  •   Next Page  •   Last Page
Signup or Login to Post
[Help]My 1st Trainer:Body Count-Endless
HonestGamer  posted on Dec 12, 2009 10:59:18 AM - Report post

Current rank: 3.5 Stars. Next Rank at 8000 Posts.
Send a message to HonestGamer
Maybe there is an issue with shared routines, that oppcode might be used by the system functions.

What value type is your health? By the looks of it, I think it is 4 bytes...And I suspect it is not, must be float.

But however try this, I am believing the value indeed is in 4 bytes.

push eax //Push the value of eax register to the stack
mov [esi+04],00000064 //Forces a 100 value to the oppcode writing to your health.
pop eax //Pop the value of the eax register from the stack

pop esi
ret //Codes from which the bytes were taken by CE to initialize jump to newmem

Got to tell, I really don't think the value is in 4 bytes...Most of the newer games use float to store their "Real" health value. The value you may have found must be affecting the visual status...Which is used by system functions ATM.

And you must be wondering why I included "push eax" and "pop eax" in newmem. This is a healthy practice, as it does not let the values of registers get lost. To do this for all registers rather than just eax, use:-

pushad //Push the value of ALL registers to the stack
popad //Pop the value of ALL registers from the stack

[Edited by HonestGamer, 12/12/2009 11:07:54 AM]

coder47  posted on Dec 12, 2009 4:49:59 PM - Report post

Current rank: 1 Star. Next Rank at 100 Posts.
Send a message to coder47
Thank you for your help again , [esi+04] is 2 bytes, and it's original value is 30000(DEC), I tried to inject 65535(DEC),but no luck.Game still crashes.But when I use CE to frose [esi+04]'s value with 65535 it is OK, BTW, it seems [esi+04] is a static address, cause I noticed it is always green in CE.

The codes below neither works.
push eax
mov [esi+04],FFFF
pop eax

pop esi

mov [esi+04],FFFF

pop esi

I was wondering how to calculate [esi+04]'s address?

Yeeep, I have to say I coun't calculate or find [esi+04]'s address, but I evaded that with my little trick. You can have a try.

Download link:

[Edited by coder47, 12/13/2009 3:36:05 AM]

Page 2 of 2   •  First Page  •  Previous Page  •   Next Page  •   Last Page
  Post Reply
Go to page: 1  2 
All times are (GMT -06:00) Central Time (US & Canada). Current time is 4:47:34 AM
Cheat Happens Premium
* Get 18,279 trainers for over 5,300 games
* Up to 400 new and updated trainers monthly
* Manage and update trainers through one app
* Request which games get new trainers
* Priority support with any problem
Game Review
Latest Trainer
Call of Duty: Modern Warfare 2 Trainer
• Unlimited Health
• Ammo
• Grenades
+ 9 more options
  Show all Cheats & Trainers