PDA

View Full Version : Trainer Example + Source [C++]


Shard
30th July 2004, 14:52
This is a very simple Pinball trainer, it only has one option which adds 1,000,000 points to your score instead of the real amount. Also, I have not added a dialog, it just runs in the background and works on key presses.
The source code is very easy to understand and I have commented it.

I will try and explain how I did it:
I found the memory address(es) for the score in pinball and autohacked them. Once I got some more points this appeared in the Autohack window:
1015ED1: add [eax],esi
That line of code adds whatever is in esi to eax (my score), so to do what I wanted I had to change whatever was in esi. I went backward from that line of code and found this:
mov esi,[eax*4+0x1022738]
imul esi,edi
add esi,[ecx+0x12A]
That is where the amount of points to be added is worked out, it is exactly 16 bytes so that is the amount I had to overwrite, I changed it to this:
mov esi, 1000000
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
That just moves 1000000 points into esi and gets rid of the rest of it with NOPs (no operation) so now, everytime I got hit a bumper or w/e I got 1,000,000 points instead of the usual amount :D

Gregsy
30th July 2004, 18:22
wewt shard,
good work!
stuck with that leeb ass sticky tape

Shard
30th July 2004, 18:53
Mmmmm.. Sticky Tape.

thedragster
12th August 2004, 17:38
would that be considered a useless post? Is this considered a useless post?

Gregsy
12th August 2004, 18:00
thedragster, yes both are, but take it as a verbal warning for your pointless addition :p

Sky|ine
25th August 2004, 03:33
hey I noticed a problem, when you compile shard's source without doing nothing to it when to press the toggle key for the point cheat when the ball scores you know what I mean the game crashes :(

and how did you go back words to get this

mov esi,[eax*4+0x1022738]
imul esi,edi
add esi,[ecx+0x12A]

Shard
30th August 2004, 12:51
It does not crash with me...
And to go backwards just right click in the disassembly window and click on 'Go Backward'.

BTW, I am back.

Sky|ine
30th August 2004, 18:19
It does not crash with me...
And to go backwards just right click in the disassembly window and click on 'Go Backward'.

BTW, I am back.

Well when I use the one in the bin folder, it dosen't crash but when I use the one in the source code folder the one I compiled it crashes :(

NOPing for Food
15th September 2004, 11:19
how can I get something like this to compile? The both give me inline assembly errors...

_asm
{
call 0x123ABCDEF
}

and

_asm
{
jmp short 0x123ABCDEF
}

Rocker
30th October 2004, 21:20
Nice job. I've try your code. @U@/~~~

Sky|ine
13th November 2004, 23:37
I can't it to work. It all ways crashes, then I try editing it and changing the address from 0x01015EBE to 0x1012B21, so some were in this code it is crashing the pinball game. I really think it is the address. How do I find the address? Can you please reply.

hunter74
27th November 2004, 16:15
how can I get something like this to compile? The both give me inline assembly errors...

_asm
{
call 0x123ABCDEF
}

and

_asm
{
jmp short 0x123ABCDEF
}

a working call maybe need a ret ...

merom
21st May 2005, 23:39
er... where to learn C++ language

faldo
22nd May 2005, 20:44
http://newdata.box.sk/bx/c/

everbread
23rd July 2005, 16:05
Nice tutorial, it works fine.

Darkruler
5th October 2005, 00:12
I tried using this; It didn't worked... neither did the trainer I made (from the newbie trainer tut), I'm sure I did everything right... why is this happening?

sysklogd
8th June 2006, 20:28
i cant download the attached file...

charlie
8th January 2008, 18:26
broken download!

♦▬♣ KarnaX ♣▬♦
6th February 2008, 17:43
The attachment is broken right now.

EDIT1: Awh.. Didn't saw the date of post. I'm sorry for bumping.