Win game by shooting something
Posted: Tue Jul 21, 2009 2:35 pm
A subset of the several hundred patches I wrote today, I came across these while researching sprite collisions. Basically these allow you to win the game, exit a level, get the rocket card, and a few other things by shooting or touching a sprite.
The patches are stored here: http://levellord.toxicsheep.com/Index/K ... 20Patches/ in document 14 (Sprite collision 1) but I thought I'd make a topic to alert people to the possibilities and to answer any questions that may arise.
In the file is a list of various collision patches, dependent on a sprite being touched by Keen (2) or his shot (3) If we take one of these patches, say the Bloog's 'kill Keen' collision:
We can alter it so that touching the Bloog wins the level (You can still shoot the Bloog) Here, the first line is of interest to us.
We add 2 to the patch location then add a string to get this:
The '0x' we replace with any one of a number of values which have different effects:
So our final patch is:
Something similar can be done with most shootable sprites and can even be patched so that you can only win the game by making two sprites collide
Hope this fires a few imaginations!
The patches are stored here: http://levellord.toxicsheep.com/Index/K ... 20Patches/ in document 14 (Sprite collision 1) but I thought I'd make a topic to alert people to the possibilities and to answer any questions that may arise.
In the file is a list of various collision patches, dependent on a sprite being touched by Keen (2) or his shot (3) If we take one of these patches, say the Bloog's 'kill Keen' collision:
Code: Select all
%patch $108CB $02 #React [with Keen]
%patch $108CC $90 $90 #Always React
%patch $108CF $0AA213CARL #What to do [Kill Keen]
We add 2 to the patch location then add a string to get this:
Code: Select all
%patch $108CD $C7 $06 $AC $75 $0x $00 $5F $5E $5D $CB
Code: Select all
#What the '0x' does in the string:
$00: Nothing $01: Death window $02: Exit $03: Restart level
$04: Restart level $05: Restart level $06: Jerk screen $07: Win level
$08: Goto Demo $09: Sandwich $0A: Rope $0B: Card
$0C: Molly $0D: Win level $0E: Restart level $0F: Restart level
So our final patch is:
Code: Select all
#Bloog wins level when Keen touches it:
%patch $108CD $C7 $06 $AC $75 $07 $00 $5F $5E $5D $CB
Something similar can be done with most shootable sprites and can even be patched so that you can only win the game by making two sprites collide
Code: Select all
#Bloog must collide with a Gik (11) to win game:
#SIDE EFFECT: Bloog not deadly now
%patch $108CB $11 #This part looks for Gik, not Keen
%patch $108CD $C7 $06 $AC $75 $0C $00 $5F $5E $5D $CB
Hope this fires a few imaginations!