Difference between revisions of "Sims 3:Catalog Resource"
From SimsWiki
(→Complate Variables) |
(→Complate Variables) |
||
Line 101: | Line 101: | ||
=====Complate Variables===== | =====Complate Variables===== | ||
For main material block: | For main material block: | ||
− | + | DaeFileName = 0x5, | |
− | + | BackgroundImage = 0x0b, | |
+ | RGBMask = 0x13, | ||
Multiplier = 0x14, | Multiplier = 0x14, | ||
Specular = 0x17, | Specular = 0x17, | ||
Overlay = 0x18, | Overlay = 0x18, | ||
− | + | StencilA = 0x20, | |
− | + | StencilB = 0x21, | |
− | + | StencilC = 0x22, | |
− | + | StencilD = 0x23, | |
− | + | StencilAEnabled = 0x24, | |
− | + | StencilBEnabled = 0x25, | |
+ | StencilCEnabled = 0x26, | ||
+ | StencilDEnabled = 0x27, | ||
+ | StencilATiling = 0x28, | ||
+ | StencilBTiling = 0x29, | ||
+ | StencilCTiling = 0x2a, | ||
+ | StencilDTiling = 0x2b, | ||
+ | StencilARotation = 0x2c, | ||
+ | StencilBRotation = 0x2d, | ||
+ | StencilCRotation = 0x2e, | ||
+ | StencilDRotation = 0x2f, | ||
+ | PatternA = 0x30, | ||
+ | PatternB = 0x31, | ||
+ | PatternC = 0x32, | ||
+ | PatternAEnabled = 0x33, | ||
+ | PatternBEnabled = 0x34, | ||
+ | PatternCEnabled = 0x35, | ||
+ | PatternALinked = 0x36, | ||
+ | PatternBLinked = 0x37, | ||
+ | PatternCLinked = 0x38, | ||
+ | PatternARotation = 0x39, | ||
+ | PatternBRotation = 0x3a, | ||
+ | PatternCRotation = 0x3b, | ||
+ | PatternATiling = 0x3c, | ||
+ | PatternBTiling = 0x3d, | ||
+ | PatternCTiling = 0x3e, | ||
− | The | + | The variables in the sub material section (used for pattern variables) have their own types: |
− | + | BackgroundImageName = 0x1, | |
− | + | DDS1 = 0x04, | |
+ | Color = 0x07, | ||
+ | RgbMask = 0x09, | ||
+ | SpecMap = 0x0a, | ||
+ | BackgroundImageIndex = 0x0b, | ||
+ | HSVShiftBg = 0x0c, | ||
+ | HBg = 0x0d, | ||
+ | SBg = 0x0e, | ||
+ | VBg = 0x0f, | ||
+ | BaseHBg = 0x10, | ||
+ | BaseSBg = 0x11, | ||
+ | BaseVBg = 0x12, | ||
+ | DDS2 = 0x15, | ||
+ | DDS3 = 0x16, | ||
− | + | These lists are not complete and for the pattern section there are some inconsistencies between complates | |
====Typecodes==== | ====Typecodes==== |
Revision as of 22:21, 25 August 2009
Contents |
Overview
The following resource types are used for catalog entries.
Type ID | Tag | Name |
---|---|---|
0x0418FE2A | CFEN | Catalog Fence |
0x049CA4CD | CSTR | Catalog Stairs |
0x04AC5D93 | CPRX | Catalog Proxy Product |
0x04B30669 | CTTL | Catalog Terrain Geometry Brush |
0x04C58103 | CRAL | Catalog Railing |
0x04ED4BB2 | CTPT | Catalog Terrain Paint Brush |
0x04F3CC01 | CFIR | Catalog Fireplace |
0x060B390C | CWAT | Catalog Terrain Water Brush |
0x316C78F2 | CFND | Catalog Foundation |
0x319E4F1D | OBJD | Catalog Object |
0x515CA4CD | CWAL | Catalog Wall/Floor Pattern |
0x9151E6BC | CWST | Catalog Wall Style |
0x91EDBD3E | CRST | Catalog Roof Style |
0xF1EDBD86 | CRMT | 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
This block holds the variables used in the complate to render a texture, equivalent to the preset XML used for CAS parts.
BYTE index //Points to the complate XML in the TGI index where the variables should be applied --insert data for typecode 0x01 // see below --insert data for typecode 0x01 // see below DWORD count1 --repetition count1 Type Code List: BYTE ComplateVariable switch(ComplateVariable) { 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 // sub-blocks used for pattern definitions
Complate Variables
For main material block:
DaeFileName = 0x5, BackgroundImage = 0x0b, RGBMask = 0x13, Multiplier = 0x14, Specular = 0x17, Overlay = 0x18, StencilA = 0x20, StencilB = 0x21, StencilC = 0x22, StencilD = 0x23, StencilAEnabled = 0x24, StencilBEnabled = 0x25, StencilCEnabled = 0x26, StencilDEnabled = 0x27, StencilATiling = 0x28, StencilBTiling = 0x29, StencilCTiling = 0x2a, StencilDTiling = 0x2b, StencilARotation = 0x2c, StencilBRotation = 0x2d, StencilCRotation = 0x2e, StencilDRotation = 0x2f, PatternA = 0x30, PatternB = 0x31, PatternC = 0x32, PatternAEnabled = 0x33, PatternBEnabled = 0x34, PatternCEnabled = 0x35, PatternALinked = 0x36, PatternBLinked = 0x37, PatternCLinked = 0x38, PatternARotation = 0x39, PatternBRotation = 0x3a, PatternCRotation = 0x3b, PatternATiling = 0x3c, PatternBTiling = 0x3d, PatternCTiling = 0x3e,
The variables in the sub material section (used for pattern variables) have their own types:
BackgroundImageName = 0x1, DDS1 = 0x04, Color = 0x07, RgbMask = 0x09, SpecMap = 0x0a, BackgroundImageIndex = 0x0b, HSVShiftBg = 0x0c, HBg = 0x0d, SBg = 0x0e, VBg = 0x0f, BaseHBg = 0x10, BaseSBg = 0x11, BaseVBg = 0x12, DDS2 = 0x15, DDS3 = 0x16,
These lists are not complete and for the pattern section there are some inconsistencies between complates
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 |