Enemy speeds

Completed patches for Keen3.
Post Reply
User avatar
levellord
Crazy pAtChEr
Posts: 1401
Joined: Thu Nov 20, 2003 11:35 pm
Location: NewZealand
Contact:

Enemy speeds

Post by levellord »

More to come soon.

Both a summary of existing topics and a few new additions:

Code: Select all

#Foob 
#Initial speed [right]
%patch $3E68 $32 $00
#Walking left
%patch $4AC4 $CE $FF
#Walking right
%patch $4AD0 $32 $00
#Running away right
%patch $4B6C $FA $00
#Running away left
%patch $4B74 $06 $FF

Code: Select all

#Vortikid
#Initial right speed IF vortikid is spawned higher in the level then Keen
%patch $3CDA $FA $00
#Initial [left] speed IF vortikid is spawned LOWER than Keen
%patch $3CD3 $06 $FF
#All three of these control the right speed after kid hits a wall
#Change at least one to edit.
#%patch $438C $FA $00
#%patch $43D4 $FA $00
#%patch $438C $FA $00
#Both of these control kid left speed after it hits a wall
#BOTH must be edited
%patch $4380 $06 $FF
%patch $43C8 $06 $FF

Code: Select all

#Vorticon
#A LEFT speed triggered by some variable. [Becomes default if vorticon does something.]
%patch $42A3 $5A $00
#Initial left speed [occasionally used.]
%patch $41D3 $A6 $FF
#A right speed sometimes used.
%patch $41DB $78 $00
#Vorticon left speed when touching a wall
%patch $41F9 $A6 $FF
#Vorticon left speed when  touching a wall
%patch $5CD6 $78 $00
#Vorticon right speed when touching a wall
%patch $4205 $5A $00

Code: Select all

#Vortimom
#Right AND left speed
#%patch $3D35 $FE $FF
#Right speed when touching a wall
%patch $44B2 $32 $00
#Left speed when touching a wall
%patch $44A6 $FE $FF

Code: Select all

#Vorticon elite
#Jumping right speed
%patch $4916 $FA $00
#Jumping left speed
%patch $4924 $06 $FF

Code: Select all

#Meep
#Meep left bullet speed
%patch $483A $38 $FF
#Meep right bullet speed
%patch $4855 $C8 $00

Code: Select all

#Vertical platforms
#Initial speed [until hits wall] = right
%patch $3FFB  $4B $00 
#Final speed right
%patch $4CA6  $4B $00
#Final speed left
%patch $4CC5  $B5 $FF

Code: Select all

#Horizontal platform speed
#Initial speed [until hits wall] = right
%patch $3FB9  $4B $00
#Final right speed
%patch $4C6A  $4B $00 
#Final left speed
%patch $4C89  $B5 $FF
Sppeds or speed related variable I haven't figured out yet:

%patch $3D3C $32 $00
%patch $3E61 $CE $FF
%patch $3C78 $5A $00
%patch $41E3 $5A $00
%patch $421b $5A $00
%patch $4270 $5A $00
%patch $3C71 $A6 $FF
%patch $4219 $A6 $FF
%patch $4264 $A6 $FF
%patch $3DA9 $78 $00
%patch $421D $78 $00
%patch $5ADF $78 $00
%patch $5B1B $78 $00
%patch $5B57 $78 $00
%patch $5B83 $78 $00

A brief explaination: These patches control the enemy speeds. SOmetimes a speed is used for bothe right and left speeds, often two different and opposite speeds are used. The higher the speed number, the faster, unless the number ends with $F# [i.e $B5 $FE, $06 $FF, etc] in which case it is negative. Using negative speeds will make an enemy walk backwards, or run toward Keen instead of away from him. [If used with shooting enemies, they then appear to shoot behind them.]

The $FF speeds are usually the 'negative' of their corresponding positive speeds. [For example $A6 $FF is the reverse of $5A $00] negative values are [usually] left, positive, right.

The speeds relating to 'when touching wall' usually make the sprite turn around when it hits a wall instead of dumbly trying to walk through it. If you make this small, the sprite will seem to 'stick' to the wall before escaping. If you make it zero it will stick permenantly.

If you have any questions about what a specific speed does, don't hesitate to ask.
Post Reply