wet suit = Pogo stick

Request patches for Keens 4-6.
levellass
Posts: 2713
Joined: Wed Oct 11, 2006 12:03 pm
Location: Ngaruawahia New Zealand

Re: wet suit = Pogo stick

Post by levellass » Mon Apr 24, 2017 7:42 am

I'm currently waiting on about half a dozen other people, I'm providing patch knowhow for a group Keen modding, it was supposed to have been done by tomorrow but...

levellass
Posts: 2713
Joined: Wed Oct 11, 2006 12:03 pm
Location: Ngaruawahia New Zealand

Re: wet suit = Pogo stick

Post by levellass » Sun May 21, 2017 2:22 am

Keen 6 version:

Code: Select all

#Rewrite HandleInput to not pogo without Grappling Hook
%patch $8927 $3B
%patch $8920 $42
%patch $8959 $75 $06 $C7 $06 $C74DW  $0000W  $5D $CB $83 $3E $C75DW  $00 $75
             $0A $83 $3E $35D6W  $00 $75 $03 $E9 $008BW  $83 $3E $A954W  $00
             $74 $1D $83 $3E $A956W  $00 $74 $16 $C7 $06 $C74FW  $0001W  $33
             $C0 $A3 $C751W  $A3 $C755W  $A3 $C753W  $A3 $C757W  $5D $CB $33
             $C0 $A3 $C74DW  $A3 $C74FW  $83 $3E $A954W  $00 $74 $08 $C7 $06
             $C757W  $0001W  $EB $08 $33 $C0 $A3 $C755W  $A3 $C757W  $83 $3E
             $A956W  $00 $74 $22 $83 $3E $7596W  $00 $74 $19 $83 $3E $A97FW
             $08 $7F $0C $A1 $A97FW  $03 $06 $A6DAW  $A3 $A97FW  $5D $CB $C7
             $06 $C753W  $0001W  $5D $CB $83 $3E $A97FW  $00 $74 $08 $C7 $06
             $C753W  $0001W  $EB $08 $33 $C0 $A3 $C751W  $A3 $C753W  $C7 $06
             $A97FW  $0000W  $5D $CB $A1 $A954W  $A3 $C757W  $A1 $A956W  $83
             $3E $7596W  $00 $74 $03 $A3 $C753W  $A0 $DA $02 $B4 $00 $D1 $E0
             $8B $D8 $8B $87 $C7D5W  $A3 $C74FW  $33 $C0 $83 $3E $C757W  $00
             $75 $03 $A3 $C755W  $83 $3E $C753W  $00 $75 $03 $A3 $C751W  $83
             $3E $C74FW  $00 $75 $03 $A3 $C74DW  $5D $CB

#Force 2-button firing -OPTIONAL
%patch $896F $EB

User avatar
Bubzrulz
Posts: 172
Joined: Thu Dec 22, 2016 12:37 pm
Location: N.S.W AUSTRAILA

Re: wet suit = Pogo stick

Post by Bubzrulz » Mon May 22, 2017 3:38 am

cheers works a treat now i cant find a patch for dont exit level when u get the rope ?

User avatar
Gridlock
Posts: 70
Joined: Sat Feb 05, 2011 7:04 am

Re: wet suit = Pogo stick

Post by Gridlock » Mon Jul 31, 2017 10:00 pm

I was looking for a wetsuit pogo patch myself for a small K4 experiment, and I before I realized this topic existed I tried writing it myself by modifying patches on the Keenwiki.

http://www.shikadi.net/keenwiki/Patch:K ... s_he_wants

This led to me discovering a pole-related bug with the code posted there, so I figured I'd share in case this is useful.

Here was my attempt at writing the patch:

Code: Select all

#Keen cannot pogo before getting an the wetsuit
#
#Disable F10-B and insert New Keen start pogo code
%patch $73B4 $E9 $0095W  $55 $8B $EC $56 $8B $76 $06 $C7 $44 $18 $FFD0W  $8B
             $44 $18 $BA $06 $00 $F7 $EA $A3 $21 $C9 $C7 $06 $BB $CA $0018W
             $B8 $0007W  $50 $9A $187409F1RL     $83 $C4 $02 $5E $5D $CB

#Change start_pogo behavior
%patch $2FF8C $06BD07E7RL

#No pogo while standing until wetsuit
%patch $BB14 $83 $3E $7A5CW  $00 $74 $29 $C7 $06 $C3 $C5 $0001W $B8 $0002W
             $50 $9A $187409F1RL $83 $C4 $02 $C7 $44 $1C $110CW $C7 $44 $16
             $0000W  $C7 $44 $18 $FFD0W  $5E $5D $CB

#No pogo while walking until wetsuit
%patch $BF2D $83 $3E $7A5CW  $00 $74 $30 $C7 $06 $C3 $C5 $0001W  $C7 $44 $1C
             $110CW  $B8 $0002W  $50 $9A $187409F1RL $83 $C4 $02 $8B $44 $0E
             $B1 $04 $D3 $E0 $89 $44 $16 $C7 $44 $18 $FFD0W  $5E $8B $E5 $5D $CB

# BUG!!! - Keen will always latch onto a pole, even if the player isn't pressing up. Pressing jump will always cause Keen to jump up and latch on a higher position on the pole, even if the pole tiles end. 
#No pogo in air until wetsuit
%patch $C49B $22 $83 $3E $C3 $C5 $00 $75 $1B $83 $3E $7A5CW  $00 $74 $14 $C7
             $06 $C3 $C5 $0001W  $C7 $44 $1C $112AW  $C7 $06 $BB $CA $0000W
             $5E $5D $CB

#Wetsuit doesn't win level
%patch $12A30 $55 $8B $EC $56 $57 $8B $7E $06 $8B $76 $08 $83 $3C $02 $75 $2A
              $C7 $06 $7A5CW  $0001W  $B8 $002DW  $50 $9A $187409F1RL     $83
              $C4 $02 $9A $0E8F0AE2RL     $9A $16540D59RL     $57 $9A $06BD1E8BRL
                      $83 $C4 $02 $9A $16540D59RL        $5F $5E $5D $CB
Specifically, the problem appears to lie in this block:

Code: Select all

#No pogo in air until wetsuit
%patch $C49B $22 $83 $3E $C3 $C5 $00 $75 $1B $83 $3E $7A5CW  $00 $74 $14 $C7
             $06 $C3 $C5 $0001W  $C7 $44 $1C $112AW  $C7 $06 $BB $CA $0000W
             $5E $5D $CB
The "No pogo in air until wetsuit" appears to mess up Keen's interaction with poles. Keen will automatically grab onto any pole that the player jumps by, even if the "up" key isn't pressed. Also, pressing the jump key while holding onto the pole will cause Keen to jump up a little and immediately grab back onto the pole (normally he should just fall unless the player presses "up" again). This can also be used to glitch Keen into grabbing non-pole tiles above where a pole ends. Interestingly, I also patched the world map to behave (mostly) like a normal level, and the pole bug doesn't happen there.

Just wanted to bring this up in case anyone wants to use the Keenwiki patch to enable the pogo via a different condition.

levellass
Posts: 2713
Joined: Wed Oct 11, 2006 12:03 pm
Location: Ngaruawahia New Zealand

Re: wet suit = Pogo stick

Post by levellass » Wed Aug 02, 2017 7:37 am

Yeah, there's a few variables that the game uses to see what Keen is doing, some of which differ on the map (For example the map x,y co-ords are used for other things in normal levels.) I figured it was best to go to the HandleInput directly rather than try and mess with Keen's pogoing code, there was enough redundancy in it to insert new code without messing up anything else.

Post Reply