Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Reiken

On map lumps...

Recommended Posts

Is there ever a case where wads containing level data don't have
certain map lumps? Like a wad having an E1M1 label, a THINGS lump,
LINEDEFS lump, but no NODES because the lines and verts and such haven't
been run through bsp? (Is the amount of map lumps per label constant,
even if dummied?)

Also, does the order of the map lumps matter?

Toying around with writing some wad tools (don't expect anything), and
would like these nailed down.

Share this post


Link to post

They are all required by most engines. A wad with unbuilt nodes will not have the NODES, SSECTORS, SEGS, BLOCKMAP, OR REJECT lumps, and as a consequence, the map cannot be played in an engine without an internal nodesbuilder. The correct ordering of lumps is mandatory, and all must be present. There are tricks to "dummy" a few of the lumps, but they still require valid data to be present, with maybe the exception of the reject table (some ports can handle a 0-length reject without problems, others have glitches from it).

Hexen-format wads use the same lump names and ordering, but have different lump formats and have an additional BEHAVIOR lump at the end. I do not know about wads designed specifically for OpenGL though (I think they just have additional lumps too), but UDMF maps certainly do not use these lumps.

Share this post


Link to post
EarthQuake said:

They are all required by most engines. A wad with unbuilt nodes will not have the NODES, SSECTORS, SEGS, BLOCKMAP, OR REJECT lumps, and as a consequence, the map cannot be played in an engine without an internal nodesbuilder. The correct ordering of lumps is mandatory, and all must be present. There are tricks to "dummy" a few of the lumps, but they still require valid data to be present, with maybe the exception of the reject table (some ports can handle a 0-length reject without problems, others have glitches from it).

And definitely all limit removing ports can load wads with empty BLOCKMAP lump (otherwise they aren't limit removing).

Share this post


Link to post

Note that this doesn't mean that all limit removing engines can run maps that are outright missing a blockmap lump, of course. Eternity will crash to the console if you attempt to do so, though it will cope just fine with an empty BLOCKMAP. Both PrBoom+ and ZDoom seem capable of handling maps that are entirely missing the lumps which are non-essential (to that engine), though, as far as I can tell.

Share this post


Link to post

Thanks for the replies. The main reason I was asking about the bsp
lumps was in case editors tend not to add dummy entries if you save a
map without building it, and for flexibility with handling hand-tweaked
wads. I guess it'd make the most sense to check for all the lumps per map via the index and decide how to attempt reading from there.

Share this post


Link to post

Doomsday's internal node builder is capable of building a map without any node related lumps being present.

Share this post


Link to post
Reiken said:

Like a wad having an E1M1 label, a THINGS lump, LINEDEFS lump, but no NODES because the lines and verts and such haven't been run through bsp? (Is the amount of map lumps per label constant, even if dummied?)

Also, does the order of the map lumps matter?

For what it's worth - WadC only creates/edits the map marker, THINGS, LINEDEFS, SIDEDEFS, VERTEXES and SECTORS lumps, leaving the rest for the nodebuilder to create. Lump order does matter.

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
Sign in to follow this  
×