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

ZDBSP Problem - a bug or have I just got it wrong?

Recommended Posts

I am not reporting this as a bug -- yet -- in case it is just a mistake by me.

In the "Nodebuilder" configuration for build, I change the default options for zdbsp to -z -x -b -r "%F" -o "%T"; apparently -z -x -b -r are the optimal settings for a GZDoom-only WAD. When I try to run the game in testing, DoomBuilder complains that the nodebuilder did not build the nodes, but gives no explanation. I suspect that DoomBuilder is the passing extra options to zdbsp, but can't be sure of this.

Questions for CodeImp:

1) How can I get DB to tell me exactly what command-line arguments it is passing to the nodebuilder?

2) How can I get DB to pass exactly the command-line arguments that I specify and nothing else?

3) Why does DoomBuilder not report to the user the standard output and standard error of any failed command, so that the user can see what is wrong?

4) Why is the "Executable" text box for the nodebuilder and testing engine readonly? There's nothing pople like me hate more than having to waste several mouse clicks browsing to a file when we already have its full path in the clipboard ready to CRTL-V, or just want to type it!! :) :)

Share this post


Link to post

Apparently DB can't recognize the compressed nodes and thinks they are invalid. For compressed nodes some of the map lumps are empty so any normal validity check will fail.

Share this post


Link to post

1) How can I get DB to tell me exactly what command-line arguments it is passing to the nodebuilder?

Make a batch file that writes them to a text file or use/make a simply program that pops up a message box telling you the arguments that were given, and use that as the nodebuilder. I have such a tool if you need it.

2) How can I get DB to pass exactly the command-line arguments that I specify and nothing else?

It does exactly that. What else did you expect?

3) Why does DoomBuilder not report to the user the standard output and standard error of any failed command, so that the user can see what is wrong?

Not all programs use the standard error ouput stream to output errors and I cant even read it with VB. I might be able to get the console output, maybe.

4) Why is the "Executable" text box for the nodebuilder and testing engine readonly?

To eliminate some chances that the user input is incorrect. You may be able to type, read and check if your input is valid, but that certainly doesn't go for everyone ;) How often do you change your nodebuilder settings? Not daily I hope.

Graf Zahl hit the nail on the head. Doom Builder only knows how to work with normal map lumps, no hacks or tricks. If you want to compress something, save/export the map with a normal nodebuilder and rebuild your nodes manually with the desired settings. And no, I cannot "just" make DB support all other kinds of node builds as it requires normal nodes for the 3D Mode.

Share this post


Link to post

But you could make it so that it allows building other node formats for saving, can you? If you need 'normal' nodes again for internal use just rebuild them. Right now it isn't even possible to allow special settings for exporting a map because DoomBuilder complains.

Share this post


Link to post
CodeImp said:

Make a batch file that writes them to a text file...

I am used to GUI programs having a button to provide this sort of thing to technically-orientated users upon request, but it isn't too hard to do the way you say; in fact I have a nice C program called echoargs.exe that I wrote ages ago that can be renamed to anything I like. Bet you can't guess what it does :)

CodeImp said:

It does exactly that. What else did you expect?

Even specifying cmd.exe and running a batch file that printed its arguments and paused didn't work; I assumed that DB was passing something behind my back that was tripping up cmd.exe, since I couldn't think of any other explanation at the time. Of course it is also possible that you spawn whatever command is given with a "hide window completely" flag - you tell me!

CodeImp said:

get the console output, maybe

Sorry, that was what I meant. For command-line programs, that's usually the same thing.

CodeImp said:

How often do you change your nodebuilder settings? Not daily I hope.

Not often :)

Again, this is just me believing in the principle that GUI programs should allow technically-orientated users to do things the "proper" way and not straight-jacket them as if they were just "mere mortals". Please understand that I am trying to be nice about this, since I know that you are acting with good intentions and after all, you give DB away free of charge having done a lot of work on it; but I would hope that perhaps you can become aware just how insulting it feels to techies when we are prevented from doing something the easy way just because the average person would not know how to.

FWIW, the way I would have handled this is to have an option in builder.cfg that could only be set from there; e.g., "expert=true" or something like that, documented in the README file, but not having a button in the IDE. People like me love trawling through .INI files and suchlike to see what's in them and would thus find it; ordinary users wouldn't know about it and wouldn't have to care.

Just a thought!

At the end of the day I like DB very much and believe it is generally a good idea, well done; but of course, nothing is perfect, and everything can be improved.

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  
×