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

Doom Builder feature wishlist

Recommended Posts

Zom-B said:

-Seeing sloped floors in 3D mode.


Out of all the things mentioned so far, I think I'd like to see that the most. I guess it's not necessary but it would be nice to not have to fire up the game every time to make sure I have my slopes JUST RIGHT. Would be really helpful when doing terrain.

Share this post


Link to post
Processingcontrol said:

Can't you see slopes with GZDoom visual mode?


Yeah, you can, and 3D floors, I don't know why they're talking about that.

Share this post


Link to post

One request I forgot to mention

Something I've been used to since the old DEU and DCK days (those were DOS editors)...

- Seeing sprites of things in the 2D mode. Even Slade2 has this feature.

Share this post


Link to post

Where do I find the new GZDoom mode? I have version 2.1.0.1356. Is it only in the repository?

Share this post


Link to post

Check that GZDoomEditing.dll is in the /Plugins folder, assign a Mode key to the plugin in Preferences/Controls and enable it in Game Configurations/Modes. Not sure which version I have but it works for me using Shift-W for GZDoom visual mode.

Share this post


Link to post
Zom-B said:

Where do I find the new GZDoom mode? I have version 2.1.0.1356. Is it only in the repository?


From GZDoomEditing.txt:
Core version needed: 2.1.0.1394

Therefore, you will have to update. http://svn.drdteam.org/doombuilder2/

I could not find a working link to the GZDoomEditing plugin, so I zipped all the plugins I currently use



into one file.
http://files.drdteam.org/index.php/files/get/1RQ1NZXggT/plugins.7z

Note, though, that the GZDoomEditing plugin is still beta.
I, and others, found that it will work quite well up to and including r1416 if you map in HexenFormat, after that,
for example, texture alignments will not align. So, from r1427 on you will have to map in the UDMF format.

Share this post


Link to post
Zom-B said:

If you are looking for programmers to take over (part of) DB2, then I'll volunteer. I've been thinking a lot about making a wad editor, but the sheer lack of technical documentation of wad lumps makes it difficult. But somehow CodeImp, you've been able to figure it all out.

Sheer lack of technical documentation? Did you actually try to enter "doom technical documentation" in Google?

Zom-B said:

-finding a line that triggers a specific script (find type 80, then find "6" in the first parameter field to search for script 6).

-Finding something that triggers sectors with tag 68. Search results should not just be for example lines, but anything that can trigger a sector tag, including statements in ACS!

Find & Replace is an editing mode, so it can easily replaced using a plugin (for which the existing Find & Replace code can be used as a base).

Zom-B said:

-Automatic detection of the type of map in the open dialog, so I never open a map saved in hexen format in doom format anymore (which makes DB2 hang for like a minute and then the map consists of thousands of intersecting huge lines)

That's not as easy as it sounds. It has been discussed on different places for several times, and the outcome usually is that there's no reliable way to detect the corrent format.

CodeImp said:

That said, I do encourage anyone willing to program plugins or fix bugs in Doom Builder. For you Zom-B and any other programmers I will try to idle in the #doom-tech channel on the OFTC network starting today (I know I have been away for a while) so I can help anyone who has questions regarding the source.

Don't forget the DB2 development forums ;)

GreyGhost said:

Check that GZDoomEditing.dll is in the /Plugins folder, assign a Mode key to the plugin in Preferences/Controls and enable it in Game Configurations/Modes. Not sure which version I have but it works for me using Shift-W for GZDoom visual mode.

The most convenient way is to assing the same keys to both visual modes and just disable the default visual mode for (G)ZDoom based editing and enable the GZDoom Visual Mode plugin for those. IIRC the GZDoom Visual Mode plugin is not enabled by default.

Share this post


Link to post

Meh, I recommend you keep the shortcut W for normal visual mode and use something else for GZDoom visual mode (such as Shift+W or Ctrl+W) so you can choose which mode to use. I know my txt file says you should use the same shortcut W as for normal visual mode and then disable normal visual mode, but since the GZDoom visual mode does not support everything too well and since you may want to map in a non-ZDoom/non-UDMF format also, you may want to use both. But this whole modes thing is advanced user stuff I guess.

Share this post


Link to post

boris said:

That's not as easy as it sounds. It has been discussed on different places for several times, and the outcome usually is that there's no reliable way to detect the corrent format.

Well, Slade and XWE seem to do a better job at it than DB2

Share this post


Link to post

boris said:

That's not as easy as it sounds. It has been discussed on different places for several times, and the outcome usually is that there's no reliable way to detect the corrent format.

While programming my own wad parser, I found a quite reliable way of deciding if a map is of doom or hexen type:

1. First try the LINEDEFS lump (quickest test)

bool is14 = (len(linedefsLump) % 14) == 0 // doom has 14 bytes per line
bool is16 = (len(linedefsLump) % 16) == 0 // hexen has 16 bytes per line

if (!is16) then return is_doom_map;
if (!is14) then return is_hexen_map;
// if we are here, length is multiple of 14*16, and we still don't know.


2. Try the THINGS lump

Start loading THINGS lump as if doom style. As soon as you find a thing type 0, undo loading and switch to hexen style.

It might also fail if someone actually made a doom map with a thing with non-existing type 0, or a hexen map with all things with non-zero height value.


3. Try the LINEDEFS lump again (slowest test, but most accurate)

Check the absence of back sidedefs.

Count the number of -1 values at addresses (short)linedefsLump[12+14*n]
Count the number of -1 values at addresses (short)linedefsLump[14+16*n]
whichever is larger determines the type of level.

This one probably only fails on levels with very simple outlines and lines with two subsequent 255 values in the argument fields, starting at argument 2 or 4 (so, is quite rare)


I don't know the details of UDMF, but I guess the same kind of decision structures can be used.

Share this post


Link to post

Detecting if a map is UDMF is extremely simple. First, a UDMF map will not have the same lumps as a binary map. Instead of THINGS, LINEDEFS, etc. it will have TEXTMAP and ENDMAP. All the map editor stuff is stored in TEXTMAP, which replaces the THINGS, LINEDEFS, SIDEDEFS, VERTEXES and SECTORS lumps entirely. The ENDMAP lump is always empty.

Additionally, an arbitrary amount of optional lumps can be contained between TEXTMAP and ENDMAP. If you don't know what to do with them, just keep them as they are.

Share this post


Link to post
boris said:

That's not as easy as it sounds. It has been discussed on different places for several times, and the outcome usually is that there's no reliable way to detect the corrent format.

Isn't it? I thought BEHAVIOR was present in all Hexen-format maps and absent in all Doom-format maps.

Share this post


Link to post
Guest

I would actually like to see a minor change to the way the 'ctrl' groups are handled.

Currently, if you select a group of linedefs and hit 'ctrl-1' you can bring up that group of linedefs anytime by hitting '1'. But if you deselect those linedefs and select a new group and again hit 'ctrl-1', what you end up with is both groups now in group '1', rather than only the new linedefs you selected. It would be better to lose the first selection and only keep the second.

It's not a big issue as ctrl groups are cleared whenever you close DB, but it would be good to be able to select new groups on the fly, as on large maps I often run out of ctrl groups to use.

Share this post


Link to post

I never knew DB had ctrl groups. I only know them from strategy games, where ctrl+# overwrites the group like you explain.

Whenever I had to edit a large amount of linedefs, I select the surrounding sector(s) and change to linedef mode, then deselect the ones I don't want to edit.

Share this post


Link to post
Guest

The reason I know about the cntrl groups, probably the only reason I know, is because I actually came up with that idea. And suggested it to Codeimp on a DB feature forum thread way back when, who was good enough to implement it.

And, of course, strategy games is where I got the idea from anyway.

So there you go. This is my one DoomBuilder-related contribution, and frankly, given my technical skills, it is quite likely to be the last, so by God, I am going to enjoy it. :D

Share this post


Link to post

Floor/ ceiling texture alignment in visual mode :))

and the like! Not to forget that

Such as; rotating of wall textures in 3D mode :)

Share this post


Link to post

How about some crash protection, when you open a map save a crash recovery of it somewhere then save a list of all the editing commands done in that session. This would help out a lot because I'm getting sick of pressing CTRL-S every 5 minutes.

Share this post


Link to post

I agree that the crashes are a big pain in the ass. I once made this map that took about 10 minutes to save, so I could really save it that frequently.

Share this post


Link to post

CodeImp, are you still planning on ever updating the GZDoom Visual Mode plugin with more direct access to UDMF fields (i.e. not having to click through several dialog boxes to set a flat alignment, then close out of them to see what it looks like, then repeat the process until it's right)?

We talked on IRC at one point a few months back about something involving a sidebar palette, which I suppose with some key combination to toggle between giving the palettes mouse access and giving mouse access to the camera, would probably be the sanest way to implement direct and convenient access to any number of fields without ending up in a twisted maze of excessive keybinds.

You'd then in theory be able to select or mouse over a sector, press a key or two to give mouse and keyboard focus to the palette, and use some nice keyboard-accessible controls to select the field you want to edit and adjust its value, seeing the map update in realtime to reflect your changes..

Aaaaand then maybe there could be a button to allow for Free Transform-esque flat scaling, rotation, and alignment all in one via dragging edges and corners around...mmm...

Share this post


Link to post

I often have crashes too. Mostly null-pointer access and "draw() called before finish()" (or something like that, function names might not be accurate). Both are fatal, as in, you can press the "continue" button but the crash dialog will just show again indefinitely.

I playtest often, and once I was able to recover a newer version than the saved wad by going through my user profile's temp directory.

Share this post


Link to post

If I wanted to make a plugin, what IDE do you recommend? DevCPP? MinGW? Preferably a lightweight one, unlike Visual Studio .NET.

I know C++ but I'm a total noob when it comes to project configurations, libraries and and dependencies. I'd need some help for that too.


Edit: just found out plugins are in C#. Guess there's no escaping studio .Net then, right?

Share this post


Link to post

I never experience crashes anymore. I did from time to time, because of what I believe was insufficient memory. I have 6GB now and Windows 7, and all has been good.

Still, a good back-up system won't hurt... But it's stable for me, personally..

Share this post


Link to post

Some more minor things...

-add FLAT20 into the "Doors" category by default

-add SILVER2 into the "Lights" category by default

-ability to mark a linedef as a "known issue" so that the error finder won't report it. Kind annoying when you're making fake floors and the like and it constantly reports it as an error. Also maybe mention the name of the offending linedef in the error title, like so: "Sidedef (LD number: x) has missing y texture (z side)

You can manually edit the texture categories and there's probably a plugin for the map analyzer, but these would still be nice to have by default.

Share this post


Link to post

esselfortium: I am currently way too busy to make any time-consuming additions. Also, the GZDoom editing plugin is not part of the official Doom Builder release, it is merely something I was toying around with (and sort of got demotivated with). Indeed I had that idea with UDMF fields in a side panel, but it failed, it wasn't a good idea. A modal, dialog window which pops up when you press a button (just like with texture selection and the other edit dialogs) would be better. But like I said, I don't have the time nor motivation right now, sorry.

Zom-B (about the crash): If you get a crash that often and you honestly think it is Doom Builder causing that and you think you can get me to reproduce it, then you should write a clear and detailed bug report here: http://www.doombuilder.com/forums/ I will try and fix it (eventually)

Zom-B (about plugins): There are IDEs for .NET programming. Try SharpDevelop. Also, google is your friend. But nothing beats Visual Studio when it comes to programming :P

KiiiYiiiKiiiA: I will consider your request. It sounds very reasonable.

Share this post


Link to post

Sorry, no way to reproduce the bugs. They happen for apparently no reason at all.

Same with two other bugs I haven't mentioned yet, one where dragging objects doesn't work anymore and the property dialogs just pop up after attempting to move something, and one where also the pan/zoom actions don't work anymore.

Share this post


Link to post
hervoheebo said:

Some more minor things...

-add FLAT20 into the "Doors" category by default

-add SILVER2 into the "Lights" category by default

-ability to mark a linedef as a "known issue" so that the error finder won't report it. Kind annoying when you're making fake floors and the like and it constantly reports it as an error. Also maybe mention the name of the offending linedef in the error title, like so: "Sidedef (LD number: x) has missing y texture (z side)

You can manually edit the texture categories and there's probably a plugin for the map analyzer, but these would still be nice to have by default.


Yeah, definitely an easier way to edit/create new categories for textures, possibly a drag and drop or a simple selection from the texture picker would be do-able? I don't know how complicated that is but right now it's very confusing.

If Codeimp is busy with other projects atm, does anyone else know how to do that?

Share this post


Link to post
CodeImp said:

Zom-B (about plugins): There are IDEs for .NET programming. Try SharpDevelop. Also, google is your friend. But nothing beats Visual Studio when it comes to programming :P


Isn't there anything else besides visual studio?

I tried to install Visual Studio C# .Net Express, but it insists on installing a .NET framework 4.0 of a whopping 2GB, which I don't have free, even though I already have 3.5 and don't need anything else.

Share this post


Link to post
Zom-B said:

One request I forgot to mention

Something I've been used to since the old DEU and DCK days (those were DOS editors)...

- Seeing sprites of things in the 2D mode. Even Slade2 has this feature.


Yadex also has this feature, it is very useful for telling what an item is instantly. And the DCK feature where you can highlight a sector in 2d mode and align all textures in the sector with one command.

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
×