Patch:F10 I Cheat

From KeenWiki
Jump to: navigation, search

The F10+I or items cheat in Keen Galaxy gives the player items when used. It differs from the B A T cheat in that it is a 'debug' cheat used by the developers to playtest the game, as opposed to something 'official' to be used by players. As it is entirely separate from the free item cheat it has potential patching applications.


Window

These patches alter the size of the cheat window and what text is displayed in it. The window setup is quite simple.

Patch: Keen 4
#Free items
%patch $7527 $0003W
#Window height
%patch $752B $000CW
#Window width
%patch $7537 $0521W
#Text called from
#Text
%patch $2F391 "Free items!" $00

Patch: Keen 5
#Free items
%patch $74DC $0003W
#Window height
%patch $74E0 $000CW
#Window width
%patch $74EC $049DW
#Text called from
#Text
%patch $307DD "Free items!" $00

Patch: Keen 6
#Free Items
%patch $72F6 $0003W
#Height
%patch $72FA $000CW
#Width
%patch $7306 $0499W
#Text called from
#Text
%patch $311C9 "Free items!" $00

Patch: Keen Dreams
%patch $3813 $0003W         
#Height of Item cheat box
%patch $3817 $000CW
#Width
%patch $3823 $00C7W
#Text read from
#Text
%patch $23B37 "Free items!" $00


Complete window code

This is the complete code for both the window and patch. The first line contains the condition that need to be met to activate the cheat. This is the I key being pressed. Setting this to $C647 will disable the cheat.

On the first and second lines the window's size is set up and its text loaded. Everything after this adds items. Lines 4 and 5 add ammo, lives and the Wetsuit, while line 6 increases Keen's score.

Patch: Keen 4
#Items window code
%patch $751A $83 $3E $C675W $00 $74 $60 $9A $1D060999RL $B8 $0003W $50 $B8 $000CW $50 $9A $19311070RL $83 $C4 $04 $B8 $0521W $50 $9A $19310E1FRL $83 $C4 $02 $33 $F6 $EB $0B $8B $DE $D1 $E3 $C7 $87 $7A60W $0063W $46 $83 $FE $04 $7C $F0 $C7 $06 $7A58W $0063W $C7 $06 $7A5CW $0001W $9A $1D060A9BRL $9A $14600EDFRL $B8 $0BB8W $50 $90 $0E $E8 $154DW $83 $C4 $02 $B8 $0001W $5F $5E $8B $E5 $5D $CB


Key that activates cheat

This patch alters what key activates the free items cheat. (See Patch:Scancodes.) By default this is 'i' Setting this to $C647 will disable the cheat in Keen 4.

Patch: Keen 4
#F10 + I key
%patch $751C $C675W

Patch: Keen 5
#F10 + I key
%patch $74D1 $BCDDW

Patch: Keen 6
#F10 + I key
%patch $72EB $C803W


Disable

This patch disables the F10 I cheat entirely.

Patch: Keen 4
#Disable F10-I
%patch $751F $EB

Patch: Keen 5
#Disable F10-I
%patch $74D4 $EB

Patch: Keen 6
#Disable F10-I
%patch $72EE $EB


Don't draw cheat window

This patch allows the Items cheat to work, but does not display the window or wait for a key (Remove the last five $90 to make the cheat wait for a key.) This means that the player can only see the effects by looking at their score box. (And also that by holding down F10 and I the player can make their score increase rapidly.) If the patch is altered to wait for a key this is less of an issue (And not really noticeable since the player is bound to press a key right after cheating.)

Patch: Keen 4
#Don't draw Items cheat window
%patch $7562 $90 $90 $90 $90 $90 $90 $90 $90 $90 $90

Patch: Keen 5
#Don't draw Items cheat window
%patch $7517 $90 $90 $90 $90 $90 $90 $90 $90 $90 $90

Patch: Keen 6
#Don't draw Items cheat window
%patch $7337 $90 $90 $90 $90 $90 $90 $90 $90 $90 $90


Items cheat affects

By default the items cheat gives Keen 'everything' including some points. However this is done in several ways. The ammunition is simply set to 99 and several miscellaneous items set to 1. Int he case of the gems however a certain value (99) is used for a starting item and three others (A total of four with this number being patchable.) Finally the score is increased by reference to the 'increase score' code.

Patches affecting what is changed require some knowledge of game stats. Notice that in Keen 6 you can stop an item being set to 1 by replacing its $A3 $xxxxW with $90 $90 $90

Patch: Keen 4
#Stuff changed
%patch $754C $7A60W $0063W
#Set gems to 99
%patch $7553 $04
#Four gems are affected
%patch $7558 $7A58W $0063W
#Shots set to
%patch $755E $7A5CW $0001W
#Wetsuit set to
%patch $756D $0BB8W
#Points given

Patch: Keen 5
#Stuff changed
%patch $7501 $6F60W $0063W
#Set gems to 99
%patch $7508 $04
#Four gems are affected
%patch $750D $6F56W $0063W
#Shots set to
%patch $7513 $6F5AW $0001W
#V card set to
%patch $7522 $0BB8W
#Points given

Patch: Keen 6
#Stuff changed
%patch $731B $759CW $0063W
#Set gems to 99
%patch $7322 $04
#Four gems are affected
%patch $7327 $7590W $0063W
#Shots set to
%patch $732C $0001W
#Set following to 1...
%patch $732E $A3 $7594W
#Sandwich
%patch $7331 $A3 $7596W
#Grappling hook
%patch $7334 $A3 $7598W
#Rocket card
%patch $7342 $0BB8W
#Points given

Patch: Keen Dreams
#Stuff changed
%patch $382F $711EW $0063W
#Bombs
%patch $3835 $711CW $0063W
#Bullets
%patch $383B $7122W $0063W
#Keys


Cheat doesn't affect stuff

Each line of the patches that follow stops the items cheat from affecting various items. (That is the amount Keen has will not be affected at all.) The patch affecting gems affects all four, to remove the effect from 1 or more gems, see the above section where the number of gems that are affected can be altered.

Patch: Keen 4
#Items cheat doesn't affect...
%patch $754A $EB $0A
#Gems
%patch $7556 $EB $04
#Shots
%patch $755C $EB $04
#Wetsuit
%patch $756C $EB $0A
#Points

Patch: Keen 5
#Items cheat doesn't affect...
%patch $74FF $EB $0A
#Gems
%patch $750B $EB $04
#Shots
%patch $7511 $EB $04
#V cards
%patch $7521 $EB $0A
#Points

Patch: Keen 6
#Items cheat doesn't affect...
%patch $7319 $EB $0A
#Gems
%patch $7325 $EB $04
#Shots
%patch $732E $90 $90 $90
#Sandwich
%patch $7331 $90 $90 $90
#Grappling hook
%patch $7334 $90 $90 $90
#Rocket card
%patch $7341 $EB $0A
#Points


Cheat increases some items instead of setting them

By default only Keen's points are increased by the items cheat, all other items are set to a specific value. So if Keen has more than 99 ammo, using the items cheat will actually decrease his ammo count. The following patches alter the cheat so that item counters are increased, so for example the ammunition patch causes Keen's shots to be increased by 99 each time the cheat is used. Notice that the maximum amount that an item can increase is $7F or 127.

Patch: Keen 4
#Items cheat increases Keen's ammo by 99 each time
%patch $7556 $83 $06 $7A58W $63 $90
#Items cheat increases Keen's wetsuit by 1 each time
%patch $755C $83 $06 $7A5CW $01 $90

Patch: Keen 5
#Items cheat increases Keen's ammo by 99 each time
%patch $750B $83 $06 $7A58W $63 $90
#Items cheat increases Keen's v cards by 1 each time
%patch $7511 $83 $06 $7A5CW $01 $90

Patch: Keen 6
#Items cheat increases Keen's ammo by 99 each time
%patch $7325 $83 $06 $7A58W $63 $90


Default cheat code

This is the complete code for the F10-I cheat. It contains, and is thus incompatible with, all the other patches on this page. It should hopefully be obvious where these patches fit into this patch.) Notice the two keys required to activate the cheat.

Note that this code cannot be 'transplanted' anywhere in the executable without adjusting the $E8 $154DW call appropriately. (See Patch:Jump conditions.)

Patch: Keen 4
#Items cheat code
%patch $751A $83 $3E $C675W $00 $74 $60 $9A $1D060999RL $B8 $0003W $50
#Check key
$B8 $000CW $50 $9A $19311070RL $83 $C4 $04 $B8 $0521W $50
#Draw window and text
$9A $19310E1FRL $83 $C4 $02 $33 $F6 $EB $0B $8B $DE $D1 $E3 $C7 $87 $7A60W $0063W $46 $83 $FE $04 $7C $F0 $C7 $06 $7A58W
#Give items
$0063W $C7 $06 $7A5CW $0001W $9A $1D060A9BRL $9A $14600EDFRL $B8 $0BB8W $50 $90 $0E $E8 $154DW $83 $C4 $02 $B8 $0001W
#Increase score
$5F $5E $8B $E5 $5D $CB

Patch: Keen 5
#Items cheat code
%patch $74CF $83 $3E $BCDDW $00 $74 $60 $9A $1E000995RL $B8 $0003W $50
#Check key
$B8 $000CW $50 $9A $19311070RL $83 $C4 $04 $B8 $049DW $50
#Draw window and text
$9A $1A2B0E1DRL $83 $C4 $02 $33 $F6 $EB $0B $8B $DE $D1 $E3 $C7 $87 $6F60W $0063W $46 $83 $FE $04 $7C $F0 $C7 $06 $6F56W
#Give items
$0063W $C7 $06 $6F5AW $0001W $9A $1E000A97RL $9A $155A0EDCRL $B8 $0BB8W $50 $90 $0E $E8 $1514W $83 $C4 $02 $B8 $0001W
#Increase score
$5F $5E $8B $E5 $5D $CB

Patch: Keen 6
#Items cheat code
%patch $72E9 $83 $3E $C803W $00 $74 $66 $9A $1CF709A3RL $B8 $0003W $50
#Check key
$B8 $000CW $50 $9A $118F81070RL $83 $C4 $04 $B8 $0499W $50
#Draw window and text
$9A $118F80E1FRL $83 $C4 $02 $33 $F6 $EB $0B $8B $DE $D1 $E3 $C7 $87 $759CW $0063W $46 $83 $FE $04 $7C $F0 $C7 $06 $7590W
#Give items
$0063W $B8 $0001W $A3 $7594W $A3 $7596W $A3 $7598W $9A $11CF70AA5RL $9A $114130EE0RL $B8 $0BB8W $50 $90 $0E $E8 $155CW $83 $C4 $02 $B8 $0001W $5F $5E $8B $E5 $5D $CB
#Increase score