Created
July 15, 2021 17:55
-
-
Save bvoq/90e8e26bfee1f943aaa993edac2d774d to your computer and use it in GitHub Desktop.
Winding sailor (PuzzleScript Script)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Play this game by pasting the script in http://www.puzzlescript.net/editor.html |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
title Winding sailor | |
author bvoq | |
homepage dekeyser.ch | |
background_color #255474 | |
text_color #caa786 | |
norepeat_action | |
run_rules_on_level_start | |
======== | |
OBJECTS | |
======== | |
buoy b | |
#ac3232 #847e87 | |
..... | |
..10. | |
..1.. | |
..0.. | |
.000. | |
Background | |
#5fcde4 #48bbd3 | |
00000 | |
00100 | |
01010 | |
10001 | |
00000 | |
land | |
#37946e #25855e | |
00000 | |
01000 | |
00000 | |
00010 | |
00000 | |
pontoon1 t | |
#8d614c #9e7650 | |
00000 | |
10101 | |
10101 | |
00000 | |
.0.0. | |
pontoon2 y | |
#8d614c #9e7650 | |
00000 | |
01010 | |
01010 | |
00000 | |
.0.0. | |
pontoon3 u | |
#8d614c #9e7650 | |
00000 | |
01110 | |
00000 | |
01110 | |
00000 | |
pontoon4 i | |
#8d614c #9e7650 | |
01110 | |
00000 | |
01110 | |
00000 | |
01110 | |
pontoon5 o | |
#8d614c #9e7650 | |
01110 | |
00000 | |
01110 | |
00000 | |
0...0 | |
mountain1 | |
#16724c | |
....0 | |
...00 | |
..000 | |
.0000 | |
00.0. | |
mountain2 | |
#16724c | |
00000 | |
00000 | |
00000 | |
00000 | |
0.0.0 | |
mountain3 | |
#16724c | |
0.... | |
00... | |
000.. | |
0000. | |
.0.00 | |
mountain4 | |
#16724c | |
..... | |
..... | |
..0.. | |
.000. | |
00000 | |
tree | |
#37946e #8d614c #16724c | |
00000 | |
00200 | |
02220 | |
00100 | |
00000 | |
mountain_blue1 | |
#306082 | |
00000 | |
00000 | |
00000 | |
00000 | |
..... | |
mountain_blue2 | |
#306082 #9badb7 | |
....1 | |
...11 | |
..110 | |
.0000 | |
00000 | |
mountain_blue3 | |
#306082 #9badb7 | |
1.... | |
11... | |
101.. | |
0000. | |
00000 | |
rock | |
#255474 #306082 #3f7296 #4e7ea1 | |
..13. | |
.0112 | |
00121 | |
01102 | |
.000. | |
coast_n | |
#37946e #25855e #caa786 | |
22222 | |
.222. | |
..... | |
..... | |
..... | |
coast_ne | |
#37946e #25855e #caa786 #5fcde4 | |
22223 | |
.2222 | |
...22 | |
...22 | |
....2 | |
coast_e | |
#37946e #25855e #caa786 | |
....2 | |
...22 | |
...22 | |
...22 | |
....2 | |
coast_se | |
#37946e #25855e #caa786 #5fcde4 | |
....2 | |
....2 | |
...22 | |
.2222 | |
22223 | |
coast_s | |
#37946e #25855e #caa786 | |
..... | |
..... | |
..... | |
.222. | |
22222 | |
coast_sw | |
#37946e #25855e #caa786 #5fcde4 | |
2.... | |
22... | |
22... | |
2222. | |
32222 | |
coast_w | |
#37946e #25855e #caa786 | |
2.... | |
22... | |
22... | |
22... | |
2.... | |
coast_nw | |
#37946e #25855e #caa786 #5fcde4 | |
32222 | |
2222. | |
22... | |
22... | |
2.... | |
house1 | |
#caa786 #8d614c #9e7650 | |
..000 | |
..000 | |
11111 | |
00000 | |
00020 | |
house2 | |
#caa786 #8d614c #9e7650 | |
..... | |
..... | |
..... | |
...1. | |
..111 | |
house3 | |
#caa786 #8d614c #9e7650 | |
..... | |
11111 | |
12121 | |
00000 | |
00000 | |
house4 | |
#caa786 #8d614c #9e7650 | |
..... | |
..1.. | |
.111. | |
.000. | |
.020. | |
movementR | |
green | |
.00.. | |
..00. | |
...00 | |
..00. | |
.00.. | |
movementL | |
green | |
..00. | |
.00.. | |
00... | |
.00.. | |
..00. | |
movementU | |
green | |
..0.. | |
.000. | |
00.00 | |
0...0 | |
..... | |
movementD | |
green | |
..... | |
0...0 | |
00.00 | |
.000. | |
..0.. | |
Plus | |
green white | |
00100 | |
00100 | |
11111 | |
00100 | |
00100 | |
Minus | |
red white | |
00000 | |
00000 | |
11111 | |
00000 | |
00000 | |
templatePlus | |
green white | |
00100 | |
00100 | |
11111 | |
00100 | |
00100 | |
templateMinus | |
red white | |
00000 | |
00000 | |
11111 | |
00000 | |
00000 | |
goalPlus | |
green white | |
00100 | |
00100 | |
11111 | |
00100 | |
00100 | |
goalMinus | |
red white | |
00000 | |
00000 | |
11111 | |
00000 | |
00000 | |
goalGold | |
yellow white | |
00100 | |
01010 | |
10001 | |
01010 | |
00100 | |
PlayerR | |
black red | |
..1.. | |
..11. | |
11111 | |
..11. | |
..1.. | |
PlayerL | |
black red | |
..1.. | |
.11.. | |
11111 | |
.11.. | |
..1.. | |
PlayerU | |
black red | |
..1.. | |
.111. | |
11111 | |
..1.. | |
..1.. | |
PlayerD | |
black red | |
..1.. | |
..1.. | |
11111 | |
.111. | |
..1.. | |
border | |
black | |
00000 | |
00000 | |
00000 | |
00000 | |
00000 | |
======= | |
LEGEND | |
======= | |
house = house1 or house2 or house3 or house4 | |
coast = coast_n or coast_ne or coast_e or coast_se or coast_s or coast_sw or coast_w or coast_nw | |
mountain = mountain1 or mountain2 or mountain3 or mountain4 | |
mountain_blue = mountain_blue1 or mountain_blue2 or mountain_blue3 | |
pontoon = pontoon1 or pontoon2 or pontoon3 or pontoon4 or pontoon5 | |
obstacle = land or rock or pontoon or border | |
Player = PlayerL or PlayerR or PlayerU or PlayerD | |
Movement = MovementL or MovementR or MovementD or MovementU or Plus or Minus | |
Goal = goalPlus or goalMinus or goalGold | |
Template = templatePlus or templateMinus | |
. = Background | |
P = PlayerR | |
# = border | |
w = land and coast_n | |
e = land and coast_ne | |
d = land and coast_e | |
c = land and coast_se | |
x = land and coast_s | |
z = land and coast_sw | |
a = land and coast_w | |
q = land and coast_nw | |
s = land | |
f = house1 and land | |
g = house2 and land | |
h = house3 and land | |
j = house4 and land | |
v = mountain1 and land | |
, = mountain2 and land | |
n = mountain3 and land | |
m = mountain4 and land | |
l = mountain_blue1 and land and mountain1 | |
; = mountain_blue1 and land and mountain3 | |
' = mountain_blue2 and land | |
ä = mountain_blue3 and land | |
ö = tree and land | |
r = rock | |
+ = goalPlus | |
- = goalMinus | |
0 = rock and playerr | |
======= | |
SOUNDS | |
======= | |
sfx0 81723507 (tight) | |
sfx1 59518507 (tighten sail) | |
sfx2 40408107 | |
sfx4 6725507(loose ) | |
sfx7 72434302 (boat crash) | |
sfx5 94572100 (pick up buoy) | |
sfx6 23834907(rudder change) | |
startlevel 51979900 | |
endgame 68419109 | |
================ | |
COLLISIONLAYERS | |
================ | |
Background | |
land, rock, pontoon | |
mountain_blue, tree | |
coast, house,mountain, buoy, templatePlus, templateMinus | |
movementu, movementr, movementl, movementd, plus, minus | |
Player, border, goalPlus, goalMinus, goalGold | |
====== | |
RULES | |
====== | |
(start of autotiling code- comment out for release version) | |
( up [ land no coast | no land ] -> [ land coast_n |] ) | |
( down [ land no coast | no land ] -> [ land coast_s |] ) | |
( right [ land no coast | no land ] -> [ land coast_e |] ) | |
( left [ land no coast | no land ] -> [ land coast_w |] ) | |
( right [coast_n | no land] -> [ coast_ne |] sfx6 ) | |
( left [coast_n | no land] -> [ coast_nw | ] sfx6 ) | |
( right [coast_s | no land] -> [ coast_se |] ) | |
( left [coast_s | no land] -> [ coast_sw | ] ) | |
(end of autotiling code- comment out for release version) | |
( [ moving player ]-> again ) | |
[goalGold] -> cancel | |
right [> Player | movementD | no Movement no obstacle ] -> [movementR | Plus templatePlus | PlayerR] sfx1 | |
right [> Player | movementU | no Movement no obstacle ] -> [movementR | Minus templateMinus | PlayerR] sfx0 | |
left [> Player | movementD | no Movement no obstacle ] -> [movementL | Minus templateMinus | PlayerL] sfx0 | |
left [> Player | movementU | no Movement no obstacle ] -> [movementL | Plus templatePlus | PlayerL] sfx1 | |
up [> Player | movementR | no Movement no obstacle] -> [movementU | Plus templatePlus | PlayerU] sfx1 | |
up [> Player | movementL | no Movement no obstacle] -> [movementU | Minus templateMinus | PlayerU] sfx0 | |
down [> Player | movementR | no Movement no obstacle] -> [movementD | Minus templateMinus | PlayerD] sfx0 | |
down [> Player | movementL | no Movement no obstacle] -> [movementD | Plus templatePlus | PlayerD] sfx1 | |
right [> Player | no Movement no obstacle] -> [movementR | PlayerR] sfx2 | |
left [> Player | no Movement no obstacle] -> [movementL | PlayerL] sfx2 | |
up [> Player | no Movement no obstacle] -> [movementU | PlayerU] sfx2 | |
down [> Player | no Movement no obstacle] -> [movementD | PlayerD] sfx2 | |
[> Player] -> cancel | |
right [templatePlus] [border | goalPlus] -> [ ] [border | ] | |
right [templateMinus] [border | goalMinus] -> [ ] [border | ] | |
[templatePlus] [Goal] -> [templatePlus][goalGold] sfx3 | |
[templateMinus][Goal] -> [templateMinus][goalGold] sfx3 | |
[templatePlus] -> [] | |
[templateMinus] -> [] | |
right [ no border no goal | goalPlus] -> [goalPlus | ] | |
+ right [ no border no goal | goalMinus] -> [goalMinus | ] | |
([goalGold] -> cancel) | |
============== | |
WINCONDITIONS | |
============== | |
no Goal | |
======= | |
LEVELS | |
======= | |
message level 1 - warmup | |
(not too difficult but nice) | |
P................. | |
.................. | |
.................. | |
.................. | |
.................. | |
.................. | |
.................. | |
.................. | |
.................. | |
################## | |
#+-+-+-+-+---+-+.# | |
message level 2 - optimist | |
P.... | |
..... | |
..... | |
..... | |
##### | |
#+++# | |
message level 3 - warmup, but more claustrophobic | |
(not too difficult but nice) | |
P................. | |
.................. | |
.................. | |
.................. | |
.................. | |
.................. | |
################## | |
#+-+-+-+-+---+-+.# | |
x(need to use your brain for this one) | |
message level 4 - stay positive | |
P................. | |
.................. | |
.................. | |
.................. | |
.................. | |
.................. | |
################## | |
#++++++++++++++++# | |
message level 5 - huh | |
.p... | |
..... | |
..... | |
##### | |
#+-+- | |
(???) | |
(need to use your brain for this one) | |
message level 6 - warmup, but even more claustrophobic | |
P................. | |
.................. | |
.................. | |
.................. | |
################## | |
#+-+-+-+-+---+-+.# | |
message level 7 - 4x4 fun | |
....rr | |
....rr | |
....rr | |
..p.rr | |
###### | |
#-++-# | |
message level 7 - beep boop beep | |
P.... | |
..... | |
...r. | |
..... | |
##### | |
#-+-# | |
message level 8 - boop beep boop | |
P.... | |
..... | |
...r. | |
..... | |
##### | |
#+-+# | |
message level 9 - argghhh symmetry | |
..... | |
..... | |
..... | |
pr... | |
##### | |
#+--+ | |
message level 10 - tricky initial conditions | |
...... | |
...... | |
....P. | |
...... | |
###### | |
#+---# | |
message level 11 - tricky everything | |
P...... | |
....... | |
....... | |
....... | |
####### | |
#+---+# | |
message level 12 - let's get trickier | |
P...... | |
....... | |
....... | |
....... | |
####### | |
#+--++# | |
message Congratulations: You're the windiest winder in town! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment