legowaffles How do I cheat?
Reputation: 0
Joined: 05 Feb 2011 Posts: 1
|
Posted: Sat Feb 05, 2011 8:00 pm Post subject: [HELP] Character validation in Warlords Battlecry 2 |
|
|
Greetings, sorry if this is in the wrong forum, if it is, can a mod please move it to the correct forum for me?
I am looking for some help with an issue I am having hacking a game.
I am attempting to get around the character validation regarding leveling up a character in Warlords Battlecry 2 1.04 beta patch (with not much success). The game has multiplayer functionality, but I only play it in single player so it is not connecting to the internet at all.
I can alter the amount of ability points at the level up screen using the address "Battlecry II.exe"+79B3D8. What I specifically want to accomplish with this hack, is being able to increase my ability points, and spend them on any stats I have enough for without penalty.
However if I do this and increase my stats, or even just leave the level up screen without altering them, upon going to another battle, all my stats will have been reset to 1. This is what I want to find a way to stop.
I have found the values for my character's stats that show up in the game levels, but these are reset upon leaving and entering another battle.
Just in case the values for these addresses are: ["Battlecry II.exe"+29BF48] is the pointer to the hero (I believe anyways, offsetting it gives you the hero's stats so...):
An offset of 88 gives you his current health, 84 is the hero's maximum health, resistance is an offset of 82, speed is 80, combat is 7E, base damage is 8A, damage type is 8C, range is 8E.
I am using (I believe anyways) the UK version of this game since that is what I found on EBay to replace my old copy, if that knowledge helps.
After some more tinkering I have managed to make a script that sets my available ability points to 1500 upon entering the level up screen, however even with this it still flags my character for resetting. Here is the script in case anyone is interested:
| Code: |
alloc(newmem,2048) //2kb should be enough
label(returnhere)
label(originalcode)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
mov [00B9DCFA],000005DC
movsx ecx,word ptr [00B9DCFA]
originalcode:
//movsx ecx,word ptr [00B9DCFA]
exit:
jmp returnhere
"Battlecry II.exe"+142EC0:
jmp newmem
nop
nop
returnhere:
|
EDIT: Gave more information.
|
|