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

Which source ports all plan to implement UDMF?

Recommended Posts

Coraline said:

He's the other lead developer on 3DGE with me :-)

Alright cool. :)

Chilly Willy said:

If you use the doom namespace, you have all the doom specials. If you use hexen/zdoom/zdoomt namespace, you get the hexen/zdoom specials... which are not all supported yet. That's one of the things we'll be working on this weekend - getting all the most commonly used specials going. Note that we don't plan of full zdoom specials or properties, just the common ones needed to make it easier on modders.

You should define an "edge" namespace.

Share this post


Link to post
Chilly Willy said:

If you use the doom namespace, you have all the doom specials. If you use hexen/zdoom/zdoomt namespace,


Do you mean ZDoomTranslated with 'zdoomt'?
That's actually the ZDoom extension of the Doom namespace, i.e. it uses Doom specials with a few added semantics. The pure Doom namespace also has wording that it only allows Boom/MBF specials up to #272.

Well, in any case, I think the entire namespacing system in UDMF was a failure by design, because it missed one crucial info that should have been explicit: Baking what linedef format is used into the namespace name makes it impossible for any port to load an unknown namespace because this may not be easy to find out depending on that namespace's features. I wonder how that can retroactively be fixed without causing even greater problems. I guess now is the last possible time to do something about it, before Eternity and 3DGE release versions with UDMF support.

Any ideas? Keep in mind that this needs to remain compatible with editors which means we cannot simply add a new global key. :(

Share this post


Link to post

Maybe ZDoom, Eternity, and 3DGE can load maps with unknown namespaces, but all should give a message of warning that some specials may be unsupported. Even better, is to scan for what specials are in fact known, and what are unknown, and what each port is unable to translate, and give appropriate errors.

Otherwise, it seems like the latter 2 ports are at this point vying for common ground with Hexen specials.

I agree that 3DGE should define its own namespace, but I think like all things "that will come in good time" - in its infancy we need to test that it even works and that's actually impossible without existing UDMF maps to test. What better way than from the port that's used it the most so far? Of course I am not trying to speak for Willy on this point, but were I in his position that's what I would be doing.

Which also means that, from the very start, 3DGE will likely retain some ZDoom compatibility for UDMF. Since 3DGE uses the DDF system, it can simply swap it out for "zdoomt" to support ZDoom's doom special format similar to how it already does this for Heretic maps.

Share this post


Link to post
Graf Zahl said:

Do you mean ZDoomTranslated with 'zdoomt'?
That's actually the ZDoom extension of the Doom namespace, i.e. it uses Doom specials with a few added semantics. The pure Doom namespace also has wording that it only allows Boom/MBF specials up to #272.


I noticed and already changed the code to use doom translation on the line special. I said zdoomt because the string compare only checks that many letters.

Well, in any case, I think the entire namespacing system in UDMF was a failure by design, because it missed one crucial info that should have been explicit: Baking what linedef format is used into the namespace name makes it impossible for any port to load an unknown namespace because this may not be easy to find out depending on that namespace's features. I wonder how that can retroactively be fixed without causing even greater problems. I guess now is the last possible time to do something about it, before Eternity and 3DGE release versions with UDMF support.


I suppose we should have an edge namespace, but if you come up with something to make the namespace better, I'll implement it in edge. :)

Any ideas? Keep in mind that this needs to remain compatible with editors which means we cannot simply add a new global key. :(


Do editors use the first namespace they come across? If they do, you could add extra namespaces after the first one to specify compatible namespaces. If a port doesn't recognize the first, it could look if there's additional ones it does recognize.

Share this post


Link to post
Chilly Willy said:

Do editors use the first namespace they come across?

The namespace used depends on the configuration chosen by the author.

At the moment there are only configs for ZDoom (main) and Eternity Engine. The "vanilla" UDMF namespaces and ZDoomTranslated don't have any config available AFAIK, neither for GZDB nor for SLADE3.

For SLADE, the configs are here and the support code is there.

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
×