Readable notes in Keen 4

Completed patches for Keen4.
Post Reply
levellass
Posts: 2997
Joined: Wed Oct 11, 2006 12:03 pm
Location: Ngaruawahia New Zealand

Readable notes in Keen 4

Post by levellass » Wed Dec 25, 2019 10:29 pm

Been meaning to post this. Something I made for a soon to be released project.

With this patch tiles of the type 'Switch for moving platforms -off' will produce a text window when Keen stands in front of them and presses the up arrow. (To keep Platform switches working just change both to the 'on' tile type.) The exact text displayed is given by an infoplane value placed one tile below the note (For reasons.) This allows a modder to put in any number of text messages and hints into the game.

If a mod decompresses the AUDIO file and can thus use the EGADICT for sound too they'll get about 1'000 bytes of text space to use. The window also plays a sound and has Keen's face in it.

Code: Select all

#Change 'Platform switch off' to 'Text message'
%patch $B997 $12 $83 $7E $FE $06 $75 $07 $C7 $45 $1C $0CB6W  $EB $05 $C7 $45 $1C
             $0DE2W  $EB $6C

#Text reading action = $0CB6W
%patch $2FB26 $00C4W $00C4W $0000W $0000W $0001W $0008W $0000W $0000W
              $12A61651RL   $00000000L    $0B801AA2RL   $0E00W

#Text reading behavior: loads the infoplane value into $00BEW
%patch $140B0 $CB
              $55 $8B $EC $83 $EC $10 $56 $57 $8B $76 $06 $8B $5C $32 $D1 $E3
              $8B $87 $25 $C9 $D1 $E8 $03 $44 $34 $89 $46 $F6 $8B $5E $F6 $D1
              $E3 $8E $06 $E9 $A7 $26 $8B $07 $05 $0012W  $89 $46 $FE $8B $5E
              $F6 $D1 $E3 $8E $06 $EB $A7 $26 $8B $07 $89 $46 $FC $B1 $08 $D3
              $E8 $4689W  $FA $8B $46 $FC $25 $00FFW  $89 $46 $F8 $B8 $0012W 
              $50 $9A $187409F1RL     $83 $C4 $02 $8B $46 $F8 $A3 $00BEW  $8B
              $46 $FA $A3 $00BFW  $9A $18740AFDRL     $9A $12A614CDRL     $B8 $006FW
              $50 $9A $12A61117RL     $83 $C4 $02 $B8 $0008W  $50 $B8 $001AW
              $50 $9A $19311070RL     $83 $C4 $04 $B8 $006FW  $50 $FF $36 $DE
              $A7 $A1 $33 $A5 $03 $06 $31 $A5 $2D $0030W  $50 $9A $1D060C79RL
                  $83 $C4 $06 $83 $2E $31 $A5 $30 $83 $06 $35 $A5 $0C $A1 $00BEW
                  $50 $9A $19310EBDRL     $83 $C4 $02 $9A $1D060A9BRL     $B8
              $001EW  $50 $9A $1E0A0AD3RL     $83 $C4 $02 $9A $146008A8RL   
              $9A $14600EDFRL     $9A $12A614EDRL     $9A $16540D59RL     $5F
              $5E $8B $E5 $5D $CB

#Nul value message for errors
%patch $2EE70 "   LASS" $00

Post Reply