home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga MA Magazine 1998 #6
/
amigamamagazinepolishissue1998.iso
/
polminet
/
wojciech_kocjan
/
ufocheat
/
ufocheat.txt
< prev
Wrap
Text File
|
1996-09-20
|
8KB
|
191 lines
Short: Allows cheating in "UFO: Enemy ..." AGA
Uploader: wkocjan@polbox.com (Wojciech Kocjan)
Author: wkocjan@polbox.com (Wojciech Kocjan)
Type: game/gag
Version: UFOCheat 1.00
This program is a good tool for those who are not good UFO players or would
simply like to have mo' money, superhuman soldiers etc. Written in AMOSPro.
Some advices/warnings:
- LOADING/SAVING GAMES: NEVER! save a game in a different slot! - the
program only loads some parts (files like soldier.dat, liglob.dat...)
- MONEY: it's best to press the button "Sum = (by ???)" and enter the
monthly fundings you'd like to earn and enter the current cash amount,
otherwise you'd loose a month!
- SOLDIERS: enable "Save automatically", then "Improve everyone" a couple
of times!
- BASE STORES: enable "Save automatically", then you can enter the amount
of most important alien weapons and of Psi-Amps. Remember this:
Psi-Amps always work if your soldiers have Psionic Skills & Psi.Strength
That's all you have to know use it!
p.s. This program is mailware, if you like it, send me an e-mail.
Wojtek Kocjan
(wkocjan@polbox.com)
###########################################################################
More sophisticated text:
(mostly for developers/programmers/advanced cheaters)
Here's an AMOS source of loader - shows where you can find most of things:
> REQUEST : F$=Param$ : If F$='' : Pop Proc : End If
> If Not Exist(F$+'saveinfo.dat') : Pop Proc : End If
> GAMDIR$=F$
>
> Open In 1,GAMDIR$+'saveinfo.dat'
> I$=Input$(1,40) : VI=Varptr(I$)
> G_NAME$=Peek$(VI+2,16,Chr$(0))
> For I=0 To 5 : G_CZAS(I)=Deek(VI+$1C+I*2) : Next I
> Close 1 : G_CZAS(5)=G_CZAS(5)*5 : Inc G_CZAS(1)
>
> Open In 1,GAMDIR$+'diplom.dat'
> For Y=1 To 16 : Pof(1)=$2+(G_CZAS(1)*2)+(Y-1)*$24
> I$=Input$(1,$2) : MONEY(Y)=Deek(Varptr(I$))
> Next Y
> Close 1
>
> Open In 1,GAMDIR$+'liglob.dat'
> I$=Input$(1,8) : VP=Varptr(I$) : Close 1
> MONEY(0)=Leek(VP)
>
> Open In 1,GAMDIR$+'soldier.dat'
> I$=Input$(1,16)
> SOLDIERS=0 : Do
> I$=Input$(1,68) : VI=Varptr(I$) : P=Asc(Upper$(Peek$(VI,1)))
> Exit If(((P>=$30) and(P<=$39)) or((P>=$41) and(P<=$5A)))=0
> STN=Instr(I$,Chr$(0))-1 : Exit If STN<0
> SOLDIER$(SOLDIERS)=Peek$(VI,STN)
> Restore _ADDR
> Read II : For I=0 To II-1 : Read _ADR
> _VAL=Peek(VI+_ADR) : Read VV
> S_PARAM(SOLDIERS,I)=VV
> Next I
> Inc SOLDIERS : Loop
> For I=SOLDIERS To S_MAX-1 : SOLDIER$(I)='' : Next I
> Close 1
>
> Open In 1,GAMDIR$+'base.dat'
> BASES=0 : For B=0 To 7
> Pof(1)=B*$122 : I$=Input$(1,$122) : VI=Varptr(I$)
> Exit If Peek(VI)=0
> BASE$(B)=Peek$(VI,16,Chr$(0))
> Restore _BASE : Read II
> For I=0 To II-1
> Read _ADR : _VAL=Deek(VI+_ADR)
> Read VV : B_STORE(B,I)=VV
> Next I
> Inc BASES : Next B
> Close 1
> If BASES<8 : For B=BASES To 7 : BASE$(B)='' : Next B : End If
>
> D_INFORMATION
>
> Pop Proc
>
> _ADDR:
> Data 10
> Data $1A,_VAL < Time Units
> Data $1C,_VAL < Stamina
> Data $1B,_VAL < Health
> Data $24,(11-_VAL)*10 < Bravery
> Data $1D,_VAL < Reactions
> Data $1F,_VAL < Firing Accuracy
> Data $20,_VAL < Throwing Accuracy
> Data $1E,_VAL < Strength
> Data $22,_VAL < Psionic Strength
> Data $23,_VAL < Psionic Skills
>
> _BASE:
> Data 16
> Data $D8,_VAL < Elenium-115
> Data $110,_VAL < Alien Alloys
> Data $100,_VAL < UFO Power Source
> Data $102,_VAL < UFO Navigation
> Data $C2,_VAL < Heavy Plasma
> Data $C4,_VAL < Heavy Plasma Clip
> Data $C6,_VAL < Plasma Rifle
> Data $C8,_VAL < Plasma Rifle Clip
> Data $CA,_VAL < Plasma Pistol
> Data $CC,_VAL < Plasma Pistol Clip
> Data $D6,_VAL < Alien Grenade
> Data $B0,_VAL < Psi-Amp
> Data $D2,_VAL < Small Launcher
> Data $D4,_VAL < Stun Bomb
> Data $CE,_VAL < Blaster Launcher
> Data $D0,_VAL < Blaster Bomb
On the bottom there's a list of soldiers' parameters and bases' stores.
Files:
saveinfo.dat - all the data you want to know about the saved game itself.
Type Offset (HEX) Name Description
STRING $00 NAME NAME OF THE SAVED GAME
UWORD $1C YEAR THE YEAR
UWORD $1E MONTH MONTH (JAN=0,FEB=1)
UWORD $20 DAY DAY (1999/JAN/1=1,1999/FEB/1=2)
UWORD $22 HOUR HOUR (00:00 = 0, 02:00=2)
UWORD $24 MINUTE MINUTE
liglob.dat - many interesting thing, the most interesting thing: YOUR
ACCOUNT!
Type Offset (HEX) Name Description
ULONG $0000 MONEY SPEAKS FOR ITSELF
soldier.dat - soldiers, first starting at $10, every soldiers takes up $44
bytes of space, the soldiers end when the first character of
the name isn't A-Z or a-z or 0-9! (usually $22 = ")
Type Offset (HEX) Name Description
STRING $00 NAME SOLDIER'S NAME & FAMILY NAME
BYTE(or UBYTE) $1A TIMEUNITS SOLDIER'S TU
BYTE(or UBYTE) $1A STAMINA SOLDIER'S STAMINA
BYTE(or UBYTE) $1A HEALTH SOLDIER'S HEALTH
BYTE(or UBYTE) $24 BRAVERY SOLDIER'S BRAVERY (=$10-BRAV/10)
BYTE(or UBYTE) $1D REACTIONS SOLDIER'S REACTIONS
BYTE(or UBYTE) $1F FIRING SOLDIER'S FIRING ACCURARY
BYTE(or UBYTE) $20 THROWING SOLDIER'S THROWING ACCURACY
BYTE(or UBYTE) $1E STRENGTH SOLDIER'S STRENGTH
BYTE(or UBYTE) $22 PSI/STR. SOLDIER'S PSIONIC STRENGTH
BYTE(or UBYTE) $23 PSI/SKILL SOLDIER'S PSIONIC SKILLS
base.dat - data about every base; every base is $122 bytes long, first
starts at $0
Type Offset (HEX) Name Description
STRING $000 NAME NAME OF THE BASE
WORD $0D8 ELENIUM ELENIUM-115
WORD $110 A-ALLOYS ALIEN ALLOYS
WORD $100 UFO-PS UFO POWER SOURCE
WORD $102 UFO-NAV UFO NAVIGATION
WORD $0C2 H-PLASMA HEAVY PLASMA
WORD $0C4 H-P-CLIP HEAVY PLASMA CLIP
WORD $0C6 P-RIFLE PLASMA RIFLE
WORD $0C8 P-R-CLIP PLASMA RIFLE CLIP
WORD $0CA P-PISTOL PLASMA PISTOL
WORD $0CC P-P-CLIP PLASMA PISTOL CLIP
WORD $0D6 A-GRENADE ALIEN GRENADE
WORD $0B0 PSI-AMP PSI-AMP
WORD $0D2 SLAUNCHER SMALL LAUNCHER
WORD $0D4 STUN OMB STUN BOMB
WORD $0CE BLAUNCHER BLASTER LAUNCHER
WORD $0D0 BLASTBOMB BLASTER BOMB
There are some tricks to change even more:
1. To get to know more offsets in bases write from $60 to $110 increasing
words ($0001 $0002 $0003 $0004). It'll crash when you'll scroll too low
in base info->stores. But after setting some values to zero, you'll get
to know where are things like fusion ball ($72), fusion ball launcher
($66) and plasma beam ($6A) - cool, hah? That's how I did it, not by
manufacturing every element.
2. if you want to research some thing you have in another game, simply copy
research.dat from one to another.
3. try copying some files from one game to another and see what happens
(always backup the files you'll replace - it'll crash very often)
I think you've had enough to read, now you can cheat!