Hi there! You are currently browsing as a guest. Why not create an account? Then you get less ads, can thank creators, post feedback, keep a list of your favourites, and more!
Instructor
#26 Old 19th Apr 2005 at 12:21 AM
Is a nice idea!
I will wait to you finish your hair with this process and will go check it in the game. :D

I'm taking a break because i lost 2 hours writing the process post. Is hard to think in portuguese, translate to english and concentrate on the steps that i made. lol

i will cover the other color later today.
Advertisement
Administrator of Loverat's Tea and Underpants
#27 Old 19th Apr 2005 at 12:52 AM
Pinhead and leave_me_anonymous,

Thanks for this information. I've been wanting to give this a try and kept putting off looking at the code. I think it's ideal if the content is still displayed as custom, but is fully compatible with the genetics system.

In a very off-topic note:
Quote:
pu=toddler both genders

Yes, you can tell that they stink by the green clouds surrounding them. :P
Instructor
#28 Old 19th Apr 2005 at 1:55 AM
Hey RGiles!

How are you? good to see ya again!

This process is like the first recolor object process, so, stick around to give feedback and help us out! :D
i think that some hairs can cause problems like the dirty and clean states lol

hugs, my friend!
Instructor
#29 Old 19th Apr 2005 at 3:43 AM Last edited by pinhead : 19th Apr 2005 at 4:08 AM.
Here we go to part 2.

We will add other colors to be part of the first package that we made. The first thing that i suggest you is to create a project folder and remove the first package of your downloads folder and place there. Why? we will use the same group ID of that package to the new one. But why we can't merge the packages and start changing? If we make a mistake, will be hard to find the cause later, so is a excellent idea make changes in separate packages. So, remove of the downloads folder and place in the projects folder. You will use it as a reference to the next package.

Ok, in the first package that i was explaining we used the black and keep the grey hair there. So, get the other color (don't have a right sequence, should be any color). I will choose the brown.


open the brown package. (If you didn't use the leave_me_anonymous process, use it now before start) we will start cleaning the package again.

Remove the texture for other ages that don't exist a new mesh and the elder texture as well. Why? well, if you don't remove it we will finish with 4 grey hairs duplicated in the catalog and we don't like that, right? all this process is to be sure that you will create a clean 5 colors package working as maxis genetics. So, delete it and don't worry. After all done you will see that all will be fine.

In Text Lists delete it.

Hair Tone delete it too.

now delete the MATDs of the ages that don't have a new mesh. The elder MATDs too. You will finish with yadult and adult files.

Go to property set and delete the elder. Just the elder.

Go to BINX and delete the same instance of property set that you deleted. Go to 3IDR and delete the same instance as well.
We know in the first package that (if exists) the last instance of 3IDR don't have MATD, shape and resource node, so delete it too. Go back to BINX and delete the last instance if needed (if you deleted the 3IDR too).
Don't worry about the instances are not in sequence. We will fix that later.

Now, open another instance of SimPE and open your first package. Select the collection and extract it to your project folder. Don't close the first package yet. Go to Text List and extract it. After done it, you can minimize the window and go back to "brown" package.

In the "brown" package, add the 2 files that you extracted of the first package that you created. Text List and Collection. Don't change the groups of these files. We will use it later.

Go to the texture and change the name to the same that you choose in the first package but this time use -brown and not black in the name. Remember to keep the hash value but this time we will change to the same hash value of the first package. Why? if we will merge the packages we will need to use the same group id and of consequence the hash is the same value as the group ID. Don't forget to click FIX TGI.

Copy the name of the texture without the extension _txtr and go to MATDs.
Now, change the StdMatBaseTextureName to the name of the texture (again without _txtr). Change the name of MATD to the name that you choose in the first package but this time (again) use brown instead black. Again, use the hash infront the name but this time change the value to the same hash of the first package. Change description to the same name of MATD with hash included and (again) use the hash number of the first package. Don't forget the FIX TGI. Make the changes to all MATDs. Remember to include _alpha3, _alpha5... if required.

Now, select property set and change the adult old name to the name of your MATD without hash (ie. afhairpinheadstupid_brown). Remember to change only the property sets of the ages that exist a MATD inside your package. Keep the other ages as be. We will make other changes here, so keep it selected in property set.

Now, maximize the first package. Go to property set and copy the family dtstring value. We will paste in the brown package to keep the same family. Why? This will tell to the game that if you change the color when is choosing a hair to not change the base mesh and just change the hair color.

Back to the brown package. Paste the family dtstring in all property sets for all ages.

Now, select text list. We imported the first package text list just for testing before we merge the packages, as well to add more lines to reference the other color to it.
Add lines to adult, yadult (if exist), child, teen and toddler (once again, the right name for the other ages are stored in the property set. Just copy that names to each text line). Don't need to be in order you can make it as you like but remember that we need to reference this lines in BINX so be organized.

Now, go to BINX and change the "stringindex" to fit the value of the text list that you created just for the brown hair, of course. The other lines are referenced in the first package.

in all BINX files change the "sortindex" fields to 0x00000000. You don't need to change the collection in this package because you already changed in the first. Will use the same "sortindex" (the order of thumbnails - i think) to all colors linked to the same collection file.

Now is time to change all group values to use the same value of the Group ID of the first package. Change all groups of all file types (if has a Directory of Compressed FIles don't change it. All the files with exception of DIR will be changed)

After change the group values, is time to change the instances. Open your first package again and find the last instance value of each file type and change to be sequential with the first package. Example, if the last property set has instance value 0x00000006, you will start in the brown package as 0x00000007. Remeber that 3IDR and BINX are linked to the same value of both and Property set. Make the changes correctly.

Now is time to select 3IDR and open Sims2.package in another instance of SimPE. If you are good with memory will remember the order of the alphas and textures of the MATDs inside the 3IDR. If you are not good, use the first package to browse through files and remember the order of them.
Once again, in the first 3IDR has a Hair Tone reference. You don't need it, so delete it. Delete the Collection as well and Add the collection that exist in your package. Change the group of text list to match the group id that you changed in this package and change the references to maxis MATDs to the ages that don't have a new mesh. When you reach the adult and yadult you will need to match the new modified MATDs references, collection and text list.

After all done go test it. Remember that you don't have the elder texture so, don't worry and just don't click on elder in bodyshop. Make sure that all ages (with exception of elder) use the right text line and make sure that you didn't forgot anything and don't get weird things (in my tests i had the "words" texture appear because i forgot to change the group value on stdMatTextureBaseName - just like the object recolors but 3 times more files to change it - lol )

Ok, if everything is fine, close bodyshop and open your "brown" package again.
Select property set and change the "flags" field of the ages that you use the default maxis MATDs to 0x00000009. The adult and yadult change it to 0x00000008. Why? the flag 0x00000009 hides the thumbnail so you don't get a duplicate thumbnail to select. The biedermann mesh use that too. You can see for yourself.

Save the package.

Now is time to extract everything to import to the first package. Before export everything, delete the Collection. Just the Collection, nothing more and nothing less - lol (Text list we will use in the first package so, keep it)
Select the "---------" in File Types. go to File/Extract all and choose a separete folder.

After done it, close SimPE and open your First package. Choose Add... and select "package.xml" in the folder that you extracted.
After all done, make sure that the instances are not duplicated and all groups have the same value, just for security.
Remember that we keeped the text file in brown package? So now you have 2 text files. remove the one that don't have the brown references.

You done. Go check in bodyshop. Now you have 2 colors workin fine and sharing the same "grey" color. Try recolor both just to test everything and make sure that all is working. For the other colors, use this part of the process and remember that changes will exist like the instance values. But remember to keep the same group value for all colors.

Instructor
#30 Old 19th Apr 2005 at 4:19 PM
Pinhead: I don't know if you checked to see if the genetics work or not but I tested the hair you sent me in the "Create a Child" in the CAS. The hairs do work exactly like the Maxis ones do and follow sim genetic. Blonde is always recessive and black is always dominant, so it seems this process works and won't cause your sim children to end up with strange hair colors when having a child.

My sim with my black female afro custom hair (not made with this method, ...yet) had a child with another sim with black hair and the child is blonde! I find this strange since normally a CAS sim with black hair should never have blond hair ever, but those hairs in the custom section don't follow sim genetics, so this method can fix that.
Instructor
#31 Old 19th Apr 2005 at 5:22 PM Last edited by pinhead : 19th Apr 2005 at 5:26 PM.
Quote: Originally posted by Motoki
Pinhead: I don't know if you checked to see if the genetics work or not but I tested the hair you sent me in the "Create a Child" in the CAS. The hairs do work exactly like the Maxis ones do and follow sim genetic. Blonde is always recessive and black is always dominant, so it seems this process works and won't cause your sim children to end up with strange hair colors when having a child.


Well, i didn't test it but since we changed the hair tone value to be the same as maxis (using the process that leave_me_anonymous said) i tought that everything will be fine in the end. Good to know.

Quote: Originally posted by Motoki
My sim with my black female afro custom hair (not made with this method, ...yet)


lol
this method is a lot of work, don't you think? lol
I lost 1 hour in the first package (including testing times) and 40 minutes in each of the other packages with tests too. Maybe is useless for some people and discourage them to do it. I don't know.

But i like to say that i will not like download something that has so many packages with useless textures and end up with 4 same grey hair in the thumbnails. Too much unecessary garbage.
Instructor
#32 Old 19th Apr 2005 at 7:59 PM
It is a lot of work, but I also agree the grey textures are useless. And the way that the custom hairs are sorted makes no sense. The black version of a hair could be on page 3, and the blonde on page 17 and the red on page 28 and the brown on page 8, heh. It's easier to compare the different color this way.
Instructor
#33 Old 19th Apr 2005 at 9:02 PM
Is a good point. I agree!
I have a lot of hair recolors and i like to download black, red and brown (i don't like blond - lol) but since all the colors are out of order and messed up with the other recolors, i finish using a maxis one. lol
browse through so many hair recolors just to find a simple black or red makes me give it up to choose it.
Space Pony
#34 Old 20th Apr 2005 at 3:17 AM
OK - I've got it working I've created a mesh for the graduation cap & have successfully done the blond hair for it. It shows up in the catalog properly & I can export it/import it again. Yay!!

I like the idea of doing this to keep the packages smaller & to make sure that it works correctly in the game but I am not so sure it's really worth how much time it takes to do it. Perhaps if Quaxi can add something to SimPE to help with this process it would be more useable. One thing that would really speed this up would be a way to easily add the MATDs from the Sim02 package (drag & drop would be really nice).

My observations & what i did differently, I didn't change the names of the textures. You have to be careful, but the texture names already correspond to the MATDs, so I just deleted the ones I didn't need (both mATD & textures). This saved quite a bit of time not having to rename the textures, then changing the MATD to match the name changes. I also left the names in the Property set as they were originally. This did not cause any problems.

Once I have fixed & integrated the other hair colors I'll post my results.

Thank you Pinhead for all of the work you did on this!
Instructor
#35 Old 20th Apr 2005 at 3:29 AM
Quote: Originally posted by Morague
Perhaps if Quaxi can add something to SimPE to help with this process it would be more useable. One thing that would really speed this up would be a way to easily add the MATDs from the Sim02 package (drag & drop would be really nice).


I agree. It would be alot easier if SimPE could automate most of this process.
Instructor
#36 Old 20th Apr 2005 at 3:32 AM Last edited by pinhead : 20th Apr 2005 at 3:48 AM.
Hi morague!

nice to see other person interested on that.
Well, about what you already made and your observation regarding not change the names of the textures i have to say that bodyshop creates the same name for some textures in different packages. The Instance and Subtype will be created by the name and you will finish with duplicated instance and subtype if you merge the colors. I know is odd have to make so much changes just to clean the package and make it work with maxis genetics...

Like you said, we hope that quaxi create a workaround in the future to make our lives much easy.
About the drag MATDs i think that this can be add to SimPE more soon, since already have a drag and drop for maxis property sets in 3IDR.

About not change the names in Property set, i think is ok. But since you change so many thing inside it (flags, hairtone...) you could do that too if you like.

of course, just the name of the proper age that you created a mesh.
Instructor
#37 Old 20th Apr 2005 at 3:41 AM
Sorry, maybe i'm a little confusing.
My test was done with original packages created by a hair mesher that use the same color to export the different hairtones.
So, will speed things up if you use the different color tones for exporting. I don't know for sure but i have a feeling that bodyshop creates the name with base in "filelist" value of MATDs. (ie. ufhairstupid-brown)
so, i don't have sure yet, this idea appeared in my head just now, if you create correctly the other tones you don't need to change the texture name and the "stdMatBaseTextureName" inside MATD.

Will be good to check the instances and subtypes of the textures of all packages to see if don't exist a duplicated one.
Space Pony
#38 Old 20th Apr 2005 at 7:04 AM
ah - that could be. I have just finished dinner & am starting to work on the other colors now. I'll let you know what happens. It may be that I will need to change the names. I hope not! as it saves time, but I want this to work properly In any event, I'll let you know what happens.
Space Pony
#39 Old 20th Apr 2005 at 7:24 AM
Ugg - well even exporting the different colored hair results in the same instance & subtype numbers regardless of the color :/

So, now I see i have to change them. I was hoping that we could save some time.
Instructor
#40 Old 20th Apr 2005 at 8:00 AM
this is bad
but thanks for testing it.

Well, i tried today one mesh that i get and... have a lot of work that i didn't imagine before.
the hair has alpha 3, 5, 7, 11, 13, 15 and 17.
so, 9 MATDs to change it for almost all ages... oh my!
i finished one color package with the elder included and took me almost 3 hours. :/

i hope that someday we can make this more fast.

Like in Scooby-Doo cartoons:

Quaxiiii, wheeerree are youuuu???

lol
just kidding
Space Pony
#41 Old 20th Apr 2005 at 12:12 PM
Hello Pinhead

More bad news :/ This is not working for hair that has hats. As soon as I change the texture name/MATD/Propert Set names then some of the textures don't show up. I am trying to figure out where the problem is. I have tried every combination i can think of. I double checked that I am doing it correctly, clicking commit, fixing TGI, etc. It workd fine if I don't change the names, but then I can't combine the colors.

I have to go to bed now, but I'll be back on this tomorrow. I know it can be made to work, I just have to figure out what is going on.

It appears that the MATD instance & sub-group numbers are created from the Filename, as you said & Body Shop names all exported textures the same.

Anyway, I will continue working on this. I know I could just post the separate packages, but I would really prefer to have one package with everything in it (plus I am just stubborn)
Instructor
#42 Old 20th Apr 2005 at 11:07 PM
Hi Morague!

This is sad.. I didn't tried yet with hats. But maybe is a little thing that you forgot in the process. As soon that i finish a hair that i'm working to change i will try with a hat.

I have some information that i'm checkin to see if is always like this, but since i just tried with 2 different hair types i need to look at it a little more.

In property sets has values for the hair and respective alphas. There is stored the order that the MATDs are referenced in 3IDR. I speed up my changes a little making anotations in a paper (instead to open 3 instances of SimPE windows) of the order of Alphas in Property Set and placing the references as was there. No problems appeared so far. All hairs show up fine.
Space Pony
#43 Old 21st Apr 2005 at 9:19 AM
Hi Pinhead

I am starting over from scratch. Somehow I messed up my backup :/ I found a stupid error - one of the property set instance numbers was duplicated. I think this may have been the problem. In any event, I have worked so much with that one file I thought it best to just start over. I am just going through it now, so I'll let you know what happens.
Instructor
#44 Old 21st Apr 2005 at 6:43 PM Last edited by pinhead : 21st Apr 2005 at 6:50 PM.
So many details and references that sometimes we get lost.
yesterday i was finish a hair and in the last package after testing (all was showing up fine) i started to include it in the main package. After importing all that stuff i notice that i forgot to change the instance of 3IDR, Property Set and BINX.
after change it to not be duplicated i save it and gone to test it. Nothing was show up correctly.. Then i close bodyshop and start to look at the file. I forgot that if you change the instances after linked everything in 3IDR you will need to change there too. Will not "refresh" automatic the instance references. We need to pay attention there. Was just the property sets that was linked to wrong instance numbers and now everything is fine. Took me some time to find. Too many things that we change and have to look at all.

Space Pony
#45 Old 21st Apr 2005 at 9:22 PM
Ok - I redid my base package but I am still having the same proplem. If I change the names of the textures the hat shows up, but the texture for the hair does not, just the hat shows. If I don't change the names, then they both show up. So, there must be something different about meshes with hats :/

I am going to keep messing around with this because I really don't like having 4 grey hairs all the same.
Instructor
#46 Old 21st Apr 2005 at 11:00 PM
I will try a hat today later.
Maybe we can find a way to use this process to hats too.
I was with a feeling that something will need a extra tweaking. lol
later i will report my progress.

thanks for all your information, morague.
Space Pony
#47 Old 21st Apr 2005 at 11:43 PM Last edited by Morague : 21st Apr 2005 at 11:46 PM.
ok- thank you Pinhead

I was wondering if maybe it has something to do with the Flags? Do you know what the other flags do? 8 is to show the thumbnail, 9 to hide it. I am just thinking about these flags because hair meshes with hats have 3 "hairs" they have what Maxis calls the Casual hair (the one with the hat & is used most of the time) then there's the Swim hair (the hair they put on for shower, bed, pool) & then there's the hat hair - this is the one that actually points to the hat.

Basically the swim hair is just regular hair that is included in the game - no hat, regular colors.

The Casual hair is where the game gets the hair color from but all of the meshes I have looked at with hats show a hat & the hair. Only the hair counts in these & usually there is one with the proper hair color & one with the grey hair color.

Finally there's the hat - but it also shows a hair. However, most of the time the hair color is wrong & this is ok because the game only takes the hat from this texture. So, for example, if you are looking at a blond hat package, you might find a texture with the hat & red hair - this is the hat texture, or it might be black hair, whetever.

So, I think there's something I am missing in connecting up the Casula hair with the hat textures. All of the hats show up, but with bald heads

I know I have linked everything correctly in 3D ID. MATD & Property Set, so it must be something else. That's why I thought of the flag we change. But i tried it with the 2 flag that is standard for the hats & then it only shows the swim hair, not even the hat :/ So, maybe it is the flag, but I don't really know.
Instructor
#48 Old 22nd Apr 2005 at 1:50 AM Last edited by pinhead : 22nd Apr 2005 at 2:04 AM.
Hi morague!

I finish the first package with a hat and i notice all that you report. Thanks for this information.
My test show up just fine. I tested everything. Create parts, i keep it all thumbnails to show up to see if all are there, i tested changing the cloth of a sim using that hat and the sim appear without the hat and with the corrected hair setted. I notice that in property set of the Hat not exist an "alpha" reference but a "hat" reference. So, in MATD i keep the "_hat" on the MATD's name.
For Example:

the original MATD had this name:
##0x5f301f03!afhair_Casual1~hat_txmt

i change it to:
##0x5f301f03!afhairhatpinhead_blackband_black_hat_txmt

the original name of the other MATD that exist a reference in 3IDR with the reference of Hat's MATD was:
##0x5f301f03!efhair_Casual1~hair_txmt

and i change it to:
##0x5f301f03!afhairhatpinhead_blackband_black_txmt

note that i used (to rename the MATDs) the same name that is used in property set of the hat.
original maxis has this name:
afhairhatcowboyupflat_blackband_black
and i changed only the initial name.

I notice that you need to keep the _alpha3;_alpha5... normally on the MATDs name, so i intuited that was necessary to keep the "_hat" too.
About the "~hair" always change it to the color. _black, _blond,_red or _brown.

Other thing that i notice is the "flag" on property set of the original bodyshop created hat. Was setted as "0x00000002" and not zero. I looked ,before change it, in "Hair Tone" file type to know what flag was using and the "0x0000008" was the flag used. So, i intuited that 2+8=10 and change it the property sets that used "0x0000002" to "0x0000000A"
All the flags setted as 0 on the original package have to use 8 to show up and 9 to hide the thumbnail.
everything show up fine. I didn't test it using flag 8 for the hats but i will try after i finish the report of my test.

I will upload here a reference for you. i didn't change mesh or textures. The first and second 3IDR instances are using the MATDs inside the package. All others are using maxis MATDs. It was just to see if this process can be used to hats and what you need to do different to show up correctly. I didn't changed the flags for hidding the thumbnails of other ages yet. But you can see that all is fine.

maybe this can help you to finish your project

EDIT: btw, will show in black hair and grey. :P
Attached files:
File Type: rar  pinhead_hat01.rar (183.2 KB, 18 downloads) - View custom content
Space Pony
#49 Old 22nd Apr 2005 at 2:01 AM
Thank you Pinhead. I just realized that I was using dashes instead of underscores. So, I used (hash)gradcap-blond-hat rather than (hash)gradcap_blond_hat. I think I need new glasses!

Sigh - I can't believe I have spent so much time with this & never noticed. I was concentrating very hard on getting all of the numbers changed, I missed the most basic thing.

You deserve big **hugs**. Thank you!
Instructor
#50 Old 22nd Apr 2005 at 2:08 AM
Oh!! lol
But i know how hard is make those changes. sometimes i forgot something and get frustrated. Is a lot of time lost in a simple thing..
But after all done is cool. You have a small package with only the textures necessary and nothing more.
I finish 4 hairs already and the biggest package has 600Kb only. With all colors. :D

Good luck on your project!
Locked thread | Locked by: tiggerypum Reason: This discussion is over a year old, locking before the zombie eats our brains
Page 2 of 4
Back to top