Edit: Nevermind, I figured it out by luck. For some reason, one of the "mountains" glitched. Many of the sectors used to create the sloped side "disappeared" and had to be fixed with the Make Sector tool. I noticed it when I saw several "void" sectors on the ceiling in Visual Mode, and saw the sector wasn't highlighting properly on Classic Mode. If it occurs again, I'll post the wad like you said.boris wrote:Needs more information. Extract the portion of the map that gives you the problem and post the map here.
Ultimate Doom Builder
Forum rules
The Projects forums are ONLY for YOUR PROJECTS! If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.
Got a cool project idea but nothing else? Put it in the project ideas thread instead!
Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.
Please read the full rules for more details.
The Projects forums are ONLY for YOUR PROJECTS! If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.
Got a cool project idea but nothing else? Put it in the project ideas thread instead!
Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.
Please read the full rules for more details.
-
- Posts: 157
- Joined: Sun Nov 04, 2018 4:57 pm
Re: Ultimate Doom Builder
I am experiencing an odd "slope glitch" that occurs whenever I create a line or move a vertex. I have a map with multiple "mountains" that have sloped sides, and suddenly whenever I move anything, even only slightly, the entire sector suddenly turns into a "giant slope." It started after I added a linedef to create a player block. The line isn't attached to anything, and has no effects other than blocking players and monsters. Now any changes makes the whole sector glitch.
Last edited by Misery on Thu Jul 14, 2022 12:42 pm, edited 3 times in total.
-
- Posts: 1337
- Joined: Tue Jul 15, 2003 4:18 pm
Re: Ultimate Doom Builder
Is there a way to clear the value of a custom text property (UDMF) in-editor?
I would expect that this would work like making any other value change - I could just replace the value with an empty entry and be done - but when I do this, then close and re-open the properties, the old (non-empty) value is restored.
I would expect that this would work like making any other value change - I could just replace the value with an empty entry and be done - but when I do this, then close and re-open the properties, the old (non-empty) value is restored.
-
- Posts: 753
- Joined: Tue Jul 15, 2003 3:37 pm
Re: Ultimate Doom Builder
Needs more information. Extract the portion of the map that gives you the problem and post the map here.Misery wrote:I am experiencing an odd "slope glitch" that occurs whenever I create a line or move a vertex. I have a map with multiple "mountains" that have sloped sides, and suddenly whenever I move anything, even only slightly, the entire sector suddenly turns into a "giant slope." It started after I added a linedef to create a player block. The line isn't attached to anything, and has no effects other than blocking players and monsters. Now any changes makes the whole sector glitch.
Select the line (i.e. make sure you're not editing the name/type/value) and press the Del key on your keyboard.AFADoomer wrote:Is there a way to clear the value of a custom text property (UDMF) in-editor?
I would expect that this would work like making any other value change - I could just replace the value with an empty entry and be done - but when I do this, then close and re-open the properties, the old (non-empty) value is restored.
-
- Posts: 1337
- Joined: Tue Jul 15, 2003 4:18 pm
Re: Ultimate Doom Builder
That works for other value types, but not text... The line greys out, as if it had been reset, but the value doesn't actually get cleared.boris wrote:Select the line (i.e. make sure you're not editing the name/type/value) and press the Del key on your keyboard.AFADoomer wrote:Is there a way to clear the value of a custom text property (UDMF) in-editor?
I would expect that this would work like making any other value change - I could just replace the value with an empty entry and be done - but when I do this, then close and re-open the properties, the old (non-empty) value is restored.
-
- Posts: 753
- Joined: Tue Jul 15, 2003 3:37 pm
Re: Ultimate Doom Builder
Is that for a custom field defined through Decorate/ZScript? If so please provide a minimal example showing the problem.
-
- Posts: 1337
- Joined: Tue Jul 15, 2003 4:18 pm
Re: Ultimate Doom Builder
Here you go. MAP01 has an actor (editor number 3000, class 'Test') that does nothing but print the value of the 'user_test' key.boris wrote:Is that for a custom field defined through Decorate/ZScript? If so please provide a minimal example showing the problem.
You do not have the required permissions to view the files attached to this post.
-
- Posts: 753
- Joined: Tue Jul 15, 2003 3:37 pm
Re: Ultimate Doom Builder
The cause is that empty input fields are treated as "do not change original value". This is used when multiple map elements selected that have differing values for their properties. For example selecting multiple sectors with different brightness levels will leave the brightness input field empty, and when hitting OK the brightness of each sector isn't changed.
This is fine for non-string fields, but for string fields there's currently no way to differentiate between "field is not supposed to change" and "user wants to change it to an empty string/remove it".
I don't really have a good solution for that right now, but as a workaround you can use this UDBScript to remove string fields:
This is fine for non-string fields, but for string fields there's currently no way to differentiate between "field is not supposed to change" and "user wants to change it to an empty string/remove it".
I don't really have a good solution for that right now, but as a workaround you can use this UDBScript to remove string fields:
Code: Select all
`#version 4`;
`#name Reset UDMF text fields`;
`#description Resets UDMF text fields. It will list all UDMF string fields of the selected things. Setting the option to "true" will remove the field.`;
const things = UDB.Map.getSelectedOrHighlightedThings();
if(things.length == 0)
UDB.die('You need to select or highlight thing(s)');
// Use a Set because we only want unique field names
const fieldNames = new Set();
// Go through all things and find all UDMF fields that are strings
things.forEach(t => {
for(field in t.fields)
{
if(typeof(t.fields[field]) === 'string')
fieldNames.add(field);
}
});
if(fieldNames.size == 0)
UDB.die('No UDMF text fields found in the selected things.');
const qo = new UDB.QueryOptions();
// Add all found fields to the query options (as bool)
fieldNames.forEach(f => qo.addOption(f, f, 3, false));
if(qo.query())
{
// Go through all options and remove the fields that are set
// to true from all things
for(o in qo.options)
{
if(qo.options[o])
things.forEach(t => t.fields[o] = null);
}
}
-
- Posts: 1337
- Joined: Tue Jul 15, 2003 4:18 pm
Re: Ultimate Doom Builder
Thanks for looking! At least I know that it wasn't user error.
-
- Posts: 3862
- Joined: Tue Sep 19, 2006 8:43 pm
Re: Ultimate Doom Builder
Has anyone had any luck getting this to compile on macOS?
I'm currently using DBX and GZDB via Parallels, but Parallels consistently crashes with a graphics driver error when I try UDB. This has been consistent across multiple Macs, multiple OS versions, multiple versions of Parallels, etc. I tried contacting Parallels support but they didn't seem interested in a deep investigation of UDB. I suspect that it's choking on the OpenGL version being used here. So, is there a way I can get this running natively, or is there a workaround for the GL version requirement?
I'm currently using DBX and GZDB via Parallels, but Parallels consistently crashes with a graphics driver error when I try UDB. This has been consistent across multiple Macs, multiple OS versions, multiple versions of Parallels, etc. I tried contacting Parallels support but they didn't seem interested in a deep investigation of UDB. I suspect that it's choking on the OpenGL version being used here. So, is there a way I can get this running natively, or is there a workaround for the GL version requirement?
-
- Posts: 13789
- Joined: Tue Jan 13, 2004 1:31 pm
- Preferred Pronouns: She/Her
Re: Ultimate Doom Builder
What Mac OS version are you running and is it Silicon or Intel based? There might be a way to do it with older macs.
On OS 10.14 and earlier (Intel only, as far as I know...) you can try running it with Wine. You will need XQuartz installed, too.
If you have install discs for the older MacOS versions you can also run them inside Parallels, however you might want to set aside an external drive for that since OS installs tend to be a little hefty with hard disk space. I am not 100% sure this will work but it's certainly worth a shot, I think.
On OS 10.14 and earlier (Intel only, as far as I know...) you can try running it with Wine. You will need XQuartz installed, too.
If you have install discs for the older MacOS versions you can also run them inside Parallels, however you might want to set aside an external drive for that since OS installs tend to be a little hefty with hard disk space. I am not 100% sure this will work but it's certainly worth a shot, I think.
-
- Posts: 3862
- Joined: Tue Sep 19, 2006 8:43 pm
Re: Ultimate Doom Builder
It's an Intel-based machine running Big Sur (11.x).Rachael wrote:What Mac OS version are you running and is it Silicon or Intel based? There might be a way to do it with older macs.
On OS 10.14 and earlier (Intel only, as far as I know...) you can try running it with Wine. You will need XQuartz installed, too.
If you have install discs for the older MacOS versions you can also run them inside Parallels, however you might want to set aside an external drive for that since OS installs tend to be a little hefty with hard disk space. I am not 100% sure this will work but it's certainly worth a shot, I think.
Would it only work on 10.14 or earlier because of reliance on 32-bit libraries or something?
-
- Posts: 13789
- Joined: Tue Jan 13, 2004 1:31 pm
- Preferred Pronouns: She/Her
Re: Ultimate Doom Builder
Yes - that is correct.esselfortium wrote:Would it only work on 10.14 or earlier because of reliance on 32-bit libraries or something?
As far as I know, native compilation for Mac OS was never attempted with UDB, only with Linux, not even sure if that's still working.
The only thing I can suggest is, if you're willing to invest a little extra money later on - use the trial version of VMWare Fusion and see if it works and whether it fits your needs. If that doesn't work out, your options are fairly limited - you can try and multi-partition your Boot device to hold an older version of OS X and symlink or copy your /Users/yourname folder over and switch to that while mapping - or you can use Boot Camp to go into Windows directly (though, my guess is if you're using a Mac in the first place you're trying to avoid that, so that's probably more of a last resort).
EDIT: I will see what I can do later on today to get it working on my Mac, but it's an M1 so it's even less likely to work there. I might be able to work through the compilation issues at least, though.
-
- Posts: 13789
- Joined: Tue Jan 13, 2004 1:31 pm
- Preferred Pronouns: She/Her
Re: Ultimate Doom Builder
Okay - so - I was able to get it to build on Mac OS, but unfortunately, I could not get it to run, it just crashed the framework and I could not diagnose the problem since the problem was in the framework itself and not in the program where it could be debugged.
I am told that the problem exists with Mono, which relies on code that was used as a stopgap to port applications from OS9 to OSX and may either no longer exist today, or at the very least is broken with the changes to the platform that have occurred since.
You might have better luck with this than me, though. For what it's worth, here's the compile: https://cdn.discordapp.com/attachments/ ... ild.tar.xz
I don't know if the resulting code is actually any different from building it on Linux - but in any case I built this using Visual Studio for Mac. From what I remember it was targeting x64 so it should still work, hopefully.
You'll need some form of either Mono or Xamarin to run it. If you have those, Finder should be able to find the right application and use it to execute the file. I don't actually expect it to work though - but it's worth a try.
I have since uninstalled VS for Mac since my Mac only has 220 gb of hard drive space, and it was a real space eater, I just simply can't afford to keep it on there, right now. I'll have to figure out how to get some form of a NAS working in order to do major Mac projects like this in the future, or see if I can afford an external thunderbolt terrabyte SSD.
I haven't given up on this 100% - there's still things I haven't tried yet - but this may require skills that I don't currently have.
EDIT: Oh - while I am thinking about it - are you able to post the crash you are getting in Parallels? Maybe I can help with that, instead.
I am told that the problem exists with Mono, which relies on code that was used as a stopgap to port applications from OS9 to OSX and may either no longer exist today, or at the very least is broken with the changes to the platform that have occurred since.
You might have better luck with this than me, though. For what it's worth, here's the compile: https://cdn.discordapp.com/attachments/ ... ild.tar.xz
I don't know if the resulting code is actually any different from building it on Linux - but in any case I built this using Visual Studio for Mac. From what I remember it was targeting x64 so it should still work, hopefully.
You'll need some form of either Mono or Xamarin to run it. If you have those, Finder should be able to find the right application and use it to execute the file. I don't actually expect it to work though - but it's worth a try.
I have since uninstalled VS for Mac since my Mac only has 220 gb of hard drive space, and it was a real space eater, I just simply can't afford to keep it on there, right now. I'll have to figure out how to get some form of a NAS working in order to do major Mac projects like this in the future, or see if I can afford an external thunderbolt terrabyte SSD.
I haven't given up on this 100% - there's still things I haven't tried yet - but this may require skills that I don't currently have.
EDIT: Oh - while I am thinking about it - are you able to post the crash you are getting in Parallels? Maybe I can help with that, instead.
-
-
- Posts: 3133
- Joined: Sat May 28, 2016 1:01 pm
Re: Ultimate Doom Builder
UDB can't be built natively for macOS because the mono winforms implementation never bothered to move from Carbon to Cocoa. As a result mono winforms only ever worked on 32-bit macs.
-
- Posts: 3862
- Joined: Tue Sep 19, 2006 8:43 pm
Re: Ultimate Doom Builder
Hmmm. Thanks for trying.
I don't get a simple error message with the Parallels crash, just a lot of huge crashdump files. (To note, it's the VM itself that's crashing, so there's no crash message to be retrieved from UDB.)
Parallels says a "critical graphics error has occurred within Windows 10". (And it's happening on multiple computers, so it's not something specific with my setup here...)
Oh, actually, I tried a second time and got an error from UDB itself!
Then after trying once again to create a new map after closing out of the above dialog:
edit: Just saw that I wasn't on the latest build, so I tried again with that. Same result.
I don't get a simple error message with the Parallels crash, just a lot of huge crashdump files. (To note, it's the VM itself that's crashing, so there's no crash message to be retrieved from UDB.)
Parallels says a "critical graphics error has occurred within Windows 10". (And it's happening on multiple computers, so it's not something specific with my setup here...)
Oh, actually, I tried a second time and got an error from UDB itself!
Code: Select all
***********SYSTEM INFO***********
OS: Microsoft Windows 10 Home Single Language
GPU: Parallels Display Adapter (WDDM)
UDB: R3274
Platform: x64
********EXCEPTION DETAILS********
Unable to load DLL 'BuilderNative': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
at CodeImp.DoomBuilder.Rendering.RenderDevice.RenderDevice_New(IntPtr display, IntPtr window)
at CodeImp.DoomBuilder.Rendering.RenderDevice.CreateDevice()
at CodeImp.DoomBuilder.Rendering.RenderDevice..ctor(RenderTargetControl rendertarget)
at CodeImp.DoomBuilder.MapManager.InitializeNewMap(MapOptions options)
at CodeImp.DoomBuilder.General.NewMap()
at CodeImp.DoomBuilder.Actions.Action.Begin()
at CodeImp.DoomBuilder.Actions.ActionManager.InvokeAction(String actionname)
at CodeImp.DoomBuilder.Windows.MainForm.InvokeTaggedAction(Object sender, EventArgs e)
at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ToolStrip.WndProc(Message& m)
at System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Code: Select all
***********SYSTEM INFO***********
OS: Microsoft Windows 10 Home Single Language
GPU: Parallels Display Adapter (WDDM)
UDB: R3274
Platform: x64
********EXCEPTION DETAILS********
Object reference not set to an instance of an object.
at CodeImp.DoomBuilder.Config.ProgramConfiguration.GetPluginPathPrefix(Assembly asm)
at CodeImp.DoomBuilder.Config.ProgramConfiguration.WritePluginSetting(String setting, Object settingvalue)
at CodeImp.DoomBuilder.Plugins.PluginManager.OnMapCloseEnd()
at CodeImp.DoomBuilder.MapManager.Dispose()
at CodeImp.DoomBuilder.General.CloseMap()
at CodeImp.DoomBuilder.Windows.MainForm.OnFormClosing(FormClosingEventArgs e)
at System.Windows.Forms.Form.WmClose(Message& m)
at CodeImp.DoomBuilder.Windows.MainForm.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)