Zone Builder

[Reusable] Zone Builder v2.12

This thread contains content that may be reused, modified, or ported by anyone.

Kurzov

Member
Code:
***********SYSTEM INFO***********
OS: Microsoft Windows 7 Home Premium 
GPU: AMD Radeon R7 200 Series
Zone Builder: v2.9

********EXCEPTION DETAILS********
Object reference not set to an instance of an object.
   at CodeImp.DoomBuilder.BuilderModes.BaseVisualMode.GetSectorData(Sector s)
   at CodeImp.DoomBuilder.BuilderModes.BaseVisualSector.GetSectorData()
   at CodeImp.DoomBuilder.BuilderModes.BaseVisualSector.Rebuild()
   at CodeImp.DoomBuilder.BuilderModes.BaseVisualSector..ctor(BaseVisualMode mode, Sector s)
   at CodeImp.DoomBuilder.BuilderModes.BaseVisualMode.CreateVisualSector(Sector s)
   at CodeImp.DoomBuilder.VisualModes.VisualMode.ProcessSidedefCulling(Sidedef sd)
   at CodeImp.DoomBuilder.VisualModes.VisualMode.DoCulling()
   at CodeImp.DoomBuilder.VisualModes.VisualMode.OnProcess(Single deltatime)
   at CodeImp.DoomBuilder.BuilderModes.BaseVisualMode.OnProcess(Single deltatime)
   at CodeImp.DoomBuilder.Windows.MainForm.processor_Tick(Object sender, EventArgs e)
   at System.Windows.Forms.Timer.OnTick(EventArgs e)
   at System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

Tried to create a vertex-sloped FOF (with three vertex points as the wiki says), and I keep crashing with this. I also tend to get "Too many SEGs have been split!" when doing so.

Full crashlog is too big for SRB2MB so I did a pastebin: https://pastebin.com/8aEjNx22
 
Last edited:

Kurzov

Member
Okay, now it just crashes any time I try to enter the visual editor from anywhere. I got the same error as last time. Is it just a case of having too much stuff?

I attached the WAD (in a ZIP) in case someone wants to look at it.
 

Attachments

  • MAPSH.zip
    1.1 MB · Views: 176

tabu

Member
is a linux version of this available or planned?

if not, i'd like to know if any wine users of this have had a good experience with it
 
Last edited:

tabu

Member
trying on wine myself and it started up fine but for whatever reason srb2 isn't one of the selectable options from the game configurations list. anyone else experienced this?

scratch that, i'm getting three errors at startup (that i ignored the first time cause its common for doom/zone builder to spit these in oe form or another. whoops) that all say a variant of "Unable to load the game configuration file "Srb2-21slopeszb.cfg". Error in file "C:\Program Files (x86)\Zone Builder\Configurations\Srb2-21slopeszb.cfg" near line 23: Spaces not allowed in key names."

the three files giving me this "spaces not allowed" error are all the ones specifically included with zone builder. all the doom builder defaults seem to be working fine. i'm guessing the spaces are making the game config files unrecognizable for the program but 1. i don't know why this is an issue and 2. i'm not sure how to fix it. only thing i can guess is that the program somehow isn't recognizing the three cfg files as legitimate c# files somehow but i can't figure out how to get it to do so. any help?
 
Last edited:

Lach

he/him
Moderator
Sonic Team Junior
Kart Krew™️
Judge
scratch that, i'm getting three errors at startup (that i ignored the first time cause its common for doom/zone builder to spit these in oe form or another. whoops) that all say a variant of "Unable to load the game configuration file "Srb2-21slopeszb.cfg". Error in file "C:\Program Files (x86)\Zone Builder\Configurations\Srb2-21slopeszb.cfg" near line 23: Spaces not allowed in key names."

the three files giving me this "spaces not allowed" error are all the ones specifically included with zone builder. all the doom builder defaults seem to be working fine. i'm guessing the spaces are making the game config files unrecognizable for the program but 1. i don't know why this is an issue and 2. i'm not sure how to fix it. only thing i can guess is that the program somehow isn't recognizing the three cfg files as legitimate c# files somehow but i can't figure out how to get it to do so. any help?

I run Zone Builder on my Mac using Wine. Try editing the configuration files; at the lines it gives errors for, delete all the spaces and type them back in yourself. I haven't needed to do this on my current setup but it worked back when I had the same issues!
 

tabu

Member
I run Zone Builder on my Mac using Wine. Try editing the configuration files; at the lines it gives errors for, delete all the spaces and type them back in yourself. I haven't needed to do this on my current setup but it worked back when I had the same issues!
ok i tried that and it didn't seem to work at all

BUT it gave me an idea as to how to fix it. so instead of manually messing with the default broken cfg file, i just created a blank file in a separate directory, named it the same as the config file (.cfg file type included) and then just copypasted all the code from the dysfunctional script into it, deleted the old cfg file and replaced it with this new one. and that seems to have fixed it!

i feel like this should be addressed on the installation page on the wiki or something lol
 

Lach

he/him
Moderator
Sonic Team Junior
Kart Krew™️
Judge
ok i tried that and it didn't seem to work at all

BUT it gave me an idea as to how to fix it. so instead of manually messing with the default broken cfg file, i just created a blank file in a separate directory, named it the same as the config file (.cfg file type included) and then just copypasted all the code from the dysfunctional script into it, deleted the old cfg file and replaced it with this new one. and that seems to have fixed it!

i feel like this should be addressed on the installation page on the wiki or something lol

That's basically the same solution yeah, haha.

I actually wrote most of the section on Mac/Linux installation on the wiki, so I will consider adding that now that more than just I have encountered it. Thanks!
 

Rob

Member
This isn't something that needs to be addressed right now, but you mentioned in the Dev server that you wanted to know what ways it would be useful to alter the ZB interface to be modding friendly, so I want to include a few screenshots for comparing how ZB handles the linedef editing functions and WB handles them. Please ignore the fact that I'm looking at different lines, it's not important.

So obviously, if you right click a linedef in ZB, you get this:
ct3kn88.png
It just pops up like that. I have issues with the interface, but I'll comment on that after I get to my second WB picture. What I strongly dislike here is that it just shoves a box in your face and says "Here". No real depth of what I can do with any linedef editing features is presented to me. I know there's more, but I also don't know where it is just by this alone. By comparison, here's WB:
Gwnm9Gi.png
I love this. It presents a ton of options to me, neatly and cleanly. If I wanna edit the properties, it's just a click away. But the vast majority of other functions are presented there as well, and I don't have to go through menus or go digging repeatedly and switch screens and tabs to get to them. They're right there, presented to me just a click away. No trying to remember which tabs had which features if you're going to use something you don't regularly use. What's probably most noteworthy here is that copy/paste/paste properties is immediately accessible on right-click. I can't begin to explain how useful those things in particular being there has been and how much easier my life has been because of it. I want to note that this is also standard behavior for WB across the board. Thing and sector editing also have similar pop-up menus on right click, and they're a godsend. I've missed them so much since I've started using Zone Builder.

Like I said previously, I want to touch on how WB handles its editing dialog box in comparison to ZB's:
JRb1H7m.png
This is actually a bit of a mixed bag. On the one hand, I actually like that Zone Builder just drops all the linedef flags in front of you, rather than being a tiny scroll menu the way WB's is. But good gods is Zone Builder's linedef effect selection a nightmare. I would absolutely love if it used the categorization function WB has. Being able to go to linedef effect type -> linedef effect list is so much better than scrolling through a massive list to get where you want. This is super important to be able to do if you don't know the linedef number of the thing you want, but know the general effect. Intuiting categories is far easier than scrolling huge lists.

I know I'm coming from a position that is probably weird and most people won't understand and may even disagree with on some specifics, but I really recommend going through Workbench to see how it presents options to you. Oogaland wrote it pretty much from ground up, and I was doing a lot of feature requests and bugfixes during its early development, and that included direct back-and-forth on ease of access features. A lot of what it does isn't arbitrary. It's a result of me going through it and saying "I'm trying to do X, right now WB doesn't have X, so what's the best way to make it work?". There are a lot of areas I find ZB to be rather lacking in and I could probably go point-by-point on lots of different features here, but in general WB was built with "What's a good, easy way to present this information?" in mind and ZB feels really clunky to me in that regard.
 
Last edited:

Monster Iestyn

Fangtastic
Administrator
Sonic Team Junior
Kart Krew™️
Judge
There's actually a button to the right of the "Action" box that does exactly what you want regarding linedef effects IIRC. Pity it's hidden away like that though.
 

Rob

Member
I mean, you made my point for me. My issue isn't that these features don't exist. It's that they simply aren't intuitive and the interface needs a serious upgrade for ease-of-use
 

MascaraSnake

Maybe out of retirement?
I see the problem, but there's also the space issue to consider here. Putting the categorized linedef list directly into the linedef properties window would require space that I'd have to take away elsewhere, because I can't make the window much bigger without fucking over users with small screen resolutions. WB's linedef window is already too cluttered IMO, so I don't want to start squishing everything together to make space. I'd have to actually take something out. The only thing I can think of at the top of my head is putting the flags in a smaller, scrollable box, but that's the one thing you said you preferred about ZB's window.

I like the context menu idea though. It would go a long way towards solving the problem that a lot of useful feature are hidden in obscure places.
 
Last edited:
Okay, here's my dilemma. I really want to get into map design for Kart but I can't seem to install it without Direct X 9. The kicker is that I can't install Direct X 9 because I'm on Windows 10. What should I do? I've asked this same question in the Discord and awaiting a response.
 
Windows 10 user over here, it installed just fine for me. As far as I can tell Windows 10 includes DX9, but if you want to be 100% sure you have it you can install the official DirectX End-User Runtimes.

But that's the thing. I can't install Direct X 9, the required version, because it's not compatible with Windows 10. in the system requirements on that website it doesn't list Windows 10. When I try to install it it will just give me the same error message I've been getting claiming it has to be Windows 7, Vista, etc.

EDIT: I was able to get help from the Discord. Please ignore this message. I got ZB working now. Thanks!
 
Last edited:

MascaraSnake

Maybe out of retirement?
I plan on releasing a ZB update with a few small adjustments for 2.2 soon (like getting the new flat alignment setup to display properly). This update will also come with the 2.2 config. In the meantime, ZB 2.9 works for making 2.2 maps.

The config is attached to this post. Here's how you use it: Drop it into ZB's "Configurations" folder. Then, in ZB, go to Tools -> Game Configurations. Check the box that reads "Sonic Robo Blast 2 - 2.2". Under the Resources tab, click "Add resource...". In the window that pops up, go to the "From PK3/PK7" tab and add srb2.pk3. Check the "Exclude this file from testing parameters" box. Then, under the Testing tab, add srb2win.exe as an executable.

Keep in mind that the 2.2 config contains major spoilers! Use it at your own risk if you haven't played through the single player campaign yet!

EDIT: The config is attached to the main post now.
 
Last edited:

Captain Obvious

You're welcome.
This is a fantastic piece of software, MascaraSnake! Thanks for making this available to us.

However, I'm not sure it supports pk3s as well as the changelog claims. I can't load zones.pk3 for version 2.2. Is there something different about 2.2's files that ZB can't read them? When I try to open it I get this:

"Could not open the WAD file for reading.
EndofStreamException: Unable to read beyond the end of the stream. Please make sure the file you selected is valid and is not in use by any other application."

I can guarantee that nothing else is using it. Closed all programs that could possibly use it, then used Iobit Unlocker -- says it's not locked, but I do a force unlock anyway.

My suspicion is, aside from that new resource tab devoted to pk3's, most of the rest of the program isn't expecting pk3s as a possibility. It's trying to read a pk3 as a WAD and there's nothing I can do to make it recognize it as a pk3.
 

Frostav

Member
Hey, I've noticed that ZB will let you set a flat as a wall texture which will correctly render in the visual mode but which will render as a flat red error texture in game. Shouldn't ZB just flat out ban you from doing this?
 
This is a fantastic piece of software, MascaraSnake! Thanks for making this available to us.

However, I'm not sure it supports pk3s as well as the changelog claims. I can't load zones.pk3 for version 2.2. Is there something different about 2.2's files that ZB can't read them? When I try to open it I get this:

"Could not open the WAD file for reading.
EndofStreamException: Unable to read beyond the end of the stream. Please make sure the file you selected is valid and is not in use by any other application."

I can guarantee that nothing else is using it. Closed all programs that could possibly use it, then used Iobit Unlocker -- says it's not locked, but I do a force unlock anyway.

My suspicion is, aside from that new resource tab devoted to pk3's, most of the rest of the program isn't expecting pk3s as a possibility. It's trying to read a pk3 as a WAD and there's nothing I can do to make it recognize it as a pk3.

I'm getting the same error.
 

MascaraSnake

Maybe out of retirement?
However, I'm not sure it supports pk3s as well as the changelog claims. I can't load zones.pk3 for version 2.2. Is there something different about 2.2's files that ZB can't read them?
Okay, I see how the changelog might be misleading. ZB only supports PK3s as resource files, not as map files. The reason is that is has support for reading PK3 files (which are really just ZIPs in disguise), but not for writing them. So even if you could open a map in a PK3, you wouldn't be able to edit it. This annoys me too, but unfortunately it's a limitation ZB inherited from GZDB.

Hey, I've noticed that ZB will let you set a flat as a wall texture which will correctly render in the visual mode but which will render as a flat red error texture in game. Shouldn't ZB just flat out ban you from doing this?
It should, but this will require some code changes. GZDB was made under the assumption that flats and textures are either completely separate or completely interchangeable. SRB2 can use textures as flats, but not the other way around.
 

Who is viewing this thread (Total: 1, Members: 0, Guests: 1)

Top