title Rock, Paper, Scissors (v0.90 = v1.alpha) author chaotic_iak homepage chaosatthesky.wordpress.com again_interval 0.15 key_repeat_interval 0.2 run_rules_on_level_start verbose_logging ( "Rock, Paper, Scissors" by chaotic_iak The popular game can't be that hard, right? Changelog: 09-Jul-2015 v0.10: Original mechanics 10-Jul-2015 : Gems, sticky paper 10-Jul-2015 v0.20: Add 1-8 11-Jul-2015 : Skip level 11-Jul-2015 v0.50: Add 9,10 12-Jul-2015 v0.51: Change 3,5,6 13-Jul-2015 v0.52: Change 7,8,9 14-Jul-2015 v0.60: Move 10>12, add 10,11 15-Jul-2015 v0.61: Change 9,11 17-Jul-2015 v0.70: Move 11>12, add 11,13,14 01-Aug-2015 v1.00: Move a lot, change 14, add 10,13,17 ) ======= OBJECTS ======= background lightgreen yellow 00000 00010 00000 01000 00000 wall darkgreen green 01110 10001 01110 10001 00000 level0 darkgreen green 01100 10010 10010 10010 01100 level1 darkgreen green 00100 01100 00100 00100 01110 level2 darkgreen green 01100 10010 00100 01000 11110 level3 darkgreen green 11100 00010 01100 00010 11100 level4 darkgreen green 00100 01100 10100 11110 00100 level5 darkgreen green 11110 10000 11100 00010 11100 level6 darkgreen green 01100 10000 11100 10010 01100 level7 darkgreen green 11110 00010 00100 01000 01000 level8 darkgreen green 01100 10010 01100 10010 01100 level9 darkgreen green 01100 10010 01110 00010 11100 player black orange red blue .000. .111. 22222 .333. .3.3. rock darkbrown brown orange .112. 01112 01112 01111 .000. paper lightgray gray 0001. 00001 00000 00000 00000 paperborderl white 0.... 0.... 0.... 0.... 0.... paperborderd white ..... ..... ..... ..... 00000 paperborderld white ..... ..... ..... ..... 0.... papernexttoborderl transparent papernexttoborderd transparent papernofold lightgray ...00 ....0 ..... ..... ..... scissorsu darkgray gray red darkred 1...1 01.10 .010. 22.22 23.23 scissorsl darkgray gray red darkred 10.22 .1023 ..1.. .1022 10.23 scissorsd darkgray gray red darkred 22.22 23.23 .010. 01.10 1...1 scissorsr darkgray gray red darkred 22.01 2301. ..1.. 2201. 23.01 gem blue lightblue ..... .011. 00001 .000. ..0.. star darkred red ..... .011. 00001 .000. ..0.. nostar darkgreen green 00000 01110 11111 01110 00100 starcover darkred red ..... .011. 00001 .000. ..0.. exit blue lightblue .001. 01011 00011 00101 .011. exitholder transparent startlevel transparent skipcheck transparent nextstar transparent processedstar transparent ====== LEGEND ====== . = background # = wall o = player and startlevel g = gem e = exit and exitholder r = rock p = paper w = scissorsu a = scissorsl s = scissorsd d = scissorsr 0 = wall and level0 1 = wall and level1 2 = wall and level2 3 = wall and level3 4 = wall and level4 5 = wall and level5 6 = wall and level6 7 = wall and level7 8 = wall and level8 9 = wall and level9 * = star scissors = scissorsu or scissorsl or scissorsd or scissorsr object = wall or player or rock or paper or scissors or gem or star or exitholder lvnum = level0 or level1 or level2 or level3 or level4 or level5 or level6 or level7 or level8 or level9 paperborder = paperborderl or paperborderd or paperborderld or papernofold or papernexttoborderl or papernexttoborderd sprites = lvnum or paperborder ====== SOUNDS ====== player cantmove 88720304 rock move 12612307 paper move 96873507 scissors move 93218507 rock destroy 98086501 paper destroy 41726709 scissors destroy 5523702 gem destroy 73128500 star destroy 64247508 undo 28911504 sfx0 13629103 sfx9 31899108 (skip check) endlevel 18800703 =============== COLLISIONLAYERS =============== processedstar, nextstar, startlevel, skipcheck papernexttoborderd papernexttoborderl background exit object lvnum, nostar starcover paperborderl paperborderd paperborderld papernofold ===== RULES ===== (LEVEL START) right [startlevel][lvnum|no lvnum] -> [startlevel][lvnum|nextstar] right [startlevel][star no processedstar][nextstar|] -> [startlevel][star processedstar][nostar|nextstar] [startlevel][nextstar] -> [startlevel][] [startlevel][processedstar] -> [startlevel][] right [startlevel][lvnum|nostar] -> [startlevel][lvnum|nostar nextstar] [startlevel] -> [] (STUFF) [action player skipcheck] -> [player] win [orthogonal player skipcheck] -> [orthogonal player] [action player no skipcheck] -> [player skipcheck] sfx9 [skipcheck] -> message ********** SKIP LEVEL? *********** * - ACTION TWICE to CONFIRM * * - ACTION then MOVE to CANCEL * (MOVEMENT) startloop (rock) [> player|rock] -> [> player|> rock] (scissors) down [> object|scissors no scissorsu] -> [> object|> scissors] down [> scissors|scissorsu] -> [> scissors|> scissorsu] down [> gem|scissorsu] -> [> gem|> scissorsu] right [> object|scissors no scissorsl] -> [> object|> scissors] right [> scissors|scissorsl] -> [> scissors|> scissorsl] right [> gem|scissorsl] -> [> gem|> scissorsl] up [> object|scissors no scissorsd] -> [> object|> scissors] up [> scissors|scissorsd] -> [> scissors|> scissorsd] up [> gem|scissorsd] -> [> gem|> scissorsd] left [> object|scissors no scissorsr] -> [> object|> scissors] left [> scissors|scissorsr] -> [> scissors|> scissorsr] left [> gem|scissorsr] -> [> gem|> scissorsr] (paper) rigid down [> object no rock no scissorsd|paper] -> [> object|> paper] + rigid right [> object no rock no scissorsr|paper] -> [> object|> paper] + rigid up [> object no rock no scissorsu|paper] -> [> object|> paper] + rigid left [> object no rock no scissorsl|paper] -> [> object|> paper] + rigid [orthogonal paper|paper] -> [orthogonal paper|orthogonal paper] (gem/star) [> player|gem] -> [> player|] [> player|star] -> [> player|processedstar] [> object|gem] -> [> object|> gem] [> object|star] -> [> object|> star] endloop (exit) [> player|exitholder] -> [> player|] (INTERACTION) (rock/paper) [> rock|stationary paper] -> [|paper] [> paper|stationary rock] -> [> paper|] (paper/scissors) down [> paper|stationary scissorsu] -> [|scissorsu] down [> scissorsd|stationary paper] -> [> scissorsd|] right [> paper|stationary scissorsl] -> [|scissorsl] right [> scissorsr|stationary paper] -> [> scissorsr|] up [> paper|stationary scissorsd] -> [|scissorsd] up [> scissorsu|stationary paper] -> [> scissorsu|] left [> paper|stationary scissorsr] -> [|scissorsr] left [> scissorsl|stationary paper] -> [> scissorsl|] (scissors/rock) down [> scissorsd|stationary rock] -> [|rock] down [> rock|stationary scissorsu] -> [> rock|] right [> scissorsr|stationary rock] -> [|rock] right [> rock|stationary scissorsl] -> [> rock|] up [> scissorsu|stationary rock] -> [|rock] up [> rock|stationary scissorsd] -> [> rock|] left [> scissorsl|stationary rock] -> [|rock] left [> rock|stationary scissorsr] -> [> rock|] (FINISH) (paper border) late [paperborder] -> [] late left [paper|no paper] -> [paper paperborderl|] late down [paper|no paper] -> [paper paperborderd|] late up [paperborderl|paper] -> [paperborderl|paper papernexttoborderl] late right [paperborderd|paper] -> [paperborderd|paper papernexttoborderd] late [papernexttoborderl papernexttoborderd] -> [paperborderld] late up [paper|paper] -> [paper papernofold|paper] late right [paper|paper] -> [paper papernofold|paper] (star check) late right [processedstar][nextstar|] -> [][starcover|nextstar] (exit check) late [player exit][gem] -> sfx0 late [exit no player] -> [exit exitholder] ============= WINCONDITIONS ============= no gem all player on exit ====== LEVELS ====== (and unofficial titles!) message ROCKS are HEAVY (Rockfall) ############ #......#...# #.....rr...# ##r##..#r.r# #...####rr.# #...##.r..r# #.o.#e..rr.# #...##..r..# 01########## message BLUE GEMS are IMPORTANT message RED GEMS are DIFFICULT (Excavation) ############ #..........# #.g...r.rr.# ##.##.rr.r.# #.e.##..rr.# #...#grr..## #.o.##.r.rg# #...##.*r.## 02########## message GEMS are LIGHT (Gems in a Rock Pile) ############ #...#......# #.g..ergr..# #...##.##### ##r##.grgr.# #...#.rgr*.# #.o.#.grgr.# #...#.rgrg.# 03########## message PAPER is STICKY (Think Before You Stick) ############ #......*#e## #......#pp.# #ppp#..p..p# #p.p#.p.p.p# #...#.p..p.# #.o.#..pp..# #...#......# 04########## message SCISSORS have SHARP BLADES (Ouch) ############ #..a.....### #..ag....### ##d##...we.# #...#.a.s#.# #...#.s..#*# #.o.#....w.# #...#...#..# 05########## message ROCK crushes SCISSORS (Demolition Derby) ############ #...#..#..## #.r.ad....## #...#..#.w*# ##w##....w## #...##...w## #.o.#ew....# #...##w....# 06########## message PAPER covers ROCK (One Versus Twenty-Two) ############ #.p.prrre#*# #...prr.r#r# ##r##r.r.r.# #...#.r.r.r# #...#r.r.r.# #.o.#.rpr.r# #...#r.r.r.# 07########## message SCISSORS cut PAPER (Big Paper is Useless) ############ #...p..e##*# #.p.p.a###p# #...p......# ##w##...pp.# #...#.d.pp.# #.o.#...pp.# #...#......# 08########## message ROCK must be PUSHED DIRECTLY message EVERYTHING ELSE can PUSH EACH OTHER (Light and Heavy) ############ #....r*..r.# #...g#r.#.e# #.dpp#g.ppp# ##p###w.#..# #...#...#..# #.o.#......# #...#......# 09########## message DISCOVER other SECRETS message GOOD LUCK (More Gems, More Rock Piles) ############# #o...e#.....# #rgrgr#*rgrg# #grgrg#rgrgr# #ggrgrggrgrg# #rggrg#rgrgr# #grggr#gggrg# #.....#.....# 10########### (Scissors Field) ################ #....#.....#e..# #.*.#.s..#a.#..# #...#.#.....#..# #s#s#...#...#..# #.........#.#s## #......#.....o.# #..............# 11############## (Littered Boulders) ############ #...#...a..# #..g..#.#.e# #.rrr.rr##s# #..r.#....o# #.#r..rr##w# #..r..#.#..# #..r....a*.# 12########## (Cleaning Job) ########### #.....o#e.# #......#..# #..######s# #grggrgggr# #grrggrrrg# #rrgrrrggr# #.prrggrr*# #.rggrggrr# 13######### (Clearing the Path) ############## #p.........rr# #p...ss.aa.rr# #p...ss.aa.#r# #ppp...r...#*# #pop.dd.ww.### #p...dd.ww##e# #ppppp...rrrr# 14############ (A-maze-ing Paper) ################# #..............r# #.ppppppppp.###.# #.p.....prp.#...# #.p.ppp...p.#.*.# #.p...pp..p.#...# #.ppp.ppppp.##### #.p...p...p.#...# #.pp.pp.p.p.#.e.# #.p.....p.o.a...# #.ppppppppp.#.w.# #...........#...# 15############### (Exercising Into Shape) ############# ###.......#e# #....ppp..#r# #....ppp..o.# #....ppp....# #.#.........# #r#..w.a..### #*#.......### 16########### (Surrounded) ####################### #ppp....p....ppp......# #p.............p......# #p.............p......# #...p...p...p.........# #.....................# #...............#.....# #...............#.....# #p..p...p...p..p#.....# #...............#.....# #...............#..w..# #...............#..e..# #...p...p...p...####### #ppp...........p...ppp# #pop...........p...p*p# #ppp....p....ppp...ppp# 17##################### (The Killer) ########## #........# #.ppp....# #.prp.g..# #.ppp....# #....a...# ###....aa# #ero.##*## 18######## message CONGRATULATIONS