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
[Bug] Desynced Flat Animations from Vanilla/Unity Port #1509
Comments
It seems to work correctly if the -file option is used. I tested with this command: |
Interestingly enough, you are correct. Using -file will work, but -merge will not. I will mention that in crispy doom, -file still does desync. |
That's because in Crispy Doom |
I have found a way to sync up the flat animations both when using The solution became more clear to me, when I realised what the actual problem was: When looking at a merged file (via DeuSF), I realised something. That gave me an idea: Add flats with the vanilla names into my wad after the animation frames to specifically offset the wad only after a merge. I just to make sure those replaced flats aren't used in the maps themeselves. From the updated file below, my hack seemed to work: Sadly I was hoping this would fix the flat desync in DSDA Doom and PrBoom, but it seems that those ports calculate flat animations differently than with a merge and file. Same with the old version of Woof (without the new flat desync code). |
Background
Version of Chocolate Doom: 3.0.0 Stable
Operating System and version: Windows 11 21H2
Game: Doom 2
Any loaded WADs and mods (please include full command line):
-merge 200lnmv.wad -dehlump
Bug description
Observed behavior: flat animation is offset by one frame compared to Vanilla Doom / Unity Port.
Expected behavior: flat animation should be synced up to Vanilla Doom / Unity Port.
Ok this is a bit of a long one.
Let me start by how flat animations work in Vanilla Doom from my rigorous testing.
Now what does Chocolate Doom do incorrectly?
In Vanilla Doom / Unity Port, the FF_START lump is counted in the lump order, whereas in Chocolate Doom, it is not. This will lead to flat animations desyncing because of how the flat animations work specifically with lump order.
Why is this an issue?
I have a map from an upcoming megawad that syncs the flat animations with the texture animations that works correctly in Vanilla Doom, but not Chocolate Doom. It has 6 frames for both the flat and the texture that go like this: Blue>Blue>Red>Red>Yellow>Yellow. They sync correctly in Vanilla Doom, but not Chocolate Doom, because of how Vanilla Doom considers FF_START as a flat coming before F_END.
How can you test?
200lnv.wad is a test for the megawad. MAP25 is the map that features the animated flat and textures. You can delete the FF_START lump at the beginning of the wad or leave it there, and the flat animation will never change in Chocolate Doom.
If you run the map in Vanilla (patched with 200lnv.deh) or in the unity port, you will see that either having FF_START or removing it, will in fact change the flat animation.
Explanation Video:
https://www.youtube.com/watch?v=co5h-fwx6Ho
Test WAD Download:
200 line massacre WIP
The text was updated successfully, but these errors were encountered: