Last active
May 4, 2024 15:13
-
-
Save increpare/72a7436847a7b27ee2436d7c2a059cc6 to your computer and use it in GitHub Desktop.
Big dog and little dog (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 Big dog and little dog (test version) | |
author increpare | |
homepage www.increpare.com | |
run_rules_on_level_start | |
color_palette 14 | |
background_color green | |
( verbose_logging ) | |
======== | |
OBJECTS | |
======== | |
blank | |
green | |
Background | |
lightgreen green | |
11111 | |
11111 | |
11011 | |
11111 | |
11111 | |
wall | |
darkgreen brown darkblue | |
.000. | |
00000 | |
20000 | |
.202. | |
..1.. | |
Baby | |
brown | |
..... | |
00... | |
.000. | |
.0.0. | |
..... | |
Adult_Head | |
brown yellow blue red | |
00000 | |
12121 | |
11111 | |
.111. | |
33333 | |
Adult_body | |
red darkblue yellow black | |
00000 | |
20002 | |
11111 | |
11.11 | |
33.33 | |
Adult_head_H | |
brown yellow blue red | |
011.3 | |
02113 | |
01113 | |
02113 | |
011.3 | |
adult_body_h | |
red darkblue yellow black | |
02113 | |
00113 | |
001.. | |
00113 | |
02113 | |
Dog | |
lightgray gray pink brown | |
..30. | |
..002 | |
03000 | |
.0.0. | |
.0.0. | |
dog_angry_u | |
lightgray gray pink brown white red | |
4.4.. | |
4.400 | |
200.. | |
0.300 | |
..0.. | |
dog_angry_d | |
lightgray gray pink brown white red | |
..0.. | |
003.0 | |
..002 | |
004.4 | |
..4.4 | |
dog_angry_l | |
lightgray gray pink brown white red | |
4420. | |
..0.. | |
44030 | |
.0.0. | |
.0.0. | |
dog_angry_r | |
lightgray gray pink brown white red | |
.0244 | |
..0.. | |
03044 | |
.0.0. | |
.0.0. | |
look_token | |
yellow | |
blood | |
#ff0000 | |
.00.. | |
0000. | |
00000 | |
00000 | |
.000. | |
======= | |
LEGEND | |
======= | |
adult = Adult_Head or Adult_body or Adult_head_H or adult_body_h | |
. = Background | |
, = blank | |
# = Wall | |
p = Dog | |
* = adult_head | |
& = adult_body | |
u = Adult_head_H | |
i = adult_body_h | |
b = Baby | |
pushable = dog or adult or baby | |
pusher = dog or adult or Baby | |
dog_angry = dog_angry_u or dog_angry_d or dog_angry_l or dog_angry_r | |
Player = dog or dog_angry | |
obstacle = wall or dog or adult or baby | |
sightblocker = wall | |
======= | |
SOUNDS | |
======= | |
dog_angry create 98923704 | |
dog_angry move 98923704 | |
adult move 98218307 | |
blood create 2421301 | |
================ | |
COLLISIONLAYERS | |
================ | |
Background | |
blank | |
blood | |
baby, Wall, Adult, dog, dog_angry | |
look_token | |
====== | |
RULES | |
====== | |
(feels better to not have the following behaviour - I should never rely on being able to do this maneouvre though) | |
( [ down dog_angry_u ] -> cancel ) | |
( [ up dog_angry_d ] -> cancel ) | |
( [ right dog_angry_l ] -> cancel ) | |
( [ left dog_angry_r ] -> cancel ) | |
[ > dog_angry ] -> [ > dog ] | |
[ > player ] -> [ > player ] again | |
[ dog_angry_u ] -> [ up dog_angry_u ] again | |
[ dog_angry_d ] -> [ down dog_angry_d ] again | |
[ dog_angry_l ] -> [ left dog_angry_l ] again | |
[ dog_angry_r ] -> [ right dog_angry_r ] again | |
[ > dog_angry | adult ] -> [ > dog_angry | > adult ] | |
[ > dog_angry | wall ] -> [ dog | wall ] | |
[ > pusher | pushable ] -> [ > pusher | > pushable ] | |
+ down [ up Adult_Head | Adult_body ] -> [ up Adult_Head | up Adult_body ] | |
+ down [ down Adult_Head | Adult_body ] -> [ down Adult_Head | down Adult_body ] | |
+ down [ left Adult_Head | Adult_body ] -> [ left Adult_Head | left Adult_body ] | |
+ down [ right Adult_Head | Adult_body ] -> [ right Adult_Head | right Adult_body ] | |
+ down [ Adult_Head | up Adult_body ] -> [ up Adult_Head | up Adult_body ] | |
+ down [ Adult_Head | down Adult_body ] -> [ down Adult_Head | down Adult_body ] | |
+ down [ Adult_Head | left Adult_body ] -> [ left Adult_Head | left Adult_body ] | |
+ down [ Adult_Head | right Adult_body ] -> [ right Adult_Head | right Adult_body ] | |
+ right [ up Adult_Head_h | Adult_body_h ] -> [ up Adult_Head_h | up Adult_body_h ] | |
+ right [ down Adult_Head_h | Adult_body_h ] -> [ down Adult_Head_h | down Adult_body_h ] | |
+ right [ left Adult_Head_h | Adult_body_h ] -> [ left Adult_Head_h | left Adult_body_h ] | |
+ right [ right Adult_Head_h | Adult_body_h ] -> [ right Adult_Head_h | right Adult_body_h ] | |
+ right [ Adult_Head_h | up Adult_body_h ] -> [ up Adult_Head_h | up Adult_body_h ] | |
+ right [ Adult_Head_h | down Adult_body_h ] -> [ down Adult_Head_h | down Adult_body_h ] | |
+ right [ Adult_Head_h | left Adult_body_h ] -> [ left Adult_Head_h | left Adult_body_h ] | |
+ right [ Adult_Head_h | right Adult_body_h ] -> [ right Adult_Head_h | right Adult_body_h ] | |
[ dog_angry ] [ > pushable | stationary obstacle ] -> [ dog_angry ] [ pushable | stationary obstacle ] | |
( [ dog_angry ] [ > pushable | wall ] -> [ dog ] [ > pushable | wall ] ) | |
[ stationary player ] [ > pushable ] -> [ stationary player ] [ pushable ] | |
[ stationary player | no sightblocker ] -> [ dog | > look_token ] | |
up [ dog | baby ] -> [ | dog blood ] again | |
down [ dog | baby ] -> [ | dog blood ] again | |
left [ dog | baby ] -> [ | dog blood ] again | |
right [ dog | baby ] -> [ | dog blood ] again | |
up [ dog ] [ up look_token | Baby ] -> [ up dog_angry_u ] [ |baby] again | |
+ down [ dog ] [ down look_token | Baby ] -> [ down dog_angry_d ] [ |baby] again | |
+ left [ dog ] [ left look_token | Baby ] -> [ left dog_angry_l ] [ |baby] again | |
+ right [ dog ] [ right look_token | Baby ] -> [ right dog_angry_r ] [ |baby] again | |
+ [ > look_token | no sightblocker no baby ] -> [ | > look_token ] | |
+ [ > look_token | sightblocker ] -> [ | sightblocker ] | |
[ look_token ] -> [] | |
[ > dog_angry | baby ] -> [ | dog blood ] | |
late down [ Adult_Head | no Adult_body ] -> cancel | |
late right [ Adult_Head_h | no Adult_body_h ] -> cancel | |
(level editor only bits ) | |
( down [ Adult_Head | no Adult_body ] -> [Adult_Head | Adult_body ] ) | |
( up [Adult_body | no Adult_Head ] -> [ Adult_body | Adult_Head ] ) | |
============== | |
WINCONDITIONS | |
============== | |
no Baby | |
some dog | |
======= | |
LEVELS | |
======= | |
message level 1 of 6 : My dog is very exciteable. | |
############### | |
#........#....# | |
#........#....# | |
#.....*..#....# | |
#.....&....b..# | |
#....########## | |
#........#,,,,, | |
#..p..*..#,,,,, | |
#.....&..#,,,,, | |
#........#,,,,, | |
##########,,,,, | |
message level 2 of 6 : Yeah, he doesn't really get on with small dogs. | |
##########. | |
#......*.#. | |
#......&.#. | |
#......*##. | |
#......&### | |
#......*..# | |
#......&.b# | |
#.......### | |
#..*.*..#,, | |
#..&.&..#,, | |
#...p...#,, | |
#.......#,, | |
#########,, | |
message level 3 of 6 : What do you expect me to do? | |
############## | |
#............# | |
#.####.......# | |
#b*..........# | |
#b&..........# | |
#b*..........# | |
#b&..........# | |
######.......# | |
,,,,,#.*.*.*.# | |
,,,,,#.&.&.&.# | |
,,,,,#.......# | |
,,,,,#.*...*.# | |
,,,,,#.&.p.&.# | |
,,,,,#.......# | |
,,,,,######### | |
message level 4 of 6 : Just give him a kick if he's causing you trouble. | |
#########..... | |
#..bb...###### | |
#.#ui#.......# | |
#.#..#uiui##.# | |
#..........#.# | |
#..........#.# | |
######...###.# | |
,,,,,#.....*b# | |
,,,,,#.....&b# | |
######...##### | |
#........#,,,, | |
#......b.#,,,, | |
#........#,,,, | |
#.ui.*...#,,,, | |
#....&...#,,,, | |
#..p.....#,,,, | |
#........#,,,, | |
##########,,,, | |
message level 5 of 6 : *shrug* There aren't usually small dogs around the park at this hour. | |
################### | |
#.................# | |
#.####.......####.# | |
#.*.............*b# | |
#b&.............&.# | |
#.*.............*b# | |
#b&.............&.# | |
######.......###### | |
,,,,,#.*.p.*.#,,,,, | |
,,,,,#.&...&.#,,,,, | |
,,,,,#.......#,,,,, | |
,,,,,#########,,,,, | |
message Level 6 of 6 : I mean, come on. It's not hard to imagine he could confuse it with a rat. | |
,,,,,,,,,,,,,,,,,,,,############ | |
,,,,,,,,,,,,,,,,,,,,#..........# | |
,,,,,,,,,,,,,,,,,,,,#..........# | |
,,,,,,,,,,,,,,,,,,,,#..........# | |
,,###################..........# | |
,,#........................#...# | |
,,#........................#...# | |
,,#........................#...# | |
,,#........................#...# | |
,,#........................#...# | |
######.....................#...# | |
#............#....#.#..........# | |
#.####.......#....#.#..........# | |
#b*..........#....#.#..........# | |
#b&..........#uiui#.#..........# | |
#b*..........#bbbb..#..........# | |
#b&..........########..........# | |
######.b.....#b*...............# | |
,,,,,#.......#b&...............# | |
,,,,,#...*.p.#b*...............# | |
,,,,,#...&...#b&...............# | |
,,,,,#.......#.####............# | |
,,,,,#....ui.#.................# | |
,,,,,#.......########..........# | |
,,,,,#########,,,,,,#..........# | |
,,,,,,,,,,,,,,,,,,,,#.########.# | |
,,,,,,,,,,,,,,,,,,,,#..........# | |
,,,,,,,,,,,,,,,,,,,,############ | |
message The End. You can't take your dog for a walk in peace anymore! | |
( | |
################################ | |
#...................#..........# | |
#...................#..........# | |
#...................#..........# | |
#.....#######.......#..........# | |
#..........................#...# | |
#..........................#...# | |
#..........................#...# | |
#..........................#...# | |
######.....................#...# | |
#............#....#.#..........# | |
#.####.......#....#.#..........# | |
#b*..........#....#.#..........# | |
#b&..........#uiui#.#..........# | |
#b*..........#bbbb..#..........# | |
#b&..........########..........# | |
######.b.....#b*...............# | |
,,,,,#.......#b&...............# | |
,,,,,#...*.p.#b*...............# | |
,,,,,#...&...#b&...............# | |
,,,,,#.......#.####............# | |
,,,,,#....ui.#.................# | |
,,,,,#.......########..........# | |
,,,,,#########......#..#.#.#.#.# | |
....................#..........# | |
....................#..........# | |
....................############ | |
################################ | |
#...................#..........# | |
#...................#..........# | |
#...................#..........# | |
#############.......#..........# | |
#..........................#...# | |
#..........................#...# | |
#..........................#...# | |
#..........................#...# | |
#..........................#...# | |
#..........................#...# | |
######.....................#...# | |
#............#....#.#..........# | |
#.####.......#....#.#..........# | |
#b*..........#....#.#..........# | |
#b&..........#uiui#.#..........# | |
#b*..........#bbbb..#..........# | |
#b&..........########..........# | |
######.b.....#b*...............# | |
,,,,,#.......#b&...............# | |
,,,,,#...*.p.#b*...............# | |
,,,,,#...&...#b&...............# | |
,,,,,#.......#.####............# | |
,,,,,#....ui.#.................# | |
,,,,,#.......########..........# | |
,,,,,#########......#..........# | |
....................#.########.# | |
....................#..........# | |
....................############ | |
....................############ | |
....................#..........# | |
....................#..........# | |
....................#..........# | |
#####################..........# | |
#..........................#...# | |
#..........................#...# | |
#..........................#...# | |
#..........................#...# | |
#..........................#...# | |
#..........................#...# | |
######.....................#...# | |
#............#....#.#..........# | |
#.####.......#....#.#..........# | |
#b*..........#....#.#..........# | |
#b&..........#uiui#.#..........# | |
#b*..........#bbbb..#..........# | |
#b&..........########..........# | |
######.b.....#b*...............# | |
,,,,,#.......#b&...............# | |
,,,,,#...*.p.#b*...............# | |
,,,,,#...&...#b&...............# | |
,,,,,#.......#.####............# | |
,,,,,#....ui.#.................# | |
,,,,,#.......########..........# | |
,,,,,#########......#..........# | |
....................#.########.# | |
....................#..........# | |
....................############ | |
....................############ | |
....................#..........# | |
....................#..........# | |
....................#..........# | |
...##################..........# | |
...#.......................#...# | |
...#.......................#...# | |
...#.......................#...# | |
...#.......................#...# | |
...#.......................#...# | |
######.....................#...# | |
#............#....#.#..........# | |
#.####.......#....#.#..........# | |
#b*..........#....#.#..........# | |
#b&..........#uiui#.#..........# | |
#b*..........#bbbb..#..........# | |
#b&..........########..........# | |
######.b.....#b*...............# | |
,,,,,#.......#b&...............# | |
,,,,,#...*.p.#b*...............# | |
,,,,,#...&...#b&...............# | |
,,,,,#.......#.####............# | |
,,,,,#....ui.#.................# | |
,,,,,#.......########..........# | |
,,,,,#########......#..........# | |
....................#.########.# | |
....................#..........# | |
....................############ | |
....................########### | |
....................#.........# | |
....................#.........# | |
....................#.........# | |
...##################.........# | |
...#......................#...# | |
...#......................#...# | |
...#.........#....#.#.....#...# | |
...#.........#....#.#.....#...# | |
...#.........#....#.#.....#...# | |
######.......#uiui#.#.....#...# | |
#............#bbbb..#.........# | |
#.####.......########.........# | |
#b*..........#b*..............# | |
#b&..........#b&..............# | |
#b*..........#b*..............# | |
#b&..........#b&..............# | |
######.......#.####...........# | |
,,,,,#.b.....#................# | |
,,,,,#.......######...........# | |
,,,,,#....ui.#....#...........# | |
,,,,,#.......#....#...#####...# | |
,,,,,#...*...#....#...........# | |
,,,,,#...&.p.#....############# | |
,,,,,#.......#................. | |
.....#.......#................. | |
.....#########................. | |
....................########### | |
....................#.........# | |
....................#.........# | |
....................#.........# | |
...##################.........# | |
...#......................#...# | |
...#......................#...# | |
...#.........#....#.#.........# | |
...#.........#....#.#.........# | |
...#.........#....#.#.........# | |
######.......#uiui#.#.........# | |
#............#bbbb..#.........# | |
#.####.......########.........# | |
#b*..........#b*..............# | |
#b&..........#b&..............# | |
#b*..........#b*..............# | |
#b&..........#b&..............# | |
######.......#.####...........# | |
,,,,,#.b.....#................# | |
,,,,,#.......######...........# | |
,,,,,#....ui.#....#...........# | |
,,,,,#.......#....#...#######.# | |
,,,,,#...*...#....#...........# | |
,,,,,#...&.p.#....############# | |
,,,,,#.......#................. | |
.....#.......#................. | |
.....#########................. | |
....................########### | |
....................#.........# | |
....................#.........# | |
....................#.........# | |
...##################.........# | |
...#......................#...# | |
...#......................#...# | |
######.......#....#.#.........# | |
#............#....#.#.........# | |
#.####.......#....#.#.........# | |
#b*..........#uiui#.#.........# | |
#b&..........#bbbb..#.........# | |
#b*..........########.........# | |
#b&..........#b*..............# | |
######.......#b&..............# | |
.....#.b.....#b*..............# | |
.....#.......#b&..............# | |
.....#....ui.#.####...........# | |
,,,,.#.......#................# | |
,,,,,#...*...######...........# | |
,,,,,#...&.p.#....#...........# | |
,,,,,#.......#....#...#######.# | |
,,,,,#########....#...........# | |
,,,,..............############# | |
....................########### | |
....................#.........# | |
....................#.........# | |
...##################.........# | |
...#......................#...# | |
...#......................#...# | |
...#..........................# | |
######.......#....#.#.........# | |
#............#....#.#.........# | |
#.####.......#....#.#.........# | |
#b*..........#uiui#.#.........# | |
#b&..........#bbbb..#.........# | |
#b*..........########.........# | |
#b&..........#b*..............# | |
######.......#b&..............# | |
.....#.b.....#b*..............# | |
.....#.......#b&..............# | |
.....#....ui.#.####...........# | |
,,,,.#.......#................# | |
,,,,,#...*...######...........# | |
,,,,,#...&...#....#...........# | |
,,,,,#.....p.#....#...#######.# | |
,,,,,#.......#....#...........# | |
,,,,.#########....############# | |
################################ | |
#...................#..........# | |
#...................#..........# | |
#...................#..........# | |
#.....#######.......#..........# | |
#..........................#...# | |
#..........................#...# | |
#..........................#...# | |
#..........................#...# | |
######.....................#...# | |
#............#....#.#..........# | |
#.####.......#....#.#..........# | |
#b*..........#....#.#..........# | |
#b&..........#uiui#.#..........# | |
#b*..........#bbbb..#..........# | |
#b&..........########..........# | |
######.b.....#b*...............# | |
,,,,,#.....*.#b&...............# | |
,,,,,#.....&.#b*...............# | |
,,,,,#...p...#b&...............# | |
,,,,,#.......#.####............# | |
,,,,,#...ui..#.................# | |
,,,,,#.......########..........# | |
,,,,,#########......#..#.#.#.#.# | |
....................#..........# | |
....................#..........# | |
....................############ | |
,,,,,,,,,,,,,,,,,,,,############ | |
,,,,,,,,,,,,,,,,,,,,#..........# | |
,,,,,,,,,,,,,,,,,,,,#..........# | |
,,,,,,,,,,,,,,,,,,,,#..........# | |
,,###################..........# | |
,,#........................#...# | |
,,#........................#...# | |
,,#........................#...# | |
,,#........................#...# | |
,,#........................#...# | |
######.....................#...# | |
#............#....#.#..........# | |
#.####.......#....#.#..........# | |
#b*..........#....#.#..........# | |
#b&..........#uiui#.#..........# | |
#b*..........#bbbb..#..........# | |
#b&..........########..........# | |
######.b.....#b*...............# | |
,,,,,#.......#b&...............# | |
,,,,,#...*.p.#b*...............# | |
,,,,,#...&...#b&...............# | |
,,,,,#.......#.####............# | |
,,,,,#....ui.#.................# | |
,,,,,#.......########..........# | |
,,,,,#########,,,,,,#..........# | |
,,,,,,,,,,,,,,,,,,,,#.########.# | |
,,,,,,,,,,,,,,,,,,,,#..........# | |
,,,,,,,,,,,,,,,,,,,,############ | |
( manipulate small dog with indirect pushing ) | |
.......... | |
.......... | |
....*..... | |
...#&#.... | |
...#b#.... | |
...#*#.... | |
....&..... | |
.......... | |
.....p.... | |
.......... | |
.......... | |
.......... | |
(kinda the same concept as others, also don't know how to make it interesting) | |
................... | |
................... | |
###...#######...### | |
#.......b*b.......# | |
#.......b&b.......# | |
###...#######...### | |
................... | |
.........*......... | |
......p..&......... | |
................... | |
................... | |
................... | |
............ | |
............ | |
...........# | |
......####.# | |
.........*b# | |
.........&b# | |
.......##### | |
.....b...... | |
............ | |
............ | |
p.**........ | |
..&&........ | |
............ | |
............ | |
............ | |
............ | |
............ | |
...........# | |
.......###.# | |
.........*b# | |
.........&b# | |
.......##### | |
.....b...... | |
....*....... | |
....&....... | |
..p......... | |
............ | |
################# | |
#...............# | |
#.####..........# | |
#b*.............# | |
#b&.............# | |
#b*.............# | |
#b&.............# | |
#b*.............# | |
#b&.............# | |
######..........# | |
,,,,,#.b........# | |
,,,,,#..........# | |
,,,,,#.....*.ui.# | |
,,,,,#...p.&....# | |
,,,,,#..........# | |
,,,,,############ | |
################## | |
#................# | |
#.####...........# | |
#b*..............# | |
#b&..............# | |
#b*..............# | |
#b&..............# | |
#b*..............# | |
#b&..............# | |
######...b.......# | |
#................# | |
#................# | |
#..........**ui..# | |
#..........&&....# | |
#................# | |
#..........p.....# | |
#........#.......# | |
#................# | |
#................# | |
#................# | |
################## | |
################## | |
#................# | |
#................# | |
#................# | |
#................# | |
#................# | |
#................# | |
#................# | |
#................# | |
#................# | |
#................# | |
#................# | |
#................# | |
#................# | |
#................# | |
#................# | |
#................# | |
#................# | |
#................# | |
#................# | |
################## | |
####### | |
#.....# | |
#.....# | |
#.....# | |
#.....# | |
#.....# | |
####### | |
####### | |
#.....# | |
#.....# | |
#.....# | |
#.....# | |
#.....# | |
#.....# | |
#.....# | |
#.....# | |
####### | |
######## | |
#......# | |
#......# | |
#......# | |
#......# | |
#......# | |
######## | |
########## | |
#........# | |
#........# | |
#........# | |
#........# | |
#........# | |
#........# | |
#........# | |
#........# | |
########## | |
######### | |
#.......# | |
#...*.#.# | |
#...&..b# | |
#.p.....# | |
#.......# | |
######### | |
(104) | |
####### | |
#...p.# | |
#.*..## | |
#.&.#b# | |
#.....# | |
#.....# | |
####### | |
########## | |
#........# | |
#.p.*....# | |
#...&.#..# | |
#........# | |
#........# | |
#########b | |
########## | |
#........# | |
#........# | |
#........# | |
#........# | |
#........# | |
########## | |
######## | |
#......# | |
#....#b# | |
#p*....# | |
#.&...## | |
#..#...# | |
######## | |
########,,, | |
#......#,,, | |
#..*.p.#,,, | |
#..&...#,,, | |
#####.##### | |
#.....*.*.# | |
#.....&b&.# | |
##.##.##.## | |
#.......... | |
#.......... | |
#.......#.. | |
#.......#.. | |
#########.. | |
########... | |
#......#... | |
#..*.p.#... | |
#..&...#... | |
#####.##### | |
#.....*.*.# | |
#.....&b&.# | |
##.#..##.## | |
#.........# | |
########### | |
.########...... | |
.#......#...... | |
.#..*.p.#...... | |
.#.*&...#...... | |
###&##.######.. | |
#......*.*.##.. | |
#......&b&..#.. | |
###.#..####.#.. | |
.#..........#.. | |
.############.. | |
( | |
choose 1 [ ] -> [ wall ] | |
choose 1 [ no wall ] -> [ dog ] | |
choose 1 down [ no obstacle | no obstacle ] -> [ adult_head | adult_body ] | |
choose 1 [ no obstacle ] -> [ baby ] | |
)) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment