Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Carb0n_

I have a question about node building

Recommended Posts

What is the data that a node builder works off of? Is it plain-text data that is converted into actual wad data?

Obviously I have seen the result of a node builder because it is a wad file. But what goes into the node builder as input before a wad comes out? Can somebody point me to an article or forum post that would help explain this to me. I am a programmer and I would like to work on a sort of auto-map maker.

Please help and thanks!

Share this post


Link to post

http://doomwiki.org/wiki/Node_builder

Node builder doesn't generate whole wad files. WAD is a file format for storing data lumps. Node builder merely generates these lumps: NODES, SEGS, SSECTORS, REJECT and BLOCKMAP lumps. It builds them based on map data stored in VERTEXES, LINEDEFS, SIDEDEFS, and SECTORS lumps, which are created while the map is being built in a map editor. Before the altered map can be played for the first time, a node builder must be called to build the additional lumps. All lumps are of course saved inside the wad file.

Share this post


Link to post

Not if the map is in standard Doom map format (the whole map structure is saved in VERTEXES, LINEDEFS, SIDEDEFS, and SECTORS lumps). Yes if the map is made in UDMF format - but maps in this format can only be played in advanced (ZDoom-based) ports.

Share this post


Link to post

I wish there were something like this, it would be neat:

[SECTOR_0]
CEIL_POS=128
CEIL_TEX=FLAT19
FLOOR_POS=128
FLOOR_TEX=FLAT19
LIGHT=160
TAG=0
(some more sector attributes...)

[LINEDEF_0]
POS_START=0,0
POS_END=0,64
SECTOR=SECTOR_0
TAG=0
TEX_TOP=
TEX_MID=GRAYBIG
TEX_BOT=
TEX_OFSX=0
TEX_OFSY=0
(some more linedef attributes...)

Share this post


Link to post

There are two node builders that work off plain-text data.

The first, chronologically speaking, is DoomBSP, which reads map data as written by DoomEd.

The latter is ZDBSP, which can read UDMF maps.

Your proposed format does not exist, for the DoomEd format only lines and things exist and all other features are extrapolated from lines; and in UDMF every element is independently described just like in the binary map format.

If you want to make an automated map maker, I'd suggest using UDMF for that. Or directly writing binary output I guess.

Share this post


Link to post

Actually, some early-1994 tool may have produced output like that, since visual modes were rare.  But for entering an entire map's lumps by hand it would be unbearable.

I assume what the OP wants to do is:

  1. have the "architectural" algorithm spit out text in the format described
  2. pack the text into WAD format
  3. run a nodebuilder on the WAD to produce a playable map

The second step should be straightforward (for a programmer, heh) since the byte orders of all those lumps are known.  Then, to have a self-contained app, choose an open-source node builder so you can stitch it into the rest of the code.

Share this post


Link to post
Carb0n_ said:

I wish there were something like this, it would be neat:

VERTEXES, LINEDEFS, SIDEDEFS and SECTORS lumps all have predefined file structure with known byte offsets, which you can learn on the wiki pages I've linked. I suppose you can make a program to read them in binary mode and get all the info needed.

Share this post


Link to post

Well the OP is apparently banned for some reason, so I guess we won't know what exactly they wanted to do.

Share this post


Link to post
Gez said:

Well the OP is apparently banned for some reason, so I guess we won't know what exactly they wanted to do.


Map generator that also automatically makes a post on Doomworld that has something to do with stalking TimeOfDeath.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×