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

Problems with Doom Builder, large maps, and zdbsp

Recommended Posts

OK, so I'm working on a very large map at the moment (currently 24937 vertices, 28640 linedefs, 49856 sidedefs, 3817 sectors and 1033 things). Today, all of a sudden, the nodes stopped compiling; the compiling process appears not to finish and the following error message appears: "The nodebuilder did not build the required structures. Please ensure you do not have any errors in your map!"

Now, I error-checked the map and I couldn't appear to find it. I then decided to run the wad through zdbsp externally -

G:\Program Files\Doom Builder>zdbsp.exe -R "t2test.wad" -o "t2testcomp.wad"
----MAP01----
BSP: 100.0%
Nodes are so big that compression has been forced.
BLOCKMAP is so big that ports will have to recreate it.
Vanilla Doom cannot handle it at all. If this map is for ZDoom 2+,
you should use the -b switch to save space in the wad.
5.11164 seconds.

OK, so, I don't mind compressed nodes, or not creating the blockmap. So I added -z and -b to the command line in the Node Builder options in Doom Builder, so that it read "-R -b -z "%F" -o "%T"". Just to check, I ran it through zdbsp externally with the added command line options. It worked fine. However, within Doombuilder it stills gives me the same error message.

I decided to set the output wad to a specific wad file to see if that would help. The command line now reads, "-R -b -z "%F" -o "fush.wad"". It still gives me the error, HOWEVER the compiled fush.wad now appears in the Doombuilder directory, and ZDoom appears to run it fine. So, it seems to be compiling but Doombuilder doesn't think it is. This isn't really a great way of doing things as I have to specify the output wad in the command line. Is there perhaps a way round this, as the nodebuilder seems to be working correctly?

Share this post


Link to post

Ah, I just had a think and realised what the problem could be... Doombuilder is perhaps checking for the blockmap in the wad once it's compiled, can't find it, and therefore displays this error. Perhaps Doombuilder requires a blockmap to display 3D mode?

Hopefully CodeImp will be able to clear this up.

Share this post


Link to post

Yes your suspicion is correct. When the nodebuilder has finished its work, Doom Builder verifies if the nodebuilder actually did its job by checking if the required lumps have been built. If the BLOCKMAP lump is missing (or perhaps even when its size is 0), Doom Builder thinks the nodebuild failed. But even if it would ignore the result of the nodebuilder and take it for granted, it would still not work because Doom Builder cannot read compressed nodes.

What you can do is split your map in 2 maps so you can continue editing. When your second half is done, paste it back into the other and save it (nodebuild won't work, but you can still save without a nodebuild) then build the nodes manually.

Share this post


Link to post

I've run into this before, and it is incredibly frustrating if you've done work and forgotten to save. Is there a way DB could NOT bomb completely out when it encounters this?

Share this post


Link to post

I set DB to prompt me to save the nodes so I can save often and not have to wait 1 to 3 minutes for the nodes to build everytime. If it's a ZDoom-only WAD, don't even bother.

Share this post


Link to post

I don't know your defiition of "bomb out" scuba, but DB only gives you a message saying the nodes cant be built and then just saves the map without nodes/blockmap/reject. You're not losing your map at all.

Share this post


Link to post

The blockmap is probably the worst thing to check for a successful nodebuild. Any reason why you do it this way?

Share this post


Link to post

It is simply the logic in the program. Those lumps are marked in the config as "this is the result of a nodebuilder and must be copied back into the original WAD after nodebuild". The editor simply checks for those lumps. It doesnt know those lumps are not required for some sourceports.

Share this post


Link to post

sometimes this happens when ZDBSP detects unclosed sectors, or the nodebuilder just simply doesnt like your map. It normally does it with unclosed sectors. Go to tools, then check for map errors, thenif it tells you that there are unclosed sectors, they need fixing. Hope this is of help :)

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
×