Closed OpenRift412 closed 4 weeks ago
KEX uses a new demo format. Xaser shared some details here. I'm not sure if the demos are intended to work with other source ports, but it may be worth investigating.
The KEX port has an independent implementation of Boom/MBF/MBF21, which is not demo compatible with Woof/DSDA-Doom. If we want compatibility with LoR demos, we need to implement ID24 and a another version of Boom/MBF/MBF21 standarts, I don't think that's going to happen.
The KEX port has an independent implementation of Boom/MBF/MBF21, which is not demo compatible with Woof/DSDA-Doom. If we want compatibility with LoR demos, we need to implement ID24 and a another version of Boom/MBF/MBF21 standarts, I don't think that's going to happen.
Thinking this over, LoR's GAMECONF lump defines compatibility as ID24, so I only assume that it would be its own distinct set of unique behavior compared to Boom/MBF/MBF21, right? Or am I getting that wrong?
Thinking this over, LoR's GAMECONF lump defines compatibility as ID24, so I only assume that it would be its own distinct set of unique behavior compared to Boom/MBF/MBF21, right? Or am I getting that wrong?
ID24 includes the Boom/MBF/MBF21 standards. The problem is that Doom demos are desynchronized if even the slightest detail in the playsim implementation is different, so we have to copy the Boom/MBF/MBF21 implementation in the KEX port exactly to support LoR demos.
ID24 includes the Boom/MBF/MBF21 standards. The problem is that Doom demos are desynchronized if even the slightest detail in the playsim implementation is different, so we have to copy the Boom/MBF/MBF21 implementation in the KEX port exactly to support LoR demos.
So I guess the best course of action would be waiting for Kex's Boom/MBF/MBF21 implementation to become more accurate?
So I guess the best course of action would be waiting for Kex's Boom/MBF/MBF21 implementation to become more accurate?
As I understand it, they can't even look at PrBoom+ sources, so making the Kex port demo compatible with PrBoom+/DSDA-Doom/Woof is a huge task. For example, to archive vanilla demo compatibilty, source ports have to emulate buffer overflows due to lack of memory protection in DOS.
LoR demos are not long, perhaps they could work in Woof with some minimal modifications, but I doubt the Kex port will be used to record demos, so supporting it for only 3 demos is impractical.
I don't know if it has to do with the demo format that Legacy of Rust uses (does ID24 have its own demo format?), but in both the latest full release and latest dev build, the internal demos don't seem to play at all.