Talk:AGED

From SimsWiki
Jump to: navigation, search

Here are a few notes about the AGED resource that is found on each sim character package.

The listcnt property is the length of a list of items defined by the properties lsn, lkn and len_0, where n falls into the range from 0 to the value of the listcnt property minus 1.

Each item corresponds to this structure:

* S; unknown purpose, always "1"
* K; formatted as string, but always parsed as a 32 bit integer.
  The high 16 bits define the SkinCategory, while the low 16 bits define the OutfitType.
  The OutfitType enumeration has the following values: Hair (0x01), Face (0x02), Top (0x04), FullBody (0x08) and Bottom (0x10)
* E0; index in the 3IDR resource that points to the Cpf.



Here is an actual example (the S values have been omitted):

listcnt = 0x0000001C
lk0     = "65537"
le0_0   = 0x0000000B
lk1     = "65538"
le1_0   = 0x0000000C
lk2     = "65540"
le2_0   = 0x0000000D
lk3     = "65552"
le3_0   = 0x0000000E
lk4     = "524289"
le4_0   = 0x0000000B
lk5     = "524290"
le5_0   = 0x0000000C
lk6     = "524296"
le6_0   = 0x00000012
lk7     = "1048577"
le7_0   = 0x0000000B
lk8     = "1048578"
le8_0   = 0x0000000C
lk9     = "1048584"
le9_0   = 0x00000013
lk10    = "2097153"
le10_0  = 0x0000000B
lk11    = "2097154"
le11_0  = 0x0000000C
lk12    = "2097160"
le12_0  = 0x00000014
lk13    = "4194305"
le13_0  = 0x0000000B
lk14    = "4194306"
le14_0  = 0x0000000C
lk15    = "4194312"
le15_0  = 0x00000015
lk16    = "8388609"
le16_0  = 0x00000016
lk17    = "8388610"
le17_0  = 0x00000017
lk18    = "8388612"
le18_0  = 0x00000018
lk19    = "8388624"
le19_0  = 0x00000019
lk20    = "16777217"
le20_0  = 0x0000000B
lk21    = "16777218"
le21_0  = 0x0000000C
lk22    = "33554433"
le22_0  = 0x0000000B
lk23    = "33554434"
le23_0  = 0x0000000C
lk24    = "33554440"
le24_0  = 0x0000001A
lk25    = "67108865"
le25_0  = 0x0000000B
lk26    = "67108866"
le26_0  = 0x0000000C
lk27    = "67108872"
le27_0  = 0x00000005

By parsing the K value, the following index table is built:

       Everyday   Swimwear        PJ    Formal     Undies       Skin    Pregnant   Activewear    Unknown
Hair         11         11        11        11         11         22          11           11         11
Face         12         12        12        12         12         23          12           12         12
Top          13                                                   24
Body                    18        19        20         21                                  26          5
Bottom       14                                                   25

Using each index on the 3IDR item array, it's possible to determine the sim's current clothing.

For reference, the sim's 3IDR resource follows:

0: Resource Node -FFFFFFFF-10545497FF46D9D5
1: UI Data
2: Resource Node -1C0532FA-67EAE919FFF14E1D
3: GZPS (puhairbald_stubble_brown)
4: GZPS -FFFFFFFF-0000000000000001
5: GZPS (pubodyonepieceshortscollar_cordcoveralls)
6: GZPS (pubodybadger_polarbear)
7: GZPS (pubodydiaper_white)
8: GZPS (puhairbald_s1)
9: GZPS (pubodynaked_nude_s1)
10: Resource Node -1C0532FA-CB59BFC1FF85D8C7
11: GZPS (cmhairshortgel_brown)
12: GZPS -FFFFFFFF-0000000000000002
13: GZPS (cutopshortsleevecollar_red)
14: GZPS (cubottombaggypants_carpenterkhaki)
15: GZPS (cubodypirate_redstripe)
16: GZPS (cutopshortsleevecollar_greendkgreepolo)
17: GZPS (cmbottomcowboyjeans_blue)
18: GZPS (cmbodybigshorts_lemonlimeswimtrunks)
19: GZPS (cubodypuffypj_creamteddybear)
20: GZPS (cmbodyopencoatlongpants_formalgreen)
21: GZPS (cmbodyovershirtshorts_blue)
22: GZPS (cuhairbald_skin_s1)
23: GZPS (cuface_s1)
24: GZPS (cutopnaked_nude_s1)
25: GZPS (cubottomnaked_nude_s1)
26: GZPS (cubodyjumper_shirtovershorts)



However, there are a few quirks regarding the SkinCategory:

* The Everyday category uses the value 0x0001 instead of 0x0007.
* The Unknown category has the value 0x0400.

It should also be noted that the items that correspond to the OutfitType Face point to the local Cpf in the sim character package.

However, this "clothing" table is not related to the sim's wardrobe, it contains only the items that the sim is actually "wearing".





It now seems that pets's Age Data resource replaces the functionality of the TXMT's and even the character's face mesh.

The AGED resource contains two new lists, let's name them the Coat and Psd lists for now :P

The Coat list has its length defined by the coatlayers property. Each item is defined by the coattexn, coatmaskn and coatmaskamtn properties.

coattex: Guid (texture?)
coatmask: Guid (texture mask?)
coatmaskamt: Integer (material flags/layer/index?)

It appears that this list replaces the MaterialDefinitions that otherwise appear on normal sim's packages.

Example:

coattex1: b2bfc7c1-0e5d-4161-a221-6c451a5b0fa7
coatmask1: 0b292be0-3da1-4d0c-8d16-ae7e45148673
coatmaskamt1: 0x000000FF
...


The Psd list has the length defined by the numpsd property. Each item is defined with a sigle property psdn.

The value of each psd property contains three values separated by a colon (:)

Example:

psd0: 621a7c1e-8bf0-466c-bbf5-5e98922aa75a:1:1.000000
psd1: body;:3:1.000000
...

This seems to define the overall shape of the pet sim, and not only the "face".

Personal tools
Namespaces

Variants
Actions
Navigation
game select
Toolbox