Map specific player skins?


(nUllSkillZ) #1

Hi,

could it be possible to use map specific player skins with


remapshader [list=1] <new>
remapshaderflush

?

Only an idea and not tested so far.
Because I don’t find all the shaders.

BTW in “models_players.shader” there’s the following shader for the axis enginner:


models/players/temperate/axis/engineer/engineer_body
{
	cull none
	implicitMap -
}

But the jpeg is named:


models/players/temperate/axis/engineer/body_engineer

All the other shader / textures seem to be OK.


(CooperHawkes) #2

yes it is possible… you have to remap the following shaders:

// remap axis skins
remapshader models/players/temperate/axis/engineer/body_engineer models/players/infounistgt/axis/engineer/body_engineer
remapshader models/players/temperate/axis/cvops/body_cvops models/players/infounistgt/axis/cvops/body_cvops
remapshader models/players/temperate/axis/fieldops/body_fieldops models/players/infounistgt/axis/fieldops/body_fieldops
remapshader models/players/temperate/axis/medic/axis_medic models/players/infounistgt/axis/medic/axis_medic
remapshader models/players/temperate/axis/soldier/body_soldier models/players/infounistgt/axis/soldier/body_soldier
// remap allied skins
remapshader models/players/temperate/allied/soldier/body models/players/infounistgt/allied/soldier/body
remapshader models/players/temperate/allied/medic/body models/players/infounistgt/allied/medic/body
remapshader models/players/temperate/allied/engineer/body models/players/infounistgt/allied/engineer/body
remapshader models/players/temperate/allied/fieldops/body models/players/infounistgt/allied/fieldops/body
remapshader models/players/temperate/allied/cvops/body models/players/infounistgt/allied/cvops/body
remapshaderflush

whereas in this example I provided these new shaders for the skins:

models/players/infounistgt/axis/engineer/body_engineer
{
        cull none
        {
                clampmap models/players/infounistgt/axis/engineer/body_engineer.tga
                rgbGen lightingDiffuse
        }
}

models/players/infounistgt/axis/cvops/body_cvops
{
        cull none
        {
                clampmap models/players/infounistgt/axis/cvops/body_cvops.tga
                rgbGen lightingDiffuse
        }
}

models/players/infounistgt/axis/fieldops/body_fieldops
{
        cull none
        {
                clampmap models/players/infounistgt/axis/fieldops/body_fieldops.tga
                rgbGen lightingDiffuse
        }
}

models/players/infounistgt/axis/medic/axis_medic
{
        cull none
        {
                clampmap models/players/infounistgt/axis/medic/axis_medic.tga
                rgbGen lightingDiffuse
        }
}

models/players/infounistgt/axis/soldier/body_soldier
{
        cull none
        {
                clampmap models/players/infounistgt/axis/soldier/body_soldier.tga
                rgbGen lightingDiffuse
        }
}


models/players/infounistgt/allied/soldier/body
{
        cull none
        {
                clampmap models/players/infounistgt/allied/soldier/body.tga
                rgbGen lightingDiffuse
        }
}

models/players/infounistgt/allied/medic/body
{
        cull none
        {
                clampmap models/players/infounistgt/allied/medic/body.tga
                rgbGen lightingDiffuse
        }
}

models/players/infounistgt/allied/engineer/body
{
        cull none
        {
                clampmap models/players/infounistgt/allied/engineer/body.tga
                rgbGen lightingDiffuse
        }
}

models/players/infounistgt/allied/fieldops/body
{
        cull none
        {
                clampmap models/players/infounistgt/allied/fieldops/body.tga
                rgbGen lightingDiffuse
        }
}

models/players/infounistgt/allied/cvops/body
{
        cull none
        {
                clampmap models/players/infounistgt/allied/cvops/body.tga
                rgbGen lightingDiffuse
        }
}

unfortunately, the implicitMap doesn’t seem to work as expected, as the skins will have strange lighting (it seems that implicitMap doesn’t support dynamic lighting) and turn inside out in some cases… I guess the models have some flipped normals or some triangles have a wrong winding order (therefore the cull none) :-/
however, the shaders I pasted here are working fine :slight_smile:


(nUllSkillZ) #3

Thnx for the answer.

But what’s about the helmets and legs?
Do the above remapshader’s change the whole skin?
Or only the upper body (without head / helmet)?

I think there must be also seperate shaders for helmets and legs.


(CooperHawkes) #4

yes, there are additional shaders for that stuff… but I never tried to alter them, so do not ask me for their exact names… I also think that some of the entries in models_players.shader might be misleading as player skins seem to be (IMHO) hardcoded in some way which might explain the non-relevance of the spelling error you mentioned above.

If you want to change all that stuff you might run out of remapshader commands, since you are allowed to have only 16… and I found out that the watermark of etpro also needs one of these 16 slots… so if you want to be etpro compatible there are only 15 left :frowning:


(No1_sonuk) #5

Also, I think you’ll find that the tanks and trucks use them to “animate” the wheels and tracks, further reducing the number available.


(nUllSkillZ) #6

Thnx for this info.
So it’s not possible.

:frowning:


(No1_sonuk) #7

Not without a mod.
I think we’re including the facility in PoP, but I don’t know how it’s going to be implemented.


(Ifurita) #8

According to the devs (a long time ago), they were planning on the ability to have map specific skins, but the support was scrapped when the nature of the game changed to that of a free, MP-only game.


(No1_sonuk) #9

Yeah, the way the character system and directories are set up, and comments in the player model docs that are linked to elsewhere on these forums, makes it clear that it was intended to be used at some point.

I guess we’re going to reap the benefit of that foresight. :smiley: