Difference between revisions of "Sims 3:0xEA5118B0"
(→Format) |
|||
Line 15: | Line 15: | ||
WORD Version | WORD Version | ||
[[#Effect_Blocks|Effect Block Section]] | [[#Effect_Blocks|Effect Block Section]] | ||
− | [[# | + | [[#Materials|Material Section]] |
[[#Effect_Compilations|Effect Compilation Section]] | [[#Effect_Compilations|Effect Compilation Section]] | ||
[[#Effect_Handles|Effect Handle Section]] | [[#Effect_Handles|Effect Handle Section]] | ||
Line 62: | Line 62: | ||
|- | |- | ||
| 0x000A | | 0x000A | ||
− | | | + | | Unused |
|- | |- | ||
| 0x000B | | 0x000B | ||
− | | | + | | Game Effect |
|- | |- | ||
| 0x000C | | 0x000C | ||
− | | | + | | Fast Particle Effect |
|- | |- | ||
| 0x000D | | 0x000D | ||
− | | | + | | Distribute Effect |
|- | |- | ||
| 0x000E | | 0x000E | ||
− | | | + | | Ribbon Effect |
|- | |- | ||
|} | |} | ||
Line 80: | Line 80: | ||
======Format====== | ======Format====== | ||
− | + | DWORD //Flags? | |
− | + | ||
− | + | ||
− | + | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
Line 105: | Line 102: | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
− | FLOAT | + | FLOAT |
− | + | DWORD Count | |
− | DWORD | + | FLOAT //Angle? |
− | FLOAT | + | |
FLOAT | FLOAT | ||
WORD | WORD | ||
FLOAT | FLOAT | ||
//Scale Delta | //Scale Delta | ||
− | DWORD | + | DWORD Count |
FLOAT | FLOAT | ||
FLOAT | FLOAT | ||
− | DWORD | + | DWORD Count |
FLOAT | FLOAT | ||
FLOAT | FLOAT | ||
FLOAT | FLOAT | ||
− | + | FLOAT | |
− | DWORD | + | DWORD Count |
FLOAT | FLOAT | ||
− | DWORD | + | DWORD Count |
FLOAT | FLOAT | ||
FLOAT | FLOAT | ||
//Particle Color Delta | //Particle Color Delta | ||
− | DWORD | + | DWORD Count |
FLOAT Red //Little Endian | FLOAT Red //Little Endian | ||
FLOAT Green //Little Endian | FLOAT Green //Little Endian | ||
Line 136: | Line 132: | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
+ | |||
+ | //Resource reference block | ||
QWORD //I<sub>64</sub> of a an image([[Sims_3:0x00B2D882|DDS]]), model([[Sims_3:0x736884F1|VPXY]]), or shader(see [[#Shader_Effects|Shader Section]] below) | QWORD //I<sub>64</sub> of a an image([[Sims_3:0x00B2D882|DDS]]), model([[Sims_3:0x736884F1|VPXY]]), or shader(see [[#Shader_Effects|Shader Section]] below) | ||
− | BYTE | + | BYTE |
− | + | BYTE flag | |
− | BYTE | + | if((flag &0x80==0x80)) DWORD |
+ | BYTE | ||
BYTE | BYTE | ||
WORD | WORD | ||
+ | FLOAT | ||
+ | QWORD //0xFFFFFFFFFFFFFFFF | ||
+ | |||
+ | BYTE | ||
+ | BYTE | ||
+ | BYTE | ||
BYTE | BYTE | ||
BYTE | BYTE | ||
Line 151: | Line 156: | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
+ | FLOAT | ||
+ | FLOAT | ||
+ | FLOAT | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
− | |||
− | |||
− | |||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT | FLOAT | ||
FLOAT | FLOAT | ||
FLOAT | FLOAT | ||
− | DWORD | + | DWORD Count |
FLOAT | FLOAT | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
Line 169: | Line 174: | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
BYTE[4] // 00FF00FF | BYTE[4] // 00FF00FF | ||
− | + | DWORD Count | |
− | DWORD | + | FLOAT //Little Endian |
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | DWORD Count | ||
FLOAT | FLOAT | ||
− | DWORD | + | DWORD Count |
DWORD | DWORD | ||
QWORD | QWORD | ||
Line 187: | Line 195: | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT | FLOAT | ||
− | + | FLOAT | |
+ | FLOAT | ||
+ | FLOAT | ||
+ | FLOAT | ||
+ | |||
FLOAT //-1000000000.0 | FLOAT //-1000000000.0 | ||
FLOAT // 0.0 | FLOAT // 0.0 | ||
FLOAT //-10000.0 Little Endian | FLOAT //-10000.0 Little Endian | ||
FLOAT // 10000.0 Little Endian | FLOAT // 10000.0 Little Endian | ||
− | + | QWORD //0xFFFFFFFFFFFFFFFF | |
+ | QWORD //0xFFFFFFFFFFFFFFFF | ||
+ | QWORD //0xFFFFFFFFFFFFFFFF | ||
+ | |||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
Line 200: | Line 215: | ||
FLOAT | FLOAT | ||
FLOAT | FLOAT | ||
− | DWORD | + | DWORD Count |
FLOAT | FLOAT | ||
BYTE | BYTE | ||
Line 206: | Line 221: | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
− | DWORD | + | DWORD Count |
FLOAT | FLOAT | ||
FLOAT | FLOAT | ||
− | + | FLOAT | |
− | + | DWORD Count | |
− | DWORD | + | |
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
− | BYTE | + | FLOAT //Little Endian |
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | FLOAT | ||
+ | |||
+ | if(Version >= 2) | ||
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | DWORD Count | ||
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | |||
+ | if(Version >=3)BYTE | ||
+ | if(Version >=4)FLOAT | ||
Line 222: | Line 251: | ||
This type takes an existing effect and modifies it | This type takes an existing effect and modifies it | ||
=====Format===== | =====Format===== | ||
− | + | DWORD | |
− | + | DWORD | |
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
Line 246: | Line 275: | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT | FLOAT | ||
− | DWORD | + | DWORD Count |
FLOAT | FLOAT | ||
FLOAT | FLOAT | ||
DWORD | DWORD | ||
− | DWORD | + | DWORD Count |
FLOAT | FLOAT | ||
− | FLOAT | + | FLOAT |
− | DWORD | + | DWORD Count |
− | + | FLOAT | |
− | DWORD | + | DWORD Count |
− | + | FLOAT | |
− | DWORD | + | DWORD Count |
FLOAT | FLOAT | ||
− | + | FLOAT | |
− | DWORD | + | FLOAT |
+ | FLOAT | ||
+ | FLOAT | ||
+ | FLOAT | ||
+ | FLOAT | ||
+ | DWORD Count | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
− | + | FLOAT //Little Endian | |
− | + | FLOAT //Little Endian | |
− | + | FLOAT //Little Endian | |
− | + | DWORD Count | |
− | + | ||
− | + | ||
− | + | ||
− | DWORD | + | |
FLOAT | FLOAT | ||
FLOAT | FLOAT | ||
Line 277: | Line 307: | ||
ZSTRING Death Effect //See [[#Effect_Handles|Effect Handles]] below | ZSTRING Death Effect //See [[#Effect_Handles|Effect Handles]] below | ||
BYTE | BYTE | ||
− | + | FLOAT //Little Endian | |
FLOAT //Little Endian | FLOAT //Little Endian | ||
− | + | FLOAT //Little Endian | |
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | |||
FLOAT | FLOAT | ||
− | |||
FLOAT | FLOAT | ||
− | + | FLOAT | |
+ | |||
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | |||
+ | FLOAT | ||
+ | FLOAT | ||
+ | DWORD Count | ||
+ | DWORD Count | ||
+ | FLOAT | ||
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
BYTE[4] //00FF00FF | BYTE[4] //00FF00FF | ||
− | + | DWORD Count | |
− | DWORD | + | FLOAT //Little Endian |
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | DWORD Count | ||
+ | FLOAT | ||
+ | DWORD Count | ||
DWORD | DWORD | ||
− | BYTE[ | + | QWORD |
+ | FLOAT | ||
+ | FLOAT | ||
+ | FLOAT | ||
+ | FLOAT | ||
+ | BYTE[4] | ||
+ | ZSTRING | ||
+ | ZSTRING | ||
DWORD Count | DWORD Count | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
Line 294: | Line 355: | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT | FLOAT | ||
− | + | FLOAT | |
+ | FLOAT | ||
+ | FLOAT | ||
+ | FLOAT | ||
+ | |||
FLOAT //-1000000000.0 | FLOAT //-1000000000.0 | ||
FLOAT // 0.0 | FLOAT // 0.0 | ||
FLOAT //-10000.0 Little Endian | FLOAT //-10000.0 Little Endian | ||
FLOAT // 10000.0 Little Endian | FLOAT // 10000.0 Little Endian | ||
− | + | QWORD //0xFFFFFFFFFFFFFFFF | |
+ | QWORD //0xFFFFFFFFFFFFFFFF | ||
+ | QWORD //0xFFFFFFFFFFFFFFFF | ||
+ | |||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
Line 307: | Line 375: | ||
FLOAT | FLOAT | ||
FLOAT | FLOAT | ||
− | DWORD | + | DWORD Count |
FLOAT | FLOAT | ||
BYTE | BYTE | ||
+ | |||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
Line 317: | Line 386: | ||
FLOAT | FLOAT | ||
FLOAT | FLOAT | ||
+ | DWORD Count | ||
+ | FLOAT | ||
BYTE | BYTE | ||
− | + | ||
− | + | FLOAT //Little Endian | |
− | + | FLOAT //Little Endian | |
− | + | FLOAT //Little Endian | |
− | + | ||
− | + | ||
FLOAT | FLOAT | ||
FLOAT | FLOAT | ||
− | DWORD | + | FLOAT |
+ | |||
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | FLOAT //Little Endian | ||
+ | |||
+ | DWORD Count | ||
+ | FLOAT | ||
+ | FLOAT | ||
+ | FLOAT | ||
+ | DWORD Count | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
Line 334: | Line 414: | ||
FLOAT //Little Endian | FLOAT //Little Endian | ||
FLOAT timecode | FLOAT timecode | ||
− | + | FLOAT | |
====Decal Effect==== | ====Decal Effect==== | ||
Line 450: | Line 530: | ||
BYTE[21] | BYTE[21] | ||
BYTE[3] | BYTE[3] | ||
− | + | ====Game Effect==== | |
− | + | ||
− | ==== | + | |
− | + | ||
− | + | ||
− | + | ||
No examples to decode | No examples to decode | ||
− | ==== | + | ====FastParticle Effect==== |
No examples to decode | No examples to decode | ||
Line 489: | Line 564: | ||
BYTE[8] //FFFFFFFFFFFFFFFF | BYTE[8] //FFFFFFFFFFFFFFFF | ||
BYTE[5] | BYTE[5] | ||
− | ==== | + | ====Ribbon Effect==== |
No examples to decode | No examples to decode | ||
− | === | + | ===Materials=== |
====Overview==== | ====Overview==== | ||
References shaders from "Shaders_Win32.precomp", making them available to the particle effects in the previous section and overriding some parameters. | References shaders from "Shaders_Win32.precomp", making them available to the particle effects in the previous section and overriding some parameters. |
Revision as of 05:38, 22 July 2010
Modding Reference by Category | |
---|---|
Sims 3 :DBPF | File Types | RCOL(Scene) | Catalog Resource | String Table | Key Table | TS3 Programmer's Reference |
Effect Resource Tree - SWB | ||
---|---|---|
TypeID: | 0xEA5118B0 | |
Game Version: | The Sims 3 |
Overview
Defines special effects.
Format
All data is in Big Endian order unless otherwise noted(most floats). This spec is very primitive and needs work.
WORD Version Effect Block Section Material Section Effect Compilation Section Effect Handle Section
Effect Blocks
Format
--Repeat until BlockType 0xFFFF // Block List WORD BlockType WORD BlockVersion DWORD BlockCount --BlockCount times --Insert block data(depending on type)
Blocks
BlockType | |
---|---|
0x0001 | Particle Effect |
0x0002 | Metaparticle Effect |
0x0003 | Decal Effect |
0x0004 | Effect Sequence |
0x0005 | Sound Effect |
0x0006 | Shake Effect |
0x0007 | Camera Effect |
0x0008 | Model Effect |
0x0009 | Screen Effect |
0x000A | Unused |
0x000B | Game Effect |
0x000C | Fast Particle Effect |
0x000D | Distribute Effect |
0x000E | Ribbon Effect |
Particle Effect
Format
DWORD //Flags? FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT DWORD Count FLOAT //Angle? FLOAT WORD FLOAT //Scale Delta DWORD Count FLOAT FLOAT DWORD Count FLOAT FLOAT FLOAT FLOAT DWORD Count FLOAT DWORD Count FLOAT FLOAT //Particle Color Delta DWORD Count FLOAT Red //Little Endian FLOAT Green //Little Endian FLOAT Blue //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian //Resource reference block QWORD //I64 of a an image(DDS), model(VPXY), or shader(see Shader Section below) BYTE BYTE flag if((flag &0x80==0x80)) DWORD BYTE BYTE WORD FLOAT QWORD //0xFFFFFFFFFFFFFFFF BYTE BYTE BYTE BYTE BYTE FLOAT BYTE BYTE BYTE FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT FLOAT FLOAT FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT FLOAT FLOAT DWORD Count FLOAT FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian BYTE[4] // 00FF00FF DWORD Count FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian DWORD Count FLOAT DWORD Count DWORD QWORD FLOAT FLOAT FLOAT FLOAT BYTE[4] ZSTRING ZSTRING DWORD Count FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT FLOAT FLOAT FLOAT FLOAT FLOAT //-1000000000.0 FLOAT // 0.0 FLOAT //-10000.0 Little Endian FLOAT // 10000.0 Little Endian QWORD //0xFFFFFFFFFFFFFFFF QWORD //0xFFFFFFFFFFFFFFFF QWORD //0xFFFFFFFFFFFFFFFF FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT FLOAT FLOAT DWORD Count FLOAT BYTE FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian DWORD Count FLOAT FLOAT FLOAT DWORD Count FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT if(Version >= 2) FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian DWORD Count FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian if(Version >=3)BYTE if(Version >=4)FLOAT
Metaparticle Effect
Overview
This type takes an existing effect and modifies it
Format
DWORD DWORD FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT DWORD Count FLOAT FLOAT DWORD DWORD Count FLOAT FLOAT DWORD Count FLOAT DWORD Count FLOAT DWORD Count FLOAT FLOAT FLOAT FLOAT FLOAT FLOAT FLOAT DWORD Count FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian DWORD Count FLOAT FLOAT ZSTRING Base Effect //See Effect Handles below ZSTRING Death Effect //See Effect Handles below BYTE FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT FLOAT FLOAT FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT FLOAT DWORD Count DWORD Count FLOAT FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian BYTE[4] //00FF00FF DWORD Count FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian DWORD Count FLOAT DWORD Count DWORD QWORD FLOAT FLOAT FLOAT FLOAT BYTE[4] ZSTRING ZSTRING DWORD Count FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT FLOAT FLOAT FLOAT FLOAT FLOAT //-1000000000.0 FLOAT // 0.0 FLOAT //-10000.0 Little Endian FLOAT // 10000.0 Little Endian QWORD //0xFFFFFFFFFFFFFFFF QWORD //0xFFFFFFFFFFFFFFFF QWORD //0xFFFFFFFFFFFFFFFF FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT FLOAT FLOAT DWORD Count FLOAT BYTE FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT FLOAT FLOAT DWORD Count FLOAT BYTE FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT FLOAT FLOAT FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian DWORD Count FLOAT FLOAT FLOAT DWORD Count FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT timecode FLOAT
Decal Effect
Overview
This is mostly used for things like the build tool UI tools(i.e. the terrain tool circle).
Format
BYTE[4] QWORD //I64 of a DDS Resource BYTE[6] FLOAT DWORD Count1 FLOAT DWORD Count2 FLOAT DWORD Count3 FLOAT //Color Deltas DWORD Count4 FLOAT Red //Little Endian FLOAT Green //Little Endian FLOAT Blue //Little Endian DWORD Count5 FLOAT FLOAT FLOAT BYTE[4] FLOAT BYTE[8] BYTE[8] //FFFFFFFFFFFFFFFF BYTE
Effect Sequence
Overivew
Combines effect compilations so they play out sequentially
Format
DWORD Count1 FLOAT //Little Endian FLOAT //Little Endian ZSTRING Effect Name //See Effect Handles below DWORD
Sound Effect
Overview
Plays a sound
Format
DWORD QWORD //I64 of an Audio Tuner FLOAT FLOAT FLOAT
Shake Effect
Format
FLOAT FLOAT DWORD Count1 FLOAT DWORD Count2 FLOAT FLOAT BYTE FLOAT
Camera Effect
Format
DWORD WORD FLOAT DWORD Count1 FLOAT DWORD Count2 FLOAT DWORD Count3 FLOAT DWORD Count4 FLOAT BYTE[17] DWORD BYTE
Model Effect
Format
BYTE[12] FLOAT FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT BYTE[4] BYTE[8] //FFFFFFFFFFFFFFFF BYTE
Screen Effect
Format
BYTE type DWORD DWORD Count1 FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian DWORD Count2 FLOAT FLOAT FLOAT if(type == 0) BYTE[4] else BYTE[12] BYTE[8] BYTE[21] BYTE[3]
Game Effect
No examples to decode
FastParticle Effect
No examples to decode
Distribution Effect
Overview
Note: there is only one of these
Format
DWORD DWORD ZSTRING BYTE[5] FLOAT BYTE[2] FLOAT FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian FLOAT //Little Endian BYTE[84] BYTE[24] //FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF FLOAT //Little Endian FLOAT //Little Endian BYTE[8] //FFFFFFFFFFFFFFFF BYTE[14] BYTE[8] //FFFFFFFFFFFFFFFF BYTE[5]
Ribbon Effect
No examples to decode
Materials
Overview
References shaders from "Shaders_Win32.precomp", making them available to the particle effects in the previous section and overriding some parameters.
Format
BYTE[6] DWORD WORD DWORD Count QWORD Shader Id? QWORD Effect Type DWORD Count1 QWORD //Property ID BYTE dataType switch(dataType) case 06: QWORD // DDS Instance Id case 00: FLOAT // Little Endian
Effect Types
ID | Name |
---|---|
0x8FAB3764 | Fluid Effect |
0x4968A478 | Sim Censor |
Properties
FNV32 Hashed property names from "Shaders_Win32.precomp"
ID | Name |
---|---|
0x6CC0FD85 | Diffuse Map |
0x6E56548A | Normal Map |
0x8C27D8C9 | Edge Darkening |
0xC3C472A1 | Refraction Distortion Scale |
0x6A203374 | Clip Alpha Opacity |
0x556010DC | Alpha Cutoff |
0xF2FCAD8C | Specular Scale |
0xF43D2BDC | Multiply Value |
0x3965ECE0 | Additive Value |
Effect Compilations
Overview
This section combines multiple effects from the previous sections. The same effects are often used more than once here but with different offsets and parameters.
Format
BYTE[4] DWORD EffectCount --Repeat EffectCount // Effect Block Table DWORD BYTE[8] FLOAT FLOAT BYTE[5] DWORD Count1 FLOAT[Count1] //LOD Ranges BYTE[16] DWORD BlockIndexCount --repeat BlockIndexCount BYTE BlockType BYTE[6] FLOAT FLOAT[12] Transformation Matrix //Little Endian BYTE MinLOD //index to LOD Ranges BYTE MaxLOD //index to LOD Ranges DWORD Count --repeat Count FLOAT FLOAT FLOAT FLOAT[6] // always 1.0 BYTE[12] FLOAT DWORD BlockIndex BYTE BYTE
Effect Handles
Overview
This is the root of an effect tree. Effects are called via scripts and clip events by the name provided in this section, which links to the other parts.
Format
--Repeat until index 0xFFFFFFFF DWORD CompilationIndex //see previous section ZSTRING EffectName
Modding Reference by Category | |
---|---|
Sims 3 :DBPF | File Types | RCOL(Scene) | Catalog Resource | String Table | Key Table | TS3 Programmer's Reference |