Skip to content

Instantly share code, notes, and snippets.

Created July 16, 2015 12:30
Show Gist options
  • Save anonymous/0e18106e703c860a67e2 to your computer and use it in GitHub Desktop.
Save anonymous/0e18106e703c860a67e2 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 Pebble game
author Alan Hazelden
homepage www.puzzlescript.net
(run_rules_on_level_start)
again_interval 0.1
realtime_interval 0.1
(key_repeat_interval 0.2)
========
OBJECTS
========
Background
LightBlue Blue
11111
11101
11111
10111
11111
Sand .
#dfcc4f yellow
11111
01111
11101
11111
10111
(Hole
#c5b446 #dfcc4f
11111
01111
11101
11111
10111
Crate
Brown Orange
00000
01110
01110
01110
00000)
Lily
Green LightGreen
.111.
10001
10001
10001
.111.
Ripple1
Blue LightBlue
00000
01110
01010
01110
00000
Ripple2
Blue LightBlue
01110
10001
10001
10001
01110
RippleH
Blue LightBlue
00000
00000
01110
00000
00000
RippleH2
Blue LightBlue
00000
01110
01010
01110
00000
RippleV
Blue LightBlue
00000
00100
00100
00100
00000
RippleV2
Blue LightBlue
00000
01110
01010
01110
00000
(WaterNew
white LightBlue
11111
01111
11101
11111
10111)
Target
DarkBlue Yellow Yellow
.111.
10201
12021
10201
.111.
Wall
BROWN DARKBROWN
00010
11111
01000
11111
00010
PlayerNormal
DarkRed #493c2b #000000
..0..
.111.
01110
02220
.2.2.
PlayerInWater
DarkRed #493c2b #000000
..0..
.111.
01110
02220
.....
Pebble1
Grey DarkGrey LightGrey
.....
..00.
.0001
.0111
...1.
SubmergedPebble
DarkGrey DarkBlue Blue
22222
22002
20001
20111
22212
Pebble2
Grey DarkGrey LightGrey
.....
..00.
.0001
.0111
...1.
U
transparent
D
transparent
L
transparent
R
transparent
AddLandLUD
Yellow
0....
.....
.....
.....
0....
AddLandLU
Yellow
0....
.....
.....
.....
.....
AddLandLD
Yellow
.....
.....
.....
.....
0....
AddLandRUD
Yellow
....0
.....
.....
.....
....0
AddLandRU
Yellow
....0
.....
.....
.....
.....
AddLandRD
Yellow
.....
.....
.....
.....
....0
RemoveLandLUD
Blue
0....
.....
.....
.....
0....
RemoveLandLU
Blue
0....
.....
.....
.....
.....
RemoveLandLD
Blue
.....
.....
.....
.....
0....
RemoveLandRUD
Blue
....0
.....
.....
.....
....0
RemoveLandRU
Blue
....0
.....
.....
.....
.....
RemoveLandRD
Blue
.....
.....
.....
.....
....0
FlowL1 ←
Blue LightBlue
10000
00000
00010
00000
00001
FlowL2
Blue LightBlue
00001
00000
00100
00000
00010
FlowL3
Blue LightBlue
00010
00000
01000
00000
00100
FlowL4
Blue LightBlue
00100
00000
10000
00000
01000
FlowL5
Blue LightBlue
01000
00000
00001
00000
10000
FlowR1 →
Blue LightBlue
00001
00000
01000
00000
10000
FlowR2
Blue LightBlue
10000
00000
00100
00000
01000
FlowR3
Blue LightBlue
01000
00000
00010
00000
00100
FlowR4
Blue LightBlue
00100
00000
00001
00000
00010
FlowR5
Blue LightBlue
00010
00000
10000
00000
00001
FlowU1 ↑
Blue LightBlue
00000
00100
00000
10000
00001
FlowU2
Blue LightBlue
00100
00000
10000
00001
00000
FlowU3
Blue LightBlue
00000
10000
00001
00000
00100
FlowU4
Blue LightBlue
10000
00001
00000
00100
00000
FlowU5
Blue LightBlue
00001
00000
00100
00000
10000
FlowD1 ↓
Blue LightBlue
10000
00001
00000
00100
00000
FlowD2
Blue LightBlue
00000
10000
00001
00000
00100
FlowD3
Blue LightBlue
00100
00000
10000
00001
00000
FlowD4
Blue LightBlue
00000
00100
00000
10000
00001
FlowD5
Blue LightBlue
00001
00000
00100
00000
10000
=======
LEGEND
=======
w = Background
Direction = U or D or L or R
Player = PlayerNormal or PlayerInWater
Pebble = Pebble1 or Pebble2
Ripple = Ripple1 or Ripple2 or RippleH or RippleV or RippleH2 or RippleV2
Floor = Lily or Sand or SubmergedPebble
FlowL = FlowL1 or FlowL2 or FlowL3 or FlowL4 or FlowL5
FlowR = FlowR1 or FlowR2 or FlowR3 or FlowR4 or FlowR5
FlowU = FlowU1 or FlowU2 or FlowU3 or FlowU4 or FlowU5
FlowD = FlowD1 or FlowD2 or FlowD3 or FlowD4 or FlowD5
Flow = FlowL or FlowR or FlowU or FlowD
# = Wall and Sand
P = PlayerNormal and Sand
* = Pebble1 and Sand
O = Lily
@ = Target and Sand
AddLandL = AddLandLUD or AddLandLU or AddLandLD
AddLandR = AddLandRUD or AddLandRU or AddLandRD
RemoveLandL = RemoveLandLUD or RemoveLandLU or RemoveLandLD
RemoveLandR = RemoveLandRUD or RemoveLandRU or RemoveLandRD
=======
SOUNDS
=======
Pebble MOVE 36772507
================
COLLISIONLAYERS
================
Background
Sand, SubmergedPebble, FlowL, FlowR, FlowU, FlowD
AddLandL, RemoveLandL
AddLandR, RemoveLandR
Ripple, Lily, Target
Player, Wall, Pebble
Direction
======
RULES
======
(Island border)
left [ no Sand no AddLandL | Sand ] -> [ no Sand AddLandLUD | Sand ]
right [ no Sand no AddLandR | Sand ] -> [ no Sand AddLandRUD | Sand ]
up [ AddLandLUD | no Sand ] -> [ AddLandLD | no Sand ]
up [ AddLandRUD | no Sand ] -> [ AddLandRD | no Sand ]
down [ AddLandLUD | no Sand ] -> [ AddLandLU | no Sand ]
down [ AddLandRUD | no Sand ] -> [ AddLandRU | no Sand ]
down [ AddLandLD | no Sand ] -> [ | no Sand ]
down [ AddLandRD | no Sand ] -> [ | no Sand ]
left [ Sand no RemoveLandL | no Sand ] -> [ Sand RemoveLandLUD | no Sand ]
right [ Sand no RemoveLandR | no Sand ] -> [ Sand RemoveLandRUD | no Sand ]
up [ RemoveLandLUD | Sand ] -> [ RemoveLandLD | Sand ]
up [ RemoveLandRUD | Sand ] -> [ RemoveLandRD | Sand ]
down [ RemoveLandLUD | Sand ] -> [ RemoveLandLU | Sand ]
down [ RemoveLandRUD | Sand ] -> [ RemoveLandRU | Sand ]
down [ RemoveLandLD | Sand ] -> [ | Sand ]
down [ RemoveLandRD | Sand ] -> [ | Sand ]
(Currents anim)
[ stationary Player ] [ stationary FlowL5 ] -> [Player] [ action FlowL1 ]
[ stationary Player ] [ stationary FlowL4 ] -> [Player] [ action FlowL5 ]
[ stationary Player ] [ stationary FlowL3 ] -> [Player] [ action FlowL4 ]
[ stationary Player ] [ stationary FlowL2 ] -> [Player] [ action FlowL3 ]
[ stationary Player ] [ stationary FlowL1 ] -> [Player] [ action FlowL2 ]
[ stationary Player ] [ stationary FlowR5 ] -> [Player] [ action FlowR1 ]
[ stationary Player ] [ stationary FlowR4 ] -> [Player] [ action FlowR5 ]
[ stationary Player ] [ stationary FlowR3 ] -> [Player] [ action FlowR4 ]
[ stationary Player ] [ stationary FlowR2 ] -> [Player] [ action FlowR3 ]
[ stationary Player ] [ stationary FlowR1 ] -> [Player] [ action FlowR2 ]
[ stationary Player ] [ stationary FlowU5 ] -> [Player] [ action FlowU1 ]
[ stationary Player ] [ stationary FlowU4 ] -> [Player] [ action FlowU5 ]
[ stationary Player ] [ stationary FlowU3 ] -> [Player] [ action FlowU4 ]
[ stationary Player ] [ stationary FlowU2 ] -> [Player] [ action FlowU3 ]
[ stationary Player ] [ stationary FlowU1 ] -> [Player] [ action FlowU2 ]
[ stationary Player ] [ stationary FlowD5 ] -> [Player] [ action FlowD1 ]
[ stationary Player ] [ stationary FlowD4 ] -> [Player] [ action FlowD5 ]
[ stationary Player ] [ stationary FlowD3 ] -> [Player] [ action FlowD4 ]
[ stationary Player ] [ stationary FlowD2 ] -> [Player] [ action FlowD3 ]
[ stationary Player ] [ stationary FlowD1 ] -> [Player] [ action FlowD2 ]
(Gameplay)
[ stationary Player ] [ FlowL5 Lily ] -> [Player] [ FlowL5 left Lily ]
[ stationary Player ] [ FlowR5 Lily ] -> [Player] [ FlowR5 right Lily ]
[ stationary Player ] [ FlowU5 Lily ] -> [Player] [ FlowU5 up Lily ]
[ stationary Player ] [ FlowD5 Lily ] -> [Player] [ FlowD5 down Lily ]
[ Ripple2 | stationary Lily no Flow ] -> [ Ripple2 | > Lily ]
horizontal [ RippleH2 | stationary Lily no Flow ] -> [ RippleH2 | > Lily ]
vertical [ RippleV2 | stationary Lily no Flow ] -> [ RippleV2 | > Lily ]
[ RippleH2 ] -> []
[ RippleV2 ] -> []
[ RippleH ] -> [ RippleH2 ]
[ RippleV ] -> [ RippleV2 ]
(horizontal [ Lily | RippleH | no Ripple2 ] -> [ Lily | | ]
vertical [ Lily | RippleV | no Ripple2 ] -> [ Lily | | ])
[ stationary Player ] [ Ripple2 ] -> [Player] []
[ stationary Player ] [ Ripple1 ] -> [Player] [ Ripple2 ]
horizontal [ > Lily Pebble no Flow | no Floor ] -> [ RippleH | Lily Pebble ]
horizontal [ > Lily Player no Flow | no Floor ] -> [ RippleH | Lily Player ]
horizontal [ > Lily no Flow | no Floor ] -> [ RippleH | Lily ]
vertical [ > Lily Pebble no Flow | no Floor ] -> [ RippleV | Lily Pebble ]
vertical [ > Lily Player no Flow | no Floor ] -> [ RippleV | Lily Player ]
vertical [ > Lily no Flow | no Floor ] -> [ RippleV | Lily ]
[ > Lily Pebble | no Floor ] -> [ | Lily Pebble ]
[ > Lily Player | no Floor ] -> [ | Lily Player ]
[ > Lily | no Floor ] -> [ | Lily ]
[ > Lily ] -> [ Lily ]
[ stationary Player ] [ U Pebble ] -> [Player] [ U up Pebble ]
[ stationary Player ] [ D Pebble ] -> [Player] [ D down Pebble ]
[ stationary Player ] [ L Pebble ] -> [Player] [ L left Pebble ]
[ stationary Player ] [ R Pebble ] -> [Player] [ R right Pebble ]
(eft [ > Player | no Floor ] -> [ Player | L Pebble2 ]
right [ > Player | no Floor ] -> [ Player | R Pebble2 ]
up [ > Player | no Floor ] -> [ Player | U Pebble2 ]
down [ > Player | no Floor ] -> [ Player | D Pebble2 ])
[ > Player | no Floor ] -> cancel
[ > Pebble Floor | stationary Pebble ] -> [ Pebble1 Floor | Pebble ]
[ > Pebble | stationary Pebble ] -> [ SubmergedPebble | Pebble ]
[ > Player | Pebble | Floor no Pebble ] -> [ > Player | | Pebble1 Floor ]
[ > Player | Pebble | no Floor ] -> [ > Player | > Pebble1 | ]
[ left Pebble ] -> [ L left Pebble ]
[ right Pebble ] -> [ R right Pebble ]
[ up Pebble ] -> [ U up Pebble ]
[ down Pebble ] -> [ D down Pebble ]
[ moving Pebble no Floor ] -> [ moving Pebble2 Ripple1 ]
[ > Pebble1 Direction | ] -> [ | Pebble2 Direction ]
[ > Pebble2 Direction | ] -> [ | Pebble1 Direction ]
[ stationary Pebble1 Direction Floor ] -> [ Pebble1 Floor ]
[ moving Pebble ] -> []
(late [ Player Water ] -> [ PlayerInWater Water ]
late [ Player no Water ] -> [ PlayerNormal no Water ])
==============
WINCONDITIONS
==============
All Player on Target
=======
LEVELS
=======
wwwwwwwwww
w....wwwww
w.*.wwwwww
w.p.wwwwow
w.*.wwowww
w..←←←←←←←
wwww.wwwww
www..wwwww
[email protected]
www...wwww
wwwwwwwwww
wwwwwwwwwwwwwwwwww
wwwwwwwwwwwwwwwwww
ww...w→→→→→↓ww.www
ww....↑wwww↓[email protected]
w....p↑wwow↓....ww
ww....↑wwww↓.ww.ww
ww.*.w↑←←←←←wwwwww
ww..wwwwwwwwwwwwww
wwwwwwwwwwwwwwwwww
wwwwwwwwww
wwwww...ww
w.....*.ww
w.*.wwwwww
w.p.wwwwww
w..wowwwww
w.wwwowwww
w↑wwwww..w
w↑←←←←[email protected]
w..www...w
w....w..ww
www....www
wwwwwwwwww
wwwwwwwwwwwww
wwwwwwwwwwwww
ww...wwwww..w
w...wwwow.*.w
[email protected]
w...www↓....w
ww.wwww↓..www
←←←←←←←←.wwww
wwwwwwwwwwwww
message Thanks for playing :)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment