Skip to content

Instantly share code, notes, and snippets.

Created April 19, 2015 20:05
Show Gist options
  • Save anonymous/cf19d4e3c125be86289e to your computer and use it in GitHub Desktop.
Save anonymous/cf19d4e3c125be86289e to your computer and use it in GitHub Desktop.
title
Play this game by pasting the script in http://www.puzzlescript.net/editor.html
title Digging Game
author Alan Hazelden
homepage www.draknek.org
run_rules_on_level_start
again_interval 0.1
realtime_interval 0.05
verbose_logging
noaction
========
OBJECTS
========
NormalDirt
#8a5c23 #805520 #966426
00001
01020
00000
20100
00000
StaticDirt
#8a5c23 #805520 #966426
00001
01020
00000
20100
00000
LooseDirt
#7c5119 #805520 #966426 #915f1e
00201
13002
00230
01003
03020
Stone
grey lightgrey darkgrey
00001
01020
00000
20100
00000
Background
DarkBrown
PlayerL
#3c8ee7 #e6e4d5
..1..
.00..
..0..
.00..
.0.0.
PlayerR
#3c8ee7 #e6e4d5
..1..
..00.
..0..
..00.
.0.0.
PlayerCornerL1
#3c8ee7 #e6e4d5
.....
.....
.....
..100
...0.
PlayerCornerL2
#3c8ee7 #e6e4d5
.....
.....
.....
0....
0....
PlayerCornerL3
#3c8ee7 #e6e4d5
0....
.....
.....
.....
.....
PlayerCornerR1
#3c8ee7 #e6e4d5
.....
.....
.....
001..
.0...
PlayerCornerR2
#3c8ee7 #e6e4d5
.....
.....
.....
....0
....0
PlayerCornerR3
#3c8ee7 #e6e4d5
....0
.....
.....
.....
.....
DeadPlayer
transparent
FuturePlayer
transparent
OnGround
transparent
Sky
DarkBrown Green
11111
00000
00000
00000
00000
PlayerClimbingL
#3c8ee7 #e6e4d5
.1...
00...
.0...
00...
0....
PlayerClimbingR
#3c8ee7 #e6e4d5
...1.
...00
...0.
...0.
....0
(PlayerClimbing
#3c8ee7 #e6e4d5
..1..
.000.
..0..
..0..
.0.0.
Ladder
#d97d3c #f4c56a
.0.0.
.010.
.0.0.
.010.
.0.0.)
=======
LEGEND
=======
. = Background
# = NormalDirt
p = PlayerR and Sky
! = StaticDirt
? = LooseDirt
S = Stone
~ = NormalDirt and Sky
Player = PlayerL or PlayerR or DeadPlayer or PlayerCornerL1 or PlayerCornerR1 or PlayerClimbingL or PlayerClimbingR
Dirt = StaticDirt or NormalDirt or LooseDirt
CanFall = NormalDirt or LooseDirt or Stone
Solid = Dirt or Stone
PlayerCornerExtra = PlayerCornerL2 or PlayerCornerL3 or PlayerCornerR2 or PlayerCornerR3
PlayerClimbing = PlayerClimbingL or PlayerClimbingR
=======
SOUNDS
=======
(EndLevel 55891508
Player Move 82426907
Lift Move 47466509
Mirror Move 62036907
Boulder Move 62036907
Target Destroy 38934902)
(16126909)
================
COLLISIONLAYERS
================
Background
Sky
Player, FuturePlayer, PlayerCornerExtra
Dirt, Stone
OnGround
======
RULES
======
(dirt)
[ OnGround ] -> []
[ stationary Player ] [ StaticDirt no OnGround ] -> [ Player ] [ StaticDirt OnGround ]
[ stationary Player ] [ stationary CanFall ] -> [ Player ] [ action CanFall ]
startloop
down [ action CanFall | OnGround ] -> [ CanFall OnGround | OnGround ]
[ OnGround NormalDirt | action NormalDirt no OnGround ] -> [ OnGround NormalDirt | OnGround NormalDirt ]
[ OnGround Stone | action Stone no OnGround ] -> [ OnGround Stone | OnGround Stone ]
endloop
[ action NormalDirt ] -> [ action LooseDirt ]
[ action CanFall ] -> [ down CanFall ]
(player jumping/falling)
[ PlayerClimbingL ] -> [ up PlayerL ]
[ PlayerClimbingR ] -> [ up PlayerR ]
down [ stationary Player | no Solid ] -> [ | action Player ]
[ action Player ] -> [ Player ]
[ PlayerCornerL1 ] -> [ PlayerL ]
[ PlayerCornerR1 ] -> [ PlayerR ]
[ PlayerCornerExtra ] -> []
(Player pushing stone)
horizontal [ > Player | Stone ] -> cancel
vertical [ > Player | Stone ] -> cancel
(player digging)
[ moving DeadPlayer ] -> cancel
late [ Player CanFall ] -> [ CanFall DeadPlayer ]
[ left PlayerR ] -> [ PlayerL ]
[ right PlayerL ] -> [ PlayerR ]
up [ > Player | Dirt ] -> [ Player | ]
down [ > Player | Dirt ] -> [ | Player ]
[ > Player | Dirt ] -> [ Player | FuturePlayer ]
(Predict falling - don't move if we caused things to fall)
[ FuturePlayer ] [ StaticDirt no OnGround ] -> [ FuturePlayer ] [ StaticDirt OnGround ]
[ FuturePlayer ] [ stationary CanFall ] -> [ FuturePlayer ] [ action CanFall ]
startloop
down [ action CanFall | OnGround ] -> [ CanFall OnGround | OnGround ]
[ OnGround NormalDirt | action NormalDirt no OnGround ] -> [ OnGround NormalDirt | OnGround NormalDirt ]
[ OnGround Stone | action Stone no OnGround ] -> [ OnGround Stone | OnGround Stone ]
endloop
[ action CanFall ] [ FuturePlayer ] -> [ action CanFall ] []
[ FuturePlayer ] [ Player ] -> [ Player ] []
[ FuturePlayer ] -> []
(Climbing)
up [ > Player | no Solid ] -> [ | action Player ]
left [ action PlayerL | ] -> [ action PlayerL | FuturePlayer ]
right [ action PlayerR | ] -> [ action PlayerR | FuturePlayer ]
up [ FuturePlayer Solid | no Solid ] -> [ action FuturePlayer Solid | ]
up [ action FuturePlayer ] [ action PlayerL | no Solid ] -> [] [ PlayerClimbingL | ]
up [ action FuturePlayer ] [ action PlayerR | no Solid ] -> [] [ PlayerClimbingR | ]
[ FuturePlayer Solid ] [ action Player ] -> [ Solid ] [ Player ]
down [ FuturePlayer | no Solid ] [ action Player ] -> [ | ] [ Player ]
[ FuturePlayer ] -> []
left [ action PlayerL | no Solid ] -> [ PlayerCornerL2 | PlayerCornerL1 ] again
right [ action PlayerR | no Solid ] -> [ PlayerCornerR2 | PlayerCornerR1 ] again
down [ PlayerCornerL2 | ] -> [ PlayerCornerL2 | PlayerCornerL3 ]
down [ PlayerCornerR2 | ] -> [ PlayerCornerR2 | PlayerCornerR3 ]
late down [ Player | no Solid ] -> again
==============
WINCONDITIONS
==============
=======
LEVELS
=======
~~~~~~~~~p~~
############
############
############
############
############
############
############
############
############
############
!!!!!!!!!!!!
message Congrats! Thanks for playing :)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment