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"