puzzlescript
Version:
Play PuzzleScript games in your terminal!
432 lines (340 loc) • 6.18 kB
Plain Text
title Smother
author Team Borse
background_color #9CBD0F
text_color #0F380F
run_rules_on_level_start
========
OBJECTS
========
Background
9CBD0F
LaserGV
9CBD0F #8CAD0F #306230 #0F380F
22222
.222.
..3..
..3..
.....
LaserGH
9CBD0F #8CAD0F #306230 #0F380F
2....
22...
2233.
22...
2....
LaserV
9CBD0F #8CAD0F #306230 #0F380F
.....
..3..
..3..
..3..
.....
LaserH
9CBD0F #8CAD0F #306230 #0F380F
.....
.....
.333.
.....
.....
LaserB
9CBD0F #8CAD0F #306230 #0F380F
.....
..3..
.333.
..3..
.....
Exit
9CBD0F #8CAD0F #306230 #0F380F
2...2
2...2
2...2
2...2
2.2.2
Wall
9CBD0F #8CAD0F #306230 #0F380F
33333
31223
32123
32223
33333
Heart
9CBD0F #8CAD0F #306230 #0F380F
.2.2.
22222
.222.
..2..
.....
PlayerFull
9CBD0F #8CAD0F #306230 #0F380F
.222.
.323.
.222.
.222.
.2.2.
Protector
9CBD0F #8CAD0F #306230 #0F380F
.333.
.232.
.333.
.333.
.3.3.
ProtectorSolo
9CBD0F #8CAD0F #306230 #0F380F
.333.
.232.
.333.
.333.
.3.3.
victimSolo
9CBD0F #8CAD0F #306230 #0F380F
.222.
.323.
.222.
.222.
.2.2.
PlayerDead
9CBD0F #8CAD0F #306230 #0F380F
.222.
22222
2.2.2
.222.
.222.
pushBlock
9CBD0F #8CAD0F #306230 #0F380F
33333
31113
31113
31113
33333
=======
LEGEND
=======
Player = PlayerFull or Protector or ProtectorSolo or victimSolo
PlayerWin = PlayerFull or PlayerDead or Protector or victimSolo
Laser = LaserV or LaserH or LaserB
LaserBlock = Wall or Player or PlayerDead or Exit
. = Background
= Wall
g = LaserGV
h = LaserGH
P = PlayerFull
n = Protector
q = ProtectorSolo
k = victimSolo
O = Exit
l = Heart
b = pushBlock
=======
SOUNDS
=======
startgame 83279102 (sound at start of game)
CloseMessage 123434 (close message noise)
ShowMessage 123434 (show message noise)
sfx0 8545502 (death)
sfx1 26 (heart)
================
COLLISIONLAYERS
================
Background
Laser
Exit
ProtectorSolo, Heart, Wall
Player, Wall, PlayerDead, LaserGV, LaserGH, Protector, victimSolo, pushBlock
======
RULES
======
(clear lasers)
late [Laser] -> []
(zip the lasers out of the guns and through the levels)
late down [LaserGV | no Laser] -> [LaserGV | LaserV]
late right [LaserGH | no Laser] -> [LaserGH | LaserH]
late down [LaserV no LaserBlock | ] -> [LaserV | LaserV]
late right [LaserH no LaserBlock | ] -> [LaserH | LaserH]
(generate overlapping lasers)
late down [LaserV no LaserBlock | LaserH] -> [LaserV | LaserB]
late down [LaserGV no LaserBlock | LaserH] -> [LaserGV | LaserB]
late right [LaserH no LaserBlock | LaserV] -> [LaserH | LaserB]
late right [LaserGH no LaserBlock | LaserV] -> [LaserGH | LaserB]
(deal with overlapping lasers)
late right [LaserB no LaserBlock | no Laser] -> [LaserB | LaserH]
late right [LaserH no LaserBlock | no Laser] -> [LaserH | LaserH]
late down [LaserB no LaserBlock | no Laser] -> [LaserB | LaserV]
late down [LaserV no LaserBlock | no Laser] -> [LaserV | LaserV]
(solo Victim can push a block)
[ > victimSolo | pushBlock ] -> [ > victimSolo| > pushBlock]
(pushing block to switch breaks laser)
[pushBlock laser] -> [ wall]
(if a player is over a laser, then cause them harm)
late [ PlayerFull Laser ] -> [PlayerDead Laser] sfx0
(victim solo dies in the laser)
late [ victimSolo Laser ] -> [PlayerDead Laser] sfx0
(protector levels)
[ > ProtectorSolo | ... | Heart ] -> [ | ... | ProtectorSolo ] sfx1
[ > ProtectorSolo ] -> [ ProtectorSolo]
==============
WINCONDITIONS
==============
All PlayerWin on Exit
No Heart
=======
LEVELS
=======
message then...
message I PROTECT YOU
##g###g###
.........#
n.......o#
........o#
p...#....#
.........#
##########
message YOU SMOTHER ME
##########
n........#
......#..#
h..#h..#..#
p.....#..#
......#oo#
##########
message I DEFEND YOU
####g#####
.P.....n.#
.........#
..#...#..#
.........#
......oo.#
##########
message YOU SPEAK FOR ME
####g#####
n.......o#
....#h...#
h....g....#
.....#..o#
p......#.#
##########
message WE ARE CARE FREE
P####g##g###
.#..#.#....#
..........o#
h...........#
.#h..#..#.o#
.....#....n#
############
message I CARRY OUR BURDENS
message before...
message I AM ALWAYS SEARCHING
##########
l...l....#
....l....#
.........#
q..l.....#
l..l.....#
##########
message I NEVER SEE A FUTURE
##########
.........#
..l..q.l.#
.l....l..#
.ll...l.l#
l.l...l..#
##########
message I NEVER FEEL COMFORTABLE
##########
....l....#
lq..l..l.#
.l..l....#
.l.....l.#
....l....#
##########
message NO ONE GETS ME
##########l##l#####
l.l...............#
.....ll...........#
l..l..............#
..q..l.......l....#
..ll..l......l....#
##########........#
##########l....l..#
##########........#
##########.l.l.l..#
###################
message I NEED CONTACT
##################
.l...l############
......############
l.l..l##########l#
l.......l.....l#.#
....l............#
ll..q.........l.l#
..l.....l.......l#
.l..l............#
##################
message I NEED VALIDATION
message before...
message I AM INDEPENDENT
##########
.k.g.....#
.......b.#
.b...###.#
.#.......#
...h.....#
...#...O.#
##########
message I AM STRONG
##g##g##
.......#
kb.b...#
.......#
h.....#.#
..#b#h.#
....#..#
h....#o.#
.......#
########
message I NEED NO ONE
##g#######
.o.......#
...#.##..#
.#..bkb.##
h...#.#.b.#
.......#.#
.....#...#
##########
message I ENJOY MY COMPANY
####g#####g#####g######
.k.....b...........o..#
..b....#.#.......##...#
.........b...#b..#g...#
h..........#......#....#
#.###.#######.####.#.##
h..............#h......#
###.#####.###.##.#.#.##
##.b.#....#........#..#
##.#....#b#.........b.#
#.........#.......#...#
#######################
message I AM FEARLESS
#g##g#g####
o..#.#....#
...#.#.#..#
..........#
.....#..b.#
........b.#
..#.##.#b.#
..#......k#
###########
message I AM ALONE
message now...
##########
...o.o...#
.........#
.........#
.........#
...n.p...#
##########
message WE DON'T SEE THINGS AS THEY ARE, WE SEE THEM AS WE ARE
message Credits
message Concept/Design/Programming/Graphics - Steven McStravog
message Design/Programming/Graphics - Darragh McLernon
message Porting/Design/Programming - Rachel Gawley
message Artwork - Ricky Woodside