Patch:Score

From KeenWiki
Jump to: navigation, search

This page contains patches relating to Keen's score. Related patches are Patch:Extra Keen At, Patch:High Scores Patch:Scorebox and Patch:Items. Mostly this page will deal with Keen's in-game score and unusual things happening to it.


Contents

Disable score

These patches disable the score entirely. That is, when Keen gets items he is not given any points at all. This also disables the Extra Keen At code as well.

Patch: Keen 1
#Disable score (Free $0D53-$0DAF)
%patch $0D52 $C3

Patch: Keen 2
#Disable score (Free $0D53-$0DAF)
%patch $0D52 $C3

Patch: Keen 3
#Disable score (Free $0DC6-$0E21)
%patch $0DC5 $C3


Set score to zero

These patches set Keen's score to zero when certain things happen.


On dying\exiting level

The first patch here sets keen's score to zero when he dies. changing the first two bytes to $90 will also do this when he exits the level normally. (Unless something else is done with the score, this pretty much renders the score useless.) The second patch will also set keen's ammo to zero, by changing the brown highlighted ammo value using values from Patch:Game stats you can change what else is set to zero. It is also possible to set Keen's score (And other things) to other values by changing the blue highlighted values.

Patch: Keen 3
#Set score to 0 on death (Change first two to $90 to also clear on exit)
%patch $8DFE $EB $0C $C7 $06 $9D4AW $0000W $C7 $06 $9D4CW $0000W $E9 $FC80W $90 $90 $90 $90 $90 $90
#Set score and ammo to 0 on death (Change first two to $90 to also clear on exit)
%patch $8DFE $EB $0C $C7 $06 $9D48W $0000W $C7 $06 $9D4AW $0000W $C7 $06 $9D4CW $0000W $E9 $FC80W $90 $90

Patch: Keen 4
#Reset Keen's score to 0 on dying (But not game over.)
%patch $66BB $C7 $06 $7A50W $0000W $90 $90 $90 $90 $90 %patch $672D $BF $0001W $C7 $06 $7A52W $0000W $90


Dying removes any points got in level

This patch saves Keen's score when he enters a level, then, if he dies, resets the score to what it was. This means Keen can only get points on completing a level (Excluding the teleport to the secret level.) This means only a set number of points can be collected in a playthrough.

It can be seen that the variable stores is the low word of the score, this can be changed to store other things if desired.

Note that the Keen 4\5 patch uses the EGAGRAPH check skip and so is incompatible with any other patches that use this. The last two lines replace the Extra Keen At Score with the stored score for the players benefit, but are not necessary and can be removed. (Those two lines do not stop the player getting EKA bonuses.) Likewise the Keen 5 patch displays the stored score in Keen's scorebox. The Keen 6 patch disables the creature question.

Patch: Keen 1
#Reset score on death A
%patch $427D $66 $81 $06 $E2 $6E $00 $08 $00 $00 $66 $A1 $AF00W $66 $A3 $AACAW $90 $90
#Reset score on death B
%patch $42BB $66 $81 $06 $E2 $6E $00 $08 $00 $00 $66 $A1 $AF00W $66 $A3 $AACAW $90 $90
#Save score on level load
%patch $4BAE $66 $A1 $AACAW $66 $A3 $AF00W $66 $33 $C0 $66 $A3 $5135W $66 $A3 $563EW $A3 $5B14W $90

Patch: Keen 2
#Reset score on death A
%patch $70BF $66 $81 $06 $BE $6E $00 $08 $00 $00 $66 $A1 $AF00W $66 $A3 $9AE0W $90 $90
#Reset score on death B
%patch $70FD $66 $81 $06 $BE $6E $00 $08 $00 $00 $66 $A1 $AF00W $66 $A3 $9AE0W $90 $90
#Save score on level load
%patch $7912 $66 $A1 $9AE0W $66 $A3 $AF00W $66 $33 $C0 $66 $A3 $5111W $66 $A3 $561AW $A3 $5AF0W $90

Patch: Keen 3
#Reset score on death A
%patch $7928 $66 $81 $06 $0E $71 $00 $08 $00 $00 $66 $A1 $AF00W $66 $A3 $9D4AW $90 $90
#Reset score on death B
%patch $7965 $66 $81 $06 $0E $71 $00 $08 $00 $00 $66 $A1 $AF00W $66 $A3 $9D4AW $90 $90
#Save score on level load
%patch $81B7 $66 $A1 $9D4AW $66 $A3 $AF00W $66 $33 $C0 $66 $A3 $5361W $66 $A3 $586AW $A3 $5D40W $90

Patch: Keen 4
#Disable EGAGRAPH check (Frees 389 bytes at $3CF6)
%patch $3CE5 $90 $90
#Reset Keen's score when he dies
%patch $3CF6 $55 $8B $EC $56 $8B $76 $06 $A1 $7A4CW $A3 $7A50W $A1 $7A4EW $A3 $7A52W $5E $5D $CB
#Store Keen's score on level load
%patch $69E8 $A1 $7A50W $A3 $7A4CW $A1 $7A52W $A3 $7A4EW $EB $3D
#Call reset Keen's score on death
%patch $6727 $9A $037D0526RL $BF $0001W $EB $06
#Track stored score
%patch $7DFF $7A4EW
#Track stored score 1
%patch $7E03 $7A4CW
#Track stored score 2

Patch: Keen 5
#Disable EGAGRAPH check in Keen 5 (Frees 389 bytes at $3CF0)
%patch $3CDF $90 $90
#Reset Keen's score when he dies
%patch $3CF0 $55 $8B $EC $56 $8B $76 $06 $A1 $6F1EW $A3 $6F4EW $A1 $6F20W $A3 $6F50W $5E $5D $CB
#Store Keen's score on level load
%patch $69A3 $A1 $6F4EW $A3 $6F1EW $A1 $6F50W $A3 $6F20W $EB $3D
#Call reset Keen's score on death
%patch $66E2 $9A $037D0520RL $BF $0001W $EB $06
#Track stored score in scorebox
%patch $CE56 $6F1EW
#Score (low)
%patch $CE9A $6F20W
#Score (high)

Patch: Keen 6
#Skip creature question
%patch $1CC88 $90 $90
#Reset Keen's score when he dies
%patch $1CC93 $55 $8B $EC $56 $8B $76 $06 $A1 $7584W $A3 $7588W $A1 $7586W $A3 $758AW $5E $5D $CB
#Store Keen's score on level load
%patch $67D9 $A1 $7588W $A3 $7584W $A1 $758AW $A3 $7586W $EB $3D
#Call reset Keen's score on death
%patch $64F7 $9A $1A502793RL $BF $0001W $EB $06


Score at game start

When a new game is started the score is zero by default. This can be patched to any desired value.

Patch: Keen 4
#Starting score:
%patch $8A10 $9D4AW $0000W
#Score low
%patch $8A16 $9D4CW $0000W
#Score high


Track Score

This is a list of all the times the score value is referenced in Keen games. That is, all of the things the score variable is used for.

Patch: Keen 4
%patch $6B0B $7A52W $FF $36 $7A50W
%patch $6BB0 $7A52W $FF $36 $7A50W 
#Check if score can enter Keenest
%patch $7DA7 $7A52W $FF $36 $7A50W
#Status window
%patch $8ACA $7A50W $83 $16 $7A52W %patch $8AD9 $7A52W $8B $16 $7A50W %patch $DA7A $7A52W
#Scorebox related 1?
%patch $DA86 $7A50W
#Scorebox related 2?
%patch $DAD6 $7A52W $FF $36 $7A50W
#Scorebox
%patch $DB57 $7A52W %patch $DB5E $7A50W

Personal tools