Amiga.org

Amiga computer related discussion => Amiga Software Issues and Discussion => Topic started by: rednova on March 18, 2010, 10:10:04 PM

Title: how can I make a trainer
Post by: rednova on March 18, 2010, 10:10:04 PM
Dear Amigans:

I can only program in Amospro.
I noticed that many amiga games, some people add an intro/trainer at the
start. For ex. lets you add infinite life, time, etc.
How can I learn to do this ?
what program to use, what to read, how to learn ?

I would love to learn this.

Rednova
Title: Re: how can I make a trainer
Post by: Managarm on March 18, 2010, 10:12:26 PM
I'm imagining you'd need to learn assembly language and more importantly, be able to decompile the code.Then code a cool intro once you've done it.
Title: Re: how can I make a trainer
Post by: weirdami on March 18, 2010, 10:24:31 PM
Perhaps not as helpful as you would have liked, but I know that way back there was this intro maker program for C=64 games. You could use it to make some kind of intro thingy and then it would put in it for you. It's not like programming or actually doing something special, but that's all I got. :-)
Title: Re: how can I make a trainer
Post by: ElPolloDiabl on March 18, 2010, 11:57:25 PM
I downloaded an intro maker for Amiga from a BBS, way back. Wouldn't have a clue if you can still find it though.

What if you got a hex editor and edited the bootblock that way. Look for bootblock editors too.
Title: Re: how can I make a trainer
Post by: rednova on March 19, 2010, 12:13:11 AM
Dear Friends:

Thank you for helping me !!!
A hex editor is good enough for what I want (thanks for tipping me !!! )
I found an editor for free in aminet.

Thanks !!!

rednova
Title: Re: how can I make a trainer
Post by: darkage on March 19, 2010, 01:03:32 AM
Red Sector Demo Maker rings a bell.   http://en.wikipedia.org/wiki/Demomaker

Not so hard to use, I made something when I was 16 years old I suppose without much programming knowledge.

But from my personal thoughts, I don't believe this would be the right path.  I would imagine the output from the DemoMaker may not have a small enough foot print as per say if you coded it by hand with optimisations for a super small foot print.

First play around with the Demo Maker just to make full single disk demo, then if you want to go through learn ASM (assembly) if your up to it.
Title: Re: how can I make a trainer
Post by: Mugo on March 19, 2010, 02:36:18 AM
The best program i´ve ever knew of this type is DemoManiac.

It was used in some pirated disks intros by some groups back in the day. I remember seeing a nice one from Paradox. Simple, but really nice.

In this program you can also use some of your own code besides the program´s own features.

It has been included in the Amiga Format issue 60 (Jun 1994). The 60b coverdisk:

http://amr.abime.net/coverdisk_index_4

This version can´t save the demos as standalone executables. But you can find the complete program somewhere else ;-)

Regards.
Title: Re: how can I make a trainer
Post by: Piru on March 19, 2010, 06:27:41 AM
Quote from: rednova;548343
I noticed that many amiga games, some people add an intro/trainer at the
start. For ex. lets you add infinite life, time, etc.
How can I learn to do this ?

what program to use, what to read, how to learn ?
1. Learn 68k assembler.
2. Learn to use ReSource.
3. Learn to locate the positions in the game code that decrease energy, lifes, or for example give weapons, or check if the player has collided with the enemy.
4. Learn to modify these locations in a way that the game logic changes. For example remove the instructions that decrease energy or lifes or detect the collisions. Call routine that gives all weapons. Usually this involves hooking the keyboard handler routine and checking if certain keys are pressed. If yes, patch the game code accordingly.

I would say it takes several years to learn just this. Oh btw, hex editor is totally useless here.

Note that I didn't even cover the intro coding. In most cases different people coded the intros and did the training, at least later on. They didn't use any demomaker.
Title: Re: how can I make a trainer
Post by: ElPolloDiabl on March 19, 2010, 07:14:21 AM
Years? It would depend on the game. Some are written quite linear and it easy to start modifying.
Title: Re: how can I make a trainer
Post by: Piru on March 19, 2010, 07:20:16 AM
Quote from: Fanscale;548409
Years?

Yes, for someone with AMOS coding skills it will take years to learn all the necessary skills.
Title: Re: how can I make a trainer
Post by: som99 on March 21, 2010, 05:52:11 AM
Quote from: Piru;548410
Yes, for someone with AMOS coding skills it will take years to learn all the necessary skills.


Well could he not just write a little memory editor that he boots to change/freeze a value at a certain adress to do desired effect?
Title: Re: how can I make a trainer
Post by: shoggoth on March 21, 2010, 12:27:34 PM
Quote from: som99;548919
Well could he not just write a little memory editor that he boots to change/freeze a value at a certain adress to do desired effect?


And how do you suggest he finds out which values to affect if he can't read disassembled code?
Title: Re: how can I make a trainer
Post by: bloodline on March 21, 2010, 01:17:59 PM
Donload the AR freezer ROM and run it in WinUAE... that has a special mode for detecting the decrementing opcodes... it really does work... well I have a Real Action Replay III here and that works, but the Software one should be nearly as good :)

-Edit- Reading ASM code is not easy, you need to have a good mental map of the Amiga's hardware registers to follow whats happening and where... It is hard enough when you write the code yourself, and reading Disassembled machine code is an art that I find VERY difficult...