Difference between revisions of "Sims 3:Catalog Resource"
From SimsWiki
m |
(→Material List: Three DWORDs when Wall/Floor, not one.) |
||
| Line 83: | Line 83: | ||
DWORD | DWORD | ||
--if Wall/Floor Style: | --if Wall/Floor Style: | ||
| + | DWORD | ||
| + | DWORD | ||
DWORD | DWORD | ||
====Material Block==== | ====Material Block==== | ||
Revision as of 13:34, 27 July 2009
Contents |
Overview
The following resource types are used for catalog entries.
| Type ID | Name |
|---|---|
| 0x0418FE2A | Catalog Fence |
| 0x049CA4CD | Catalog Stairs |
| 0x04AC5D93 | Catalog Proxy Product |
| 0x04B30669 | Catalog Terrain Geometry Brush |
| 0x04C58103 | Catalog Railing |
| 0x04ED4BB2 | Catalog Terrain Paint Brush |
| 0x04F3CC01 | Catalog Fireplace |
| 0x060B390C | Catalog Terrain Water Brush |
| 0x316C78F2 | Catalog Foundation |
| 0x319E4F1D | Catalog Object |
| 0x515CA4CD | Catalog Wall/Floor Pattern |
| 0x9151E6BC | Catalog Wall |
| 0x91EDBD3E | Catalog Roof Style |
| 0xF1EDBD86 | Catalog Roof Pattern |
Format
Common
This block appears in all Catalog Resources. The name and description GUIDs can be looked up in the STBL.
DWORD //12 QWORD Name GUID //from STBL QWORD Desc GUID //from STBL 7BITSTR // Catalog Name entry 7BITSTR // Catalog Desc entry FLOAT price FLOAT //always 1.0 4BYTE //binary zeros BYTE QWORD I64 of PNG icon //usually 0
Material List
This section is only present in Objects and Wall/Floor Patterns; it differs slightly between the two, as annotated.
DWORD Count1 --repetition Count1 Material: BYTE type if (type != 1) DWORD DWORD offset // from here to after TGI Block List WORD DWORD tgi offset // see Sims 3:Key table DWORD tgi size // see Sims 3:Key table --insert MaterialBlock --insert TGI Block List // see Sims 3:Key table DWORD --if Wall/Floor Style: DWORD DWORD DWORD
Material Block
BYTE index //XML
--insert data for typecode 0x01 // see below
--insert data for typecode 0x01 // see below
DWORD count1
--repetition count1 Type Code List:
BYTE controlcode
switch(controlcode)
{
case 0x40:
(do not increase count - skip 0x40 bytes)
break;
case 0x2F:
BYTE
DWORD
break;
default:
BYTE typecode
--insert data for typecode // see below
break;
}
DWORD count2
--repeat(count2)
Material Block
Typecodes
| Typecode | Data | Comments |
|---|---|---|
| 0x01 | (BYTE)(6bitstr if &0x80)(BYTE if &0x40) | |
| 0x02 | (BYTE)(BYTE)(BYTE)(BYTE) | RGBA color |
| 0x03 | (BYTE) | Index to TGI table below |
| 0x04 | (FLOAT) | |
| 0x05 | (FLOAT)(FLOAT) | |
| 0x06 | (FLOAT)(FLOAT)(FLOAT) | |
| 0x07 | (BYTE) | Boolean |