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

Nodebuilder problems

Recommended Posts

I swear, nodebuilders hate me. I've been having tons of problems lately, in both UDMF-ZDoom format and Boom format maps. The nodes keep building incorrectly, and I have bleeding sectors, messed up collision (walking through walls with impassable tagged), and heaps of other crap.

I've tried so much, and it just refuses to fucking work. If it helps, I use DB2.

Share this post


Link to post

I'm not sure what kind of help you're looking for with such limited info to work with, but what nodebuilder are you using? If you're using the ones that come with DB2, have you tried updating them to newer versions?

If I recall correctly, ZDoom can run UDMF maps without any nodes built with them (by using its integrated version of ZDBSP); have you tried running the ZDoom maps without the ZNODES lump? I won't say that the problem isn't with the nodebuilder, but all the problems I've had with nodes in the last 10 years have been a result of my own error, either by messing up the map structures or by running the nodebuilder incorrectly.

Share this post


Link to post

ZDoom gives me no end of trouble with gigantic slimetrails and bleeding sectors nearby sub-unit vertex placements. I can usually get away with a single digit after the decimal point, sometimes two, but more precision than that and it'll usually freak out. I most commonly run into this problem when using DB2's curve feature, which in UDMF assumes that any vertex value is A-OK (as it's supposed to be).

An interim workaround is to right-click the vertices in question (yes, one at a time) to bring up their edit dialog, and round off their x and y values to the nearest whatever.

Share this post


Link to post
esselfortium said:

An interim workaround is to right-click the vertices in question (yes, one at a time) to bring up their edit dialog, and round off their x and y values to the nearest whatever.

You could write a plugin for that ;)

Share this post


Link to post

Wasn't the entire point of having floating-point vertices in UDMF supposed to be to avoid things like slime trails? And here we have them *causing* them? WTF.

Share this post


Link to post

Slime trail avoidance was the point of fixed point vertices in nodes (e.g. ZDoom's extended node formats). Floating point values for vertices in UDMF was supposed to allow the mappers more precision. It seems it makes the task more complicated for nodebuilders, though.

I'd advise making a test case maps full of such slimetrails and posting it in a ZDBSP bug report on the ZDoom forums, see if Randy can do something about it.

Share this post


Link to post

You can't add precision at one level and expect it to magically filter down the whole tool chain. All this effectively does is to shift the precision problem elsewhere.

The nodebuilder still has to normalize that into a space with linear-precision when hardening the nodes into the fixed-point representation used by all node formats (not just ZDoom's extended nodes) and thus quantizing away your "extra" precision.

Without resorting to a new floating-point node format I don't see how this can be addressed without instead changing the UDMF spec. However even then, you are once again moving the problem down the chain.

I expect the majority of mappers would have been quite content with just another 1/10th (of a DOOM world unit) of freedom. This could have been implemented using integer precision and a load-time scaling factor without incurring any precision problems later on.

Share this post


Link to post

If ZDoom/ZDBSP do not build floating-point nodes for UDMF levels then it's simply not supporting UDMF vertices properly. That's my take on it. I don't see any other way around it, considering the maps end up broken by using one of their basic features. CodeImp even went to a lot of work to make sure DB2 could specify vertices at sub-integer precisions.

Share this post


Link to post

I've never given much thought to my node builder because I've never had any problems with it. Apparently I've been using ZenNode which I guess is the default for ZDoom maps in my old ass version of DeepSea.

Share this post


Link to post
Quasar said:

If ZDoom/ZDBSP do not build floating-point nodes for UDMF levels then it's simply not supporting UDMF vertices properly. That's my take on it.

I had a bit of time and decided to take a look. Its not just a question of the final output format. ZDBSP's internal vertex representation is 16.16 fixed-point. This means that as soon as the nodebuild begins the added precision in the UDMF spec is instantly lost for the most part. Although, ZDBSP outputs the original map's vertices in their original textual representation.

So you are quite right Quasar, in addition to the node format(s) ZDBSP itself is not compliant with the UDMF spec although it is capable of loading maps which use it.

Anyone thinking they can work at sub-integer precision in DB2 is going to find that what they see in-game is very likely not what it should be. My advice is to do as esselfortium suggests and restrict yourself to 1/10th precision at most.

Share this post


Link to post
DaniJ said:

ZDBSP's internal vertex representation is 16.16 fixed-point. This means that as soon as the nodebuild begins the added precision in the UDMF spec is instantly lost for the most part.

I thought that previous formats only allowed integer coordinates in maps. So that's still a lot of precision added.

DaniJ said:

Anyone thinking they can work at sub-integer precision in DB2 is going to find that what they see in-game is very likely not what it should be. My advice is to do as esselfortium suggests and restrict yourself to 1/10th precision at most.

esselfortium said:

I most commonly run into this problem when using DB2's curve feature, which in UDMF assumes that any vertex value is A-OK (as it's supposed to be).

Share this post


Link to post
tempun said:

I thought that previous formats only allowed integer coordinates in maps. So that's still a lot of precision added.

Quite. Although thats not really the point. The Doom wiki clearly states:

Support for UDMF maps (the only UDMF-compliant nodebuilder available)

Edit: Correction, the Doom wiki, not the ZDoom wiki (I think I got redirected).

Share this post


Link to post

The problem is that I NEVER used floating point vertexes EVER. This happens on my Boom format maps too (although not as badly).

Share this post


Link to post

Sorry for the double post, but I have uploaded a map that I am having trouble with. Can someone please figure out why the nodes are messed up? The two spots giving me trouble are the bridge over the stream, and the sector at the doorway to the basement of the house (the one in the main area, not the copy actually containing the basement).

http://www.mediafire.com/?zc3dew4a8cpqb34

I will not provide the texture resources, it's bad enough that I have to publicly release a map (though it's thankfully early in development, so when it's finished this won't be much of a spoiler)

Share this post


Link to post

Your node builder is fine. I opened it in DeepSea and the reason everything looks messed up is because you have quite a few mapping errors.

You have an unmerged line overlapping the three other lines where the 'door' is for the basement. There's also a ton of unclosed sectors for your bridge. I think you want to do Mode -> Map Analysis in DB2.

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
×