Created
June 27, 2022 17:59
-
-
Save schadocalex/a38d93bfd84538ad4f9dba7a03e75baa to your computer and use it in GitHub Desktop.
Botanist (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 Botanist | |
author Damien | |
key_repeat_interval 1 | |
verbose_logging | |
======== | |
OBJECTS | |
======== | |
starship | |
red white | |
..... | |
..1.. | |
.000. | |
.111. | |
.0.0. | |
path | |
lightgray | |
NormalGround | |
LIGHTGREEN | |
Wall | |
darkgray | |
shallowwater | |
blue | |
deepwater | |
darkblue | |
muddyground | |
lightblue lightgreen | |
11111 | |
10011 | |
10001 | |
10001 | |
11111 | |
PlayerWithoutShovel | |
black white blue | |
..... | |
.111. | |
.121. | |
.111. | |
..... | |
PlayerWithShovel | |
black white brown | |
..... | |
.111. | |
.121. | |
.111. | |
..... | |
hole | |
black | |
..... | |
.000. | |
.000. | |
.000. | |
..... | |
dirt | |
darkbrown | |
..... | |
.000. | |
.000. | |
.000. | |
..... | |
(tree plant) | |
treePot | |
brown lightgreen | |
..... | |
..0.. | |
.010. | |
..0.. | |
..... | |
newtree | |
green | |
..... | |
..0.. | |
.000. | |
..0.. | |
..... | |
TreePlant1 | |
lightgreen green | |
..1.. | |
.101. | |
10001 | |
.101. | |
..1.. | |
TreePlant2 | |
green darkgreen | |
..1.. | |
.101. | |
10001 | |
.101. | |
..1.. | |
(lilly plant) | |
lillypot | |
brown blue | |
..... | |
..0.. | |
.010. | |
..0.. | |
..... | |
lillyplant | |
lightgreen green | |
..1.. | |
.101. | |
10001 | |
.101. | |
..1.. | |
(reed plant) | |
reedpot | |
brown yellow | |
..... | |
..0.. | |
.010. | |
..0.. | |
..... | |
reedplant | |
yellow | |
.0... | |
...0. | |
0.... | |
..0.. | |
0..0. | |
(mushroom plant) | |
mushroompot | |
brown red | |
..... | |
..0.. | |
.010. | |
..0.. | |
..... | |
mushroomplant | |
red green | |
..1.. | |
.101. | |
10001 | |
.101. | |
..1.. | |
======= | |
LEGEND | |
======= | |
e = shallowwater | |
b = deepwater | |
+ = NormalGround | |
m = muddyground | |
: = path | |
# = Wall | |
P = PlayerWithoutShovel | |
S = starship | |
h = hole and NormalGround | |
d = dirt and NormalGround | |
water = shallowwater or deepwater | |
Player = PlayerWithShovel or PlayerWithoutShovel | |
w = PlayerWithoutShovel and path | |
y = starship and path | |
o = treePot and NormalGround | |
g = treepot and path | |
f = dirt and path | |
u = reedpot and NormalGround | |
i = TreePlant2 and NormalGround | |
j = reedplant and NormalGround | |
n = lillypot and NormalGround | |
a = lillypot and path | |
c = mushroompot and NormalGround | |
k = mushroomplant and NormalGround | |
PlantPlant = TreePlant1 or TreePlant2 | |
PlantPot = treePot or reedpot or lillypot or mushroompot | |
PlantNew = newtree | |
Background = NormalGround or path or water or muddyground | |
dirt_dig_col = PlantPot or PlantNew or PlantPlant or starship or wall or dirt or reedplant | |
hole_dig_col = dirt_dig_col or hole or path | |
movable_col = dirt_dig_col | |
player_jump_col = PlantPot or PlantNew or PlantPlant or starship or wall or dirt or water | |
movable_jump_col = dirt_dig_col | |
ungrowable = path | |
movable = dirt or PlantPot | |
stuff = reedplant or mushroomplant or lillyplant | |
======= | |
SOUNDS | |
======= | |
================ | |
COLLISIONLAYERS | |
================ | |
Background | |
hole, | |
lillyplant, mushroomplant, reedplant | |
dirt, | |
Player, Wall, PlantPlant, PlantPot, PlantNew | |
starship | |
====== | |
RULES | |
====== | |
[action PlayerWithoutShovel] -> [PlayerWithShovel] | |
[action PlayerWithShovel] -> [PlayerWithoutShovel] | |
(digging for normal ground) | |
[hole | no hole_dig_col NormalGround| < PlayerWithShovel ] -> [dirt hole | hole NormalGround| PlayerWithoutShovel ] | |
[no dirt_dig_col | no hole_dig_col NormalGround | < PlayerWithShovel ] -> [dirt | hole NormalGround| PlayerWithoutShovel ] | |
(digging for muddy ground) | |
[hole | no hole_dig_col muddyground| < PlayerWithShovel ] -> [dirt hole | shallowwater | PlayerWithoutShovel ] | |
[no dirt_dig_col | no hole_dig_col muddyground | < PlayerWithShovel ] -> [dirt | shallowwater | PlayerWithoutShovel ] | |
(digging general last rule) | |
[ | < PlayerWithShovel ] -> [ | PlayerWithoutShovel] | |
(mushroom rule) | |
[> Player | movable mushroomplant ] -> [> Player | > movable mushroomplant] | |
[ > Player mushroomplant | | lillyplant no movable_jump_col] -> [ mushroomplant | | lillyplant Player] | |
[ > Player mushroomplant | | no player_jump_col] -> [ mushroomplant | | Player] (some feedback will be needed to tell the player when and why it's not possible, maybe make it happen but have some ne gative feedback happen) | |
[ > movable mushroomplant || no movable_jump_col] -> [mushroomplant || movable] | |
(where the player cannot walk) | |
[ > Player | hole ] -> [ Player | hole ] | |
[ > Player | water no lillyplant ] -> [ Player | water] | |
(pushing movables) | |
[> Player | movable] -> [> Player | > movable] | |
(where movable stuff cannot move) | |
[ > movable | movable_col no hole ] -> [ movable | movable_col ] | |
late [ Dirt hole treePot ] -> [ newtree ] | |
late [ Dirt hole mushroompot ] -> [ mushroomplant ] | |
late [ Dirt hole lillypot ] -> [ lillypot ] | |
late [ water lillypot no lillyplant ] -> [ water lillyplant ] (should we only be able to plant lilly on shallow water ?) | |
late [ Dirt hole reedpot ] -> [ reedplant ] | |
late [ Dirt hole ] -> [] | |
late [ Dirt shallowwater no lillyplant ] -> [ muddyground ] | |
late [ Dirt deepwater no lillyplant ] -> [deepwater] | |
(tree growth) | |
late [TreePlant1 ] -> [TreePlant2] | |
late [newtree] -> [TreePlant1] | |
late [Player dirt ] -> [] cancel | |
============== | |
WINCONDITIONS | |
============== | |
no hole | |
no dirt | |
no PlantPot | |
======= | |
LEVELS | |
======= | |
message oh no this garden is full of holes | |
bbbbbbbbb | |
b+++:+++b | |
b+++:+h+b | |
b+hd:+d+b | |
b+++:dh+b | |
b+++w+++b | |
bbbbbbbbb | |
message but you can plant trees in holes | |
bbbbbbbbb | |
b+++:+++b | |
b+++:+d+b | |
b+++:+h+b | |
b+++:+o+b | |
b+++w+++b | |
bbbbbbbbb | |
message with lots of holes you can plant lots of trees | |
bbbbbbbbb | |
b+++:+++b | |
b+dh:od+b | |
b+d+:+d+b | |
booo:+++b | |
bhhhw+++b | |
bbbbbbbbb | |
message but did you know you can also dig holes by pressing X and movin ? | |
bbbbbbbbb | |
b+++:+++b | |
b+++:+++b | |
b+o+:+++b | |
b+++:+o+b | |
b+++w+++b | |
bbbbbbbbb | |
bbbbbbbbb | |
b+++:+++b | |
b+dh:od+b | |
b+dh:+d+b | |
bood:+++b | |
bhhhwo++b | |
bbbbbbbbb | |
bbbbbbbbbbb | |
b++hw+++++b | |
b++h:oo+d+b | |
b+dh:o++++b | |
b+dh:o+d++b | |
b++h:o++d+b | |
bbbbbbbbbbb | |
message time to learn about the water plants | |
bbbbbbbbb | |
beeeeeeeb | |
beeeeeeeb | |
beeaaaeeb | |
be:::::eb | |
be:###:eb | |
be:::::eb | |
be::w::eb | |
bbbbbbbbb | |
bbbbbbbbb | |
beeeeeeeb | |
beeeeeeeb | |
be:##eeeb | |
beaaee#eb | |
be:aa##eb | |
be::::eeb | |
be::w:eeb | |
bbbbbbbbb | |
bbbbbbbbbbbb | |
bee:::::::eb | |
b:eeee::::eb | |
b:e::eeeeeeb | |
b:e:aeaa#:eb | |
b:e::e::eaeb | |
beeeeeeee:eb | |
b:e:a:e:a:eb | |
b:e:::e:::eb | |
b:e:w:eeeeeb | |
bbbbbbbbbbbb | |
bbbbbbbbbbbb | |
bee:::::::eb | |
b:eee:a:::eb | |
b:e:aeeeeeeb | |
b:e:aeaa#:eb | |
b:e::e:eeaeb | |
beeeeee#e:eb | |
b:e:a:e:a:eb | |
b:e:::e:::eb | |
b:e:w:eeeeeb | |
bbbbbbbbbbbb | |
message make sure not to leave holes in the garden ! | |
bbbbbbbbbbbb | |
b::::e:::::b | |
b::::e:gh::b | |
b::::e:a:f:b | |
beg:eeeeeeeb | |
be:ae:f::::b | |
beh:e:a:ee:b | |
beeeeeeee::b | |
be:a:f:e:f:b | |
be:::::e:h:b | |
be:hg:we:::b | |
bbbbbbbbbbbb | |
bbbbbbbbb | |
b+++:+++b | |
b+++:+++b | |
b++n:+++b | |
beeeeeeeb | |
b+++:+++b | |
b+o+:+++b | |
b+++w+++b | |
bbbbbbbbb | |
message look ! some reeds ! | |
bbbbbbbbbb | |
b++jjeeeeb | |
b+++jee++b | |
b+:fh::+ub | |
b+f+uje+hb | |
b+:::eej+b | |
beee:eeeeb | |
bejjjjjeeb | |
bej+:+jeeb | |
bej+w+jeeb | |
bbbbbbbbbb | |
message and don't leave any dirt around please ! | |
bbbbbbbb | |
bee+d+hb | |
beejjj+b | |
beemi++b | |
bej+n::b | |
bej++:+b | |
bej++w+b | |
bbbbbbbb | |
message those plants looks bumpy ! | |
bbbbbbbb | |
b++++eeb | |
b+od+ejb | |
b+h++ejb | |
beeeeeeb | |
bjjhjjeb | |
b+dc+jeb | |
b++:+jeb | |
b++w+jeb | |
bbbbbbbb | |
bbbbbbbb | |
bjjjjjjb | |
beeeeeeb | |
bjh::g:b | |
bj+jjj:b | |
bjj+++:b | |
bejc:::b | |
bej+:d+b | |
bej+w++b | |
bbbbbbbb | |
(+++++++++ | |
++eeeee++ | |
+eeeeeee+ | |
+++++++++ | |
+++uoc+++ | |
++n+++w++ | |
+++++++++ | |
+++++++++ | |
+++++++++ | |
+++++++++) | |
message Warm up | |
eee+w+eee | |
++e+++e++ | |
+de+n+eh+ | |
++e+o+e++ | |
eee+++eee | |
message Two holes in a row | |
eeeee##:::## | |
eeeee##:#f## | |
ejwee##:::## | |
ej+ee##::f## | |
ej+ee##::::: | |
ejnee##e#f#: | |
ej++++hhj+#: | |
e+++++++++f: | |
eeeee####### | |
message Where are you lillyplant? | |
eee+w+eee | |
++e+++e++ | |
+de+++eh+ | |
++e+o+e++ | |
eee+++eee | |
message Here comes reedplants! | |
eee+w+eee | |
jje+++e++ | |
jde+++eh+ | |
jje+o+e++ | |
eee+++eee | |
message Hole on the way! | |
######### | |
#+weeeeh# | |
#+neeeeg# | |
#++++h+e# | |
##e####:# | |
#:a:f:f:# | |
#:::::::# | |
######### | |
message Two holes and a reed ! | |
eeeee##:::## | |
eeeee##:#f## | |
ejwee##:::## | |
ej+ee##::f## | |
ej+ee##:j::: | |
ejnee##e#f#: | |
ej++++hhj+#: | |
e+++++++++f: | |
eeeee####### | |
message Round trip | |
######### | |
#:::::::# | |
#:#####:# | |
#:#:w:#e# | |
#:#+d+ee# | |
#g#####+# | |
+++++++++ | |
jjjjjjjjj | |
message Badger badger badger, mushroom mushroom | |
########### | |
##+d+h+o++# | |
##+######+# | |
#kkkkkkkkk# | |
#kkkkkkkkk# | |
#kkkkkkkkk# | |
#kkkkkkkkk# | |
#kkkkkkkkk# | |
#####k##### | |
#:::#k#:::# | |
#:::+k+:::# | |
#::::w::::# | |
########### |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment