Created
December 7, 2022 14:23
-
-
Save quantumpotato/753561f122988ed7012fd3d29127e32d to your computer and use it in GitHub Desktop.
Leaping Leprechaun (Puzzlescript Plus 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 https://auroriax.github.io/PuzzleScript/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 Leaping Leprechaun | |
author quantumpotato | |
homepage auroriax.github.io/PuzzleScript | |
tween_length 0.03 | |
smoothscreen 25x25 | |
level_select | |
runtime_metadata_twiddling | |
text_controls an adventure in teleportitis | |
======== | |
OBJECTS | |
======== | |
Background | |
LIGHTGRAY GRAY | |
11111 | |
11111 | |
11111 | |
11111 | |
11111 | |
Wall | |
( DARKGRAY BLACK ) | |
black darkgray | |
00000 | |
01010 | |
00100 | |
01010 | |
00000 | |
( 01010 ) | |
( 11111 ) | |
( 01110 ) | |
( 11111 ) | |
( 01010 ) | |
Player11 | |
green yellow black | |
00000 | |
00000 | |
00100 | |
00000 | |
00000 | |
Player21 | |
green yellow black | |
00000 | |
00000 | |
01020 | |
00000 | |
00000 | |
Player22 | |
green yellow black | |
00000 | |
00000 | |
01010 | |
00000 | |
00000 | |
Player33 | |
green yellow black | |
00000 | |
01010 | |
00000 | |
00100 | |
00000 | |
Player32 | |
green yellow black | |
00000 | |
01010 | |
00000 | |
00200 | |
00000 | |
Player31 | |
green yellow black | |
00000 | |
01020 | |
00000 | |
00200 | |
00000 | |
PlayerWalker | |
Blue | |
PlayerJumper | |
Green | |
PlayerGoal | |
White | |
Crate | |
transparent orange | |
00000 | |
01110 | |
01110 | |
01110 | |
00000 | |
CrateGoal | |
darkbrown lightbrown | |
00000 | |
00000 | |
00000 | |
00000 | |
00000 | |
Junk | |
transparent orange blue | |
00000 | |
01110 | |
01210 | |
01110 | |
00000 | |
Fence | |
Red | |
Stone | |
Blue Orange | |
00000 | |
01110 | |
01110 | |
01110 | |
00000 | |
River | |
Blue | |
======= | |
LEGEND | |
======= | |
Player = Player11 or Player22 or Player33 or Player21 or Player32 or Player31 | |
HardBlock = River or Wall | |
Unlandable = River or Wall or Stone or Crate or Junk | |
PushBlock = Wall or Stone or Crate or Junk | |
Box = Stone or Crate | |
. = Background | |
# = Wall | |
1 = Player11 | |
2 = Player22 | |
3 = Player33 | |
W = PlayerWalker | |
* = Crate | |
@ = Crate and CrateGoal | |
Z = Player11 and PlayerGoal | |
Y = Player11 and CrateGoal | |
O = CrateGoal | |
G = PlayerGoal | |
F = Fence | |
R = River | |
S = Stone | |
BoxBlock = Stone or Crate or Wall or Junk | |
J = Junk | |
======= | |
SOUNDS | |
======= | |
================ | |
COLLISIONLAYERS | |
================ | |
Background | |
PlayerGoal, CrateGoal | |
PlayerWalker, PlayerJumper, Fence, Player, Player11, Player22, Player33, Player21, Player31, Player32, Wall, River | |
Crate, Junk | |
Stone | |
====== | |
RULES | |
====== | |
(Wall Collisions) | |
[ > Player11 | HardBlock ] -> [ Player11 | HardBlock ] | |
[ > Player22 | | HardBlock ] -> [ Player22 | | HardBlock ] | |
[ > Player22 | HardBlock | Crate | HardBlock ] -> [ Player22 | HardBlock | Crate | HardBlock ] | |
[ > Player22 | Crate | Crate | HardBlock ] -> [ Player22 | Crate | Crate | HardBlock ] | |
[ > Player33 | | | HardBlock ] -> [ Player33 | | | HardBlock ] | |
[ > Player33 | HardBlock | HardBlock | Crate | Wall ] -> [ Player33 | HardBlock | HardBlock | Crate | Wall ] | |
[ > Player21 | Crate | Crate] -> [ Player21 | Crate | Crate ] | |
[ > Player32 | | HardBlock | HardBlock] -> [ Player32 | | HardBlock | HardBlock ] | |
[ > Player11 | Crate | Wall] -> [ Player11 | Crate | Wall ] | |
[ > Player21 | Wall ] -> [ Player21 | Wall] | |
[ > Player31 | Wall ] -> [ Player31 | Wall] | |
[ > Player33 | | | HardBlock ] -> [ Player33 | | | HardBlock ] | |
(Crate blocked by Crate & Wall ) | |
[ > Player11 | Box | BoxBlock ] -> [ Player11 | Box | BoxBlock] | |
[ > Player31 | Box | BoxBlock ] -> [ Player31 | Box | BoxBlock ] | |
[ > Player21 | Box | BoxBlock] -> [ Player21 | Box | BoxBlock ] | |
(Crate pushed into River from Player1 ) | |
[ > Player11 | Crate | River] -> [ Player22 | no Crate | Stone ] | |
[ > Player21 | Crate | River] -> [ Player33 | no Crate | Stone ] | |
[ > Player31 | Crate | River] -> [ Player11 | no Crate | Stone ] | |
(Crate pushed into River from Player2 ) | |
[ > Player22 | | Crate | River] -> [ Player33 | | no Crate | Stone ] | |
[ > Player32 | | Crate | River] -> [ Player11 | | no Crate | Stone ] | |
(Crate pushed into River from Player3 ) | |
[ > Player33 | | | Crate | River] -> [ Player11 | | | no Crate | Stone ] | |
(River Crate pushed by Player1 ) | |
[ > Player11 | Stone | PushBlock ] -> [ Player11 | Stone | PushBlock ] | |
[ > Player11 | Stone | River ] -> [ Player22 | River | Stone ] | |
[ > Player21 | Stone | River ] -> [ Player33 | River | Stone ] | |
[ > Player31 | Stone | River ] -> [ Player11 | River | Stone ] | |
(River Crate pushed by Player2 ) | |
[ > Player22 | | Stone | River ] -> [ Player33 | | River | Stone ] | |
[ > Player32 | | Stone | River ] -> [ Player11 | | River | Stone ] | |
[ > Player22 | | Stone | no Unlandable] -> [Player33 | | River | Crate] | |
[ > Player32 | | Stone | no Unlandable] -> [Player11 | | River | Crate] | |
[ > Player22 | | Crate | no Unlandable] -> [Player33 | | | Crate] | |
(River Crate pushed by Player3 ) | |
[ > Player33 | | | Stone | River ] -> [ Player11 | | | River | Stone ] | |
[ > Player33 | | | Stone | no Unlandable ] -> [ Player11 | | | River | Crate ] | |
(DEBUG HERE ) | |
(River blocks movement from parity saves ) | |
[ > Player22 | River | Crate] -> [ Player22 | River | Crate] | |
[ > Player32 | River | Crate] -> [ Player32 | River | Crate] | |
( [ > Player33 | | River | Crate | BoxBlock] -> [ Player33 | | River | Crate | BoxBlock] (Wrong ) ) | |
[ > Player33 | No Unlandable | Unlandable | Box | BoxBlock] -> [ | Player32 | Unlandable | Box | BoxBlock] | |
( River Blocks ) | |
[ > Player22 | | River ] -> [ Player32 | | River] | |
[ > Player32 | | River ] -> [ Player32 | | River] | |
(Player2 moving with its last movement onto a Crate moves just before and has 1 movement left ) | |
[ > Player22 | no Unlandable | Box | BoxBlock ] -> [ | Player21 | Box | BoxBlock ] (Moved 1 ) | |
[ > Player22 | | Box | BoxBlock] -> [ Player22 | | Box | BoxBlock] | |
( FUTURE: NO PARITY PRESERVING BLOCK for the Wall here. Player can step over walls fine ) | |
(Player3 moving with its last movement onto a Crate moves just before and has 1 movement left ) | |
[ > Player33 | | no Unlandable | Crate | BoxBlock ] -> [ | | Player31 | Crate | BoxBlock] (Moved 2 ) | |
[ > Player33 | no Unlandable | BoxBlock | Crate ] -> [ | Player32 | BoxBlock | Crate ] (Moved 1 ) | |
(Parity Preserving ) | |
[ > Player33 | No Unlandable | Unlandable | Box | PushBlock] -> [ | Player32 | Unlandable | Box | PushBlock] | |
[ > Player33 | Unlandable | No Unlandable | Box | PushBlock] -> [ | Unlandable | Player31 | Box | PushBlock] | |
[ > Player32 | No Unlandable | Box | BoxBlock] -> [ | Player31 | Box | BoxBlock] | |
[ > Player22 | No Unlandable | Box | BoxBlock] -> [ | Player21 | Box | BoxBlock] | |
[ > Player33 | | No Unlandable | Box | Box] -> [ | | Player31 | Box | Box] | |
(Biscuit here ) | |
(Player1 can push a crate from 1 distance away ) | |
(BB ) | |
[ > Player11 | Crate | no Unlandable] -> [Player22 | | Crate] | |
[ > Player21 | Crate | no Unlandable] -> [Player22 | | Crate] | |
[ > Player31 | Crate | no Unlandable] -> [Player22 | | Crate] | |
(RR ) | |
[ > Player11 | Stone | River] -> [Player22 | River | Stone ] | |
[ > Player21 | Stone | River] -> [Player33 | River | Stone ] | |
[ > Player31 | Stone | River] -> [Player11 | River | Stone ] | |
(BR ) | |
[ > Player11 | Crate | River] -> [Player22 | | Stone ] | |
[ > Player21 | Crate | River] -> [Player33 | | Stone ] | |
[ > Player31 | Crate | River] -> [Player11 | | Stone ] | |
(RB ) | |
[ > Player11 | Stone | no Unlandable] -> [Player22 | River | Crate] | |
[ > Player21 | Crate | no Unlandable] -> [Player33 | | Crate] | |
[ > Player31 | Crate | no Unlandable] -> [Player11 | | Crate] | |
( [ > Player31 | no Wall ] -> [ | Player11 ] ) | |
(Player2 can push a crate from 2 distance away ) | |
(BB ) | |
[ > Player22 | | Crate | no Unlandable] -> [ Player33 | | | Crate ] | |
[ > Player32 | | Crate | no Unlandable] -> [ Player11 | | | Crate ] | |
(RR ) | |
[ > Player22 | | Stone | River] -> [ Player33 | | River | Stone ] | |
[ > Player32 | | Stone | River] -> [ Player33 | | River | Stone ] | |
(BR ) | |
[ > Player22 | | Crate | River] -> [ Player33 | | | Stone ] | |
[ > Player32 | | Crate | River] -> [ Player11 | | | Stone ] | |
(RB ) | |
[ > Player22 | | Crate | no Unlandable] -> [ Player33 | | River | Crate ] | |
[ > Player32 | | Crate | no Unlandable] -> [ Player11 | | River | Crate ] | |
(Player3 can push a crate from 3 distance away ) | |
(BB ) | |
[ > Player33 | | | Crate | no Unlandable ] -> [ Player11 | | | | Crate ] | |
(RR ) | |
[ > Player33 | | | Stone | River] -> [ Player11 | | | River | Stone ] | |
(BR ) | |
[ > Player33 | | | Crate | River] -> [ Player11 | | | | Stone ] | |
(RB ) | |
[ > Player33 | | | Stone | no Unlandable ] -> [ Player11 | | | River | Crate ] | |
( [ > Player33 | | | Stone | ) | |
(Cannot teleport to empty space ) | |
[ > Player33 | | | no Background] -> [ Player33 | | | ] | |
[ > Player22 | | no Background] -> [ Player22 | | ] | |
(check here if problems^ ) | |
(Player1 cannot move onto Crate with Crate behind it ) | |
[ > Player11 | Crate | Crate] -> [ Player11 | Crate | Crate] | |
[ > Player31 | Crate | Crate] -> [ Player31 | Crate | Crate] | |
[ > Player21 | Crate | Crate] -> [ Player21 | Crate | Crate] | |
(Junk smashing) | |
[ > Player11 | Junk ] -> [ Player22 | River ] | |
[ > Player21 | Junk ] -> [ Player33 | River ] | |
[ > Player31 | Junk ] -> [ Player11 | River ] | |
[ > Player22 | no Unlandable | Junk ] -> [ | Player21 | River ] | |
[ > Player32 | no Unlandable | Junk ] -> [ | Player31 | River ] | |
[ > Player33 | no Unlandable | Unlandable | Junk ] -> [ | Player31 | Unlandable | River ] | |
[ > Player33 | | no Unlandable | Junk ] -> [ | | Player32 | River ] | |
(Morphing player ) | |
[ > Player11 | no Unlandable ] -> [ | Player22] | |
[ > Player22 | | no Unlandable ] -> [ | | Player33 ] | |
[ > Player33 | | | no Unlandable ] -> [ | | | Player11] | |
[ > Player32 | | no Unlandable ] -> [ | | Player11] | |
[ > Player21 | no Unlandable] -> [ | Player33] | |
[ > Player31 | No Unlandable ] -> [ | Player11] | |
([ > PlayerJumper | Fence | Fence ] -> [ PlayerJumper | Fence | Fence ] | |
[ > PlayerJumper | Fence | ] -> [Background | Fence | PlayerWalker ]) | |
============== | |
WINCONDITIONS | |
============== | |
All PlayerGoal on Player | |
All CrateGoal on Crate | |
(or Any Player2 on PlayerGoal) | |
(All Target on Crate) | |
======= | |
LEVELS | |
======= | |
message Ahoy! You with the teleportitis! | |
message Decided to blink on back to work? | |
message Looks like you got yourself a shiny new ring. | |
message I guess you'll be gettin paid today after all. | |
message Get yourself a situated - we got a lot of Tea of the Pear boxes to sort! | |
message 1-1 As easy as 1, 2, 3 | |
section 1-1 As easy as 1, 2, 3 | |
################# | |
################# | |
################# | |
###...........### | |
###...........### | |
###.....G...1.### | |
###...........### | |
###...........### | |
###...........### | |
################# | |
################# | |
################# | |
message Looks like you're jumping around just fine now. | |
message Remember your physics - that teleportation energy has to go somewhere. | |
message 1-2 Exclusion Principle | |
section 1-2 Exclusion Principle | |
################# | |
################# | |
################# | |
###...........### | |
###....O......### | |
###...*..1....### | |
###...........### | |
###...........### | |
###...........### | |
################# | |
################# | |
################# | |
message 1-3 Quantum Leap | |
section 1-3 Quantum Leap | |
#################### | |
#################### | |
#################### | |
#####O*Z*O########## | |
#################### | |
#################### | |
#####O*.*O########## | |
#################### | |
#################### | |
message 1-4 Stored Charge | |
section 1-4 Stored Charge | |
################# | |
#############.### | |
################# | |
################# | |
#######.O.##..### | |
######O**..1..### | |
#########.....### | |
#######.......### | |
################# | |
################# | |
################# | |
################# | |
message 1-5 Crevice | |
section 1-5 Crevice | |
################# | |
################# | |
################# | |
################# | |
####....O..###### | |
####.##*O....1### | |
####....*..###### | |
################# | |
################# | |
#####......###### | |
################# | |
################# | |
message 1-6 Spooky Action | |
section 1-6 Spooky Action | |
################# | |
################# | |
################# | |
#####..O*#.###### | |
####..O.*..###### | |
####.##....###### | |
####....1..###### | |
####.......###### | |
################# | |
################# | |
################# | |
################# | |
message 1-7 2 out of 3 ain't bad | |
section 1-7 2 out of 3 aint' bad | |
################# | |
################# | |
################# | |
################# | |
######1....###### | |
#####......###### | |
#####...@*.###### | |
#####...@O.###### | |
######.....###### | |
################# | |
################# | |
################# | |
message 1-8 Seeing Double | |
section 1-8 Seeing Double | |
################# | |
################# | |
###.........##### | |
###....1....##### | |
###....*....##### | |
###.O.....*.##### | |
###....O....##### | |
###.........##### | |
###.........##### | |
################# | |
################# | |
################# | |
message Keep packing - the day is almost done. | |
message 1-9 Parity 'Schmarity | |
section 1-9 Parity 'Schmarity | |
################# | |
################# | |
################# | |
####...1...###### | |
####.......###### | |
####...O...###### | |
####O*.*#..###### | |
####.......###### | |
####.......###### | |
################# | |
################# | |
################# | |
message 1-10 Cramped | |
section 1-10 Cramped | |
################# | |
################# | |
################# | |
####.......###### | |
####.O*.*O.###### | |
####...1...###### | |
####.O*.*O.###### | |
####.......###### | |
################# | |
################# | |
message Tidy up this Cabin and you can stay here overnight. | |
message 1-11 Cozy Cabin | |
section 1-11 Cozy Cabin | |
#################### | |
#################### | |
####....##..######## | |
####.O.1*G*O.####### | |
####.O...*....###### | |
#################### | |
#################### | |
#################### | |
#################### | |
( message LakehouseHARD ) | |
( section LakehouseHARD ) | |
( ################# ) | |
( ################# ) | |
( ###...........### ) | |
( ###.1.ORO*S..RRRR ) | |
( ###...*......R### ) | |
( ###...O.....RR### ) | |
( ###......RRRRR### ) | |
( ###......R.*.R### ) | |
( ###..RRRRR.O.R### ) | |
( ################# ) | |
( ################# ) | |
( ################# ) | |
( message LakehouseHARD ) | |
( section LakehouseHARD ) | |
( ################# ) | |
( ################# ) | |
( ###...........### ) | |
( ###.1..RO*S..RRRR ) | |
( ###...*..O...R### ) | |
( ###...O.....*R### ) | |
( ###......RRROR### ) | |
( ###......R.*.R### ) | |
( ###..RRRRR.O.R### ) | |
( ################# ) | |
( ################# ) | |
( ################# ) | |
( River Levels ) | |
message A big buyer is coming to the Pear Farm today. | |
message Clean up the watery views! | |
message 2-1 Trench | |
section 2-1 Trench | |
################# | |
################# | |
###Z.........R### | |
###.....R...RR### | |
###.##.RRR.RRR### | |
###.RSRORRRRRR### | |
###.##.RRR.RRR### | |
###.....R...RR### | |
###..........R### | |
################# | |
################# | |
################# | |
message 2-2 Fording | |
section 2-2 Fording | |
################# | |
################# | |
################# | |
######O########## | |
###O*.*.RRRRR#### | |
###.....RRRRRR### | |
###....1...RRR### | |
###....**RRRRR### | |
###....RRRRRRR### | |
###RRRROO##RRR### | |
###RRR#####RRR### | |
################# | |
################# | |
################# | |
message 2-3 Pond | |
section 2-3 Pond | |
################# | |
################# | |
###...........### | |
###.1...R.....### | |
###....RRR....### | |
###...RRORR...### | |
###....RRR....### | |
###.....R..*..### | |
###...........### | |
################# | |
################# | |
################# | |
message 2-4 Stream Splitter | |
section 2-4 Stream Splitter | |
################# | |
################# | |
#####...R..#G#### | |
#####..R.R####### | |
#####.OR.R.*..### | |
#####1..R.....### | |
######..R.....### | |
######..R.....### | |
######..R.....### | |
################# | |
################# | |
################# | |
( Do a push blocks down, force to 3 -> get 2 to jump south to bottom section) | |
( ################# ) | |
( ################# ) | |
( ################# ) | |
( ######O########## ) | |
( ###O*.*.RRRRR### ) | |
( ###.*...RRRRRR### ) | |
( ###....1...RRR### ) | |
( ###....**RRRRR### ) | |
( ###....RRRRRRR### ) | |
( ###RRRRR###RRR### ) | |
( ###RRR.*OO#RRR### ) | |
( ################# ) | |
( ################# ) | |
( ################# ) | |
( message 2-3 Bench ) | |
message 2-3 Bench | |
section 2-3 Bench | |
################# | |
################# | |
###...........### | |
###.....R.....### | |
###....RRR....### | |
###...OSYSR...### | |
###....RRR....### | |
###.....R.....### | |
###...........### | |
################# | |
################# | |
################# | |
message You ever wonder what happens to the tea we sell? | |
message It gets tossed into the river and thanks to its Telegene - | |
message - warps right back to our Ports! | |
message Last year's tea is done fermenting. It's time to turn the old stuff into water for our new crops. | |
message Go smash it! | |
message 3-1 Junkyard Garden | |
section 3-1 Junkyard Garden | |
################# | |
################# | |
###...........### | |
###.########..### | |
###.#..*ZOJ#..### | |
###.########..### | |
###...........### | |
###...........### | |
###...........### | |
################# | |
################# | |
################# | |
message 3-2 Undamming | |
section 3-2 Undamming | |
################# | |
################# | |
###.....RR....### | |
###.....RR....### | |
###...*JJJO...### | |
###.....RR....### | |
###.....RR1...### | |
###.....RR....### | |
###.....RR...G### | |
################# | |
################# | |
################# | |
( message River Crossing ) | |
( section River Crossing ) | |
( ################# ) | |
( ################# ) | |
( ###...........### ) | |
( ###....1O.....### ) | |
( ###RR..R..RR..### ) | |
( ###.RRRRRRRRRR### ) | |
( ###..RR..RR...### ) | |
( ###.......*...### ) | |
( ###...........### ) | |
( ################# ) | |
( ################# ) | |
( ################# ) | |
( ################# ) | |
( ################# ) | |
( ###.........##### ) | |
( ###....1....##### ) | |
( ###.........##### ) | |
( ###.........##### ) | |
( ###.........##### ) | |
( ###.........##### ) | |
( ###.........##### ) | |
( ################# ) | |
( ################# ) | |
( ################# ) | |
(hard level?) | |
message Tough Level Quackline | |
section Tough Level Quackline | |
################# | |
################# | |
######.....###### | |
######...O.###### | |
######.1.*O###### | |
######..O*.###### | |
######...*O###### | |
######...*.###### | |
######.....###### | |
################# | |
################# | |
################# | |
message Thanks for playing! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment