Re: [DM-dev] Plans for DungeonMaker 1.x and 2.0
Brought to you by:
acdalton,
henningsen
|
From: Henningsen <al...@gl...> - 2001-04-26 11:41:07
|
>I was thinking about this this morning: what exactly is a wall, in our
>context? Nothing but a set of two points, both of which must have the
>same x or the same y.
Actually no, because the only way we will get doors is through walls. I
think we need in the Wall-object:
startX , startY , endX , endY , doorType , doorSize , doorOffset
doorType: 0 <==> no door
1 <==> opening that is always open (like we have now in all doors)
1 1 1 1 0 0 0 1 1 1 1
2 <==> opening that is always open with accentuated doorframe, like in
1 1 1 2 0 0 0 2 1 1 1 ... 0=open, 2=high wall
3 <==> actual door that can be open or closed, different graphics
from open space
1 1 1 1 7 7 7 1 1 1 1 ... use new value 7 for "door"
4 <==> actual door with accentuated doorframe
1 1 1 2 7 7 7 2 1 1 1
doorSize: the above examples have doorsize 3 - this is doorsize 4:
1 1 1 0 0 0 0 1 1 1 ... with doorOffset 3; the examples above all have
doorOffset 4.
doorOffset: number of tiles from start until door begins
Comment: In the current rooms-based version, all walls and doors must have
an odd number of tiles, so that it is unproblematic to center the door. If
we go to walls, we can do away with this altogether, and give the use total
freedom to place the door where she wants. However, we should check that
there is actually a wall tile at the end of the wall, and reject a wall if
its end falls in the middle of a door.
>I think it would be simpler for users if we keep the rooms, for ease of
>use, AND offer walls (for fine-tuning). Rooms, after all, are just
>wrappers around N walls.
My opinion is that if we get Walls into the DungeonMaker, Rooms become
redundant, and are just a source of unneeded complexity and possible bugs.
Rooms would only be useful to simplify design, so their proper place is in a
design program - either a simple wrapper program around the DungeonMaker
(replacement for the current main()-program) or a graphical program using
QUB for interactive design. Such a program should offer Rooms for initial
placement of several Walls + Crawlers which could then be modified. But
there is no reason to pass the Room data into the Dungeonmaker. Pass it all
as Walls, and *keep things simple*.
Peter
|