Skip to content

Instantly share code, notes, and snippets.

@jjmajava
Last active August 29, 2015 14:13
Show Gist options
  • Save jjmajava/c0985186b7cd1ecd092b to your computer and use it in GitHub Desktop.
Save jjmajava/c0985186b7cd1ecd092b to your computer and use it in GitHub Desktop.
title Tiny Procedural Dungeon
author Jere
homepage twitter.com/jjmajava
run_rules_on_level_start
(zoomscreen 13x11)
========
OBJECTS
========
Background
darkblue darkgreen
00000
00000
00000
00000
00000
Floor1
darkblue #18212b
11111
10010
10011
11110
10010
Floor2
darkblue #18212b
11111
10010
11100
10010
10001
Floor3
darkblue #18212b
11111
10010
11101
10100
10100
Floor4
darkblue #18212b
11111
10100
11100
10011
10010
startzone ,
transparent
NS
green
SS
yellow
WS
blue
ES
red
Safe
transparent
Edge #
grey darkgrey
00010
11111
01000
11111
00010
HWall
grey darkgrey
00010
11111
01000
11111
00010
VWall
grey darkgrey
00010
11111
01000
11111
00010
RogueR
orange brown green darkgreen darkbrown darkred lightblue
322.6
.30.6
.5530
033..
4..4.
RogueL
orange brown green darkgreen darkbrown darkred lightblue
6.223
6.03.
0355.
..330
.4..4
Target
black darkgreen darkblue #161e27
00000
10000
12000
12100
12120
Door
darkgrey darkbrown black
11111
01221
11111
01111
11111
Open
darkbrown
00...
00...
00...
00...
0....
SecretDoor
grey darkgrey red
00010
11111
01200
11111
00010
BuildLevel B
transparent
Corner
transparent
FOW
black
FU
transparent
FD
transparent
FL
transparent
FR
transparent
(
FU
darkgreen
..0..
.000.
..0..
..0..
.....
FD
darkgreen
.....
..0..
..0..
.000.
..0..
FL
darkgreen
.....
.0...
0000.
.0...
.....
FR
darkgreen
.....
...0.
.0000
...0.
.....
)
( CREATURES )
Bat
black #161e27
00.00
.000.
..0...
.....
.111.
=======
LEGEND
=======
. = Background
Player = RogueL or RogueR
Wall = Edge or HWall or VWall
Obstacle = Wall or Door
Sides = SS or NS or ES or WS
Dungeon = vwall or hwall or door or secretdoor or open or corner
C = Edge and Corner
Path = FU or FD or FL or FR or Player
Floor = Floor1 or Floor2 or Floor3 or Floor4
=======
SOUNDS
=======
================
COLLISIONLAYERS
================
Background
Floor
startzone b
Target
NS SS
ES WS
Door Open
Wall SecretDoor Player Bat
Corner
Safe
FU FD FL FR
FOW
======
RULES
======
( Start buildlevel )
(------------------)
( Floor )
late [ b ][ no floor ] -> [ b ][ random floor ]
( 1st vertical wall )
late random right [ b ][ | startzone | ] -> [ b ][ ws | vwall door | es ]
late vertical [ b ][ vwall | no wall ] -> [ b ][ vwall | vwall ]
late [ b ][ wall | no wall ] -> [ b ][ wall | safe ]
late [ b ][ es | no wall ] -> [ b ][ es | es ]
late [ b ][ ws | no wall ] -> [ b ][ ws | ws ]
late horizontal [ b ][ door | ... | sides ] -> [ b ][ door | ...| ]
late vertical [ b ][ Wall | | | ] -> [ b ][ wall | safe | safe | safe ]
( 1st horizontal wall, east side )
late random up [ b ][ | es no safe | ] -> [ b ][ ss | hwAll door | ns ]
late horizontal [ b ][ hwall | no wall ] -> [ b ][ hwall | hwall ]
late [ b ][ Wall | no Wall ] -> [ b ][ Wall | Safe ]
late [ b ][ ns | no wall ] -> [ b ][ ns | ns ]
late late [ b ][ ss | no wall ] -> [ b ][ ss | ss ]
late vertical [ b ][ door | ... | sides ] -> [ b ][ door | ... | ]
( 2nd horizontal wall, west side )
late random up [ b ][ | ws no safe | ] -> [ b ][ ss | hwAll door | ns ]
late horizontal [ b ][ hwall | no wall ] -> [ b ][ hwall | hwall ]
late [ b ][ Wall | no Wall ] -> [ b ][ Wall | Safe ]
late [ b ][ ns | no wall ] -> [ b ][ ns | ns ]
late [ b ][ ss | no wall ] -> [ b ][ ss | ss ]
late vertical [ b ][ door | ... | sides ] -> [ b ][ door | ...| ]
late [ b ][ safe ] -> [ b ][ ]
late horizontal [ b ][ Wall | | | ] -> [ b ][ Wall | Safe | Safe | safe ]
( 2nd vertical wall, north east )
late random right [ b ][ | ns es no safe | ] -> [ b ][ ws | VwAll door | es ]
late vertical [ b ][ vwall | no wall] -> [ b ][ vwall | vwall ]
late [ b ][ Wall | no Wall ] -> [ b ][ Wall | Safe ]
late [ b ][ es | no wall ] -> [ b ][ es | es ]
late [ b ][ ws | no wall ] -> [ b ][ ws | ws ]
vertical horizontal [ b ][ door | ... | sides ] -> [ b ][ door | ...| ]
( 3rd verticall wall, south east )
late random right [ b ][ | ss es no safe | ] -> [ b ][ ws | VwAll door | es ]
late vertical [ b ][ vwall | no wall] -> [ b ][ vwall | vwall ]
late [ b ][ Wall | no Wall ] -> [ b ][ Wall | Safe ]
late [ b ][ es | no wall ] -> [ b ][ es | es ]
late [ b ][ ws | no wall ] -> [ b ][ ws | ws ]
late horizontal [ b ][ door | ... | sides ] -> [ b ][ door | ...| ]
( 4th vertical wall, north west )
late random right [ b ][ | ns ws no safe | ] -> [ b ][ ws | VwAll door | es ]
late vertical [ b ][ vwall | no wall] -> [ b ][ vwall | vwall ]
late [ b ][ Wall | no Wall ] -> [ b ][ Wall | Safe ]
late [ b ][ es | no wall ] -> [ b ][ es | es ]
late [ b ][ ws | no wall ] -> [ b ][ ws | ws ]
late horizontal [ b ][ door | ... | sides ] -> [ b ][ door | ...| ]
( 5th vertical wall, south west )
late random right [ b ][ | ss ws no safe | ] -> [ b ][ ws | VwAll door | es ]
late vertical [ b ][ vwall | no wall] -> [ b ][ vwall | vwall ]
late [ b ][ Wall | no Wall ] -> [ b ][ Wall | Safe ]
late [ b ][ es | no wall ] -> [ b ][ es | es ]
late [ b ][ ws | no wall ] -> [ b ][ ws | ws ]
late horizontal [ b ][ door | ... | sides ] -> [ b ][ door | ...| ]
late [ b ][ safe ] -> [ b ][ ]
( 3rd horizontal wall, totally random )
late vertical [ b ][ wall | | ] -> [ b ][ wall | safe | safe ]
late random [ b ][ sides no safe no wall ] -> [ b ][ hwall door ]
late horizontal [ b ][ hwall | no wall ] -> [ b ][ hwall | hwall ]
late [ b ][ safe ] -> [ b ][ ]
late vertical [ b ][ door | ... | sides ] -> [ b ][ door | ...| ]
( 6th vertical wall, totally random )
late horizontal [ b ][ wall | | ] -> [ b ][ wall | safe | safe ]
late random [ b ][ sides no safe no wall ] -> [ b ][ vwall door ]
late vertical [ b ][ vwall | no wall ] -> [ b ][ vwall | vwall ]
late [ b ][ safe ] -> [ b ][ ]
( 4th horizontal wall, for really high rooms )
late vertical [ b ][ wall | | | | ] -> [ b ][ wall | safe | safe | safe | safe ]
late random [ b ][ sides no safe no wall ] -> [ b ][ hwall door ]
late horizontal [ b ][ hwall | no wall ] -> [ b ][ hwall | hwall ]
late [ b ][ safe ] -> [ b ][ ]
late vertical [ b ][ door | ... | sides ] -> [ b ][ door | ...| ]
( 7th vertical wall, for really wide random )
late horizontal [ b ][ wall | | | | ] -> [ b ][ wall | safe | safe | safe | safe ]
late random [ b ][ sides no safe no wall ] -> [ b ][ vwall door ]
late vertical [ b ][ vwall | no wall ] -> [ b ][ vwall | vwall ]
late [ b ][ safe ] -> [ b ][ ]
late [ b ][ sides ] -> [ b ][ ]
( One extra door )
late [ b ][ hwall | vwall ] -> [ b ][ hwall safe | vwall safe ]
late [ b ][ wall | wall | door | wall | wall ] -> [ b ][ wall safe | wall safe | door safe | wall safe | wall safe ]
late random [ b ][ wall no edge no safe ] -> [ b ][ wall door ]
late [ b ][ door | door ] -> [ b ][ door | ]
( One SECRET door )
late random [ b ][ door ] -> [ b ][ door SecretDoor ]
( Detect new corners )
late horizontal [ b ][ hwall | wall no hwall ] -> [ b ][ hwall | wall corner ]
late vertical [ b ][ vwall | wall no vwall ] -> [ b ][ vwall | wall corner ]
( Remove wall under the doors )
late [ b ][ door wall ] -> [ b ][ door ]
( Make one bat! )
late random [ b ][ no wall no door ] -> [ b ][ bat ]
( Set Player and Target )
late random [ b ][ no wall no door ] -> [ b ][ random player ]
late random [ b ][ no wall no door no player ] -> [ ][ target ]
( PATH )
late [ path no player ] -> [ ]
startloop
late left [ Path | no Path no wall no door ] -> [ Path | FR ]
late up [ Path | no Path no wall no door ] -> [ Path | FD ]
late right [ Path | no Path no wall no door ] -> [ Path | FL ]
late down [ Path | no Path no wall no door ] -> [ Path | FU ]
endloop
( FOW )
late [ ] -> [ FOW ]
late [ path ] -> [ path no FOW ]
late [ wall | no FOW no wall ] -> [ wall no FOW | ]
late [ door | no FOW ] -> [ door no FOW | ]
late [ wall no FOW no corner | corner FOW ] -> [ wall | corner no FOW ]
( CRAWL )
[ left player ] -> [ left roguel ]
[ right player ] -> [ right roguer ]
[ > Player | SecretDoor ] -> [ Player | Door ]
[ > Player | Door ] -> [ Player | Open ]
( CRITTERS )
[ bat ] -> [ randomdir bat ]
( Exit, clear dungeon, trigger BuildLevel )
[ dungeon ][ action player target ] -> [ ][ action player target ]
[ action player target ] -> [ b ]
==============
WINCONDITIONS
==============
=======
LEVELS
=======
Message Press x to descend the satairs to the next level.
C#########################C
#b....,,,,,,,,,,,,,,,.....#
#.....,,,,,,,,,,,,,,,.....#
#.....,,,,,,,,,,,,,,,.....#
#.....,,,,,,,,,,,,,,,.....#
#.....,,,,,,,,,,,,,,,.....#
#.....,,,,,,,,,,,,,,,.....#
#.....,,,,,,,,,,,,,,,.....#
#.....,,,,,,,,,,,,,,,.....#
#.....,,,,,,,,,,,,,,,.....#
#.....,,,,,,,,,,,,,,,.....#
#.....,,,,,,,,,,,,,,,.....#
#.....,,,,,,,,,,,,,,,.....#
#.....,,,,,,,,,,,,,,,.....#
#.....,,,,,,,,,,,,,,,.....#
C#########################C
(
TODO
- Ulkonurkat eivät saa kadota levelin putsauksessa.
- Huoneen ulkopuoliset nurkan viereiset ovet eivät saa pljastua vahingossa.
- ovien eteen blokkerit
- seinänvierustebn erottaminen asettelussa
BACKLOG
- Leveleiden laskeminen
- Liikkuvia, seuraavia ötököitä
- inventaario
- terveys
- reaaliaikainen vuoropohjainen systeemi
- taistelu
- terveys
- nälkä
- aarteet, tarvikkeet
- featuret
- erilaiset luolat
- ansat
Tarviketyypit
- Aseet: tikari, miekka, iso miekka... Keihäs?
- Haarniskat: nuttu, nahka, ketju, rauta...
- Juomat: parannus, nopeus, sekoilu,
Ansat
- Kuoppa?
- Räjähdys?
- Loukku?
Erikoiskohteet / -huoneet
- Hauta: tönäisy saattaa herättää aaveen?
- Alttari?
- Lähde: satunnainen juoma?
- Veden täyttämä huone?
- Pylväitä?
Monstereita
- Lepakko: Seuraa/hyökkää vain lähellä olleessaan, muuten liikkuu satunnaisesti
- Rotta: Kuten lepakko, mutta seuraa
- Goblin/örkki
- Koboldi: pöllii jotain ja pakenee?
- Vuorenpeikko?
- Hämähäkki (tekee verkkoja)
- Aave
- Jonkilainen mato/käärme/wyrmi?
- Jakaantuva lima?
-
)
)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment