home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #6 / amigamamagazinepolishissue1998.iso / polminet / wojciech_kocjan / ufocheat / ufocheat.txt < prev   
Text File  |  1996-09-20  |  8KB  |  191 lines

  1. Short:    Allows cheating in "UFO: Enemy ..." AGA
  2. Uploader: wkocjan@polbox.com (Wojciech Kocjan)
  3. Author:   wkocjan@polbox.com (Wojciech Kocjan)
  4. Type:     game/gag
  5. Version:  UFOCheat 1.00
  6.  
  7. This program is a good tool for those who are not good UFO players or would
  8. simply like to have mo' money, superhuman soldiers etc. Written in AMOSPro.
  9.  
  10. Some advices/warnings:
  11. - LOADING/SAVING GAMES: NEVER! save a game in a different slot! - the
  12.    program only loads some parts (files like soldier.dat, liglob.dat...)
  13. - MONEY: it's best to press the button "Sum = (by ???)" and enter the
  14.    monthly fundings you'd like to earn and enter the current cash amount,
  15.    otherwise you'd loose a month!
  16. - SOLDIERS: enable "Save automatically", then "Improve everyone" a couple
  17.    of times!
  18. - BASE STORES: enable "Save automatically", then you can enter the amount
  19.    of most important alien weapons and of Psi-Amps. Remember this:
  20.    Psi-Amps always work if your soldiers have Psionic Skills & Psi.Strength
  21.  
  22. That's all you have to know use it!
  23.  
  24. p.s. This program is mailware, if you like it, send me an e-mail.
  25.  
  26.                                                            Wojtek Kocjan
  27.                                                     (wkocjan@polbox.com)
  28.  
  29. ###########################################################################
  30.  
  31. More sophisticated text:
  32. (mostly for developers/programmers/advanced cheaters)
  33.  
  34. Here's an AMOS source of loader - shows where you can find most of things:
  35.  
  36. >    REQUEST : F$=Param$ : If F$='' : Pop Proc : End If 
  37. >    If Not Exist(F$+'saveinfo.dat') : Pop Proc : End If 
  38. >    GAMDIR$=F$
  39. >    
  40. >    Open In 1,GAMDIR$+'saveinfo.dat'
  41. >    I$=Input$(1,40) : VI=Varptr(I$)
  42. >    G_NAME$=Peek$(VI+2,16,Chr$(0))
  43. >    For I=0 To 5 : G_CZAS(I)=Deek(VI+$1C+I*2) : Next I
  44. >    Close 1 : G_CZAS(5)=G_CZAS(5)*5 : Inc G_CZAS(1)
  45. >    
  46. >    Open In 1,GAMDIR$+'diplom.dat'
  47. >    For Y=1 To 16 : Pof(1)=$2+(G_CZAS(1)*2)+(Y-1)*$24
  48. >       I$=Input$(1,$2) : MONEY(Y)=Deek(Varptr(I$))
  49. >    Next Y
  50. >    Close 1
  51. >    
  52. >    Open In 1,GAMDIR$+'liglob.dat'
  53. >    I$=Input$(1,8) : VP=Varptr(I$) : Close 1
  54. >    MONEY(0)=Leek(VP)
  55. >    
  56. >    Open In 1,GAMDIR$+'soldier.dat'
  57. >    I$=Input$(1,16)
  58. >    SOLDIERS=0 : Do 
  59. >       I$=Input$(1,68) : VI=Varptr(I$) : P=Asc(Upper$(Peek$(VI,1)))
  60. >       Exit If(((P>=$30) and(P<=$39)) or((P>=$41) and(P<=$5A)))=0
  61. >       STN=Instr(I$,Chr$(0))-1 : Exit If STN<0
  62. >       SOLDIER$(SOLDIERS)=Peek$(VI,STN)
  63. >       Restore _ADDR
  64. >       Read II : For I=0 To II-1 : Read _ADR
  65. >          _VAL=Peek(VI+_ADR) : Read VV
  66. >          S_PARAM(SOLDIERS,I)=VV
  67. >       Next I
  68. >    Inc SOLDIERS : Loop 
  69. >    For I=SOLDIERS To S_MAX-1 : SOLDIER$(I)='' : Next I
  70. >    Close 1
  71. >    
  72. >    Open In 1,GAMDIR$+'base.dat'
  73. >    BASES=0 : For B=0 To 7
  74. >       Pof(1)=B*$122 : I$=Input$(1,$122) : VI=Varptr(I$)
  75. >       Exit If Peek(VI)=0
  76. >       BASE$(B)=Peek$(VI,16,Chr$(0))
  77. >       Restore _BASE : Read II
  78. >       For I=0 To II-1
  79. >          Read _ADR : _VAL=Deek(VI+_ADR)
  80. >          Read VV : B_STORE(B,I)=VV
  81. >       Next I
  82. >    Inc BASES : Next B
  83. >    Close 1
  84. >    If BASES<8 : For B=BASES To 7 : BASE$(B)='' : Next B : End If 
  85. >    
  86. >    D_INFORMATION
  87. >    
  88. >    Pop Proc
  89. >    
  90. >    _ADDR:
  91. >    Data 10
  92. >    Data $1A,_VAL          < Time Units
  93. >    Data $1C,_VAL          < Stamina
  94. >    Data $1B,_VAL          < Health
  95. >    Data $24,(11-_VAL)*10  < Bravery
  96. >    Data $1D,_VAL          < Reactions
  97. >    Data $1F,_VAL          < Firing Accuracy
  98. >    Data $20,_VAL          < Throwing Accuracy
  99. >    Data $1E,_VAL          < Strength
  100. >    Data $22,_VAL          < Psionic Strength
  101. >    Data $23,_VAL          < Psionic Skills
  102. >
  103. >    _BASE:
  104. >    Data 16
  105. >    Data $D8,_VAL          < Elenium-115
  106. >    Data $110,_VAL         < Alien Alloys
  107. >    Data $100,_VAL         < UFO Power Source
  108. >    Data $102,_VAL         < UFO Navigation
  109. >    Data $C2,_VAL          < Heavy Plasma
  110. >    Data $C4,_VAL          < Heavy Plasma Clip
  111. >    Data $C6,_VAL          < Plasma Rifle
  112. >    Data $C8,_VAL          < Plasma Rifle Clip
  113. >    Data $CA,_VAL          < Plasma Pistol
  114. >    Data $CC,_VAL          < Plasma Pistol Clip
  115. >    Data $D6,_VAL          < Alien Grenade
  116. >    Data $B0,_VAL          < Psi-Amp
  117. >    Data $D2,_VAL          < Small Launcher
  118. >    Data $D4,_VAL          < Stun Bomb
  119. >    Data $CE,_VAL          < Blaster Launcher
  120. >    Data $D0,_VAL          < Blaster Bomb
  121.  
  122. On the bottom there's a list of soldiers' parameters and bases' stores.
  123.  
  124. Files:
  125. saveinfo.dat - all the data you want to know about the saved game itself.
  126. Type           Offset (HEX)   Name      Description
  127. STRING         $00            NAME      NAME OF THE SAVED GAME
  128. UWORD          $1C            YEAR      THE YEAR
  129. UWORD          $1E            MONTH     MONTH (JAN=0,FEB=1)
  130. UWORD          $20            DAY       DAY (1999/JAN/1=1,1999/FEB/1=2)
  131. UWORD          $22            HOUR      HOUR (00:00 = 0, 02:00=2)
  132. UWORD          $24            MINUTE    MINUTE
  133.  
  134. liglob.dat - many interesting thing, the most interesting thing: YOUR
  135.              ACCOUNT!
  136. Type           Offset (HEX)   Name      Description
  137. ULONG          $0000          MONEY     SPEAKS FOR ITSELF
  138.  
  139. soldier.dat - soldiers, first starting at $10, every soldiers takes up $44
  140.               bytes of space, the soldiers end when the first character of
  141.               the name isn't A-Z or a-z or 0-9! (usually $22 = ")
  142.  
  143. Type           Offset (HEX)   Name      Description
  144. STRING         $00            NAME      SOLDIER'S NAME & FAMILY NAME
  145. BYTE(or UBYTE) $1A            TIMEUNITS SOLDIER'S TU
  146. BYTE(or UBYTE) $1A            STAMINA   SOLDIER'S STAMINA
  147. BYTE(or UBYTE) $1A            HEALTH    SOLDIER'S HEALTH
  148. BYTE(or UBYTE) $24            BRAVERY   SOLDIER'S BRAVERY (=$10-BRAV/10)
  149. BYTE(or UBYTE) $1D            REACTIONS SOLDIER'S REACTIONS
  150. BYTE(or UBYTE) $1F            FIRING    SOLDIER'S FIRING ACCURARY
  151. BYTE(or UBYTE) $20            THROWING  SOLDIER'S THROWING ACCURACY
  152. BYTE(or UBYTE) $1E            STRENGTH  SOLDIER'S STRENGTH
  153. BYTE(or UBYTE) $22            PSI/STR.  SOLDIER'S PSIONIC STRENGTH
  154. BYTE(or UBYTE) $23            PSI/SKILL SOLDIER'S PSIONIC SKILLS
  155.  
  156. base.dat - data about every base; every base is $122 bytes long, first
  157.            starts at $0
  158.  
  159. Type           Offset (HEX)   Name      Description
  160. STRING         $000           NAME      NAME OF THE BASE
  161. WORD           $0D8           ELENIUM   ELENIUM-115
  162. WORD           $110           A-ALLOYS  ALIEN ALLOYS
  163. WORD           $100           UFO-PS    UFO POWER SOURCE
  164. WORD           $102           UFO-NAV   UFO NAVIGATION
  165. WORD           $0C2           H-PLASMA  HEAVY PLASMA
  166. WORD           $0C4           H-P-CLIP  HEAVY PLASMA CLIP
  167. WORD           $0C6           P-RIFLE   PLASMA RIFLE
  168. WORD           $0C8           P-R-CLIP  PLASMA RIFLE CLIP
  169. WORD           $0CA           P-PISTOL  PLASMA PISTOL
  170. WORD           $0CC           P-P-CLIP  PLASMA PISTOL CLIP
  171. WORD           $0D6           A-GRENADE ALIEN GRENADE
  172. WORD           $0B0           PSI-AMP   PSI-AMP
  173. WORD           $0D2           SLAUNCHER SMALL LAUNCHER
  174. WORD           $0D4           STUN OMB  STUN BOMB
  175. WORD           $0CE           BLAUNCHER BLASTER LAUNCHER
  176. WORD           $0D0           BLASTBOMB BLASTER BOMB
  177.  
  178. There are some tricks to change even more:
  179. 1. To get to know more offsets in bases write from $60 to $110 increasing
  180.    words ($0001 $0002 $0003 $0004). It'll crash when you'll scroll too low
  181.    in base info->stores. But after setting some values to zero, you'll get
  182.    to know where are things like fusion ball ($72), fusion ball launcher
  183.    ($66) and plasma beam ($6A) - cool, hah? That's how I did it, not by
  184.    manufacturing every element.
  185. 2. if you want to research some thing you have in another game, simply copy
  186.    research.dat from one to another.
  187. 3. try copying some files from one game to another and see what happens
  188.    (always backup the files you'll replace - it'll crash very often)
  189.  
  190. I think you've had enough to read, now you can cheat!
  191.