Skip to content

Instantly share code, notes, and snippets.

@jcmiller11
Last active January 17, 2022 03:47
Show Gist options
  • Select an option

  • Save jcmiller11/5df5681f29f10f55608a4e99020ea82c to your computer and use it in GitHub Desktop.

Select an option

Save jcmiller11/5df5681f29f10f55608a4e99020ea82c to your computer and use it in GitHub Desktop.
Hookshot Thing (PuzzleScript Script)
Play this game by pasting the script in http://www.puzzlescript.net/editor.html
title Hookshot Thing
author jcGyo
homepage www.puzzlescript.net
again_interval 0.03
========
OBJECTS
========
Background
LIGHTGREEN GREEN
11111
01111
11101
11111
10111
Hole
Black
(Gotta do two death screen tiles to get that proper dither in 5x5)
Dead1
Red
.0.0.
0.0.0
.0.0.
0.0.0
.0.0.
Dead2
Red
0.0.0
.0.0.
0.0.0
.0.0.
0.0.0
Wall
BROWN DARKBROWN
00010
11111
01000
11111
00010
(HEY Remember me?? I'm the dude from Treasure Hunt)
PlayerU
darkgreen orange Brown White
.222.
12221
10001
.000.
.2.2.
PlayerD
darkgreen orange Brown White
.222.
13131
10001
.000.
.2.2.
PlayerL
darkgreen orange Brown White
.222.
.312.
.010.
.000.
..22.
PlayerR
darkgreen orange Brown White
.222.
.213.
.010.
.000.
.22..
Crate
Orange
00000
0...0
0...0
0...0
00000
HookR
grey
..0..
...0.
00000
...0.
..0..
HookL
grey
..0..
.0...
00000
.0...
..0..
HookU
grey
..0..
.000.
0.0.0
..0..
..0..
HookD
grey
..0..
..0..
0.0.0
.000.
..0..
LineH
grey
.....
.....
00000
.....
.....
LineV
grey
..0..
..0..
..0..
..0..
..0..
Goal
yellow
00000
00.00
0.0.0
00.00
00000
Puller
transparent
=======
LEGEND
=======
. = Background
# = Wall
P = PlayerD
* = Crate
O = Hole
@ = Goal
Dead = Dead1 or Dead2
Player = PlayerU or PlayerD or PlayerL or PlayerR
Hook = HookR or HookL or HookU or HookD
Line = LineH or LineV
=======
SOUNDS
=======
Crate MOVE 36772507
Crate DESTROY 31385104
SFX0 34957907
SFX1 68550107
================
COLLISIONLAYERS
================
Background
Hole, Goal
Player, Wall, Crate
Hook, Line
Dead, Puller
======
RULES
======
(Change player sprite direction)
[UP Player] -> [UP PlayerU]
[DOWN Player] -> [DOWN PlayerD]
[LEFT Player] -> [LEFT PlayerL]
[RIGHT Player] -> [RIGHT PlayerR]
(Destroy the HOOKS)
[moving Player] [Line] -> [moving Player] []
[moving Player] [Hook] -> [moving Player] []
(Extend the HOOKS)
RANDOM RIGHT [HookR|] -> [LineH|HookR] again SFX0
RANDOM LEFT [HookL|] -> [LineH|HookL] again SFX0
RANDOM UP [HookU|] -> [LineV|HookU] again SFX0
RANDOM DOWN [HookD|] -> [LineV|HookD] again SFX0
(Deploy the HOOKS)
RIGHT [ACTION PlayerR|] -> [PlayerR|HookR] again SFX0
LEFT [ACTION PlayerL|] -> [PlayerL|HookL] again SFX0
UP [ACTION PlayerU|] -> [PlayerU|HookU] again SFX0
DOWN [ACTION PlayerD|] -> [PlayerD|HookD] again SFX0
(Catch the CRATES)
LATE [Hook Crate] -> [Crate]
(Pull the DUDE)
HORIZONTAL[LineH|Crate NO Hook] -> [LineH Puller|Crate] SFX1
VERTICAL [LineV|Crate NO Hook] -> [LineV Puller|Crate] SFX1
HORIZONTAL[LineH NO Puller|LineH Puller] -> [LineH Puller|LineH Puller]
VERTICAL [LineV NO Puller|LineV Puller] -> [LineV Puller|LineV Puller]
RANDOM [Player|Puller Line] -> [|Player] again
(Push the CRATES)
[ > Player | Crate ] -> [ > Player | > Crate ]
(Stuff falls in the HOLES)
LATE [Crate Hole] -> [Hole]
(Dumb hack to make you hookshot OVER the HOLES)
LATE RIGHT [PlayerR Hole|NO Line] [Background] -> [Hole|] [PlayerR Dead1]
LATE LEFT [PlayerL Hole|NO Line] [Background] -> [Hole|] [PlayerL Dead1]
LATE UP [PlayerU Hole|NO Line] [Background] -> [Hole|] [PlayerU Dead1]
LATE DOWN [PlayerD Hole|NO Line] [Background] -> [Hole|] [PlayerD Dead1]
LATE [Player Dead1] -> [Dead1] message Oops, you died, press Z to undo or R to restart
(Make the death screen)
LATE [Dead1|NO Dead] -> [Dead1|Dead1]
(Thanks to Chris Pickel, I took these lines straight from their game Mad Queens)
LATE RIGHT DOWN [Dead1|Dead1] -> [Dead1|Dead2]
LATE DOWN [Dead2|Dead2] -> [Dead2|Dead1]
==============
WINCONDITIONS
==============
ALL Goal on Player
=======
LEVELS
=======
(Please insert real levels)
############
#.....*....#
#..........#
#.*........#
#........*.#
#OOOO*.....#
#...OO.....#
#...*OOOOOO#
#..OOOOOO..#
#*..OOP.*.@#
############
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment