Skins don't work with chex.wad or chex3.wad

These bugs do plan to be resolved, when they can be.

Moderator: GZDoom Developers

Skins don't work with chex.wad or chex3.wad

Postby cq75 » Fri May 20, 2011 2:02 pm

Skins only work in Heretic and the Doom IWADs (ultimate doom, doom 2, freedoom, final doom)

ZD_Strife_Guy.wad
Skins file I was testing it with
(121.47 KiB) Downloaded 223 times


This skin works if Doom 2 is the IWAD, but it doesn't work if Chex or Chex Quest 3 is the IWAD


I included the chexplayer definition for reference:

Spoiler: chexplayer



EDIT - I have more information to add. What I did was take the chex player, comment out everything, and add one thing at a time until the skins stopped working.

The property that is causing the problem is Player.ColorRange.

This is what I found out:

1. Any class inheriting from Doomplayer can use skins, but ONLY if it has the same player.ColorRange. If you inherit from doomplayer and change the colorrange, the only skin will be "base".

2. Classes that do not inherit from Doomplayer cannot use skins at all, even if you use the Doom color range property, and everything else is exactly the same.

EDIT2 - I discovered something else, after testing some things in Heretic

The Color range must match the GAME you are playing too.

Playing using a heretic IWAD, using the heretic color range, but inheriting from Doom player will not allow skins

Playing using the doom IWAD, using the heretic color range, and inheriting from heretic player also does not allow skins.

The only combinations that work are:

Playing using a Doom IWAD, using the Doom color range, and inheriting from Doom player

or

Playing using heretic.wad, using the Heretic Color range, and inheriting from Hereticplayer

So, the IWAD, color range, and inherited class must all be from the same game.

Every other combination of IWAD, color range, and inheritance will cause the only skin to be "base"
User avatar
cq75
I've given myself a number, and taken away my name.
 
Joined: 28 Dec 2009
Location: Just beyond the line horizon
Operating System: Debian-like Linux (Debian, Ubuntu, Kali, Mint, etc) 64-bit
OS Test Version: No (Using Stable Public Version)
Graphics Processor: nVidia with Vulkan support

Re: Skins don't work with chex.wad or chex3.wad

Postby cq75 » Thu May 26, 2011 12:45 pm

<bump>

I made alternative player classes in my skulltag mod to make "skins" as a workaround.

So... is there anything else I can do to help this get fixed? It would be nice to use skins in games other than Doom and Heretic.
User avatar
cq75
I've given myself a number, and taken away my name.
 
Joined: 28 Dec 2009
Location: Just beyond the line horizon
Operating System: Debian-like Linux (Debian, Ubuntu, Kali, Mint, etc) 64-bit
OS Test Version: No (Using Stable Public Version)
Graphics Processor: nVidia with Vulkan support

Re: Skins don't work with chex.wad or chex3.wad

Postby Graf Zahl » Thu May 17, 2012 5:23 am

Honestly, the code as it is is not fixable. It's one big mess that tries to match data with insuffient information to the respective player classes.
Since many of ZDoom's features were not present when the skins feature was developed (for Legacy) the engine has to do a lot of guesswork and make certain assumptions.

I guess this eventually needs a complete rewrite.
No idea if a quick band-aid fix is possible to have the Chex player have skins. I don't understand much of what it does.
User avatar
Graf Zahl
Lead GZDoom Developer
Lead GZDoom Developer
 
Joined: 19 Jul 2003
Location: Germany

Re: Skins don't work with chex.wad or chex3.wad

Postby cq75 » Mon May 21, 2012 6:39 pm

I see. Thanks anyway.
User avatar
cq75
I've given myself a number, and taken away my name.
 
Joined: 28 Dec 2009
Location: Just beyond the line horizon
Operating System: Debian-like Linux (Debian, Ubuntu, Kali, Mint, etc) 64-bit
OS Test Version: No (Using Stable Public Version)
Graphics Processor: nVidia with Vulkan support


Return to On Hold Bugs

Who is online

Users browsing this forum: No registered users and 1 guest