Making more then one skin for the same model in one side problem

Started by {TcF}Dr.Penguin, July 22, 2012, 12:43:11 PM

Previous topic - Next topic
Hey I was wondering if any one knew what I am doing wrong when I am attempting to have more then one skin for the same model in the same side, I used Snake's tutorial http://thesnakesite.webs.com/apps/forums/topics/show/7618488-snake-s-tutorial-on-making-multiple-skins-of-one-model
I rename all my files rep_inf_ep3slooper replacing "tr" with "sl" then I open rep_inf_ep3slooper.msh with a hex editor and search for "tga" one result is found and I rename "rep_inf_ep3trooper.tga" "rep_inf_ep3slooper.tga" in my hex editor, then change the tga to what I want it and munge. But when I get in game it's the same as the other model. Any one have any guess at what I'm doing wrong? Thanks a ton been trying to figure this out for days.

When you load the slooper in the msh viewer, does it show the slooper tga or the trooper tga?

(lol slooper)

-edit ---
Also, have you made sure the ODF files call slooper instead of trooper as well?
slooper will need it's own ODF and also need to be called in the lua.

After I've edited it and reloaded it, it says "rep_inf_ep3slooper" Here
s the ODF:
[GameObjectClass]

ClassLabel          = "soldier"
GeometryName       = "rep_inf_pilot.msh"


[Properties]
FootWaterSplashEffect    = "watersplash_sm"
WaterSplashEffect    = "watersplash_md"
WakeWaterSplashEffect   = "watersplash_wade"

Label             = "Republic Pilot"
UnitType         = "pilot"
IconTexture       = "rep_pilot_icon"
MapTexture          = "troop_icon"
MapScale          = 1.4

GeometryName       = "rep_inf_pilot"
GeometryLowRes         = "rep_inf_pilot_low1"
FirstPerson       = "REP\reppilot;rep_1st_pilot"
FirstPersonFOV         = "70"
ThirdPersonFOV         = "65"
AnimationName      = "all_inf_snowtrooper"

CAMERASECTION       = "STAND"

EyePointOffset       = "0.0 1.8 0.0"
TrackCenter      = "0.0 1.8 0.0
TrackOffset       = "0.0 0.0 3.5"
TiltValue      = "5.0"

CAMERASECTION       = "STANDZOOM"

Not to sure about what.lua is for units(Sorry)

Ok.
From what I am seeing, this is the ODF for the rep Pilot.
So it's calling the pilot geometry (msh)

To make it call your rep_inf_ep3slooper.msh you will need to change a couple of lines.

under the [GameObjectClass] section
GeometryName = "rep_inf_pilot.msh"
needs to be changed to:
GeometryName = "rep_inf_ep3slooper.msh"
(this tells Zero edit what msh to load. You probaly won't ever see the effects of this)

The important ones are in the [Properties] section
GeometryName = "rep_inf_pilot"
GeometryLowRes = "rep_inf_pilot_low1"

Same as before, but without the .msh part.
GeometryName = "rep_inf_ep3slooper"
GeometryLowRes = "rep_inf_ep3slooper_low1"

These 2 lines tell the game what msh to load.
Changing the lowres line assumes that you also did the slooper edit to the trooper's lowres as well. If not, then you will need to change it to a lowres that you know is in the lvl.
(I recomend doing the edit to the lowres as well for a more complete customization.)

-edit (brb with lua info)
-edit
What I mean by called in the Lua is making sure all the req's refer to the odf of the new unit.
But it looks like you are replacing the pilot with a reskinned ep3trooper.
You shouldn't have to mess with the lua or req's if that is the case.

For future reference though, the process of integrating a new unit with it's odf, req and lua info is described in the tutorials section.
How To: Add Unit Classes by the ODF files

Ok it now looks like:

[GameObjectClass]

ClassLabel          = "soldier"
GeometryName       = "rep_inf_ep3slooper.msh"


[Properties]
FootWaterSplashEffect    = "watersplash_sm"
WaterSplashEffect    = "watersplash_md"
WakeWaterSplashEffect   = "watersplash_wade"

Label             = "Republic Pilot"
UnitType         = "pilot"
IconTexture       = "rep_pilot_icon"
MapTexture          = "troop_icon"
MapScale          = 1.4

GeometryName       = "rep_inf_ep3slooper"
GeometryLowRes         = "rep_inf_pilot_low1"
FirstPerson       = "REP\reppilot;rep_1st_pilot"
FirstPersonFOV         = "70"
ThirdPersonFOV         = "65"
AnimationName      = "all_inf_snowtrooper"

CAMERASECTION       = "STAND"

EyePointOffset       = "0.0 1.8 0.0"
TrackCenter      = "0.0 1.8 0.0
TrackOffset       = "0.0 0.0 3.5"

Looks good.

When you munge, you should see the rep_inf_ep3slooper where the rep_inf_pilot used to be.
(except lowres, of course)

Well, I munged it, but it has the same skin on as my other rep_inf_ep3trooper, even though I changed my rep_inf_ep3slooper.tga's  look, any idea what the problem might be?

There is more than one material and you have changed the wrong one is a possibility.

"rep_inf_ep3slooper.tga" is the file that I made a different TGA for, but the strange thing is that it shows up as the lowrez....

Now it's getting wierd.

Regroup...

I'm going to go over this to make sure we are on the same page.
Correct me if I'm wrong on anything.

You changed these filenames
rep_inf_ep3trooper.msh > rep_inf_ep3slooper.msh
rep_inf_ep3trooper.tga > rep_inf_ep3slooper.tga

Then, you opened  rep_inf_ep3slooper.msh and changed rep_inf_ep3trooper.tga to rep_inf_ep3slooper.tga
[spoiler]There is only one material with a tga in this particular model. So that's covered.[/spoiler]

Then you adjusted the GeometryName lines in an ODF to call the appropriate msh.


What you should see in game after munging, is the slooper msh.
At a distance, it should change into the pilot lowres because that's what the odf tells it to do.

But what you are seeing is your slooper tga showing up on the lowres of the trooper?

This would indicate that you changed the tga of rep_inf_ep3trooper_low1.msh, instead of rep_inf_ep3slooper.msh

A quick way to be sure is to attach a copy of your slooper msh and we can take a look at it.

Hold up, hold up. In my experience with doing this I have found that there are sometimes more than one reference to rep_inf_ep3trooper in the hex editor so once you type in .tga and change the first .tga name then use the arrow keys to go DOWN and make sure theres not another repeat.
=AaTc= Forever

SALLY....

-Retired Modder

There are only 2 materials in the ep3trooper.
Only one has a TX0D.
The other is just an empty scene material used by the shadow volume and various nulls.


well.
Your msh edit is perfect.
When loaded in the viewer, it loads a tga named rep_inf_ep3slooper.tga

I don't think the problem is in the msh.
You have it called correctly in the ODF.

I'm kinda stuck.