Crossfire Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: CF: Announcing beta release of the random map generator



Peter Mardahl on  wrote...
| 	3) nethack-style room-and-corridor maps
| 
| Conventions for a layout entries:
| 'C'	a map "center".  Treasures and exits down get stuck on C's.
| '*'	a door.  A door of type "doorstyle" is placed here.
| '#'	a wall.  Walls are autojoined with each other.
| '>'	stairs down (not yet used)
| '<'	stairs up (not yet used)
| 0	nothing there.
| 
| A layout need not generate any 'C', '*', '>', '<': these are optional.
| '#' and 0
| are mandatory.
| 

To do three you will need to specify `impassable blocks' EG, just a
black square.  In nethack the whole level is created by
  1/ first filled with black impassable blocks
  2/ random non-overlaping rectangular rooms added around the place
  3/ corridors connecting all rooms created.
  4/ doors added (most of the time) to where corridors meet rooms.

That is about it. The corridors will not have `walls' around them
making them very hackish. and single wide, (unless two corridors
happen to appear next to each other). 

Note corridors should probably also have a different floor to rooms
so you may like to add a `secondary floor style' specification.
(for buildings that could represent the outside area - maybe with
the occasional bush, or two sorts of dirt randomly mixed) 

Rogueish mazes are even easier.  In rogue you divide the area into
a 3x3 grid. place one room in each `square' (most of the time)
and then link them by corridors to neibouring rooms. No doors.

Caves are a lot harder, especially as the caves don't follow wall
patterns very well. and have a definate `side' to them.

I think nethack make caves my makeing `blobs' of floor space (with some
overlap) on the `impassable blocks' map. Ensures they are all connected,
by adding a corridor or two, then adding walls around all `impassable
blocks' which are next to `passable' floor.

Note the nethack method is to basically start with a map of `impassable
blocks' so you will want a output symbol for that. Yes thei is often
lots of wasted space. In nethack you could actually using a pick axe to
dig though this space, mining for the rare gems (though mostly finding
worthless glass),  and digging your own corridors.

I supose one option could be to make the impassable blocks `diggable'
but I would not like to see the ubitious square block used for this,
instead I'd like to see a `diggable dirt' images which start pure
`impassable' black, and slowly degrade into passable rubble.
(As an option mind you).

Perhaps a `impassable style' would allow this selection?

Summery for nethack, caves, building etc etc etc.
You need really two more style types.
   a    `secondary floor' for nethack corridors, or `outside building'
   and  `impassable' (or if style permits) `diggable' area.


  Anthony Thyssen ( System Programmer )    http://www.sct.gu.edu.au/~anthony/
- --------------------------------------------------------------------------- -
    Millions long for immortality who do not know what to do with
    themselves on a rainy Sunday afternoon.       --- Susan Ertz
- --------------------------------------------------------------------------- -
     PGP Public Key available -- finger -l anthony@lyrch.cit.gu.edu.au
-
[you can put yourself on the announcement list only or unsubscribe altogether
by sending an email stating your wishes to crossfire-request@ifi.uio.no]