[GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Bugs that have been investigated and resolved somehow.

Moderator: GZDoom Developers

Forum rules
Please don't bump threads here if you have a problem - it will often be forgotten about if you do. Instead, make a new thread here.
User avatar
Boingo_the_Clown
Posts: 139
Joined: Mon Sep 17, 2012 7:25 am
Location: Canada

[GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Post by Boingo_the_Clown »

This problem has been around since GZDooM version 2.3.2, and is still present in the current version 3.1.0. (I just checked)

I noticed during a test playthrough of my mod, DeiMWolf, that some of the objects in the game appeared to be burried in the floor.

Image

After some inspection, I noticed all the problem sprites shared one thing in common. All of them used sprite names from the original DooM. This bug appears in all of my various mods wherever any of the original DooM sprite names are used.

I was able to confirm the bug is related to the sprite names by changing the names of some of the affected sprites, which caused the bug to instantly disappear.

I suspect GZDooM is somehow using the original DooM sprite offsets on the replacement sprites instead of the offsets specified for them. The sprites in DeimWolf are taller than the sprites they replace. If GZDooM is using the Y offsets from the original DooM sprites, that would definitely explain why they appear in the floor.

Does GZDooM keep a list of the original DooM sprite offsets somewhere?

Here is another example of the bug in The People's DooM, where the current enemy sprites use tombstones instead of corpses. The tombstones are taller than the original corpses, and so are also rendered inside the floor.

Image

The bug does not just bury sprites in the floor. Replacement sprites that are shorter than the originals they replace are rendered floating above the ground.

Image

DeiMWolf can be downloaded here: http://www.doomlegends.com/deimwolf/dwv093.zip
Last edited by Boingo_the_Clown on Sat Aug 12, 2017 1:56 pm, edited 1 time in total.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49184
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Post by Graf Zahl »

That's because for Doom IWADs the offsets get adjusted to look better in the hardware renderer. I'll have to make an option to disable it from the mod side
User avatar
Boingo_the_Clown
Posts: 139
Joined: Mon Sep 17, 2012 7:25 am
Location: Canada

Re: [GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Post by Boingo_the_Clown »

Suggestion:

It might be a good idea to make it optional for users to disable it from the options menu as well.

The reason I mention this is because older mods (i.e. Aliens TC, Batman TC, etc.,) will be affected as well, and since they are no longer under development, they can not be corrected. Adding the option for users to disable the function would be useful for compatability with older mods.
User avatar
Rachael
Posts: 13793
Joined: Tue Jan 13, 2004 1:31 pm
Preferred Pronouns: She/Her

Re: [GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Post by Rachael »

Most likely, rather than a menu option, there will instead be compatibility.txt entries to automatically enable it when such wads are loaded. GZDoom already does similar things on-the-fly for certain mods that no longer get updated.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49184
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Post by Graf Zahl »

This can only happen with IWADs so compatibility.txt won't help.
Once the IWADs get their own IWADINFO entry this will automatically be filtered anyway because the responsible data is put into the subdirectories for Doom.wad and Doom2.wad.
Gez
 
 
Posts: 17934
Joined: Fri Jul 06, 2007 3:22 pm

Re: [GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Post by Gez »

Things such as brightmaps can be disabled if they are modified; can't the same thing be done here?
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49184
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Post by Graf Zahl »

Of course the definitions contain code for that. I'll just repeat myself: This effect only happens if the content is loaded as an IWAD and for that the same logic as for brightmaps applies: The loader cannot detect such a use case where the IWAD pretends to be a regular Doom 2 but really isn't.
User avatar
Rachael
Posts: 13793
Joined: Tue Jan 13, 2004 1:31 pm
Preferred Pronouns: She/Her

Re: [GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Post by Rachael »

What if we MD5'd the individual IWAD assets and put in code to check for that, and then updated the default brightmaps for that?
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49184
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Post by Graf Zahl »

Do you know the MD5's of all regular or modified Doom.wad's? I sure don't.
User avatar
Rachael
Posts: 13793
Joined: Tue Jan 13, 2004 1:31 pm
Preferred Pronouns: She/Her

Re: [GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Post by Rachael »

Just the sprites, themselves, as they are loaded. Not the entire IWAD.
Gez
 
 
Posts: 17934
Joined: Fri Jul 06, 2007 3:22 pm

Re: [GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Post by Gez »

The original sprite height would be enough IMO.
User avatar
Boingo_the_Clown
Posts: 139
Joined: Mon Sep 17, 2012 7:25 am
Location: Canada

Re: [GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Post by Boingo_the_Clown »

The problem continues in GZDooM version 3.2.1, as pointed out to me by another user on my T.U.C.Q. forum.

http://www.chexquest.org/index.php?topic=5449.0

So I hope this feature/bug can be fixed soon.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49184
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Post by Graf Zahl »

I am not going to fix this because with the new IWADINFO feature you can define your own filter directory and leave out the offending file.
User avatar
Boingo_the_Clown
Posts: 139
Joined: Mon Sep 17, 2012 7:25 am
Location: Canada

Re: [GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Post by Boingo_the_Clown »

More info please?

If I can fix it, then I will, but I have to know how first.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49184
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: [GZDooM] Sprite Offsets Fowled Up If DooM Names Used

Post by Graf Zahl »

Your problem is that the engine identifies the IWAD as Doom2 which also pulls in all lumps which are being explicitly filtered for inclusion in Doom2 IWADs.
A few weeks ago I added a feature that lets the engine load files named *.iwad and *.ipk3 as additional IWADs. To identify them they will require an IWADINFO lump to be added which sets up a few important items, one of which is the filter to be used for loading selective content.

Return to “Closed Bugs [GZDoom]”