Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for ID21 #523

Open
Jeffpiatt2k4 opened this issue Oct 23, 2024 · 14 comments
Open

Support for ID21 #523

Jeffpiatt2k4 opened this issue Oct 23, 2024 · 14 comments

Comments

@Jeffpiatt2k4
Copy link

The port needs to update to support ID Software's new ID21 mod standerd.

@fabiangreffrath
Copy link
Collaborator

fabiangreffrath commented Oct 23, 2024

Do you mean ID24? And if yes, which part of it exactly does this port need to support?

@Kappa971
Copy link

Kappa971 commented Oct 23, 2024

I think I misunderstood... the id1-res.wad, id1-weap.wad and id24res.wad files are for modding, to be used in future with other community-made levels. I have removed all the inaccuracies previously written.

New Episode Legacy of Rust from D+DII official port.
From doomwiki.org:

The intermission screens and animated skies only work in source ports that are ID24-compliant. 
All other features work in MBF21-compliant source ports.

So the "ID24 support" here is reduced to the intermission screens, animated skies and demos (which cause DSDA-Doom to crash):
dsda-doom 26_10_2024 01_00_28

I share some files that might help (without breaking any rules, I hope):

  1. These two text files should be related to how the intermission screens work: XWINTER.zip
  2. This seems to be about the bar: SBARDEF.zip
  3. This seems to be about the skies: SKYDEFS.zip
  4. Dehacked DEH.zip
  5. Umapinfo UMAPINFO.txt

@Jeffpiatt2k4
Copy link
Author

I think I misunderstood... the id1-res.wad, id1-weap.wad and id24res.wad files are for modding, to be used in future with other community-made levels. I have removed all the inaccuracies previously written.

New Episode Legacy of Rust from D+DII official port. From doomwiki.org:

The intermission screens and animated skies only work in source ports that are ID24-compliant. 
All other features work in MBF21-compliant source ports.

So the "ID24 support" here is reduced to the intermission screens, animated skies and demos (which cause DSDA-Doom to crash): dsda-doom 26_10_2024 01_00_28

I share some files that might help (without breaking any rules, I hope):

  1. These two text files should be related to how the intermission screens work: XWINTER.zip
  2. This seems to be about the bar: SBARDEF.zip
  3. This seems to be about the skies: SKYDEFS.zip
  4. Dehacked DEH.zip
  5. Umapinfo UMAPINFO.txt

The standard is licensed under the GPL
https://www.doomworld.com/forum/topic/146943-id24-a-new-feature-set-standard/
The shortlist of new features:

A standard for JSON to be used as a data format
Customisable demo loops
Customisable finales (including continuing to another map)
A game configuration lump
New linedef types
New thing types from Legacy of Rust
Customisable animated backgrounds for the finished/entering screens
Customisable status bars (including full screen bars)
Customisable skies, including PSX Doom/Doom 64’s fire skies
Custom translation lumps
And then there’s the DeHackEd capabilities
Limits removed on weapon and ammo types (ie you can define entirely new ones)
Nightmare/respawning monsters variables exposed
Item pickups definable with parameters instead of hardcoded to sprites
Transparency maps assignable to any frame
Translation lumps assignable to any thing
Custom strings
Negative index support
ID Software licenced GooberMan's doom port fork from chocolate Doom. And Kaiser filled in the missing parts.

@rfomin
Copy link
Collaborator

rfomin commented Dec 6, 2024

If you read the Doomworld thread you linked (although it's long), you'll see that there's some controversy about the ID24 standard.

The standard is licensed under the GPL

No, only the documentation is licensed under Creative Commons. Standard includes commercial resources, so users should have "Doom I + II" official port.

ID Software licenced GooberMan's doom port fork from chocolate Doom.

This fork contains only a partial implementation of ID24.

@Jeffpiatt2k4
Copy link
Author

https://www.doomworld.com/forum/post/2831173
Kaiser already answered that question the included wads are commercial but the Def slots are open source so Freedoom can replace the assets
https://github.com/GooberMan/rum-and-raisin-doom
Ironically the previous port by Nerve on Unity licensed the chocolate doom rendering code so the Kex port licencing Rum and Rasin Doom made by a employee of Nightdive is them picking a existing set of open wad standards to support and apparently the MBF 21 support is clean room reverse engineered and Boom was Team TNT's baby and ID already released ports using Boom code to IOS

@Jeffpiatt2k4
Copy link
Author

https://drive.google.com/drive/folders/1Vw5fpmR0bVfFeHZ_xamVvn584xXtXp6M?usp=sharing
The info for source ports to clean room support is up on a Google drive.

@rfomin
Copy link
Collaborator

rfomin commented Dec 6, 2024

ID already released ports using Boom code to IOS

This was an open source port of PrBoom by Carmack himself, a long time ago.

The info for source ports to clean room support is up on a Google drive.

This is just documentation, also an old version of it.

We've implemented the part of ID24 in Woof, but no one is doing it for DSDA-Doom, and probably won't for a while yet.

@Kappa971
Copy link

Kappa971 commented Dec 8, 2024

no one is doing it for DSDA-Doom, and probably won't for a while yet.

Great! 😅
Jokes aside, which source ports currently support all the features of the new Doom expansion (except Woof)?
Woof doesn't have hardware renderer, does it support multithreaded software renderer instead?

@rfomin
Copy link
Collaborator

rfomin commented Dec 9, 2024

Jokes aside, which source ports currently support all the features of the new Doom expansion (except Woof)?

No ports support all features, as far as I know. Partial support: GZDoom, Helion, Woof.

Woof doesn't have hardware renderer, does it support multithreaded software renderer instead?

Not yet, but it's planned.

@Jeffpiatt2k4
Copy link
Author

no one is doing it for DSDA-Doom, and probably won't for a while yet.

Great! 😅 Jokes aside, which source ports currently support all the features of the new Doom expansion (except Woof)? Woof doesn't have hardware renderer, does it support multithreaded software renderer instead?

Id21 is a licensed extension of RNR21 that began as a clean room reverse engineering of MBF21 that also fully supports Boom functions
The new episode works kinda of on ports that support MBF21 but the fancy new features don't work or crash the engine.
GZDoom, Helion, Woof support MBF21 but the PSX style animated sky's and the ambiant sounds break along with the from the GooberMan test wad Boomtest the colored sectors and music change linedef the road block for the community seems to be a fear of Bethesda under Microsoft not honoring that Doom the Engine is open source when they haven't sued all the commercial Zdoom games out on steam. I think people forget the art assets are what's owned by ID not the code values they basically let GooberMan release the specs ironically it might make the Freedom project need to get off there ass and make replacement wads for the ID21 monsters art assets but there implementation is similar to the mbf21 extended beastuary project just making some now cannon monsters like the classic Tyrant, the beta lost soul, and the Alpha evil space marine (yes one of the alphas the former humans used quick sprite swaps of the Doomguy with red demon eyes under visor) I know currently the only port with full support is still the Idtech1 engine code running inside the Kex engine in the current remaster package that's licensed Rum and Rasin Doom code replacing the chocolate doom source of the code they licensed for the Unity wrapper port.
Based on what they posted on Doomworld the new standerd was mostly set up to assist with getting existing doom wads on to game consoles so they chose the 2 oldest "classic Doom" and standerds and merged them zdoom has too much GPL Raven extended Idtech1 code for them to license they basically wanted a DOS like renderer and as spector discovered the arch-vile fire in the new port is solid like in Doom 1.9 and Doom 95, but he normally plays using Dsda and got used to the opengl added translucency.

@Kappa971
Copy link

Kappa971 commented Dec 9, 2024

Are there any Doom wads that use/require ID24? If not, for now it would be nice if at least the features used in "Legacy of Rust" were implemented so that this works properly.

@fabiangreffrath
Copy link
Collaborator

Id21 is a licensed extension of RNR21 that began as a clean room reverse engineering of MBF21 that also fully supports Boom functions The new episode works kinda of on ports that support MBF21 but the fancy new features don't work or crash the engine. GZDoom, Helion, Woof support MBF21 but the PSX style animated sky's and the ambiant sounds break along with the from the GooberMan test wad Boomtest the colored sectors and music change linedef the road block for the community seems to be a fear of Bethesda under Microsoft not honoring that Doom the Engine is open source when they haven't sued all the commercial Zdoom games out on steam. I think people forget the art assets are what's owned by ID not the code values they basically let GooberMan release the specs ironically it might make the Freedom project need to get off there ass and make replacement wads for the ID21 monsters art assets but there implementation is similar to the mbf21 extended beastuary project just making some now cannon monsters like the classic Tyrant, the beta lost soul, and the Alpha evil space marine (yes one of the alphas the former humans used quick sprite swaps of the Doomguy with red demon eyes under visor) I know currently the only port with full support is still the Idtech1 engine code running inside the Kex engine in the current remaster package that's licensed Rum and Rasin Doom code replacing the chocolate doom source of the code they licensed for the Unity wrapper port. Based on what they posted on Doomworld the new standerd was mostly set up to assist with getting existing doom wads on to game consoles so they chose the 2 oldest "classic Doom" and standerds and merged them zdoom has too much GPL Raven extended Idtech1 code for them to license they basically wanted a DOS like renderer and as spector discovered the arch-vile fire in the new port is solid like in Doom 1.9 and Doom 95, but he normally plays using Dsda and got used to the opengl added translucency.

Is this an unreviewed speech-to-text translation or what?

@rfomin
Copy link
Collaborator

rfomin commented Dec 9, 2024

If not, for now it would be nice if at least the features used in "Legacy of Rust" were implemented so that this works properly.

"Legacy of Rust" is MBF21 WAD and perfectly playable in DSDA-Doom. What is missing are some cosmetic features like PSX sky and intermissions. We implemented most of them in Woof (finale lump is missing).

@Kappa971
Copy link

Kappa971 commented Dec 9, 2024

"Legacy of Rust" is MBF21 WAD and perfectly playable in DSDA-Doom.

I haven't tried it until the end, but I imagine so. I only tried the first level.
DSDA-Doom currently crashes when playing Legacy of Rust demos (If you start the wad and wait too long, it crashes because the demos start).

What is missing are some cosmetic features like PSX sky and intermissions. We implemented most of them in Woof (finale lump is missing).

Yes I meant this by "works properly".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants