Obligatory Legacy of Rust/ Nightdive Doom Port thread

If it's not ZDoom, it goes here.
yum13241
Posts: 853
Joined: Mon May 10, 2021 8:08 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): EndeavorOS (basically Arch)
Graphics Processor: Intel with Vulkan/Metal Support

Re: Obligatory Legacy of Rust/ Nightdive Doom Port thread

Post by yum13241 »

Image

So I'm assuming that GooberMan is somehow the creator you're referring to, and I immediately noticed some ad hominem. I don't know much about TRANMAP, but all I can say is that TINTAB existed in Heretic and Hexen. Strife had an XLATAB.. If a company that went under in the 90's can add transparency, we can do it better lol. If we're still using Boom colormaps (which are supposedly incompatible with hardware renderers), and that if TRANMAP sucks, let's make a new one that doesn't inherit Boom jank. But of course, we can't do that because then we'd break some old-ass Boom mapset that used a feature that was exploded by TeamTNT, lol. I'm all for compatibility (I'd be removing GZDoom support from my own hardware otherwise), but there's a reason even computers with CSM can't run DOS anymore.

I'd make another stupid spec suggestion but I know that I don't really know much about TRANMAP and other software-exclusive rendering tricks anyway.
AlphaEnt wrote: "Is there a way to force an uploaded mod to work on Doom 2/Nerve IWAD instead of Doom 1?"
If it's a mapset, no, and nerve.wad is not an IWAD. MAPxx maps don't work in Doom 1, where ExMy maps are used instead, and vice versa.
User avatar
phantombeta
Posts: 2123
Joined: Thu May 02, 2013 1:27 am
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia with Vulkan support
Location: Brazil

Re: Obligatory Legacy of Rust/ Nightdive Doom Port thread

Post by phantombeta »

yum13241 wrote: Fri Sep 06, 2024 12:48 am It depends on if you're loading a bunch of maps (single level wads exist), that all load their own copy of a monster pack like MEDB. Monster packs tend to eat up numbers quickly.
The vast majority of those single-level use the same level slot (E1M1 for UD and MAP01 D2/TNT/Plutonia), so no, you're not "loading a bunch of maps". It wouldn't work anyway, because editor numbers aren't additive, the mod sets a specific editor number for an actor, and whatever sets that editor number last based on the load order is what gets spawned.

I'm sorry, but it's clear you don't have much idea of how this part of Doom modding works. Editor numbers aren't a real problem. You can't just stack single-map WADs like that without modifying them to work together, and if you're doing that you can easily change the editor numbers both in the code and the maps just like projects like Compedium do, so this doesn't remotely matter.
Gez
 
 
Posts: 17936
Joined: Fri Jul 06, 2007 3:22 pm

Re: Obligatory Legacy of Rust/ Nightdive Doom Port thread

Post by Gez »

AlphaEnt wrote: Fri Sep 06, 2024 1:39 am I don't know exactly where to ask this, so considering some of the people that contributed to the port are around here, I feel like asking:
"Is there a way to force an uploaded mod to work on Doom 2/Nerve IWAD instead of Doom 1?"
It's supposed to be done through the GAMECONF lump.

For example, here's Sigil's GAMECONF:

Code: Select all

{
  "type": "gameconf",
  "version": "1.0.0",
  "metadata": { },
  "data":
  {
    "title": "Sigil",
    "author": "John Romero",
    "description": "The unofficial fifth episode of the original Doom.",
    "version": "1.0",
    "iwad": "doom.wad",
    "pwadfiles": null,
    "dehfiles": null,
    "executable": "doom1.9",
	"mode": "retail",
    "options": null
  }
}
And here's Legorust's:

Code: Select all

{
  "type": "gameconf",
  "version": "1.0.0",
  "metadata": { },
  "data":
  {
    "title": "Legacy of Rust",
    "author": "id Software, Nightdive Studios, and Machinegames",
    "description": "A new official expansion for Doom II, featuring 16 levels of mayhem, 6 devilish new monsters, and 2 fiery new weapons to roast your enemies with.",
    "version": "1.0",
    "iwad": "doom2.wad",
    "pwadfiles": null,
    "dehfiles": null,
    "executable": "id24",
    "mode": "commercial",
    "options": null
  }
}
There's just the slight problem that currently, there's a stupid bug in that official port that prevents from loading saves from PWADs with a GAMECONF lump...
User avatar
Rachael
Posts: 13836
Joined: Tue Jan 13, 2004 1:31 pm
Preferred Pronouns: She/Her

Re: Obligatory Legacy of Rust/ Nightdive Doom Port thread

Post by Rachael »

yum13241 wrote: Fri Sep 06, 2024 1:49 am So I'm assuming that GooberMan is somehow the creator you're referring to, and I immediately noticed some ad hominem. I don't know much about TRANMAP, but all I can say is that TINTAB existed in Heretic and Hexen. Strife had an XLATAB.. If a company that went under in the 90's can add transparency, we can do it better lol. If we're still using Boom colormaps (which are supposedly incompatible with hardware renderers), and that if TRANMAP sucks, let's make a new one that doesn't inherit Boom jank. But of course, we can't do that because then we'd break some old-ass Boom mapset that used a feature that was exploded by TeamTNT, lol. I'm all for compatibility (I'd be removing GZDoom support from my own hardware otherwise), but there's a reason even computers with CSM can't run DOS anymore.

I'd make another stupid spec suggestion but I know that I don't really know much about TRANMAP and other software-exclusive rendering tricks anyway.
Yes, I am talking about GooberMan.

Some of those things can be solved with hardware rendering tricks, i.e. shaders. but some of those things are hopelessly locked to 8-bit rendering. And yes, that *is* something that can be done with OpenGL/Vulkan (by using a shader to do color table lookups rather than directly rendering RGB values) but here GooberMan is demonstrating that he is missing the forest for the trees - if all he cares about is his precious Rum and Raisin port then why is he even bothering to solicit feedback on ID24 from the community? He's just plowing forward with nary a care or consideration for how more advanced ports do things, why people want truecolor rendering, believing his additions are gospel and that it will be the standard for years to come and anyone not following it is not following the "Doom" standard. Well - I got news for ya, buddy, Doom existed just fine for 30 years without all this additional crap piled on top of it, there's no contract saying that we have to follow every whimsical thought and idea that pops out of nowhere, either. If you want to lead the standard then you have to be more careful and constructive with it, and you have to take feedback seriously - no matter how crazy it is - and counter with logical, well-thought out arguments and technical explanations that show you know what you are talking about and can hold your own on this matter.

Either that, or he can do all the work himself of implementing it in all the source ports (including Zandronum and GZDoom) if he really wants.

Otherwise R&R is nothing more than just another source port doing its own thing. Oooh wow scary Bethesda is backing it trying to make it official, ooooooh. Bethesda isn't the id software that many of us grew up with, most of those guys are gone now, and at this point I really have to wonder if the "new guard" as it were actually know what they're doing when they're contracting people like him to help out. It's really gotten to his head.
yum13241
Posts: 853
Joined: Mon May 10, 2021 8:08 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): EndeavorOS (basically Arch)
Graphics Processor: Intel with Vulkan/Metal Support

Re: Obligatory Legacy of Rust/ Nightdive Doom Port thread

Post by yum13241 »

Rachael wrote: Rum and Raisin port
Is that a TC or something? Because if you're making your own game why do you care for standards? Just add what you feel like works best for your game, even if that's i

And yes, none of the money from Doom goes to John Romero, John Carmack, Adrian Carmack, et. al.

And AlphaEnt, the most important line to try and force a D2 mod in D1 and vice versa (it'll probably break), would be to change the "mode" line, and the "executable" is just Kex's version of complevels. "commercial" is D2, "retail" is Ultimate Doom.
Rachael wrote: It's really gotten to his head.
I smell Starscream...
phantombeta wrote: The vast majority of those single-level use the same level slot (E1M1 for UD and MAP01 D2/TNT/Plutonia), so no, you're not "loading a bunch of maps". It wouldn't work anyway, because editor numbers aren't additive, the mod sets a specific editor number for an actor, and whatever sets that editor number last based on the load order is what gets spawned.
The Master Levels: Am I a joke to you?

Seriously, editor numbers being gone is sort of like float-ification of GZDoom. In the latter's case, it had to be done to have actual decimals. In the former's case, 32767 is going to be used up by hack things sooner or later.

Rachael wrote: all the source ports (including Zandronum
Nothing from ID24 has a hope of getting into Zandronum, they're too busy jumping on a trampoline if something is in the inventory and calling All Cool Sticks scripts 100 times per game tick.
Gez
 
 
Posts: 17936
Joined: Fri Jul 06, 2007 3:22 pm

Re: Obligatory Legacy of Rust/ Nightdive Doom Port thread

Post by Gez »

yum13241 wrote: Fri Sep 06, 2024 6:00 amSeriously, editor numbers being gone is sort of like float-ification of GZDoom. In the latter's case, it had to be done to have actual decimals. In the former's case, 32767 is going to be used up by hack things sooner or later.
:roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll: :roll:

Let's say there's a new standard every fricking year. Each time, this new standard adds a whole hundred "hack things" as you call them. Using up all the remaining free numbers will take over three centuries.

But wait, ID24 expands the valid numbers to the negative range. So it's not three centuries but six. Closer to seven, in fact.

So please can you give it a rest already?
User avatar
Phredreeke
Posts: 310
Joined: Tue Apr 10, 2018 8:14 am

Re: Obligatory Legacy of Rust/ Nightdive Doom Port thread

Post by Phredreeke »

Rum and Raisin is Gooberman's Chocolate Doom fork.
yum13241
Posts: 853
Joined: Mon May 10, 2021 8:08 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): EndeavorOS (basically Arch)
Graphics Processor: Intel with Vulkan/Metal Support

Re: Obligatory Legacy of Rust/ Nightdive Doom Port thread

Post by yum13241 »

Gez wrote: But wait, ID24 expands the valid numbers to the negative range. So it's not three centuries but six. Closer to seven, in fact.
Because they couldn't find room, now that all indices are technically valid. That's DSDHACKED, not DoomEdNums AFAIK.
Many are not content with this, lol.
Gez wrote: So please can you give it a rest already?
OK, but let's be real: Hack things are typically not the best choice for the modder anyway. No one would use MUSINFO if Hexen supported changing music from ACS, for instance.
Phredreeke wrote: Rum and Raisin is Gooberman's Chocolate Doom fork.
Another one of those "Strawberry Doom"-like forks, I guess. The whole point of Choco Doom is to emulate the original DOOM exe's, not to add whatever the hell you feel like lol. This results in a port that doesn't abide by standards, and GooberMan was just lucky to have Bethesda contact them. Even ZDoom was derived from Boom, not the original EXE. (Technically, we never got the source for the original EXE, legitimately at least. We only got cleaned up source for a port to Linux.)
Gez
 
 
Posts: 17936
Joined: Fri Jul 06, 2007 3:22 pm

Re: Obligatory Legacy of Rust/ Nightdive Doom Port thread

Post by Gez »

yum13241 wrote: Fri Sep 06, 2024 6:38 am Because they couldn't find room, now that all indices are technically valid.
There's 32112 spots of room left in positive land.

The ID24 idea with negative numbers is to reserve them for future new engine stuff (hack things and otherwise) so that the remaining 32112 spots left free in positive space are just for modders to use.
yum13241 wrote: Fri Sep 06, 2024 6:38 am That's DSDHACKED, not DoomEdNums AFAIK.
This is gobbledygook.
yum13241 wrote: Fri Sep 06, 2024 6:38 am OK, but let's be real: Hack things are typically not the best choice for the modder anyway. No one would use MUSINFO if Hexen supported changing music from ACS, for instance.
MUSINFO was created by the Risen3D developers and adopted by PrBoom+ and that's how it became a standard. Here's the thing: Risen3D is a Boom-compatible fork of Doomsday (it even used to be called Boomsday). PrBoom+ is a Boom-compatible port; in fact it even became the reference for what Boom-compatibility means.

Neither of those support ACS. Or any other scripting language. ACS requires using a different map format, or adding workarounds like ZDoom did with the whole script library system.

ZDoom's ACS can change music. Heck, FraggleScript can change music. Didn't stop MUSINFO from appearing.

yum13241 wrote: Fri Sep 06, 2024 6:38 am Even ZDoom was derived from Boom
Nope! Some Boom code was added to support Boom features, or to adopt Boom fixes to Doom bugs; but ZDoom was not derived from Boom. ZDoom was derived from ATB Doom and NTDOOM, two ports that are now forgotten, and to be honest I figure that all of the code originating from those two has long been removed in various rewrites and refactors.

In fact, ZDoom is older than Boom. Initial release of ZDoom 1.11 (that version number followed Doom, since the source code release was number version 1.10) was on the 6th of March 1998. The initial release of Boom was on the 17th of April of the same year. Over a month later.
yum13241
Posts: 853
Joined: Mon May 10, 2021 8:08 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): EndeavorOS (basically Arch)
Graphics Processor: Intel with Vulkan/Metal Support

Re: Obligatory Legacy of Rust/ Nightdive Doom Port thread

Post by yum13241 »

Gez wrote: The ID24 idea with negative numbers is to reserve them for future new engine stuff (hack things and otherwise) so that the remaining 32112 spots left free in positive space are just for modders to use.
Ask any programmer if they like negative indices.
Gez wrote: ZDoom's ACS can change music. Heck, FraggleScript can change music. Didn't stop MUSINFO from appearing.
I know that. That's why I specifically said Hexen ACS (referred to by some as ACS95)
I know that, but the idea is that why redo what already exists? If ZDoom is older, surely that means SetMusic existed, right? If it didn't, I guess MUSINFO was just made for its time, before we advanced Doom modding to where it is today. MUSINFO hack things can't even be triggered by voodoo dolls, while all linedefs (including ACS ones) can. Just because Boom-compatible ports added MUSINFO doesn't mean it's a Boom feature or that it's required for Boom compatibility. All it means is that the same guys who made imps look like hashed browns made some weird music switching standard.

Gez wrote: In fact, ZDoom is older than Boom. Initial release of ZDoom 1.11 (that version number followed Doom, since the source code release was number version 1.10) was on the 6th of March 1998. The initial release of Boom was on the 17th of April of the same year. Over a month later.
Really? Never knew that. Then why did the entire modding world pick Boom? (other than this forum)

The reason why they added negative indices is because they wanted to canonize a few monsters, and they couldn't find any unused slots in DEHACKED, since DSDHACKED means they all exist, so they added negative indices. Naturally, this happens to DoomEdNums too.

The thread is not even about MUSINFO anyway, I've just critiqued the standard (maybe too harshly), for too long, lol, and have no hate against the people behind it. There's no need to repeat MUSINFO, since we can do things in a better way now. Why have things to change the music, that take up DoomEdNums, and are worse anyway [voodoo dolls don't work], when we could just have made it a linedef from the beginning?

I know MUSINFO isn't going to change anytime soon (it's a finalized spec), but maybe this semi-rant prevents a USNDINFO from doing the same thing.
Whoever does not study history, is doomed to repeat it (no doom pun intended) even then, the ID24 solution has intentional HOM effects, which aren't as bad as things that half work, and at least I can have as many songs as I want. The linedefs also allow me to play a song once, like the title screen.

Imagine if MBF's "Change Sky" linedef was a thing that changed the sky for the whole map until you hit another one. You'd have 4 sky hack things, and the 4th would be "default sky". We wouldn't have cool mapsets that use the sky change for cool purposes, it'd only hinder large maps from existing.

Anyways, maybe the "ThingSpawner" thing that Gez suggested somewhere on Doomworld should actually be added to ID24 (like that's ever going to happen), with a DoomEdNum of 13241, or something easy to remember like that. It would take an mobj name that it would spawn instead of itself. If no such argument is provided, it displays the Randi error icon.
Or maybe a linedef that teleports the player to 1 of any specified teleport destinations

TL;DR: Hack things bad when not needed, linedefs when needed good, de-numerating things good, some ideas that'll never get added by Bethesda.
Gez
 
 
Posts: 17936
Joined: Fri Jul 06, 2007 3:22 pm

Re: Obligatory Legacy of Rust/ Nightdive Doom Port thread

Post by Gez »

yum13241 wrote: Fri Sep 06, 2024 9:13 am I know that, but the idea is that why redo what already exists? If ZDoom is older, surely that means SetMusic existed, right? If it didn't, I guess MUSINFO was just made for its time, before we advanced Doom modding to where it is today.
It was made for Boom ports, which had Boom modding capabilities. Which critically includes a lack of ACS.
yum13241 wrote: Fri Sep 06, 2024 9:13 am Really? Never knew that. Then why did the entire modding world pick Boom? (other than this forum)
There were plenty of competing ports out there. DOSDoom which became EDGE was very advanced, and one of the first to let modders define new things. Doom Legacy was very popular as well. Boom had the prestige of being made by Team TNT. Also Boom very quickly focused on maintaining demo compatibility (something they wouldn't get fully right, but they tried) so that appealed to a demographic that ZDoom never chased.
yum13241 wrote: Fri Sep 06, 2024 9:13 am The reason why they added negative indices is because they wanted to canonize a few monsters, and they couldn't find any unused slots in DEHACKED, since DSDHACKED means they all exist, so they added negative indices. Naturally, this happens to DoomEdNums too.
For dehacked numbers, yes. For editor numbers, no. DSDHacked did not reserve all editor number slots. Again, looking at GZDoom's own built-in editor numbers, we arrive at 655 numbers used in total. This includes a score of sound sequence things. Slope things. Light things. Boom's point pushers and pullers. Sky camera things. Generic map spot things. Sector action things (of which music changers are but one subset). Sector setup things, like water zones and sound environment things. The whole roster of stealth monsters that everyone will bash you if you ever use them. Various scripted behavior things like patrol points, interpolation points, hate target, etc. Portal viewpoint things. Decal things. Polyobject things. Invisible bridge things. Build sprite things. Ambient sound things. Just lots and lots of things.
User avatar
Rachael
Posts: 13836
Joined: Tue Jan 13, 2004 1:31 pm
Preferred Pronouns: She/Her

Re: Obligatory Legacy of Rust/ Nightdive Doom Port thread

Post by Rachael »

Gez - you're missing the forest for the trees. The problem isn't the lack of numbers, the problem is using numeric ID's in the first place. It's a rigid and inflexible system, and if your only expansion is downward into the negatives, that doesn't suggest a whole lot of faith and confidence in it working well to begin with.

I'd have a lot less problem if the official monsters and objects had internal engine names that could be referenced by these files - i.e. OfficialIDSoftware_Imp, OfficialIDSoftware_LostSoul, etc. This creates an official namespace that makes a very clear division between mods and official id works - that, if you go into on your own, you can actually count on your mod breaking in future Doom releases.
yum13241
Posts: 853
Joined: Mon May 10, 2021 8:08 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): EndeavorOS (basically Arch)
Graphics Processor: Intel with Vulkan/Metal Support

Re: Obligatory Legacy of Rust/ Nightdive Doom Port thread

Post by yum13241 »

Rachael wrote: This creates an official namespace that makes a very clear division between mods and official id works - that, if you go into on your own, you can actually count on your mod breaking in future Doom releases.
Which could pave the way for Minecraft mod style ID's, and advanced dependency systems and all that pipe-dreamy stuff.

Gez wrote: The whole roster of stealth monsters that everyone will bash you if you ever use them.
That was invented by DOSDoom, which you seem to praise here. I consider them free replacements for monsters, to give me an excuse to replace more stuff, lol.
Gez wrote: Boom had the prestige of being made by Team TNT.
Which TNT'd itself after TNT.WAD. Many will tell you that's the worst IWAD ever made. I don't have the patience to play through 32-level wads most of the time, so I can't tell you lol.
Rachael wrote: Gez - you're missing the forest for the trees. The problem isn't the lack of numbers, the problem is using numeric ID's in the first place. It's a rigid and inflexible system, and if your only expansion is downward into the negatives, that doesn't suggest a whole lot of faith and confidence in it working well to begin with.
I couldn't agree more. Besides, what happens when we just use all of them? Clearly, once we account for more Gez's existing over time, that'll happen in 2048. Microsoft string-ifyed Minecraft in the 1.13 update, since they were running out of IDs. (It started as a "back of the garage" type thing, so Notch didn't care) It's not impossible, and I'm sure M$ could do it again.
Gez wrote: It was made for Boom ports, which had Boom modding capabilities. Which critically includes a lack of ACS.
DEHACKED was made for DOOM.EXE, with DOOM.EXE capabilities. Which critically includes a lack of addition. Yet we still expand it to this day for some godforsaken reason.
No one forced Risen3D to make the MUSINFO things, well things. (If you want to be fancy, it's a mobj)


And if you wonder why I bring Minecraft in to the question, it's because it too, is one of the most modded games of all time and they have a lot figured out (except Forge, also known as LexForge, who's creator, Lex Manos, can't stop harassing people. He also tried to get people to sign their mods, but this sadly failed). Sure, I'm comparing apples to oranges, but they're both fruits and I don't think any of the various things I mentioned will happen in my lifetime, or ever, but I think it's worth putting out because maybe someone with too much time does it. Maybe.
Gez
 
 
Posts: 17936
Joined: Fri Jul 06, 2007 3:22 pm

Re: Obligatory Legacy of Rust/ Nightdive Doom Port thread

Post by Gez »

Rachael wrote: Fri Sep 06, 2024 10:04 am Gez - you're missing the forest for the trees. The problem isn't the lack of numbers, the problem is using numeric ID's in the first place. It's a rigid and inflexible system, and if your only expansion is downward into the negatives, that doesn't suggest a whole lot of faith and confidence in it working well to begin with.
Way back when UDMF was being discussed, I tried lobbying for things to be given names, instead of using editor numbers for them. That was shot down under the reasoning that there was no way all the ports would agree on the same names.

Then ZDoom was the only implementor of UDMF for I don't know how long, a decade maybe? I know Eternity took very, very long to support it despite the whole UDMF thing being Quasar's initiative. And then UMAPINFO happened and it canonized the ZDoom class names for things anyway.

I don't think the only expansion for editor numbers was in the negatives; I think GooberMan did that to avoid conflicts, by reserving the negative space for future standards while the positive space remains free for mod things and other non-standard things. And probably also because he already had the idea of going into the negatives in another domain because of Kraflab's DSDHacked.

But it's not like I'm advocating for using numbers; I'm just saying that there's no reason to panic about running out of numbers. Heck, I think I've convinced GooberMan to stop using numbers in one part of his specs.
yum13241
Posts: 853
Joined: Mon May 10, 2021 8:08 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): EndeavorOS (basically Arch)
Graphics Processor: Intel with Vulkan/Metal Support

Re: Obligatory Legacy of Rust/ Nightdive Doom Port thread

Post by yum13241 »

Gez wrote: I'm just saying that there's no reason to panic about running out of numbers
Not now, at least. Though it is a problem that should be addressed sooner or later. If we're going to delay it, we should at least know what we're going to do.
Gez wrote: Way back when UDMF was being discussed, I tried lobbying for things to be given names, instead of using editor numbers for them. That was shot down under the reasoning that there was no way all the ports would agree on the same names.
Who got them to agree on the same numbers? Greg Lewis? Anyone who wanted to implement UDMF was going to look at ZDoom source, and ZDoom docs, and ZDoom names, which as Gez said, became standard in UMAPINFO anyway. Time for an id24, or gzdoom namespace in UDMF that uses thingnames I guess.

Why UDMF had to be the vicitm of beating around the bush I have no idea.
Spoiler: ID 24 features and my irrelevant opinion on them
TL;DR: ThingNames good, doomednum bad, ID24 mostly great with a few imperfections that stick out, hopefully they're all rectified, and of course my irrelevant opinion, lol.

Return to “Off-Topic”