PuzzleScript icon indicating copy to clipboard operation
PuzzleScript copied to clipboard

Think rigorously about the default included examples

Open increpare opened this issue 2 years ago • 3 comments

Could they look/sound nicer? Do they illustrate all the features I might want to show off? Are they fun to play? Are there better examples?

increpare avatar Feb 23 '22 20:02 increpare

bad-ideas: random robots, random robots spawner. something better should be possible? Also random stuff shouldn't be in the tutorial? Or maybe it's fine? Or maybe they should be commented a bit better?

elementary/intermediate/advanced are all good though :)

increpare avatar Mar 09 '22 15:03 increpare

Are there any other simple canonical games that could be included? Are there any basic techniques that are missing from the sample games? (Sounds, etc?) The same games aren't very well commented, one notices...

increpare avatar Mar 09 '22 15:03 increpare

Notes from session (note: includes source code of some people's games - I don't own the rights to them - I need to mull it over a few days and then contact people about permission to include their game in the standard example set).

(other possible examples: Some lines were meant to be crossed https://www.puzzlescript.net/editor.html?hack=33eee323d8edfbdc20ee2d584cee2b4b

pushcat jr https://www.puzzlescript.net/editor.html?hack=a8f4e5aed01de7c9ef50

MazezaM https://www.puzzlescript.net/editor.html?hack=7718522

)

title the art of cloning
author Rosden Shadow [Mark Signorelli]
homepage rosden.itch.io
noaction

verbose_logging
debug

========
OBJECTS
========

Background
#581AB2 #000000 #291E4C
11111
12121
11211
12121
11111


Target
#FF263B #911A45
.....
.0.0.
..0..
.0.0.
.....
(
.0.0.
.101.
.010.
.1.1.
.....
)
(.....
.0.0.
..0..
.0.0.
.....)





Wall
#1AB258 #0E664E #CBFF7F
02222
10002
10002
10002
11110

Player
#4CB5FF #26FFEA #263BFF
.000.
.202.
01110
.111.
.2.2.

Crate
#FFB37F #993D74 #FFFFFF
02222
10002
10002
10002
11110



Cratepos
red
00000
0...0
0...0
0...0
00000


Crateneg
blue
00000
0...0
0...0
0...0
00000

floor
yellow
.....
...0.
.....
.....
.....

floor0
pink
.....
.....
.....
.0...
.....

=======
LEGEND
=======

. = Background
# = Wall
P = Player
* = Crate
+ = cratepos
- = crateneg
@ = Crate and Target
t = Target

Object = Crate or Player or Wall

=======
SOUNDS
=======

Crate MOVE 36772507

================
COLLISIONLAYERS
================

Background
Target
Player, Wall, Crate,Cratepos,Crateneg
floor,floor0

======
RULES
======

(propagate motion to end of row of crates from player)
[ >  Object | Crate ] -> [   Object | > Crate  ]

(spawn new crate at end of line of crates)
[ > crate | no object ] -> [ crate | crate ]

==============
WINCONDITIONS
==============

All Target on Crate

=======
LEVELS
=======

message   the goal is to cover-up all the red crosses

message  level 1 of 1

#########
#ttttttt#
#t.....t#
#t.....t#
#t..*.pt#
#t.....t#
#t.....t#
#ttttttt#
#########

message  Good work!




===================================================================
===================================================================


title Singleton Traffic
author Toph Wells
homepage www.tophwells.com
noaction
run_rules_on_level_start
========
OBJECTS
========

Player
White #ff0 #ff4
22222
21112
21012
21112
22222

Background
Black

IndicatorH
#fa0
.....
0...0
00.00
0...0
.....

IndicatorV
#f80
.000.
..0..
.....
..0..
.000.

(a marker token used for game logic)
WinBlocker
transparent

=======
LEGEND
=======

. = Background
o = Player
Indicator = IndicatorH or IndicatorV

=======
SOUNDS
=======
Player move 11806907
EndLevel 93613502
Undo 10562106

================
COLLISIONLAYERS
================
Background
Player
IndicatorH
IndicatorV
WinBlocker


======
RULES
======

(movement code)
[Perpendicular Player|Player] -> [Player|Player]

(drawing graphics to indicate possible movement directions)
late [ indicator ] -> []
late Vertical [Player no IndicatorV|Player] -> [Player IndicatorV|Player]
late Horizontal [Player no IndicatorH|Player] -> [Player IndicatorH|Player]

(clear up the winblocker tag so you can replace it)
late [ WinBlocker ] -> [ ]

(if a player has freedom of movement, block winning)
late vertical [ player no IndicatorH | no IndicatorV ] -> [ player WinBlocker | ]
late horizontal [ player no IndicatorV| no IndicatorH ] -> [ player WinBlocker | ]

==============
WINCONDITIONS
==============

no WinBlocker

=======
LEVELS
=======

Message Tiles can't move horizontally if there's something vertically adjacent.
Message Tiles can't move vertically if there's something horizontally adjacent.
Message You win when nothing can move.
Message 1 OF 3

ooooooooooo
o.........o
o.........o
o...ooo...o
o...ooo.o.o
o...ooo...o
o....o....o
o..o.o....o
ooooooooooo

Message 2 OF 3

oooooooooo
o........o
o.oo..o..o
o.....o..o
o........o
o........o
o........o
o........o
o........o
oooooooooo

Message 3 OF 3

oooooooo
o......o
o.o....o
o.o....o
o......o
o....o.o
o.....oo
oooooooo
Message 4 OF 3

oooooooo
o..o...o
o..o...o
ooo..ooo
o......o
o...o..o
o...o..o
oooooooo

Message 5 OF 3

ooooooooo
o.......o
o.ooooo.o
o.......o
o...o...o
o.......o
ooooooooo
o.......o
o.o.o...o
o.o.....o
o.o.....o
o.......o
ooooooooo

Message LAST OF 3

ooooooooooooo
o......oo...o
o......oo.o.o
o.o.oo..o...o
o.o.....o...o
o.o.........o
o...........o
ooooooooooooo

increpare avatar Mar 11 '22 09:03 increpare