Skip to content

Instantly share code, notes, and snippets.

@JackLance
Last active September 9, 2020 18:23
Show Gist options
  • Save JackLance/8ce17fa9c923970b96baf8b7af2a540e to your computer and use it in GitHub Desktop.
Save JackLance/8ce17fa9c923970b96baf8b7af2a540e to your computer and use it in GitHub Desktop.
Heroes of Sokoban (PuzzleScript Script)
Play this game by pasting the script in http://www.puzzlescript.net/editor.html
title Heroes of Sokoban
author Jonah Ostroff
text_color yellow
key_repeat_interval 0.25
========
OBJECTS
========
Background
#AAAAAA #DDDDDD
00000
00100
00000
00010
00000
Goal
Brown Yellow
.000.
00000
00010
00000
00000
Wall
Darkgrey #222222
01000
11111
00010
00010
11111
Fighter
#FF4444 Pink DarkBrown
.000.
.111.
00000
.000.
.2.2.
Wizard
#2266FF Pink
.000.
.010.
00000
.000.
00000
Thief
#00BB00 Pink DarkBrown
.000.
.010.
00000
.0.0.
.0.0.
SFighter
#880000 Pink DarkBrown
.000.
.111.
00000
.000.
.2.2.
SWizard
#000088 Pink
.000.
.010.
00000
.000.
00000
SThief
#006600 Pink DarkBrown
.000.
.010.
00000
.0.0.
.0.0.
Crate
Orange #552200
.111.
10001
10001
10001
.111.
YellowSwitch
Yellow Black
.....
.111.
.101.
.111.
.....
YellowOpen
Yellow
0...0
.....
.....
.....
0...0
YellowDoor
Yellow #AA7722
01010
10001
00000
10001
01010
PurpleSwitch
#6611CC Black
.....
.111.
.101.
.111.
.....
PurpleDoor
#6611CC #220088
01010
10001
00000
10001
01010
PurpleOpen
#6611CC
0...0
.....
.....
.....
0...0
Temp
Pink
ShadowDoor
Purple
=======
LEGEND
=======
Player = Fighter or Wizard or Thief
SPlayer = Swizard or Sthief or SFighter
Hero = Player or Splayer
ClosedDoor = PurpleDoor or YellowDoor
OpenDoor = YellowOpen or PurpleOpen
Switch = PurpleSwitch or YellowSwitch
Moveable = Crate or SPlayer
Static = Wall or ClosedDoor
Weighing = Crate or Player or SPlayer
. = Background
# = Wall
F = Fighter
W = Wizard
T = Thief
1 = SFighter
2 = SThief
3 = SWizard
* = Crate
G = Goal
[ = YellowDoor
] = PurpleDoor
{ = YellowSwitch
} = PurpleSwitch
=======
SOUNDS
=======
Moveable move 82056307
Sfx0 21221308
Endlevel 36315908
Sfx1 66399906
Sfx2 92172900
Sfx3 15129100
EndGame 86793500
================
COLLISIONLAYERS
================
Background
Temp
Goal, Switch, OpenDoor, ShadowDoor
ClosedDoor, Hero, Crate, Wall
======
RULES
======
[ > Fighter | Moveable ] -> [ > Fighter | > Moveable ]
[ > Moveable | Moveable ] [ Fighter] -> [ > Moveable | > Moveable ] [ Fighter]
[ < Thief | Moveable ] -> [ < Thief | < Moveable ]
[ > Wizard ] -> [ Wizard > Temp]
[ > Temp | no Moveable no Static] -> [ | > Temp]
[ > Temp | Static] [Wizard] -> [ | Static ] [> Wizard]
[ > Temp | Moveable ] [Wizard] -> [ | Wizard Sfx0] [Moveable]
Late [Temp] -> []
[ Action Fighter] [SThief] -> [SFighter] [Thief Sfx1]
[ Action Thief] [SWizard] -> [SThief] [Wizard Sfx1]
[ Action Wizard] [SFighter] -> [SWizard] [Fighter Sfx1]
[ Action Fighter] [no SThief] [SWizard] -> [SFighter] [no SThief] [Wizard Sfx1]
[ Action Thief] [no Swizard] [SFighter] -> [SThief] [no SWizard] [Fighter Sfx1]
[ Action Wizard] [no SFighter] [SThief] -> [SWizard] [no SFighter] [Thief Sfx1]
late [Weighing YellowSwitch] [YellowDoor] -> [Weighing YellowSwitch] [ShadowDoor]
late [YellowSwitch no Weighing] [YellowOpen] -> [YellowSwitch] [YellowDoor sfx2]
late [YellowSwitch no Weighing] [ShadowDoor] -> [YellowSwitch] [YellowDoor]
late [ShadowDoor] -> [YellowOpen sfx3]
late [Weighing PurpleSwitch] [PurpleDoor] -> [Weighing PurpleSwitch] [ShadowDoor]
late [PurpleSwitch no Weighing] [PurpleOpen] -> [PurpleSwitch] [PurpleDoor sfx2]
late [PurpleSwitch no Weighing] [ShadowDoor] -> [PurpleSwitch] [PurpleDoor]
late [ShadowDoor] -> [PurpleOpen sfx3]
==============
WINCONDITIONS
==============
All Hero on Goal
All Goal on Hero
=======
LEVELS
=======
#################
#######.......[g#
#######.......[[#
#######..*****..#
#######..*...*..#
#######..*...*..#
#######..*...*..#
#........*****..#
#...............#
#..{{{{{........#
#..{...{..#######
#..{.w.{..#######
#..{...{..#######
#..{{{{{..#######
#.........#######
#.........#######
#################
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment