Skip to content

Instantly share code, notes, and snippets.

Created May 25, 2017 15:54
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save anonymous/f7c39fba8eb055248685eb899da2d0c4 to your computer and use it in GitHub Desktop.
Save anonymous/f7c39fba8eb055248685eb899da2d0c4 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 Axe & Islands w/ Logs Sideways on Stumps
author doggo collective
noaction
run_rules_on_level_start
(verbose_logging)
========
OBJECTS
========
Background
Blue
Land
Yellow
Quicksave
#f7de4d
.....
.0.0.
..0..
.0.0.
.....
PlayerNormal
Orange Red Brown LightGrey
..0..
.111.
02223
.1133
.0.0.
PlayerBalancingTop
Orange Red Brown LightGrey
.....
.....
.....
..0..
.111.
PlayerBalancing
Orange Red Brown LightGrey
02223
.1133
.0.0.
.....
.....
TreeTop
Brown LightGreen
.....
...1.
1.1..
.111.
110.1
Tree
Brown LightGreen
100..
.00..
.00..
.00..
.....
TreeStump
Brown LightBrown LightGreen
...2.
21122
211..
.00..
..22.
LogV
Brown LightBrown
.00..
.00..
.00..
.00..
.00..
LogVOnTreeStumpTop
Brown LightBrown
.....
.....
.....
.....
.00..
LogVOnTreeStump
Brown LightBrown
.00..
.00..
.00..
.00..
.....
LogH
Brown
.....
.....
00000
00000
.....
LogHOnTreeStump
Brown #844f15
.....
00000
00000
.11..
.....
LogStanding
Brown LightBrown
.11..
.00..
.00..
.00..
.....
LogStandingTop
Brown LightBrown
.....
.....
.....
.....
.11..
LogStandingOnTreeStump
Brown #844f15
.00..
.00..
.00..
.11..
.....
LogStandingOnTreeStumpTop
Brown LightBrown
.....
.....
.....
.11..
.11..
RaftVOnLand
Brown LightBrown DarkBrown
00.00
22222
00.00
22222
00.00
(11.11
11211)
RaftHOnLand
Brown LightBrown DarkBrown
02020
02020
.2.2.
02020
02020
LogVInWater
DarkBrown Brown
.00..
.00..
.00..
.00..
.00..
LogHInWater
DarkBrown
.....
.....
00000
00000
.....
RaftV
DarkBrown darkblue
00.00
11111
00.00
11111
00.00
RaftH
DarkBrown darkblue
01010
01010
.1.1.
01010
01010
Rock
DarkGrey DarkBlue
.....
.00..
0001.
1011.
.....
MoveLogUp
Transparent
..0..
.000.
0.0.0
..0..
..0..
MoveLogDown
Transparent
..0..
..0..
0.0.0
.000.
..0..
MoveLogLeft
Transparent
..0..
.0...
00000
.0...
..0..
MoveLogRight
Transparent
..0..
...0.
00000
...0.
..0..
MoveRaftUp
Transparent
..0..
.000.
0.0.0
..0..
..0..
MoveRaftDown
Transparent
..0..
..0..
0.0.0
.000.
..0..
MoveRaftLeft
Transparent
..0..
.0...
00000
.0...
..0..
MoveRaftRight
Transparent
..0..
...0.
00000
...0.
..0..
Target
DarkBrown
.....
.0.0.
..0..
.0.0.
.....
=======
LEGEND
=======
Player = PlayerNormal or PlayerBalancing
Log = LogV or LogVOnTreeStump or LogH or LogHOnTreeStump or LogStanding or LogStandingOnTreeStump
LogOnTreeStump = LogVOnTreeStump or LogHOnTreeStump or LogStandingOnTreeStump
Raft = RaftV or RaftH
RaftOnLand = RaftVOnLand or RaftHOnLand
TreeObstacle = Tree or TreeStump or Rock or RaftOnLand
LogObstacle = Tree or TreeStump or Log or Rock or RaftOnLand
ImmovableLogObstacle = Tree or TreeStump or Rock
RaftOnLandObstacle = Tree or TreeStump or Log or Rock or RaftOnLand
Standable = Land or LogVInWater or LogHInWater or RaftV or RaftH
Balanceable = TreeStump or LogV or LogH or RaftHOnLand or RaftVOnLand
PushAgainst = Rock or Tree or Log or RaftOnLand
PushAgainstOnLand = Rock or Tree or LogStanding or LogStandingOnTreeStump
MoveLog = MoveLogUp or MoveLogDown or MoveLogLeft or MoveLogRight
MoveRaft = MoveRaftUp or MoveRaftDown or MoveRaftLeft or MoveRaftRight
_ = Background
. = Land
@ = PlayerNormal and Land
t = Tree and Land
r = Rock and Land
x = Target and Land
o = TreeStump and Land
- = LogH and Land
! = LogV and Land
i = LogStanding and Land
w = LogHInWater and Background
z = LogVInWater and Background
* = RaftVOnLand and Land
# = RaftH and Background
c = Quicksave and Land
=======
SOUNDS
=======
================
COLLISIONLAYERS
================
Background
Standable
Target, TreeStump, Quicksave
Log, RaftOnLand
Player, Tree, Rock
TreeTop, LogVOnTreeStumpTop, LogStandingTop, LogStandingOnTreeStumpTop, PlayerBalancingTop
MoveLog, MoveRaft
======
RULES
======
( Push against things to move on raft )
[ > PlayerNormal Raft | PushAgainst ] -> [ > PlayerNormal < Raft | PushAgainst ]
( Push against things to move on log on land )
vertical [ > PlayerBalancing LogH | Tree ] -> [ PlayerBalancing < LogH | Tree ]
horizontal [ > PlayerBalancing LogV | Tree ] -> [ PlayerBalancing < LogV | Tree ]
vertical [ > PlayerBalancing LogH | PushAgainstOnLand ] -> [ > PlayerBalancing < LogH | PushAgainstOnLand ]
horizontal [ > PlayerBalancing LogV | PushAgainstOnLand ] -> [ > PlayerBalancing < LogV | PushAgainstOnLand ]
( Stop when you can't walk somewhere )
[ > Player | no Standable ] -> cancel
vertical [ > Player | LogHInWater ] -> cancel
horizontal [ > Player | LogVInWater ] -> cancel
( Clear move tokens )
[ orthogonal Player ] [ MoveLog ] -> [ orthogonal Player ] [ ]
[ orthogonal Player ] [ MoveRaft ] -> [ orthogonal Player ] [ ]
( Chop trees )
vertical [ > Player | Tree ] -> [ Player | > Tree ]
horizontal [ > Player | Tree ] -> [ Player | > Tree ]
( Cancel chop if an obstacle in the way )
[ > Tree | TreeObstacle ] -> [ Tree | TreeObstacle ]
vertical [ > Tree | LogH ] -> [ Tree | LogH ]
horizontal [ > Tree | LogV ] -> [ Tree | LogV ]
( Turn trees into logs )
vertical [ > Tree | LogV ] -> [ TreeStump | RaftVOnLand ]
horizontal [ > Tree | LogH ] -> [ TreeStump | RaftHOnLand ]
[ > Tree | LogStanding ] -> [ TreeStump LogStandingOnTreeStump | > LogStanding ]
vertical [ > Tree | ] -> [ TreeStump | LogV ]
horizontal [ > Tree | ] -> [ TreeStump | LogH ]
( Push logs )
[ > PlayerNormal | Log ] -> [ > PlayerNormal | > Log ]
( Kick over standing log from balancing )
[ > PlayerBalancing | LogStanding ] -> [ > PlayerBalancing | > LogStanding ]
[ > PlayerBalancing | LogStandingOnTreeStump ] -> [ > PlayerBalancing | > LogStandingOnTreeStump ]
( Push logs on rafts )
[ > PlayerNormal | LogStanding Raft ] -> [ > PlayerNormal | LogStanding > Raft ]
[ > PlayerNormal | Log Raft ] -> [ > PlayerNormal | Log > Raft ]
( Push rafts on land )
[ > PlayerNormal | RaftOnLand ] -> [ > PlayerNormal | > RaftOnLand ]
( Push rafts on rafts )
[ > PlayerNormal | RaftOnLand Raft ] -> [ > PlayerNormal | RaftOnLand > Raft ]
( Keep raft moving )
[ MoveRaftUp Raft ] -> [ up Raft ]
[ MoveRaftDown Raft ] -> [ down Raft ]
[ MoveRaftLeft Raft ] -> [ left Raft ]
[ MoveRaftRight Raft ] -> [ right Raft ]
( Keep rolling around axis )
[ MoveLogUp LogH ] -> [ MoveLogUp up LogH ]
[ MoveLogDown LogH ] -> [ MoveLogDown down LogH ]
[ MoveLogLeft LogV ] -> [ MoveLogLeft left LogV ]
[ MoveLogRight LogV ] -> [ MoveLogRight right LogV ]
( Rafts always move standing logs )
[ stationary LogStanding > Raft ] -> [ > LogStanding > Raft ]
( Stop raft when it hits something standable )
[ > Raft | Raft ] -> [ Raft | > Raft ]
[ > Raft | Standable ] -> [ Raft | Standable ]
( Rafts move non-standing logs unless they hit something )
[ stationary LogV > Raft ] -> [ > LogV > Raft ]
[ stationary LogH > Raft ] -> [ > LogH > Raft ]
( Rafts move carried rafts unless they hit something )
[ stationary RaftOnLand > Raft ] -> [ > RaftOnLand > Raft ]
startloop
( Rolling logs move rafts on the same axis )
vertical [ > LogH no MoveLog stationary Raft ] -> [ > LogH > Raft ]
horizontal [ > LogV no MoveLog stationary Raft ] -> [ > LogV > Raft ]
( Rolling logs shift their momentum onto logs on rafts )
vertical [ > LogH | LogStanding Raft ] -> [ LogH | > LogStanding > Raft ]
horizontal [ > LogV | LogStanding Raft ] -> [ LogV | > LogStanding > Raft ]
vertical [ > LogH | LogV Raft ] -> [ LogH | > LogV > Raft ]
horizontal [ > LogV | LogH Raft ] -> [ LogV | > LogH > Raft ]
( Rolling logs push standing logs )
vertical [ > LogH | LogStanding ] -> [ LogH | > LogStanding ]
horizontal [ > LogV | LogStanding ] -> [ LogV | > LogStanding ]
( Rolling logs push standing logs on tree stumps )
(vertical [ > LogH | LogStandingOnTreeStump ] -> [ LogH | > LogStandingOnTreeStump ]
horizontal [ > LogV | LogStandingOnTreeStump ] -> [ LogV | > LogStandingOnTreeStump ])
( Rolling logs push parallel logs )
vertical [ > LogH Background | LogH ] -> [ LogH > Background | > LogH ]
horizontal [ > LogV Background | LogV ] -> [ LogV > Background | > LogV ]
( Standing logs knock over other standing logs )
[ > LogStanding | LogStanding ] -> [ > LogStanding | > LogStanding ]
[ > LogStanding | LogStandingOnTreeStump ] -> [ > LogStanding | > LogStandingOnTreeStump ]
[ > LogStandingOnTreeStump | LogStanding ] -> [ > LogStandingOnTreeStump | > LogStanding ]
endloop
( Clear leftover move log tokens )
[ MoveLog ] -> [ ]
( A standing log falling onto a parallel log makes a raft )
vertical [ > LogStanding | stationary LogV ] -> [ | RaftVOnLand ]
horizontal [ > LogStanding | stationary LogH ] -> [ | RaftHOnLand ]
vertical [ > LogStandingOnTreeStump | stationary LogV ] -> [ | RaftVOnLand ]
horizontal [ > LogStandingOnTreeStump | stationary LogH ] -> [ | RaftHOnLand ]
( A log lying on a tree stump rolling into a parallel log makes a raft )
vertical [ > LogHOnTreeStump | stationary LogH ] -> [ | RaftHOnLand ]
horizontal [ > LogVOnTreeStump | stationary LogV ] -> [ | RaftVOnLand ]
( Stop logs that are trying to move into obstacles )
[ > Log | stationary LogObstacle ] -> [ Log | LogObstacle ]
( Player rolling on log should end up on the raft on land )
vertical [ stationary LogH > Background Player | stationary LogH ] -> [ LogH > Background > Player | LogH ]
horizontal [ stationary LogV > Background Player | stationary LogV ] -> [ LogV > Background > Player | LogV ]
( A log rolling into a stationary parallel log forms a raft on land )
vertical [ stationary LogH > Background | stationary LogH ] -> [ Background | RaftHOnLand ]
horizontal [ stationary LogV > Background | stationary LogV ] -> [ Background | RaftVOnLand ]
[ orthogonal Background ] -> [ Background ]
( Stop rafts on land that are trying to move into obstacles )
[ > RaftOnLand | stationary RaftOnLandObstacle ] -> [ RaftOnLand | RaftOnLandObstacle ]
( Stop raft when it hits something standable )
[ > Raft | Raft ] -> [ Raft | > Raft ]
[ > Raft | Standable ] -> [ Raft | Standable ]
( Stop raft if log can't move )
[ stationary Log > Raft ] -> [ Log Raft ]
( Don't push logs upright while on a moving raft )
vertical [ > PlayerNormal < Raft | > LogV ] -> [ > PlayerNormal < Raft | LogV ]
horizontal [ > PlayerNormal < Raft | > LogH ] -> [ > PlayerNormal < Raft | LogH ]
( Don't push logs upright while on a perpendicular log in water )
vertical [ > PlayerNormal LogHInWater | > LogV ] -> [ > PlayerNormal LogHInWater | LogV ]
horizontal [ > PlayerNormal LogVInWater | > LogH ] -> [ > PlayerNormal LogVInWater | LogH ]
( Don't push rafts on land while on a moving raft )
[ > PlayerNormal < Raft | > RaftOnLand ] -> [ > PlayerNormal < Raft | RaftOnLand ]
( Don't push rafts on land while on a perpendicular log in water )
vertical [ > PlayerNormal LogHInWater | > RaftOnLand ] -> [ > PlayerNormal LogHInWater | RaftOnLand ]
horizontal [ > PlayerNormal LogVInWater | > RaftOnLand ] -> [ > PlayerNormal LogVInWater | RaftOnLand ]
( Stand-up and knock over log )
vertical [ > LogStandingOnTreeStump stationary Standable stationary Background ] -> [ > LogV Standable action Background ]
horizontal [ > LogStandingOnTreeStump stationary Standable stationary Background ] -> [ > LogH Standable action Background ]
vertical [ > LogStanding stationary Standable stationary Background ] -> [ > LogV Standable action Background ]
horizontal [ > LogStanding stationary Standable stationary Background ] -> [ > LogH Standable action Background ]
vertical [ > PlayerNormal | > LogV stationary Background | Standable ] -> [ > PlayerNormal | > LogStanding action Background | Standable ]
horizontal [ > PlayerNormal | > LogH stationary Background | Standable ] -> [ > PlayerNormal | > LogStanding action Background | Standable ]
(vertical [ > PlayerNormal stationary Standable | LogV stationary Background | TreeStump no LogOnTreeStump ] -> [ > PlayerNormal stationary Standable | > LogStandingOnTreeStump action Background | TreeStump ]
horizontal [ > PlayerNormal stationary Standable | LogH stationary Background | TreeStump no LogOnTreeStump ] -> [ > PlayerNormal stationary Standable | > LogStandingOnTreeStump action Background | TreeStump ])
[ action Background ] -> [ Background ]
( Push logs sideways onto tree stumps )
vertical [ > PlayerNormal | LogStanding | TreeStump no Log ] -> [ > PlayerNormal | > LogVOnTreeStump | TreeStump ]
horizontal [ > PlayerNormal | LogStanding | TreeStump no Log ] -> [ > PlayerNormal | > LogHOnTreeStump | TreeStump ]
( Push logs off tree stumps and stand them up )
vertical [ > PlayerNormal | LogVOnTreeStump TreeStump | no LogObstacle ] -> [ > PlayerNormal | > LogStanding TreeStump | no LogObstacle ]
horizontal [ > PlayerNormal | LogHOnTreeStump TreeStump | no LogObstacle ] -> [ > PlayerNormal | > LogStanding TreeStump | no LogObstacle ]
( Push logs off tree stumps and start them rolling )
vertical [ > PlayerNormal | LogHOnTreeStump TreeStump | no LogObstacle ] -> [ > PlayerNormal | > LogH TreeStump | no LogObstacle ]
horizontal [ > PlayerNormal | LogVOnTreeStump TreeStump | no LogObstacle ] -> [ > PlayerNormal | > LogV TreeStump | no LogObstacle ]
( Keep raft moving )
[ up Raft ] -> [ up MoveRaftUp up Raft ] again
[ down Raft ] -> [ down MoveRaftDown down Raft ] again
[ left Raft ] -> [ left MoveRaftLeft left Raft ] again
[ right Raft ] -> [ right MoveRaftRight right Raft ] again
( Keep rolling )
up [ > LogH no MoveRaft ] -> [ > MoveLogUp > LogH ] again
down [ > LogH no MoveRaft ] -> [ > MoveLogDown > LogH ] again
left [ > LogV no MoveRaft ] -> [ > MoveLogLeft > LogV ] again
right [ > LogV no MoveRaft ] -> [ > MoveLogRight > LogV ] again
( Player moves atop raft )
[ PlayerNormal orthogonal Raft ] -> [ orthogonal PlayerNormal orthogonal Raft ]
( Player rolls atop logs )
[ PlayerBalancing orthogonal LogV no LogVInWater ] -> [ orthogonal PlayerBalancing orthogonal LogV ]
[ PlayerBalancing orthogonal LogH no LogHInWater ] -> [ orthogonal PlayerBalancing orthogonal LogH ]
( Stop player if going to move atop a log from ground )
[ > PlayerNormal | stationary Log ] -> [ PlayerNormal | Log ]
( Stop player if going to move atop a standing log from balancing )
[ > PlayerBalancing | stationary LogStanding ] -> [ PlayerBalancing | LogStanding ]
( Stop player if going to move atop a log from a direction perpendicular to its axis )
vertical [ > PlayerBalancing | stationary LogH ] -> [ PlayerBalancing | LogH ]
horizontal [ > PlayerBalancing | stationary LogV ] -> [ PlayerBalancing | LogV ]
( Stop player if going to move atop another log from a log perpendicular to its axis )
vertical [ > PlayerBalancing LogH | stationary Log ] -> [ PlayerBalancing LogH | Log ]
horizontal [ > PlayerBalancing LogV | stationary Log ] -> [ PlayerBalancing LogV | Log ]
( REPLACES ABOVE TWO LINES: Stop player if going to move from a log perpendicular to its axis )
(vertical [ > PlayerBalancing LogH ] -> [ PlayerBalancing LogH ]
horizontal [ > PlayerBalancing LogV ] -> [ PlayerBalancing LogV ])
( Stop player if going to move atop a raft on land from ground )
[ > PlayerNormal | stationary RaftOnLand ] -> [ PlayerNormal | RaftOnLand ]
( Stop player if going to move into water when raft moves away )
[ > Player | > Raft ] -> [ Player | > Raft ]
( Two logs make rafts )
late [ LogV LogVInWater ] -> again
late [ LogH LogVInWater no MoveLog ] -> again
late [ LogStanding LogVInWater ] -> again
late [ LogH LogHInWater ] -> again
late [ LogV LogHInWater no MoveLog ] -> again
late [ LogStanding LogHInWater ] -> again
[ LogV LogVInWater ] -> [ RaftV ]
[ LogH LogVInWater no MoveLog ] -> [ RaftV ]
[ LogStanding LogVInWater ] -> [ RaftV ]
[ LogH LogHInWater ] -> [ RaftH ]
[ LogV LogHInWater no MoveLog ] -> [ RaftH ]
[ LogStanding LogHInWater ] -> [ RaftH ]
( Logs in water become standable )
late [ LogV no Standable ] -> [ LogVInWater ]
late [ LogH no Standable ] -> [ LogHInWater ]
( Rafts in water become standable )
late [ RaftVOnLand no Standable ] -> [ RaftV ]
late [ RaftHOnLand no Standable ] -> [ RaftH ]
( Don't walk off log perpendicularly )
vertical [ > Player LogHInWater ] -> [ Player LogHInWater ]
horizontal [ > Player LogVInWater ] -> [ Player LogVInWater ]
( Create log tops )
late [ LogVOnTreeStumpTop ] -> [ ]
late up [ LogVOnTreeStump | ] -> [ LogVOnTreeStump | LogVOnTreeStumpTop ]
late [ LogStandingTop ] -> [ ]
late up [ LogStanding | ] -> [ LogStanding | LogStandingTop ]
late [ LogStandingOnTreeStumpTop ] -> [ ]
late up [ LogStandingOnTreeStump | ] -> [ LogStandingOnTreeStump | LogStandingOnTreeStumpTop ]
( Create tree tops )
late [ TreeTop ] -> [ ]
late up [ Tree | ] -> [ Tree | TreeTop ]
( Set correct player animation )
late [ PlayerNormal Balanceable ] -> [ PlayerBalancing Balanceable ]
late [ PlayerBalancing no Balanceable ] -> [ PlayerNormal ]
late [ PlayerBalancingTop ] -> [ ]
late up [ PlayerBalancing | ] -> [ PlayerBalancing | PlayerBalancingTop ]
(Checkpoint)
late [ Player Quicksave ] -> [ Player ] checkpoint
( NOTES
Consider revising interaction when standing log on raft bumps into another raft
)
==============
WINCONDITIONS
==============
Some Player
Some Target
All Player on Target
=======
LEVELS
=======
(intro)
______________
______________
____..._______
____.@.t_.____
_____..__..___
________..____
_____......___
__.___......__
__._..__.t..__
__..x.__...___
__....___..___
___.._________
______________
______________
_____________
_____________
__...________
_..t.________
_....._______
_..@.._______
_....._..____
_.r..___...__
__.._____..._
________..x._
________...._
_________..__
_____________
_______________
__________..___
__..______...__
_....______..._
_..t...___..x._
__......_....__
__.@...._....__
__...t.__...___
___....___..___
____.._________
_______________
_______________
______...______
____..r.....___
__...........__
_............__
_.......__..___
__.@.t.._______
____...___...__
_________...___
_________....._
__________..x._
___________..__
_______________
_______________
_____..________
_.....t.__.._._
_.r.....__...._
_...@..__..x.._
__......_....._
__.._.r.___..__
_____.._____.__
_______________
__________________
________..._______
_______...t._t.___
______....___...__
___.__..@..___..__
___.._.....___..._
__...__..t___...._
_...__________..__
_.x..___..._______
__....__.t..__..__
___..____........_
_________.r......_
___________....___
__________________
____________
_____.._____
____..x..___
__......____
__....______
___.._______
____________
____._..____
____......__
___....t..._
___..@....._
____..r...__
____________
_____________
_____________
_____________
_____________
__.._____..__
_....__..t.._
_..x._.@...._
__...__..t.__
___.____.____
_____________
_____________
_____________
_____________
____________________
_____________...____
_________.._.....___
_________......t..__
_...______........__
_.x..___...t......._
_....._.......@...__
__...__.__.......___
___.._______..._____
____________________
(teach that logs will roll over other logs)
_____________
__...________
__.x.._______
___..._______
__...________
_____________
__..______.__
_....___...__
__.@.r__.t.._
__r...._...._
__....._...__
___.t.___..__
___..._______
____.._______
_____________
(teach the T shape trick)
________________
___..___________
___.....________
____..t.._______
__...@..._______
__......________
____....._______
___....____..___
__..t.__.._...__
___...__....x.__
_________....___
___________.____
________________
(teach that you can push an upright log away from a stump)
_________________
___________..____
__________..x..__
___________....__
____________..___
_________________
_____________..__
___.._______...._
_...._____.....r_
_...r.__.....t.._
_.t...._.r......_
__..@..___.._.r__
___..____________
_________________
(reinforce logs rolling over other logs)
______________
_________..___
________....__
__....__....__
_.r....__.t.._
_....t.__...._
__....._...@._
___...__.t..._
____.____...__
______.__..___
____.x._______
_____.._______
______________
_____________
______.._____
_____....____
____...t.____
____.t...____
_____.@...___
______....___
________..___
___..._..____
__.x.________
___..________
_____________
_____________
(teach raft-building)
_____________
________..___
_______....__
_______..x.__
________...._
________...__
_____..._____
______.._____
___.__...____
__......t____
__..t.@...___
___.......___
_____....____
_____________
(refresher for basics)
________________
___________..___
______..__....__
_____...._....._
___...t..__...._
___.....__....__
__..@...._..x.._
__......___...._
___..r______.___
________________
(introduce walking over logs)
_______________
____.____..____
__.t..__.....__
_......_..r..__
_.@...__....___
__..t.____..___
___.___________
_________...___
________.x...__
________...____
_________...___
_______________
__________________
_____________.____
____________..____
__._________...___
__....___.....t___
_......_...@....__
_..x..____.....___
_....______.t..___
__...______....___
___..._____..r..__
____________....__
_____________..___
__________________
_______________
___.___________
__...__________
_...___....____
_.x._....t...__
_..._.......t__
_..___.._.@..._
__..__.__...___
___.___________
_______________
(teach making land-rafts)
______________
_________.____
_____..__...._
____..._..x.._
___...___...__
___...____..__
__...t________
_.......______
__.@.t..._____
__......._____
_____...______
______________
(teach rolling on logs)
___________
__...._____
__.....____
_...t...___
__.r.@.r.__
__......___
___..______
______.__._
______...._
_____..x.._
______...__
___________
_______________
________...____
_______.....___
______..t...___
___..___...r___
__.....___t____
__.x..____..___
__..._____.@.__
___._____....__
__________..___
_______________
(changing parity)
_____________
________..___
______.....__
_____....x.._
____..__...._
_________..__
____.________
__...________
_.t..._______
_...@.t._____
___....._____
____...______
_____________
(introduce floating logs as useful non-bridges)
_____________
____.._______
___.x..______
___..._______
____.________
_____________
____...______
___....t_____
___..t....___
___.....@..__
____.......__
______....___
_____________
_____________
_____________
___..________
__...._______
_..x.._______
_....________
__...._______
_________..__
___.._...t.__
__....t....__
__.@......___
___._._______
_____________
_____________
_____________
______...____
____...x.____
___....._____
_____..______
_____________
___....______
__...t...____
___@....t.___
___..t_....__
_______...___
_____________
(end of teaching levels, insofar as that concept is meaningful)
__________
___...____
__..x.____
_......___
_._...____
__________
____..._._
____....._
____.@.t._
___.....__
___.t...__
____...___
______.___
__________
_______________
_________..____
_________....__
__________.t.._
________......_
_________.t..__
__________.____
___.._____t____
_.....__....___
_..x.._...@..__
__...___.t.____
___..___....___
_______________
_____________________
_____________________
___....______________
__..t....___.._______
_.........__...__..__
_....t.@.._...._...__
__.t......_...__.x.._
___..__..___.___...._
_________________..__
________________..___
_____________________
_____________________
____________________
___.________________
_._..________.._____
_......____......___
_..x....__.......___
__......_...t.....__
__...._____....t..__
___.._______..@..___
______________._____
____________________
_____________
_____..._____
____.....____
____.x.______
____...._____
______.._____
_____________
_______._____
_____....____
____...t..___
____.@....___
____.....____
_____.t...___
______...____
_____________
_________________
_____..._________
___._.t..________
___....@..__...__
___..r....__...__
____.....____..._
_____________.x._
______..____...._
__.__...____...__
_....r._____..___
_........__...___
__r......._..____
___...t._________
_____..._________
_________________
______________
_______...____
_______.x..___
______......__
______..___.__
______________
_____.._______
___.....______
__...t..______
___...@.._____
__......._____
___.t._.______
___.._________
______________
_____________
____t.__...__
___..._..x.__
__...._....._
__...____..._
__..._____.__
___..._______
_______..r___
____._....___
___....tt..__
___.@......__
____..r...___
_____________
(This level you can be on a rolling log - check this doesn't break anything)
___________
__.._______
_..x.._____
__....r____
____.r..___
______...__
_____..t.._
____..t..._
__.....@_._
_......____
___..t.____
____.._____
___________
________________
_______.._______
______....______
_____.....______
______.__.______
________________
____..._________
____.t....______
___...t...______
___....@._______
____r...._______
________________
___________
__...______
_..x.______
_....._____
___..______
___________
__..__..___
__......___
___...t..__
___......__
__.t....___
__...@..___
___....____
___..______
___________
___________
________________
______..________
____....._______
____.x._________
____....________
_____...._______
_______.._..____
____._____...___
___..._____t.___
___...t.t.....__
____..___...t.._
___...____....._
__.....___....._
__..@.t__.....__
__.....__..t..__
___.._____...___
________________
______________
_______.______
______....____
______.x...___
______..______
_______.._____
___.______..__
__...____...__
__..t.._..t___
__....t....___
__.@....._____
___......_____
____.r..______
______________
______________
_______.._..__
______......__
______...x..__
__.____....___
_....__.._____
_..t..________
_....t..______
__.@....______
___...._______
______________
______________
______________
________________
____________..__
__________....__
__________..x.__
_____...___...._
_____...._...___
___.__.t._..____
__.t....._______
_.t..@._________
_.......________
__.._.t.________
_____.__________
________________
_______________
___..__________
__..x._________
_......._______
_........__..__
_...___.._.t.._
__..______...._
______..__...__
____......t.___
___....t...____
____.......____
____..@..._____
_____..._______
_______________
______________
_______.._..__
______......__
______...x..__
_______....___
__...__.._____
__.t..________
____.t..______
___.....______
__...@._______
__..r.________
___...________
______________
________________
___________..___
__________.x..__
____._____....__
___.....___...._
___...r.__....__
____t..___...___
___...__________
__.t..__________
__...@._________
___...._________
___.t.__________
___...__________
________________
________________
___..___________
__....____._____
__.t..t._....___
____...._...r.__
____...___...___
___...._________
___..t.____.____
____..@.___...__
______..__..x.__
__________....__
____________.___
________________
(introduce rafts)
_______________
______.._______
_____...t._____
_____.t..._____
____.....______
_____.t._______
_____..._______
______...__..._
______...r...._
___.____...@.._
__..._____...__
_....__________
_..._______..__
_.....___....._
__..x........__
___........____
_______________
_____________
__...________
_....._______
_.@..tr______
_....._______
__.t.________
___..________
_____________
_________..__
_______....._
______r..x.._
________...__
_____________
_____________
_____.....___
____...@.t.__
____.t......_
_____......._
________...._
________..t._
__.._____..__
_....________
_..x.._______
_....._______
__...________
_____________
(hard levels)
_____________
______.._____
____.....____
___....t.____
__.@.t....___
__......t.___
____.__..____
______.._____
_____________
________..___
________...__
_______..x.._
________...._
__________.__
_____________
___________
_..__..____
_....t@.___
_.t.....___
__..t..____
____..r____
______..___
_____....._
_____..x.._
______...__
_______..__
___________
______________
____..________
___.......____
___.t.@....___
___.....t...__
____...t....__
__...t.....___
_.......r_____
_......_______
_....______r__
__...____...__
__..r._...x.._
___...__....._
________...___
______________
__________________
______________.___
__.__________...__
__....___..__.t.._
_......_....__!.._
_..x..____...r.r._
_...._____.t....__
__..._____....t.__
___..._____..t..__
____________..@.__
_____________..___
__________________
____________________
_______..__...._____
_____..t........____
______.......t..____
_______...__..___.__
_____________.._..._
_____..._______..x._
___......_____._..__
__..t....___..._____
_......@.__....r____
_....r...._..t..____
__.t.....__..._.____
___..__.____._______
____________________
_______________
_________..____
________..t._._
_______......._
_____..t.t...._
______.....t.__
________..@.___
___..__________
_...___________
_....._________
__..x..________
___..._________
_______________
______________
_________..___
________....._
_______...x.._
_________...__
_...._________
_..t..__...___
_.@..t.__...__
_......__...__
__.t..._..r.._
__....___...._
__..t._____.__
__....._______
____..._______
______________
________________
____________..__
___________...._
_________...x.._
___________...._
____________..__
________________
________________
___..___________
__..t.._________
_.......___...__
_.......t...@.._
_.....t.._....._
_....t..___...__
__....._________
________________
______________
_____.__...___
____....t..___
____.t....____
_____..t..____
__..___.t_____
_.....________
_.t....__...._
_..@.t._..x.._
__....__....__
___.._____..__
______________
____________________
_______________..___
______________..x.__
_______________...__
________________.___
____________________
__..._______________
_...t._________...__
_......________...._
__.t..._______..@.._
__......______....__
___..t..._____.t.___
____......._________
______..........____
________....._______
____________________
(hard - save for secrets)
___________
____.._____
__.....____
_....t.____
_..t....___
_...@.t.___
__.....____
___________
___________
___________
______...__
_____..x.__
_____....._
_______..__
___________
_____________________
_____....____________
____...t.____________
____.......______.___
___..t....._____...__
__.......t._..__.r.__
__....t.@..__......._
__.__....r___......._
______________.....__
___________.__..t.___
______.__...__....___
______....x..________
_______....._________
_________.___________
_____________________
________________
____..___...____
___...._......._
____..t....t..._
____....._...t._
______..____..__
________________
___..______..___
__.....____...._
_.....t.t.__..__
_........._...__
_..@......_..___
_....t.._.______
__....._____..__
___________...._
___________.x.__
___________..___
____________..__
________________
_____________________
_____________________
______..________...__
__.._..._______....__
__...t..r_____....___
__.t....._____..x..__
___...t..____......._
__.....@.____._....__
_..t.....______..____
_...._.._____________
__.._________________
_____________________
(n.b. can make on-laft raft here - it's not useful so make sure it's introduced earlier, so people don't focus on that)
(n.b. make sure to teach that some logs can't be pushed from log bridges)
(___________
___..__.___
__......___
__....x..__
___......__
____.._____
___________
____...r___
___.....___
__.@.tt..__
__.......__
___.r...___
___________)
(harder version of another level)
(____________________
_______________..___
______________..x.__
_______________...__
________________.___
____________________
__..._______________
_...t.__________..__
_......________...._
__.t..._______..@.._
__......______....__
___..t..._____.t.___
____...t..._________
______..........____
________....._______
____________________)
(more directed version of another level)
(____________________
_______..__...._____
_____...........____
______.......t..____
_______t..__..___.__
_____________.._..._
_____..._______..x._
___......_____t_..__
__..t....___..._____
_......@.__.....____
_....r...._.....____
__.t.....__..._.____
___..__.____._______
____________________)
( As another level, but about changing polarity )
(_____________
____.._______
___.x..______
___..._______
____.________
_____________
____...______
___....t_____
___..t.._..__
___.....@..._
____..t....._
______.....__
_____________)
(redundant?)
(_____________
__...________
_....._______
_..x...______
__..._.______
___.___._____
_______..____
_______...___
_____._.t.___
_____.t.@.___
_____.....___
______...____
_____________)
(................_____
................_____
_____________________
_____________________
_*_*_*_#_#_#_________
.i.!.-.i.!.-....___..
..............@.___..
.-.-.-.-.-.-....___..
................___..
____________.!.i#__..
____________....___..
____________.!.-#__..
____________....___..
____________.!.!#__..
____________....___..
____________.!.i*__..
____________....___..
____________.!.-*__..
____________....___..
____________.!.!*__..
____________....___..)
(probably don't need to teach this explicitly)
(________________
________________
____.___________
___...__________
__...t_.._______
__.@......______
_.......__._..__
_...t.____....._
___...____..x.._
___________...__
________________
________________)
(todo)
(
_______________
_______________
___..._____..__
___....___...__
__...t.___.x.._
_.r...r.__...__
__.t.@..._..___
__.......__..__
___..__..______
_______________
_____________________
____________...._____
____________..@..____
_____..______.....___
___..._______.....___
__.x.___________...__
__...._...______...__
___..__....____....__
________....__....___
________.....__...___
_________..__________
_____________________
________________
_______.._______
______....______
________..._____
_________.._____
_________.______
______._________
_____.....______
_____@.t..._____
______....-.____
_________.r.____
_________...____
________________
)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment