/* =============================================== * Chunk: GRMT, versions: 7, strucTab: 0x14179D680 * =============================================== */ /* Version: 6 */ typedef struct { byte texArrayRange; byte texCount; byte sortOrder; byte sortTri; byte procAnim; dword debugFlags; dword flags; TSTRUCT_ARRAY_PTR_START qword texTokens TSTRUCT_ARRAY_PTR_END; } AmatGr; /* Version: 5 */ typedef struct { byte texArrayRange; byte texCount; byte texTransformRange; byte sortOrder; byte sortTri; byte procAnim; dword debugFlags; dword flags; dword texType; dword textureMasks[4]; TSTRUCT_ARRAY_PTR_START qword texTokens TSTRUCT_ARRAY_PTR_END; } AmatGr; /* Version: 4 */ typedef struct { byte texArrayRange; byte texCount; byte texTransformRange; byte sortOrder; byte sortTri; byte procAnim; dword debugFlags; dword flags; dword texType; dword textureMasks[4]; } AmatGr; /* Version: 3 */ typedef struct { byte texArrayRange; byte texCount; byte texTransformRange; byte sortOrder; byte sortTri; dword debugFlags; dword flags; dword texType; dword textureMasks[4]; } AmatGrV3; /* Version: 2 */ typedef struct { byte texArrayRange; byte texCount; byte texTransformRange; byte sortOrder; byte sortTri; dword flags; dword texType; dword textureMasks[4]; } AmatGrV2; /* Version: 1 */ typedef struct { byte texArrayRange; byte texCount; byte texTransformRange; byte sortOrder; dword flags; dword texType; dword textureMasks[4]; } AmatGrV1; /* Version: 0 */ typedef struct { byte texArrayRange; byte texCount; byte texTransformRange; byte sortOrder; dword flags; dword textureMasks[4]; } AmatGrV0; /* =============================================== * Chunk: DX9S, versions: 12, strucTab: 0x14179D730 * =============================================== */ /* Version: 11, ReferencedFunction: 0x1402298C0 */ typedef struct { dword textureIndex; TSTRUCT_ARRAY_PTR_START dword state TSTRUCT_ARRAY_PTR_END; dword usesBindTexture; } AmatDx9SamplerV11; typedef struct { TSTRUCT_ARRAY_PTR_START dword shader TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constRegisters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; word instructionCount; } AmatDx9ShaderV11; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START dword renderStates TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword samplerIndex TSTRUCT_ARRAY_PTR_END; dword pixelShader; dword vertexShader; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; dword vsGenFlags; dword passFlags; } AmatDx9EffectV11; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START AmatDx9EffectV11 effects TSTRUCT_PTR_ARRAY_PTR_END; } AmatDx9PassV11; typedef struct { char_ptr name; TSTRUCT_ARRAY_PTR_START AmatDx9PassV11 passes TSTRUCT_ARRAY_PTR_END; word maxPsVersion; word maxVsVersion; } AmatDx9TechniqueV11; typedef struct { TSTRUCT_ARRAY_PTR_START AmatDx9SamplerV11 samplers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9ShaderV11 shaders TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9TechniqueV11 techniques TSTRUCT_ARRAY_PTR_END; dword useLegacyBindTextures; } AmatDx9MaterialV11; /* Version: 10 */ typedef struct { dword textureIndex; TSTRUCT_ARRAY_PTR_START dword state TSTRUCT_ARRAY_PTR_END; } AmatDx9SamplerV10; typedef struct { TSTRUCT_ARRAY_PTR_START dword shader TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constRegisters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; word instructionCount; } AmatDx9ShaderV10; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START dword renderStates TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword samplerIndex TSTRUCT_ARRAY_PTR_END; dword pixelShader; dword vertexShader; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texTransform TSTRUCT_ARRAY_PTR_END; dword vsGenFlags; dword passFlags; } AmatDx9EffectV10; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START AmatDx9EffectV10 effects TSTRUCT_PTR_ARRAY_PTR_END; } AmatDx9PassV10; typedef struct { char_ptr name; TSTRUCT_ARRAY_PTR_START AmatDx9PassV10 passes TSTRUCT_ARRAY_PTR_END; word maxPsVersion; word maxVsVersion; } AmatDx9TechniqueV10; typedef struct { TSTRUCT_ARRAY_PTR_START AmatDx9SamplerV10 samplers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9ShaderV10 shaders TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9TechniqueV10 techniques TSTRUCT_ARRAY_PTR_END; } AmatDx9MaterialV10; /* Version: 9, ReferencedFunction: 0x14022A110 */ typedef struct { dword textureIndex; TSTRUCT_ARRAY_PTR_START dword state TSTRUCT_ARRAY_PTR_END; } AmatDx9SamplerV9; typedef struct { TSTRUCT_ARRAY_PTR_START dword shader TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constRegisters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; } AmatDx9ShaderV9; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START dword renderStates TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword samplerIndex TSTRUCT_ARRAY_PTR_END; dword pixelShader; dword vertexShader; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texTransform TSTRUCT_ARRAY_PTR_END; dword vsGenFlags; dword passFlags; } AmatDx9EffectV9; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START AmatDx9EffectV9 effects TSTRUCT_PTR_ARRAY_PTR_END; } AmatDx9PassV9; typedef struct { char_ptr name; TSTRUCT_ARRAY_PTR_START AmatDx9PassV9 passes TSTRUCT_ARRAY_PTR_END; word maxPsVersion; word maxVsVersion; } AmatDx9TechniqueV9; typedef struct { TSTRUCT_ARRAY_PTR_START AmatDx9SamplerV9 samplers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9ShaderV9 shaders TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9TechniqueV9 techniques TSTRUCT_ARRAY_PTR_END; } AmatDx9MaterialV9; /* Version: 8, ReferencedFunction: 0x140229D50 */ typedef struct { dword textureIndex; TSTRUCT_ARRAY_PTR_START dword state TSTRUCT_ARRAY_PTR_END; } AmatDx9SamplerV8; typedef struct { TSTRUCT_ARRAY_PTR_START dword shader TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constRegisters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; } AmatDx9ShaderV8; typedef struct { TSTRUCT_ARRAY_PTR_START dword renderStates TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword samplerIndex TSTRUCT_ARRAY_PTR_END; dword pixelShader; dword vertexShader; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texTransform TSTRUCT_ARRAY_PTR_END; dword vsGenFlags; dword passFlags; } AmatDx9EffectV8; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START AmatDx9EffectV8 effects TSTRUCT_PTR_ARRAY_PTR_END; } AmatDx9PassV8; typedef struct { char_ptr name; TSTRUCT_ARRAY_PTR_START AmatDx9PassV8 passes TSTRUCT_ARRAY_PTR_END; word maxPsVersion; word maxVsVersion; } AmatDx9TechniqueV8; typedef struct { TSTRUCT_ARRAY_PTR_START AmatDx9SamplerV8 samplers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9ShaderV8 shaders TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9TechniqueV8 techniques TSTRUCT_ARRAY_PTR_END; } AmatDx9MaterialV8; /* Version: 7, ReferencedFunction: 0x140229CD0 */ typedef struct { dword textureIndex; TSTRUCT_ARRAY_PTR_START dword state TSTRUCT_ARRAY_PTR_END; } AmatDx9SamplerV7; typedef struct { TSTRUCT_ARRAY_PTR_START dword shader TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constRegisters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; } AmatDx9ShaderV7; typedef struct { TSTRUCT_ARRAY_PTR_START dword renderStates TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword samplerIndex TSTRUCT_ARRAY_PTR_END; dword pixelShader; dword vertexShader; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texTransform TSTRUCT_ARRAY_PTR_END; dword vsGenFlags; dword passFlags; } AmatDx9EffectV7; typedef struct { AmatDx9EffectV7 effects[8]; } AmatDx9PassV7; typedef struct { char_ptr name; TSTRUCT_ARRAY_PTR_START AmatDx9PassV7 passes TSTRUCT_ARRAY_PTR_END; word maxPsVersion; word maxVsVersion; } AmatDx9TechniqueV7; typedef struct { TSTRUCT_ARRAY_PTR_START AmatDx9SamplerV7 samplers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9ShaderV7 shaders TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9TechniqueV7 techniques TSTRUCT_ARRAY_PTR_END; } AmatDx9MaterialV7; /* Version: 6, ReferencedFunction: 0x140229C80 */ typedef struct { dword textureIndex; TSTRUCT_ARRAY_PTR_START dword state TSTRUCT_ARRAY_PTR_END; } AmatDx9SamplerV6; typedef struct { TSTRUCT_ARRAY_PTR_START dword shader TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constRegisters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; } AmatDx9ShaderV6; typedef struct { TSTRUCT_ARRAY_PTR_START dword renderStates TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword samplerIndex TSTRUCT_ARRAY_PTR_END; dword pixelShader; dword vertexShader; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texTransform TSTRUCT_ARRAY_PTR_END; dword vsGenFlags; dword passFlags; } AmatDx9EffectV6; typedef struct { AmatDx9EffectV6 effects[8]; } AmatDx9PassV6; typedef struct { char_ptr name; TSTRUCT_ARRAY_PTR_START AmatDx9PassV6 passes TSTRUCT_ARRAY_PTR_END; word maxPsVersion; word maxVsVersion; } AmatDx9TechniqueV6; typedef struct { TSTRUCT_ARRAY_PTR_START AmatDx9SamplerV6 samplers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9ShaderV6 shaders TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9TechniqueV6 techniques TSTRUCT_ARRAY_PTR_END; } AmatDx9MaterialV6; /* Version: 5, ReferencedFunction: 0x140229B80 */ typedef struct { dword textureIndex; TSTRUCT_ARRAY_PTR_START dword state TSTRUCT_ARRAY_PTR_END; } AmatDx9SamplerV5; typedef struct { TSTRUCT_ARRAY_PTR_START dword shader TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constRegisters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; } AmatDx9ShaderV5; typedef struct { TSTRUCT_ARRAY_PTR_START dword renderStates TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword samplerIndex TSTRUCT_ARRAY_PTR_END; dword pixelShader; dword vertexShader; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texTransform TSTRUCT_ARRAY_PTR_END; dword vsGenFlags; dword passFlags; } AmatDx9EffectV5; typedef struct { AmatDx9EffectV5 effects[7]; } AmatDx9PassV5; typedef struct { char_ptr name; dword sortTri; TSTRUCT_ARRAY_PTR_START AmatDx9PassV5 passes TSTRUCT_ARRAY_PTR_END; word maxPsVersion; word maxVsVersion; } AmatDx9TechniqueV5; typedef struct { TSTRUCT_ARRAY_PTR_START AmatDx9SamplerV5 samplers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9ShaderV5 shaders TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9TechniqueV5 techniques TSTRUCT_ARRAY_PTR_END; } AmatDx9MaterialV5; /* Version: 4 */ typedef struct { dword textureIndex; TSTRUCT_ARRAY_PTR_START dword state TSTRUCT_ARRAY_PTR_END; } AmatDx9SamplerV4; typedef struct { TSTRUCT_ARRAY_PTR_START dword shader TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constRegisters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; } AmatDx9ShaderV4; typedef struct { TSTRUCT_ARRAY_PTR_START dword renderStates TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword samplerIndex TSTRUCT_ARRAY_PTR_END; dword pixelShader; dword vertexShader; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texTransform TSTRUCT_ARRAY_PTR_END; dword vsGenFlags; dword passFlags; } AmatDx9EffectV4; typedef struct { AmatDx9EffectV4 effects[7]; } AmatDx9PassV4; typedef struct { char_ptr name; dword sortTri; TSTRUCT_ARRAY_PTR_START AmatDx9PassV4 passes TSTRUCT_ARRAY_PTR_END; word maxPsVersion; word maxVsVersion; } AmatDx9TechniqueV4; typedef struct { TSTRUCT_ARRAY_PTR_START AmatDx9SamplerV4 samplers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9ShaderV4 shaders TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9TechniqueV4 techniques TSTRUCT_ARRAY_PTR_END; } AmatDx9MaterialV4; /* Version: 3 */ typedef struct { dword textureIndex; TSTRUCT_ARRAY_PTR_START dword state TSTRUCT_ARRAY_PTR_END; } AmatDx9SamplerV3; typedef struct { TSTRUCT_ARRAY_PTR_START dword shader TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constRegisters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; } AmatDx9ShaderV3; typedef struct { TSTRUCT_ARRAY_PTR_START dword renderStates TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword samplerIndex TSTRUCT_ARRAY_PTR_END; dword pixelShader; dword vertexShader; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texTransform TSTRUCT_ARRAY_PTR_END; dword vsGenFlags; dword passFlags; } AmatDx9EffectV3; typedef struct { AmatDx9EffectV3 effects[7]; } AmatDx9PassV3; typedef struct { char_ptr name; dword sortTri; TSTRUCT_ARRAY_PTR_START AmatDx9PassV3 passes TSTRUCT_ARRAY_PTR_END; word maxPsVersion; word maxVsVersion; } AmatDx9TechniqueV3; typedef struct { TSTRUCT_ARRAY_PTR_START AmatDx9SamplerV3 samplers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9ShaderV3 shaders TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9TechniqueV3 techniques TSTRUCT_ARRAY_PTR_END; } AmatDx9MaterialV3; /* Version: 2, ReferencedFunction: 0x1402298D0 */ typedef struct { dword textureIndex; TSTRUCT_ARRAY_PTR_START dword state TSTRUCT_ARRAY_PTR_END; } AmatDx9SamplerV2; typedef struct { TSTRUCT_ARRAY_PTR_START dword shader TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constRegisters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; } AmatDx9ShaderV2; typedef struct { TSTRUCT_ARRAY_PTR_START dword renderStates TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword samplerIndex TSTRUCT_ARRAY_PTR_END; dword pixelShader; dword vertexShader; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texTransform TSTRUCT_ARRAY_PTR_END; dword vsGenFlags; dword passFlags; } AmatDx9EffectV2; typedef struct { AmatDx9EffectV2 effects[7]; } AmatDx9PassV2; typedef struct { char_ptr name; dword sortTri; TSTRUCT_ARRAY_PTR_START AmatDx9PassV2 passes TSTRUCT_ARRAY_PTR_END; word maxPsVersion; word maxVsVersion; } AmatDx9TechniqueV2; typedef struct { TSTRUCT_ARRAY_PTR_START AmatDx9SamplerV2 samplers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9ShaderV2 shaders TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9TechniqueV2 techniques TSTRUCT_ARRAY_PTR_END; } AmatDx9MaterialV2; /* Version: 1, ReferencedFunction: 0x1402296D0 */ typedef struct { dword textureIndex; TSTRUCT_ARRAY_PTR_START dword state TSTRUCT_ARRAY_PTR_END; } AmatDx9SamplerV1; typedef struct { TSTRUCT_ARRAY_PTR_START dword shader TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constRegisters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; } AmatDx9ShaderV1; typedef struct { TSTRUCT_ARRAY_PTR_START dword renderStates TSTRUCT_ARRAY_PTR_END; } AmatDx9RenderStatesV1; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START AmatDx9RenderStatesV1 effectRenderStates TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword samplerIndex TSTRUCT_ARRAY_PTR_END; dword pixelShader[5]; dword vertexShader; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texTransform TSTRUCT_ARRAY_PTR_END; dword vsGenFlags; dword passFlags[5]; } AmatDx9PassV1; typedef struct { char_ptr name; dword sortTri; TSTRUCT_ARRAY_PTR_START AmatDx9PassV1 passes TSTRUCT_ARRAY_PTR_END; word maxPsVersion; word maxVsVersion; } AmatDx9TechniqueV1; typedef struct { TSTRUCT_ARRAY_PTR_START AmatDx9SamplerV1 samplers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9ShaderV1 shaders TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9TechniqueV1 techniques TSTRUCT_ARRAY_PTR_END; } AmatDx9MaterialV1; /* Version: 0 */ typedef struct { dword textureIndex; TSTRUCT_ARRAY_PTR_START dword state TSTRUCT_ARRAY_PTR_END; } AmatDx9SamplerV0; typedef struct { TSTRUCT_ARRAY_PTR_START dword shader TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constRegisters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; } AmatDx9ShaderV0; typedef struct { TSTRUCT_ARRAY_PTR_START dword renderState TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword samplerIndex TSTRUCT_ARRAY_PTR_END; dword pixelShader; dword vertexShader; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texTransform TSTRUCT_ARRAY_PTR_END; dword vsGenFlags; dword passFlags; } AmatDx9PassV0; typedef struct { char_ptr name; dword sortTri; TSTRUCT_ARRAY_PTR_START AmatDx9PassV0 passes TSTRUCT_ARRAY_PTR_END; word maxPsVersion; word maxVsVersion; } AmatDx9TechniqueV0; typedef struct { TSTRUCT_ARRAY_PTR_START AmatDx9SamplerV0 samplers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9ShaderV0 shaders TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatDx9TechniqueV0 techniques TSTRUCT_ARRAY_PTR_END; } AmatDx9MaterialV0; /* =============================================== * Chunk: TOOL, versions: 4, strucTab: 0x14179D850 * =============================================== */ /* Version: 3, ReferencedFunction: 0x14022A3D0 */ typedef struct { dword token; wchar_ptr displayName; float4 defaultValue; dword flags; float4 minValue; float4 maxValue; } AmatToolConstant; typedef struct { wchar_ptr texName; wchar_ptr texDefaultFile; dword flags; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; } AmatToolTexture; typedef struct { wchar_ptr description; dword flags; byte texCoordCount; byte texTransformCount; dword decompressedTextCount; TSTRUCT_ARRAY_PTR_START byte compressedText TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatToolConstant constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatToolTexture textures TSTRUCT_ARRAY_PTR_END; } AmatToolParams; /* Version: 2, ReferencedFunction: 0x14022A350 */ typedef struct { dword token; wchar_ptr displayName; float4 defaultValue; dword flags; float4 minValue; float4 maxValue; } AmatToolConstant; typedef struct { wchar_ptr texName; wchar_ptr texDefaultFile; dword flags; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texTransform TSTRUCT_ARRAY_PTR_END; } AmatToolTexture; typedef struct { wchar_ptr description; dword flags; char_ptr text; byte texCoordCount; byte texTransformCount; TSTRUCT_ARRAY_PTR_START AmatToolConstant constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatToolTexture textures TSTRUCT_ARRAY_PTR_END; } AmatToolParams; /* Version: 1, ReferencedFunction: 0x14022A2F0 */ typedef struct { dword token; wchar_ptr displayName; float4 defaultValue; dword flags; float4 minValue; float4 maxValue; } AmatToolConstantV1; typedef struct { wchar_ptr texName; wchar_ptr texDefaultFile; dword flags; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texTransform TSTRUCT_ARRAY_PTR_END; } AmatToolTextureV1; typedef struct { wchar_ptr description; dword flags; char_ptr text; byte texCoordCount; byte texTransformCount; TSTRUCT_ARRAY_PTR_START AmatToolConstantV1 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatToolTextureV1 textures TSTRUCT_ARRAY_PTR_END; } AmatToolParamsV1; /* Version: 0 */ typedef struct { dword token; wchar_ptr displayName; float4 defaultValue; dword flags; float4 minValue; float4 maxValue; } AmatToolConstantV0; typedef struct { wchar_ptr texName; wchar_ptr texDefaultFile; dword flags; TSTRUCT_ARRAY_PTR_START dword texGen TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texTransform TSTRUCT_ARRAY_PTR_END; } AmatToolTextureV0; typedef struct { wchar_ptr description; dword flags; char_ptr text; byte texCoordCount; byte texTransformCount; TSTRUCT_ARRAY_PTR_START AmatToolConstantV0 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatToolTextureV0 textures TSTRUCT_ARRAY_PTR_END; } AmatToolParamsV0; /* =============================================== * Chunk: BGFX, versions: 2, strucTab: 0x14179D8B0 * =============================================== */ /* Version: 1, ReferencedFunction: 0x140229610 */ typedef struct { dword token; } AmatGfxShaderConstant; typedef struct { qword token; dword stateIndex; dword textureIndex; dword textureSlot; } AmatGfxSamplerConstant; typedef struct { TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatGfxShaderConstant constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatGfxSamplerConstant samplers TSTRUCT_ARRAY_PTR_END; } AmatGfxShaderBinary; typedef struct { dword isPixelShader; AmatGfxShaderBinary dxShader; AmatGfxShaderBinary osxShader; } AmatGfxShader; typedef struct { dword state; } AmatGfxSamplerState; typedef struct { dword variant; dword vertexShaderIndex; } AmatGfxVertexShaderVariant; typedef struct { qword token; qword renderState; dword shaderPassFlags; dword pixelShaderIndex; TSTRUCT_ARRAY_PTR_START AmatGfxVertexShaderVariant vertexShaderVariants TSTRUCT_ARRAY_PTR_END; } AmatGfxEffect; typedef struct { TSTRUCT_ARRAY_PTR_START AmatGfxEffect effects TSTRUCT_ARRAY_PTR_END; } AmatGfxPass; typedef struct { dword quality; TSTRUCT_ARRAY_PTR_START AmatGfxPass passes TSTRUCT_ARRAY_PTR_END; } AmatGfxTechnique; typedef struct { TSTRUCT_ARRAY_PTR_START AmatGfxShader shaders TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatGfxSamplerState samplers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatGfxTechnique techniques TSTRUCT_ARRAY_PTR_END; } AmatGfxMaterial; /* Version: 0 */ typedef struct { dword token; } AmatGfxShaderConstant; typedef struct { qword token; dword stateIndex; dword textureIndex; dword textureSlot; } AmatGfxSamplerConstant; typedef struct { TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatGfxShaderConstant constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatGfxSamplerConstant samplers TSTRUCT_ARRAY_PTR_END; } AmatGfxShaderBinary; typedef struct { dword isPixelShader; AmatGfxShaderBinary dxShader; AmatGfxShaderBinary osxShader; } AmatGfxShader; typedef struct { dword state; } AmatGfxSamplerState; typedef struct { dword variant; dword vertexShaderIndex; } AmatGfxVertexShaderVariant; typedef struct { qword token; qword renderState; dword shaderPassFlags; dword pixelShaderIndex; TSTRUCT_ARRAY_PTR_START AmatGfxVertexShaderVariant vertexShaderVariants TSTRUCT_ARRAY_PTR_END; } AmatGfxEffect; typedef struct { TSTRUCT_ARRAY_PTR_START AmatGfxEffect effects TSTRUCT_ARRAY_PTR_END; } AmatGfxPass; typedef struct { dword quality; TSTRUCT_ARRAY_PTR_START AmatGfxPass passes TSTRUCT_ARRAY_PTR_END; } AmatGfxTechnique; typedef struct { TSTRUCT_ARRAY_PTR_START AmatGfxShader shaders TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatGfxSamplerState samplers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START AmatGfxTechnique techniques TSTRUCT_ARRAY_PTR_END; } AmatGfxMaterial; /* =============================================== * Chunk: PGTB, versions: 4, strucTab: 0x14183B7D0 * =============================================== */ /* Version: 3, ReferencedFunction: 0x140293E90 */ typedef struct { dword2 rawDims; dword2 strippedDims; dword rawFormat; dword strippedFormat; dword diskFormat; } PagedImageLayerDataV3; typedef struct { dword layer; dword2 coord; filename filename; dword flags; byte4 solidColor; } PagedImagePageDataV3; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageLayerDataV3 layers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PagedImagePageDataV3 rawPages TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PagedImagePageDataV3 strippedPages TSTRUCT_ARRAY_PTR_END; dword flags; } PagedImageTableDataV3; /* Version: 2 */ typedef struct { dword2 dims; dword2 rawDims; dword diskFormat; dword rawFormat; dword strippedFormat; } PagedImageLayerDataV2; typedef struct { dword layer; dword2 coord; filename filename; dword flags; byte4 solidColor; } PagedImagePageDataV2; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageLayerDataV2 layers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PagedImagePageDataV2 pages TSTRUCT_ARRAY_PTR_END; dword flags; } PagedImageTableDataV2; /* Version: 1 */ typedef struct { dword2 dims; dword2 rawDims; dword diskFormat; dword rawFormat; dword strippedFormat; } PagedImageLayerDataV1; typedef struct { dword layer; dword2 coord; filename filename; dword flags; byte4 solidColor; } PagedImagePageDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageLayerDataV1 layers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PagedImagePageDataV1 pages TSTRUCT_ARRAY_PTR_END; } PagedImageTableDataV1; /* Version: 0 */ typedef struct { dword2 dims; dword2 rawDims; dword diskFormat; dword rawFormat; dword strippedFormat; } PagedImageLayerDataV0; typedef struct { dword layer; dword2 coord; filename filename; dword flags; } PagedImagePageDataV0; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageLayerDataV0 layers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PagedImagePageDataV0 pages TSTRUCT_ARRAY_PTR_END; } PagedImageTableDataV0; /* =============================================== * Chunk: DATA, versions: 4, strucTab: 0x14183B830 * =============================================== */ /* Version: 3, ReferencedFunction: 0x140294070 */ typedef struct { dword2 rawDims; dword2 strippedDims; dword rawFormat; dword strippedFormat; dword diskFormat; } PagedImageLayerDataV3; typedef struct { dword layer; dword2 coord; filename filename; dword flags; byte4 solidColor; } PagedImagePageDataV3; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageLayerDataV3 layers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PagedImagePageDataV3 rawPages TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PagedImagePageDataV3 strippedPages TSTRUCT_ARRAY_PTR_END; dword flags; } PagedImageTableDataV3; /* Version: 2 */ typedef struct { dword2 dims; dword2 rawDims; dword diskFormat; dword rawFormat; dword strippedFormat; } PagedImageLayerDataV2; typedef struct { dword layer; dword2 coord; filename filename; dword flags; byte4 solidColor; } PagedImagePageDataV2; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageLayerDataV2 layers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PagedImagePageDataV2 pages TSTRUCT_ARRAY_PTR_END; dword flags; } PagedImageTableDataV2; /* Version: 1 */ typedef struct { dword2 dims; dword2 rawDims; dword diskFormat; dword rawFormat; dword strippedFormat; } PagedImageLayerDataV1; typedef struct { dword layer; dword2 coord; filename filename; dword flags; byte4 solidColor; } PagedImagePageDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageLayerDataV1 layers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PagedImagePageDataV1 pages TSTRUCT_ARRAY_PTR_END; } PagedImageTableDataV1; /* Version: 0 */ typedef struct { dword layer; dword2 coord; TSTRUCT_ARRAY_PTR_START byte rawData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte compressedData TSTRUCT_ARRAY_PTR_END; } PagedImageEmbeddedPageDataV0; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageEmbeddedPageDataV0 pages TSTRUCT_ARRAY_PTR_END; } PagedImageEmbeddedPagesDataV0; /* =============================================== * Chunk: txtm, versions: 1, strucTab: 0x141868220 * =============================================== */ /* Version: 0 */ typedef struct { TSTRUCT_ARRAY_PTR_START filename filenames TSTRUCT_ARRAY_PTR_END; } TextPackLanguage; typedef struct { dword stringsPerFile; TSTRUCT_ARRAY_PTR_START TextPackLanguage languages TSTRUCT_ARRAY_PTR_END; } TextPackManifest; /* =============================================== * Chunk: txtp, versions: 1, strucTab: 0x141868248 * =============================================== */ /* Version: 0 */ typedef struct { dword textId; qword password; } TextPackPassword; typedef struct { dword stringCount; TSTRUCT_ARRAY_PTR_START TextPackPassword passwords TSTRUCT_ARRAY_PTR_END; } TextPackPasswords; /* =============================================== * Chunk: txtv, versions: 1, strucTab: 0x141868270 * =============================================== */ /* Version: 0 */ typedef struct { dword textId; dword voiceId; } TextPackVoice; typedef struct { TSTRUCT_ARRAY_PTR_START TextPackVoice voices TSTRUCT_ARRAY_PTR_END; } TextPackVoices; /* =============================================== * Chunk: vari, versions: 1, strucTab: 0x141868298 * =============================================== */ /* Version: 0 */ typedef struct { dword textId; TSTRUCT_ARRAY_PTR_START dword variantTextIds TSTRUCT_ARRAY_PTR_END; } TextPackVariant; typedef struct { TSTRUCT_ARRAY_PTR_START TextPackVariant variants TSTRUCT_ARRAY_PTR_END; } TextPackVariants; /* =============================================== * Chunk: AMSP, versions: 31, strucTab: 0x141BEFC90 * =============================================== */ /* Version: 30, ReferencedFunction: 0x140BC03B0 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV30; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV30 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV30; typedef struct { qword name; qword output; dword flags; float normalizeFadeTime; float normalizeThreshold; float normalizeMaxAmp; float compressorThreshold; float compressorAttack; float compressorRelease; float compressorGainMakeup; TPTR_START BussDynamicDataV30 dynamicData TPTR_END; } BussDataV30; typedef struct { float offset; float value; } EnvelopePointDataV30; typedef struct { float inputOffset; qword inputOffsetProperty; qword inputParameter; float inputScale; qword inputScaleProperty; byte inputType; float outputOffset; qword outputOffsetProperty; float outputScale; qword outputScaleProperty; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV30 envelopePoint TSTRUCT_ARRAY_PTR_END; } EnvelopeDataV30; typedef struct { float max; float min; byte min; } RangeDataV30; typedef struct { RangeDataV30 time; RangeDataV30 value; } RandomParamDataV30; typedef struct { TPTR_START EnvelopeDataV30 envelopeData TPTR_END; TPTR_START RandomParamDataV30 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV30; typedef struct { float doppler; DynamicParamDataV30 lowPass; DynamicParamDataV30 highPass; DynamicParamDataV30 pan3D; DynamicParamDataV30 reverb; DynamicParamDataV30 spread3D; DynamicParamDataV30 volumeA; DynamicParamDataV30 volumeB; DynamicParamDataV30 lfe; } AttenuationDataV30; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float highPass; float reverbDirect; float reverbRoom; dword flags; dword minAudible; dword maxAudibleLQ; dword maxAudibleHG; } CategoryDynamicDataV30; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV30 attenuation TPTR_END; TPTR_START CategoryDynamicDataV30 dynamicData TPTR_END; float focusReserve; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; byte priority; } CategoryDataV30; typedef struct { qword name; dword flags; float absorptionLF; float absorptionMF; float absorptionHF; float occlusion; } MaterialDataV30; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } MusicConditionDataV30; typedef struct { qword condition; qword language; float volume; float weight; filename fileName; byte audioType; byte noteBase; byte noteMin; byte noteMax; } FileNameDataV30; typedef struct { qword category; qword name; qword primaryPlaylistId; qword secondaryPlaylistId; TSTRUCT_ARRAY_PTR_START FileNameDataV30 fileName TSTRUCT_ARRAY_PTR_END; float fadeInTime; float fadeOutTime; dword flags; RangeDataV30 initialSilence; RangeDataV30 intervalSilence; RangeDataV30 maxPlayLength; DynamicParamDataV30 volume; byte fileIterateMode; } MusicPlaylistDataV30; typedef struct { qword name; qword tokenValue; float floatValue; } PropertyDataV30; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; float echoDelay; float echoDecayRatio; float echoWetMix; float echoDryMix; } ReverbDataV30; typedef struct { qword name; filename fileName; } ScriptRefDataV30; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV30 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV30 category TSTRUCT_ARRAY_PTR_END; byte priority; } SnapshotDataV30; typedef struct { qword name; wchar_ptr externalPlaylist; } MusicExternalDataV30; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float echoLevel; float focusTransition; float memoryPool; float reverbLevel; dword minChannelsLQ; dword maxChannelsLQ; TSTRUCT_ARRAY_PTR_START BussDataV30 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV30 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MaterialDataV30 material TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicConditionDataV30 musicCondition TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicPlaylistDataV30 musicPlaylist TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PropertyDataV30 property TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV30 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV30 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV30 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; TSTRUCT_ARRAY_PTR_START MusicExternalDataV30 musicExternal TSTRUCT_ARRAY_PTR_END; } AudioSettingsDataV30; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV30; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV30 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV30 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV30 fileName TSTRUCT_ARRAY_PTR_END; float channelFadeIn; float channelFadeOut; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword channelMax; dword flags; dword loopCount; DynamicParamDataV30 depth; DynamicParamDataV30 pan; DynamicParamDataV30 pitch; DynamicParamDataV30 pitchMS; DynamicParamDataV30 volume; DynamicParamDataV30 volumeMS; RangeDataV30 initialDelay; RangeDataV30 playLength; RangeDataV30 positionOffsetAngle; RangeDataV30 positionRange; RangeDataV30 repeatCount; RangeDataV30 repeatTime; RangeDataV30 replayDelay; RangeDataV30 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV30; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV30; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV30 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV30; typedef struct { qword musicCue; qword reverbOverride; qword snapshot; TPTR_START AudioSettingsDataV30 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV30 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV30 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV30 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV30 triggerKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PropertyDataV30 property TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; byte musicMutePriority; byte soundPoolMode; } ScriptFileDataV30; /* Version: 29 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV29; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV29 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV29; typedef struct { qword name; qword output; dword flags; float normalizeFadeTime; float normalizeThreshold; float normalizeMaxAmp; float compressorThreshold; float compressorAttack; float compressorRelease; float compressorGainMakeup; TPTR_START BussDynamicDataV29 dynamicData TPTR_END; } BussDataV29; typedef struct { float offset; float value; } EnvelopePointDataV29; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV29 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV29; typedef struct { float max; float min; byte min; } RangeDataV29; typedef struct { RangeDataV29 time; RangeDataV29 value; } RandomParamDataV29; typedef struct { TPTR_START EnvelopeDataV29 envelopeData TPTR_END; TPTR_START RandomParamDataV29 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV29; typedef struct { float doppler; DynamicParamDataV29 lowPass; DynamicParamDataV29 highPass; DynamicParamDataV29 pan3D; DynamicParamDataV29 reverb; DynamicParamDataV29 spread3D; DynamicParamDataV29 volumeA; DynamicParamDataV29 volumeB; DynamicParamDataV29 lfe; } AttenuationDataV29; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float highPass; float reverbDirect; float reverbRoom; dword flags; dword minAudible; dword maxAudibleLQ; dword maxAudibleHG; } CategoryDynamicDataV29; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV29 attenuation TPTR_END; TPTR_START CategoryDynamicDataV29 dynamicData TPTR_END; float focusReserve; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; byte priority; } CategoryDataV29; typedef struct { qword name; dword flags; float absorptionLF; float absorptionMF; float absorptionHF; float occlusion; } MaterialDataV29; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } MusicConditionDataV29; typedef struct { qword condition; qword language; float volume; float weight; filename fileName; byte audioType; byte noteBase; byte noteMin; byte noteMax; } FileNameDataV29; typedef struct { qword category; qword name; qword primaryPlaylistId; qword secondaryPlaylistId; TSTRUCT_ARRAY_PTR_START FileNameDataV29 fileName TSTRUCT_ARRAY_PTR_END; float fadeInTime; float fadeOutTime; dword flags; RangeDataV29 initialSilence; RangeDataV29 intervalSilence; RangeDataV29 maxPlayLength; DynamicParamDataV29 volume; byte fileIterateMode; } MusicPlaylistDataV29; typedef struct { qword name; qword tokenValue; float floatValue; } PropertyDataV29; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; float echoDelay; float echoDecayRatio; float echoWetMix; float echoDryMix; } ReverbDataV29; typedef struct { qword name; filename fileName; } ScriptRefDataV29; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV29 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV29 category TSTRUCT_ARRAY_PTR_END; byte priority; } SnapshotDataV29; typedef struct { qword name; wchar_ptr externalPlaylist; } MusicExternalDataV29; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float echoLevel; float focusTransition; float memoryPool; float reverbLevel; dword minChannelsLQ; dword maxChannelsLQ; TSTRUCT_ARRAY_PTR_START BussDataV29 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV29 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MaterialDataV29 material TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicConditionDataV29 musicCondition TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicPlaylistDataV29 musicPlaylist TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PropertyDataV29 property TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV29 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV29 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV29 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; TSTRUCT_ARRAY_PTR_START MusicExternalDataV29 musicExternal TSTRUCT_ARRAY_PTR_END; } AudioSettingsDataV29; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV29; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV29 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV29 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV29 fileName TSTRUCT_ARRAY_PTR_END; float channelFadeIn; float channelFadeOut; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword channelMax; dword flags; dword loopCount; DynamicParamDataV29 depth; DynamicParamDataV29 pan; DynamicParamDataV29 pitch; DynamicParamDataV29 pitchMS; DynamicParamDataV29 volume; DynamicParamDataV29 volumeMS; RangeDataV29 initialDelay; RangeDataV29 playLength; RangeDataV29 positionOffsetAngle; RangeDataV29 positionRange; RangeDataV29 repeatCount; RangeDataV29 repeatTime; RangeDataV29 replayDelay; RangeDataV29 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV29; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV29; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV29 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV29; typedef struct { qword musicCue; qword reverbOverride; qword snapshot; TPTR_START AudioSettingsDataV29 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV29 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV29 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV29 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV29 triggerKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PropertyDataV29 property TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; byte musicMutePriority; byte soundPoolMode; } ScriptFileDataV29; /* Version: 28 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV28; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV28 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV28; typedef struct { qword name; qword output; dword flags; float normalizeFadeTime; float normalizeThreshold; float normalizeMaxAmp; float compressorThreshold; float compressorAttack; float compressorRelease; float compressorGainMakeup; TPTR_START BussDynamicDataV28 dynamicData TPTR_END; } BussDataV28; typedef struct { float offset; float value; } EnvelopePointDataV28; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV28 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV28; typedef struct { float max; float min; byte min; } RangeDataV28; typedef struct { RangeDataV28 time; RangeDataV28 value; } RandomParamDataV28; typedef struct { TPTR_START EnvelopeDataV28 envelopeData TPTR_END; TPTR_START RandomParamDataV28 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV28; typedef struct { float doppler; DynamicParamDataV28 lowPass; DynamicParamDataV28 highPass; DynamicParamDataV28 pan3D; DynamicParamDataV28 reverb; DynamicParamDataV28 spread3D; DynamicParamDataV28 volumeA; DynamicParamDataV28 volumeB; DynamicParamDataV28 lfe; } AttenuationDataV28; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float highPass; float reverbDirect; float reverbRoom; dword flags; dword minAudible; dword maxAudibleLQ; dword maxAudibleHG; } CategoryDynamicDataV28; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV28 attenuation TPTR_END; TPTR_START CategoryDynamicDataV28 dynamicData TPTR_END; float focusReserve; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; byte priority; } CategoryDataV28; typedef struct { qword name; dword flags; float absorptionLF; float absorptionMF; float absorptionHF; float occlusion; } MaterialDataV28; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } MusicConditionDataV28; typedef struct { qword condition; qword language; float volume; float weight; filename fileName; byte audioType; byte noteBase; byte noteMin; byte noteMax; } FileNameDataV28; typedef struct { qword category; qword name; qword primaryPlaylistId; qword secondaryPlaylistId; TSTRUCT_ARRAY_PTR_START FileNameDataV28 fileName TSTRUCT_ARRAY_PTR_END; float fadeInTime; float fadeOutTime; dword flags; RangeDataV28 initialSilence; RangeDataV28 intervalSilence; RangeDataV28 maxPlayLength; DynamicParamDataV28 volume; byte fileIterateMode; } MusicPlaylistDataV28; typedef struct { qword name; qword tokenValue; float floatValue; } PropertyDataV28; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; float echoDelay; float echoDecayRatio; float echoWetMix; float echoDryMix; } ReverbDataV28; typedef struct { qword name; filename fileName; } ScriptRefDataV28; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV28 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV28 category TSTRUCT_ARRAY_PTR_END; byte priority; } SnapshotDataV28; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float echoLevel; float focusTransition; float memoryPool; float reverbLevel; dword minChannelsLQ; dword maxChannelsLQ; TSTRUCT_ARRAY_PTR_START BussDataV28 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV28 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MaterialDataV28 material TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicConditionDataV28 musicCondition TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicPlaylistDataV28 musicPlaylist TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PropertyDataV28 property TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV28 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV28 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV28 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV28; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV28; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV28 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV28 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV28 fileName TSTRUCT_ARRAY_PTR_END; float channelFadeIn; float channelFadeOut; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword channelMax; dword flags; dword loopCount; DynamicParamDataV28 depth; DynamicParamDataV28 pan; DynamicParamDataV28 pitch; DynamicParamDataV28 pitchMS; DynamicParamDataV28 volume; DynamicParamDataV28 volumeMS; RangeDataV28 initialDelay; RangeDataV28 playLength; RangeDataV28 positionOffsetAngle; RangeDataV28 positionRange; RangeDataV28 repeatCount; RangeDataV28 repeatTime; RangeDataV28 replayDelay; RangeDataV28 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV28; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV28; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV28 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV28; typedef struct { qword musicCue; qword reverbOverride; qword snapshot; TPTR_START AudioSettingsDataV28 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV28 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV28 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV28 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV28 triggerKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PropertyDataV28 property TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; byte musicMutePriority; byte soundPoolMode; } ScriptFileDataV28; /* Version: 27 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV27; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV27 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV27; typedef struct { qword name; qword output; dword flags; float normalizeFadeTime; float normalizeThreshold; float normalizeMaxAmp; float compressorThreshold; float compressorAttack; float compressorRelease; float compressorGainMakeup; TPTR_START BussDynamicDataV27 dynamicData TPTR_END; } BussDataV27; typedef struct { float offset; float value; } EnvelopePointDataV27; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV27 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV27; typedef struct { float max; float min; byte min; } RangeDataV27; typedef struct { RangeDataV27 time; RangeDataV27 value; } RandomParamDataV27; typedef struct { TPTR_START EnvelopeDataV27 envelopeData TPTR_END; TPTR_START RandomParamDataV27 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV27; typedef struct { float doppler; DynamicParamDataV27 lowPass; DynamicParamDataV27 highPass; DynamicParamDataV27 pan3D; DynamicParamDataV27 reverb; DynamicParamDataV27 spread3D; DynamicParamDataV27 volumeA; DynamicParamDataV27 volumeB; DynamicParamDataV27 lfe; } AttenuationDataV27; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float highPass; float reverbDirect; float reverbRoom; dword flags; dword minAudible; dword maxAudibleLQ; dword maxAudibleHG; } CategoryDynamicDataV27; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV27 attenuation TPTR_END; TPTR_START CategoryDynamicDataV27 dynamicData TPTR_END; float focusReserve; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; byte priority; } CategoryDataV27; typedef struct { qword name; dword flags; float absorptionLF; float absorptionMF; float absorptionHF; float occlusion; } MaterialDataV27; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } MusicConditionDataV27; typedef struct { qword condition; qword language; float volume; float weight; filename fileName; byte audioType; byte noteBase; byte noteMin; byte noteMax; } FileNameDataV27; typedef struct { qword category; qword name; qword primaryPlaylistId; qword secondaryPlaylistId; TSTRUCT_ARRAY_PTR_START FileNameDataV27 fileName TSTRUCT_ARRAY_PTR_END; float fadeInTime; float fadeOutTime; dword flags; RangeDataV27 initialSilence; RangeDataV27 intervalSilence; RangeDataV27 maxPlayLength; DynamicParamDataV27 volume; byte fileIterateMode; } MusicPlaylistDataV27; typedef struct { qword name; qword tokenValue; float floatValue; } PropertyDataV27; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; float echoDelay; float echoDecayRatio; float echoWetMix; float echoDryMix; } ReverbDataV27; typedef struct { qword name; filename fileName; } ScriptRefDataV27; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV27 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV27 category TSTRUCT_ARRAY_PTR_END; byte priority; } SnapshotDataV27; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float echoLevel; float focusTransition; float memoryPool; float reverbLevel; dword minChannelsLQ; dword maxChannelsLQ; TSTRUCT_ARRAY_PTR_START BussDataV27 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV27 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MaterialDataV27 material TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicConditionDataV27 musicCondition TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicPlaylistDataV27 musicPlaylist TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PropertyDataV27 property TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV27 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV27 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV27 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV27; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV27; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV27 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV27 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV27 fileName TSTRUCT_ARRAY_PTR_END; float channelFadeIn; float channelFadeOut; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword channelMax; dword flags; dword loopCount; DynamicParamDataV27 depth; DynamicParamDataV27 pan; DynamicParamDataV27 pitch; DynamicParamDataV27 pitchMS; DynamicParamDataV27 volume; DynamicParamDataV27 volumeMS; RangeDataV27 initialDelay; RangeDataV27 playLength; RangeDataV27 positionOffsetAngle; RangeDataV27 positionRange; RangeDataV27 repeatCount; RangeDataV27 repeatTime; RangeDataV27 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV27; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV27; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV27 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV27; typedef struct { qword musicCue; qword reverbOverride; qword snapshot; TPTR_START AudioSettingsDataV27 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV27 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV27 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV27 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV27 triggerKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PropertyDataV27 property TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; byte musicMutePriority; } ScriptFileDataV27; /* Version: 26 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV26; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV26 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV26; typedef struct { qword name; qword output; dword flags; float normalizeFadeTime; float normalizeThreshold; float normalizeMaxAmp; float compressorThreshold; float compressorAttack; float compressorRelease; float compressorGainMakeup; TPTR_START BussDynamicDataV26 dynamicData TPTR_END; } BussDataV26; typedef struct { float offset; float value; } EnvelopePointDataV26; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV26 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV26; typedef struct { float max; float min; byte min; } RangeDataV26; typedef struct { RangeDataV26 time; RangeDataV26 value; } RandomParamDataV26; typedef struct { TPTR_START EnvelopeDataV26 envelopeData TPTR_END; TPTR_START RandomParamDataV26 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV26; typedef struct { float doppler; DynamicParamDataV26 lowPass; DynamicParamDataV26 highPass; DynamicParamDataV26 pan3D; DynamicParamDataV26 reverb; DynamicParamDataV26 spread3D; DynamicParamDataV26 volumeA; DynamicParamDataV26 volumeB; DynamicParamDataV26 lfe; } AttenuationDataV26; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float highPass; float reverbDirect; float reverbRoom; dword flags; dword minAudible; dword maxAudibleLQ; dword maxAudibleHG; } CategoryDynamicDataV26; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV26 attenuation TPTR_END; TPTR_START CategoryDynamicDataV26 dynamicData TPTR_END; float focusReserve; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; byte priority; } CategoryDataV26; typedef struct { qword name; dword flags; float absorptionLF; float absorptionMF; float absorptionHF; float occlusion; } MaterialDataV26; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } MusicConditionDataV26; typedef struct { qword condition; qword language; float volume; float weight; filename fileName; byte audioType; byte noteBase; byte noteMin; byte noteMax; } FileNameDataV26; typedef struct { qword category; qword name; qword primaryPlaylistId; qword secondaryPlaylistId; TSTRUCT_ARRAY_PTR_START FileNameDataV26 fileName TSTRUCT_ARRAY_PTR_END; float fadeInTime; float fadeOutTime; dword flags; RangeDataV26 initialSilence; RangeDataV26 intervalSilence; RangeDataV26 maxPlayLength; DynamicParamDataV26 volume; byte fileIterateMode; } MusicPlaylistDataV26; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; float echoDelay; float echoDecayRatio; float echoWetMix; float echoDryMix; } ReverbDataV26; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV26 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV26 category TSTRUCT_ARRAY_PTR_END; byte priority; } SnapshotDataV26; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float focusTransition; float memoryPool; float reverbLevel; dword minChannelsLQ; dword maxChannelsLQ; TSTRUCT_ARRAY_PTR_START BussDataV26 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV26 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MaterialDataV26 material TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicConditionDataV26 musicCondition TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicPlaylistDataV26 musicPlaylist TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV26 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV26 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV26; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV26; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV26 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV26 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV26 fileName TSTRUCT_ARRAY_PTR_END; float channelFadeIn; float channelFadeOut; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword channelMax; dword flags; dword loopCount; DynamicParamDataV26 depth; DynamicParamDataV26 pan; DynamicParamDataV26 pitch; DynamicParamDataV26 pitchMS; DynamicParamDataV26 volume; DynamicParamDataV26 volumeMS; RangeDataV26 initialDelay; RangeDataV26 playLength; RangeDataV26 positionOffsetAngle; RangeDataV26 positionRange; RangeDataV26 repeatCount; RangeDataV26 repeatTime; RangeDataV26 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV26; typedef struct { qword name; filename fileName; } ScriptRefDataV26; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV26; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV26 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV26; typedef struct { qword musicCue; qword reverbOverride; qword snapshot; TPTR_START AudioSettingsDataV26 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV26 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV26 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV26 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV26 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; byte musicMutePriority; } ScriptFileDataV26; /* Version: 25 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV25; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV25 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV25; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV25 dynamicData TPTR_END; } BussDataV25; typedef struct { float offset; float value; } EnvelopePointDataV25; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV25 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV25; typedef struct { float max; float min; byte min; } RangeDataV25; typedef struct { RangeDataV25 time; RangeDataV25 value; } RandomParamDataV25; typedef struct { TPTR_START EnvelopeDataV25 envelopeData TPTR_END; TPTR_START RandomParamDataV25 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV25; typedef struct { float doppler; DynamicParamDataV25 lowPass; DynamicParamDataV25 highPass; DynamicParamDataV25 pan3D; DynamicParamDataV25 reverb; DynamicParamDataV25 spread3D; DynamicParamDataV25 volumeA; DynamicParamDataV25 volumeB; } AttenuationDataV25; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float highPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV25; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV25 attenuation TPTR_END; TPTR_START CategoryDynamicDataV25 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV25; typedef struct { qword name; dword flags; float absorptionLF; float absorptionMF; float absorptionHF; float occlusion; } MaterialDataV25; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } MusicConditionDataV25; typedef struct { qword condition; qword language; float volume; float weight; filename fileName; byte audioType; byte noteBase; byte noteMin; byte noteMax; } FileNameDataV25; typedef struct { qword category; qword name; qword primaryPlaylistId; qword secondaryPlaylistId; TSTRUCT_ARRAY_PTR_START FileNameDataV25 fileName TSTRUCT_ARRAY_PTR_END; float fadeInTime; float fadeOutTime; dword flags; RangeDataV25 initialSilence; RangeDataV25 intervalSilence; RangeDataV25 maxPlayLength; DynamicParamDataV25 volume; byte fileIterateMode; } MusicPlaylistDataV25; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; float echoDelay; float echoDecayRatio; float echoWetMix; float echoDryMix; } ReverbDataV25; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV25 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV25 category TSTRUCT_ARRAY_PTR_END; byte priority; } SnapshotDataV25; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV25 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV25 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MaterialDataV25 material TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicConditionDataV25 musicCondition TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicPlaylistDataV25 musicPlaylist TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV25 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV25 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV25; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV25; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV25 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV25 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV25 fileName TSTRUCT_ARRAY_PTR_END; float channelFadeIn; float channelFadeOut; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword channelMax; dword flags; dword loopCount; DynamicParamDataV25 depth; DynamicParamDataV25 pan; DynamicParamDataV25 pitch; DynamicParamDataV25 pitchMS; DynamicParamDataV25 volume; DynamicParamDataV25 volumeMS; RangeDataV25 initialDelay; RangeDataV25 playLength; RangeDataV25 positionOffsetAngle; RangeDataV25 positionRange; RangeDataV25 repeatCount; RangeDataV25 repeatTime; RangeDataV25 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV25; typedef struct { qword name; filename fileName; } ScriptRefDataV25; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV25; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV25 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV25; typedef struct { qword musicCue; qword reverbOverride; qword snapshot; TPTR_START AudioSettingsDataV25 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV25 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV25 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV25 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV25 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; byte musicMutePriority; } ScriptFileDataV25; /* Version: 24 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV24; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV24 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV24; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV24 dynamicData TPTR_END; } BussDataV24; typedef struct { float offset; float value; } EnvelopePointDataV24; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV24 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV24; typedef struct { float max; float min; byte min; } RangeDataV24; typedef struct { RangeDataV24 time; RangeDataV24 value; } RandomParamDataV24; typedef struct { TPTR_START EnvelopeDataV24 envelopeData TPTR_END; TPTR_START RandomParamDataV24 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV24; typedef struct { float doppler; DynamicParamDataV24 lowPass; DynamicParamDataV24 highPass; DynamicParamDataV24 pan3D; DynamicParamDataV24 reverb; DynamicParamDataV24 spread3D; DynamicParamDataV24 volumeA; DynamicParamDataV24 volumeB; } AttenuationDataV24; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float highPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV24; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV24 attenuation TPTR_END; TPTR_START CategoryDynamicDataV24 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV24; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } MusicConditionDataV24; typedef struct { qword condition; qword language; float volume; float weight; filename fileName; byte audioType; byte noteBase; byte noteMin; byte noteMax; } FileNameDataV24; typedef struct { qword category; qword name; qword primaryPlaylistId; qword secondaryPlaylistId; TSTRUCT_ARRAY_PTR_START FileNameDataV24 fileName TSTRUCT_ARRAY_PTR_END; float fadeInTime; float fadeOutTime; dword flags; RangeDataV24 initialSilence; RangeDataV24 intervalSilence; RangeDataV24 maxPlayLength; DynamicParamDataV24 volume; byte fileIterateMode; } MusicPlaylistDataV24; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; float echoDelay; float echoDecayRatio; float echoWetMix; float echoDryMix; } ReverbDataV24; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV24 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV24 category TSTRUCT_ARRAY_PTR_END; byte priority; } SnapshotDataV24; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV24 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV24 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicConditionDataV24 musicCondition TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicPlaylistDataV24 musicPlaylist TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV24 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV24 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV24; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV24; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV24 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV24 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV24 fileName TSTRUCT_ARRAY_PTR_END; float channelFadeIn; float channelFadeOut; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword channelMax; dword flags; dword loopCount; DynamicParamDataV24 depth; DynamicParamDataV24 pan; DynamicParamDataV24 pitch; DynamicParamDataV24 pitchMS; DynamicParamDataV24 volume; DynamicParamDataV24 volumeMS; RangeDataV24 initialDelay; RangeDataV24 playLength; RangeDataV24 positionOffsetAngle; RangeDataV24 positionRange; RangeDataV24 repeatCount; RangeDataV24 repeatTime; RangeDataV24 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV24; typedef struct { qword name; filename fileName; } ScriptRefDataV24; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV24; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV24 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV24; typedef struct { qword musicCue; qword reverbOverride; qword snapshot; TPTR_START AudioSettingsDataV24 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV24 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV24 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV24 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV24 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; byte musicMutePriority; } ScriptFileDataV24; /* Version: 23 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV23; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV23 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV23; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV23 dynamicData TPTR_END; } BussDataV23; typedef struct { float offset; float value; } EnvelopePointDataV23; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV23 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV23; typedef struct { float max; float min; byte min; } RangeDataV23; typedef struct { RangeDataV23 time; RangeDataV23 value; } RandomParamDataV23; typedef struct { TPTR_START EnvelopeDataV23 envelopeData TPTR_END; TPTR_START RandomParamDataV23 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV23; typedef struct { float doppler; DynamicParamDataV23 lowPass; DynamicParamDataV23 highPass; DynamicParamDataV23 pan3D; DynamicParamDataV23 reverb; DynamicParamDataV23 spread3D; DynamicParamDataV23 volumeA; DynamicParamDataV23 volumeB; } AttenuationDataV23; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float highPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV23; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV23 attenuation TPTR_END; TPTR_START CategoryDynamicDataV23 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV23; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } MusicConditionDataV23; typedef struct { qword condition; qword language; float volume; float weight; filename fileName; byte audioType; } FileNameDataV23; typedef struct { qword category; qword name; qword primaryPlaylistId; qword secondaryPlaylistId; TSTRUCT_ARRAY_PTR_START FileNameDataV23 fileName TSTRUCT_ARRAY_PTR_END; float fadeInTime; float fadeOutTime; dword flags; RangeDataV23 initialSilence; RangeDataV23 intervalSilence; RangeDataV23 maxPlayLength; DynamicParamDataV23 volume; byte fileIterateMode; } MusicPlaylistDataV23; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; float echoDelay; float echoDecayRatio; float echoWetMix; float echoDryMix; } ReverbDataV23; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV23 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV23 category TSTRUCT_ARRAY_PTR_END; byte priority; } SnapshotDataV23; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV23 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV23 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicConditionDataV23 musicCondition TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicPlaylistDataV23 musicPlaylist TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV23 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV23 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV23; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV23; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV23 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV23 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV23 fileName TSTRUCT_ARRAY_PTR_END; float channelFadeIn; float channelFadeOut; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword channelMax; dword flags; dword loopCount; DynamicParamDataV23 depth; DynamicParamDataV23 pan; DynamicParamDataV23 pitch; DynamicParamDataV23 pitchMS; DynamicParamDataV23 volume; DynamicParamDataV23 volumeMS; RangeDataV23 initialDelay; RangeDataV23 playLength; RangeDataV23 positionOffsetAngle; RangeDataV23 positionRange; RangeDataV23 repeatCount; RangeDataV23 repeatTime; RangeDataV23 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV23; typedef struct { qword name; filename fileName; } ScriptRefDataV23; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV23; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV23 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV23; typedef struct { qword musicCue; qword reverbOverride; qword snapshot; TPTR_START AudioSettingsDataV23 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV23 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV23 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV23 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV23 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; byte musicMutePriority; } ScriptFileDataV23; /* Version: 22 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV22; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV22 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV22; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV22 dynamicData TPTR_END; } BussDataV22; typedef struct { float offset; float value; } EnvelopePointDataV22; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV22 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV22; typedef struct { float max; float min; byte min; } RangeDataV22; typedef struct { RangeDataV22 time; RangeDataV22 value; } RandomParamDataV22; typedef struct { TPTR_START EnvelopeDataV22 envelopeData TPTR_END; TPTR_START RandomParamDataV22 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV22; typedef struct { float doppler; DynamicParamDataV22 lowPass; DynamicParamDataV22 highPass; DynamicParamDataV22 pan3D; DynamicParamDataV22 reverb; DynamicParamDataV22 spread3D; DynamicParamDataV22 volumeA; DynamicParamDataV22 volumeB; } AttenuationDataV22; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float highPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV22; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV22 attenuation TPTR_END; TPTR_START CategoryDynamicDataV22 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV22; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } MusicConditionDataV22; typedef struct { qword condition; qword language; float volume; float weight; filename fileName; byte audioType; } FileNameDataV22; typedef struct { qword category; qword name; qword primaryPlaylistId; qword secondaryPlaylistId; TSTRUCT_ARRAY_PTR_START FileNameDataV22 fileName TSTRUCT_ARRAY_PTR_END; float fadeInTime; float fadeOutTime; dword flags; RangeDataV22 initialSilence; RangeDataV22 intervalSilence; RangeDataV22 maxPlayLength; DynamicParamDataV22 volume; byte fileIterateMode; } MusicPlaylistDataV22; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; float echoDelay; float echoDecayRatio; float echoWetMix; float echoDryMix; } ReverbDataV22; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV22 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV22 category TSTRUCT_ARRAY_PTR_END; byte priority; } SnapshotDataV22; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV22 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV22 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicConditionDataV22 musicCondition TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicPlaylistDataV22 musicPlaylist TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV22 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV22 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV22; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV22; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV22 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV22 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV22 fileName TSTRUCT_ARRAY_PTR_END; float channelFadeIn; float channelFadeOut; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword channelMax; dword flags; dword loopCount; DynamicParamDataV22 depth; DynamicParamDataV22 pan; DynamicParamDataV22 pitch; DynamicParamDataV22 pitchMS; DynamicParamDataV22 volume; DynamicParamDataV22 volumeMS; RangeDataV22 initialDelay; RangeDataV22 playLength; RangeDataV22 positionOffsetAngle; RangeDataV22 positionRange; RangeDataV22 repeatCount; RangeDataV22 repeatTime; RangeDataV22 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV22; typedef struct { qword name; filename fileName; } ScriptRefDataV22; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV22; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV22 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV22; typedef struct { qword musicCue; qword reverbOverride; qword snapshot; TPTR_START AudioSettingsDataV22 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV22 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV22 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV22 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV22 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; } ScriptFileDataV22; /* Version: 21 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV21; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV21 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV21; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV21 dynamicData TPTR_END; } BussDataV21; typedef struct { float offset; float value; } EnvelopePointDataV21; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV21 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV21; typedef struct { float max; float min; byte min; } RangeDataV21; typedef struct { RangeDataV21 time; RangeDataV21 value; } RandomParamDataV21; typedef struct { TPTR_START EnvelopeDataV21 envelopeData TPTR_END; TPTR_START RandomParamDataV21 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV21; typedef struct { float doppler; DynamicParamDataV21 lowPass; DynamicParamDataV21 pan3D; DynamicParamDataV21 reverb; DynamicParamDataV21 spread3D; DynamicParamDataV21 volumeA; DynamicParamDataV21 volumeB; } AttenuationDataV21; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV21; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV21 attenuation TPTR_END; TPTR_START CategoryDynamicDataV21 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV21; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } MusicConditionDataV21; typedef struct { qword condition; qword language; float volume; float weight; filename fileName; byte audioType; } FileNameDataV21; typedef struct { qword category; qword name; qword primaryPlaylistId; qword secondaryPlaylistId; TSTRUCT_ARRAY_PTR_START FileNameDataV21 fileName TSTRUCT_ARRAY_PTR_END; float fadeInTime; float fadeOutTime; dword flags; RangeDataV21 initialSilence; RangeDataV21 intervalSilence; RangeDataV21 maxPlayLength; DynamicParamDataV21 volume; byte fileIterateMode; } MusicPlaylistDataV21; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; float echoDelay; float echoDecayRatio; float echoWetMix; float echoDryMix; } ReverbDataV21; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV21 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV21 category TSTRUCT_ARRAY_PTR_END; byte priority; } SnapshotDataV21; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV21 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV21 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicConditionDataV21 musicCondition TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MusicPlaylistDataV21 musicPlaylist TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV21 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV21 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV21; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV21; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV21 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV21 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV21 fileName TSTRUCT_ARRAY_PTR_END; float channelFadeIn; float channelFadeOut; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword channelMax; dword flags; dword loopCount; DynamicParamDataV21 depth; DynamicParamDataV21 pan; DynamicParamDataV21 pitch; DynamicParamDataV21 pitchMS; DynamicParamDataV21 volume; DynamicParamDataV21 volumeMS; RangeDataV21 initialDelay; RangeDataV21 playLength; RangeDataV21 positionOffsetAngle; RangeDataV21 positionRange; RangeDataV21 repeatCount; RangeDataV21 repeatTime; RangeDataV21 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV21; typedef struct { qword name; filename fileName; } ScriptRefDataV21; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV21; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV21 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV21; typedef struct { qword musicCue; qword reverbOverride; qword snapshot; TPTR_START AudioSettingsDataV21 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV21 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV21 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV21 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV21 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; } ScriptFileDataV21; /* Version: 20 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV20; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV20 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV20; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV20 dynamicData TPTR_END; } BussDataV20; typedef struct { float offset; float value; } EnvelopePointDataV20; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV20 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV20; typedef struct { float max; float min; byte min; } RangeDataV20; typedef struct { RangeDataV20 time; RangeDataV20 value; } RandomParamDataV20; typedef struct { TPTR_START EnvelopeDataV20 envelopeData TPTR_END; TPTR_START RandomParamDataV20 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV20; typedef struct { float doppler; DynamicParamDataV20 lowPass; DynamicParamDataV20 pan3D; DynamicParamDataV20 reverb; DynamicParamDataV20 spread3D; DynamicParamDataV20 volumeA; DynamicParamDataV20 volumeB; } AttenuationDataV20; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV20; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV20 attenuation TPTR_END; TPTR_START CategoryDynamicDataV20 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV20; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; float echoDelay; float echoDecayRatio; float echoWetMix; float echoDryMix; } ReverbDataV20; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV20 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV20 category TSTRUCT_ARRAY_PTR_END; byte priority; } SnapshotDataV20; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV20 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV20 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV20 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV20 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV20; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV20; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV20; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV20 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV20 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV20 fileName TSTRUCT_ARRAY_PTR_END; float channelFadeIn; float channelFadeOut; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword channelMax; dword flags; dword loopCount; DynamicParamDataV20 depth; DynamicParamDataV20 pan; DynamicParamDataV20 pitch; DynamicParamDataV20 pitchMS; DynamicParamDataV20 volume; DynamicParamDataV20 volumeMS; RangeDataV20 initialDelay; RangeDataV20 playLength; RangeDataV20 positionOffsetAngle; RangeDataV20 positionRange; RangeDataV20 repeatCount; RangeDataV20 repeatTime; RangeDataV20 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV20; typedef struct { qword name; filename fileName; } ScriptRefDataV20; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV20; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV20 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV20; typedef struct { qword musicCue; qword reverbOverride; qword snapshot; TPTR_START AudioSettingsDataV20 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV20 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV20 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV20 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV20 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; } ScriptFileDataV20; /* Version: 19, ReferencedFunction: 0x140BC02E0 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV19; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV19 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV19; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV19 dynamicData TPTR_END; } BussDataV19; typedef struct { float offset; float value; } EnvelopePointDataV19; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV19 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV19; typedef struct { float max; float min; byte min; } RangeDataV19; typedef struct { RangeDataV19 time; RangeDataV19 value; } RandomParamDataV19; typedef struct { TPTR_START EnvelopeDataV19 envelopeData TPTR_END; TPTR_START RandomParamDataV19 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV19; typedef struct { float doppler; DynamicParamDataV19 lowPass; DynamicParamDataV19 pan3D; DynamicParamDataV19 reverb; DynamicParamDataV19 spread3D; DynamicParamDataV19 volumeA; DynamicParamDataV19 volumeB; } AttenuationDataV19; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV19; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV19 attenuation TPTR_END; TPTR_START CategoryDynamicDataV19 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV19; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; float echoDelay; float echoDecayRatio; float echoWetMix; float echoDryMix; } ReverbDataV19; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV19 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV19 category TSTRUCT_ARRAY_PTR_END; byte priority; } SnapshotDataV19; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV19 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV19 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV19 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV19 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV19; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV19; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV19; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV19 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV19 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV19 fileName TSTRUCT_ARRAY_PTR_END; float channelFadeIn; float channelFadeOut; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword channelMax; dword flags; dword loopCount; DynamicParamDataV19 depth; DynamicParamDataV19 pan; DynamicParamDataV19 pitch; DynamicParamDataV19 pitchMS; DynamicParamDataV19 volume; DynamicParamDataV19 volumeMS; RangeDataV19 initialDelay; RangeDataV19 playLength; RangeDataV19 positionOffsetAngle; RangeDataV19 positionRange; RangeDataV19 repeatCount; RangeDataV19 repeatTime; RangeDataV19 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV19; typedef struct { qword name; filename fileName; } ScriptRefDataV19; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV19; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV19 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV19; typedef struct { qword musicCue; qword reverbOverride; TPTR_START AudioSettingsDataV19 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV19 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV19 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV19 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV19 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; } ScriptFileDataV19; /* Version: 18, ReferencedFunction: 0x140BC0070 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV18; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV18 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV18; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV18 dynamicData TPTR_END; } BussDataV18; typedef struct { float offset; float value; } EnvelopePointDataV18; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV18 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV18; typedef struct { float max; float min; byte min; } RangeDataV18; typedef struct { RangeDataV18 time; RangeDataV18 value; } RandomParamDataV18; typedef struct { TPTR_START EnvelopeDataV18 envelopeData TPTR_END; TPTR_START RandomParamDataV18 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV18; typedef struct { float doppler; DynamicParamDataV18 lowPass; DynamicParamDataV18 pan3D; DynamicParamDataV18 reverb; DynamicParamDataV18 spread3D; DynamicParamDataV18 volumeA; DynamicParamDataV18 volumeB; } AttenuationDataV18; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV18; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV18 attenuation TPTR_END; TPTR_START CategoryDynamicDataV18 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV18; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; float echoDelay; float echoDecayRatio; float echoWetMix; float echoDryMix; } ReverbDataV18; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV18 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV18 category TSTRUCT_ARRAY_PTR_END; } SnapshotDataV18; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV18 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV18 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV18 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV18 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV18; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV18; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV18; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV18 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV18 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV18 fileName TSTRUCT_ARRAY_PTR_END; float channelFadeIn; float channelFadeOut; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword channelMax; dword flags; dword loopCount; DynamicParamDataV18 depth; DynamicParamDataV18 pan; DynamicParamDataV18 pitch; DynamicParamDataV18 pitchMS; DynamicParamDataV18 volume; DynamicParamDataV18 volumeMS; RangeDataV18 initialDelay; RangeDataV18 playLength; RangeDataV18 positionOffsetAngle; RangeDataV18 positionRange; RangeDataV18 repeatCount; RangeDataV18 repeatTime; RangeDataV18 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV18; typedef struct { qword name; filename fileName; } ScriptRefDataV18; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV18; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV18 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV18; typedef struct { qword musicCue; qword reverbOverride; TPTR_START AudioSettingsDataV18 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV18 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV18 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV18 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV18 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; } ScriptFileDataV18; /* Version: 17 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV17; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV17 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV17; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV17 dynamicData TPTR_END; } BussDataV17; typedef struct { float offset; float value; } EnvelopePointDataV17; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV17 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV17; typedef struct { float max; float min; byte min; } RangeDataV17; typedef struct { RangeDataV17 time; RangeDataV17 value; } RandomParamDataV17; typedef struct { TPTR_START EnvelopeDataV17 envelopeData TPTR_END; TPTR_START RandomParamDataV17 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV17; typedef struct { float doppler; DynamicParamDataV17 lowPass; DynamicParamDataV17 pan3D; DynamicParamDataV17 reverb; DynamicParamDataV17 spread3D; DynamicParamDataV17 volumeA; DynamicParamDataV17 volumeB; } AttenuationDataV17; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV17; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV17 attenuation TPTR_END; TPTR_START CategoryDynamicDataV17 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV17; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; float echoDelay; float echoDecayRatio; float echoWetMix; float echoDryMix; } ReverbDataV17; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV17 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV17 category TSTRUCT_ARRAY_PTR_END; } SnapshotDataV17; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV17 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV17 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV17 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV17 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV17; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV17; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV17; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV17 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV17 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV17 fileName TSTRUCT_ARRAY_PTR_END; float channelFadeIn; float channelFadeOut; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword channelMax; dword flags; dword loopCount; DynamicParamDataV17 depth; DynamicParamDataV17 pan; DynamicParamDataV17 pitch; DynamicParamDataV17 pitchMS; DynamicParamDataV17 volume; DynamicParamDataV17 volumeMS; RangeDataV17 initialDelay; RangeDataV17 playLength; RangeDataV17 positionOffsetAngle; RangeDataV17 positionRange; RangeDataV17 repeatCount; RangeDataV17 repeatTime; RangeDataV17 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV17; typedef struct { qword name; filename fileName; } ScriptRefDataV17; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV17; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV17 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV17; typedef struct { qword musicCue; qword reverbOverride; TPTR_START AudioSettingsDataV17 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV17 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV17 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV17 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV17 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; } ScriptFileDataV17; /* Version: 16 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV16; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV16 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV16; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV16 dynamicData TPTR_END; } BussDataV16; typedef struct { float offset; float value; } EnvelopePointDataV16; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV16 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV16; typedef struct { float max; float min; byte min; } RangeDataV16; typedef struct { RangeDataV16 time; RangeDataV16 value; } RandomParamDataV16; typedef struct { TPTR_START EnvelopeDataV16 envelopeData TPTR_END; TPTR_START RandomParamDataV16 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV16; typedef struct { float doppler; DynamicParamDataV16 lowPass; DynamicParamDataV16 pan3D; DynamicParamDataV16 reverb; DynamicParamDataV16 spread3D; DynamicParamDataV16 volumeA; DynamicParamDataV16 volumeB; } AttenuationDataV16; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV16; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV16 attenuation TPTR_END; TPTR_START CategoryDynamicDataV16 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV16; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; float echoDelay; float echoDecayRatio; float echoWetMix; float echoDryMix; } ReverbDataV16; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV16 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV16 category TSTRUCT_ARRAY_PTR_END; } SnapshotDataV16; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV16 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV16 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV16 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV16 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV16; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV16; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV16; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV16 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV16 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV16 fileName TSTRUCT_ARRAY_PTR_END; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword flags; dword loopCount; DynamicParamDataV16 depth; DynamicParamDataV16 pan; DynamicParamDataV16 pitch; DynamicParamDataV16 pitchMS; DynamicParamDataV16 volume; DynamicParamDataV16 volumeMS; RangeDataV16 initialDelay; RangeDataV16 playLength; RangeDataV16 positionOffsetAngle; RangeDataV16 positionRange; RangeDataV16 repeatCount; RangeDataV16 repeatTime; RangeDataV16 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV16; typedef struct { qword name; filename fileName; } ScriptRefDataV16; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV16; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV16 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV16; typedef struct { qword musicCue; qword reverbOverride; TPTR_START AudioSettingsDataV16 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV16 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV16 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV16 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV16 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; } ScriptFileDataV16; /* Version: 15 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV15; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV15 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV15; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV15 dynamicData TPTR_END; } BussDataV15; typedef struct { float offset; float value; } EnvelopePointDataV15; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV15 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV15; typedef struct { float max; float min; byte min; } RangeDataV15; typedef struct { RangeDataV15 time; RangeDataV15 value; } RandomParamDataV15; typedef struct { TPTR_START EnvelopeDataV15 envelopeData TPTR_END; TPTR_START RandomParamDataV15 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV15; typedef struct { float doppler; DynamicParamDataV15 lowPass; DynamicParamDataV15 pan3D; DynamicParamDataV15 reverb; DynamicParamDataV15 spread3D; DynamicParamDataV15 volumeA; DynamicParamDataV15 volumeB; } AttenuationDataV15; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV15; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV15 attenuation TPTR_END; TPTR_START CategoryDynamicDataV15 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV15; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; } ReverbDataV15; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV15 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV15 category TSTRUCT_ARRAY_PTR_END; } SnapshotDataV15; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV15 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV15 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV15 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV15 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV15; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV15; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV15; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV15 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV15 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV15 fileName TSTRUCT_ARRAY_PTR_END; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword flags; dword loopCount; DynamicParamDataV15 depth; DynamicParamDataV15 pan; DynamicParamDataV15 pitch; DynamicParamDataV15 pitchMS; DynamicParamDataV15 volume; DynamicParamDataV15 volumeMS; RangeDataV15 initialDelay; RangeDataV15 playLength; RangeDataV15 positionOffsetAngle; RangeDataV15 positionRange; RangeDataV15 repeatCount; RangeDataV15 repeatTime; RangeDataV15 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV15; typedef struct { qword name; filename fileName; } ScriptRefDataV15; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV15; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV15 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV15; typedef struct { qword musicCue; qword reverbOverride; TPTR_START AudioSettingsDataV15 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV15 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV15 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV15 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV15 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; } ScriptFileDataV15; /* Version: 14 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV14; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV14 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV14; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV14 dynamicData TPTR_END; } BussDataV14; typedef struct { float offset; float value; } EnvelopePointDataV14; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV14 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV14; typedef struct { float max; float min; byte min; } RangeDataV14; typedef struct { RangeDataV14 time; RangeDataV14 value; } RandomParamDataV14; typedef struct { TPTR_START EnvelopeDataV14 envelopeData TPTR_END; TPTR_START RandomParamDataV14 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV14; typedef struct { float doppler; DynamicParamDataV14 lowPass; DynamicParamDataV14 pan3D; DynamicParamDataV14 spread3D; DynamicParamDataV14 volumeA; DynamicParamDataV14 volumeB; } AttenuationDataV14; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV14; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV14 attenuation TPTR_END; TPTR_START CategoryDynamicDataV14 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV14; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; } ReverbDataV14; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV14 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV14 category TSTRUCT_ARRAY_PTR_END; } SnapshotDataV14; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float dopplerScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV14 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV14 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV14 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV14 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV14; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV14; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV14; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV14 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV14 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV14 fileName TSTRUCT_ARRAY_PTR_END; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword flags; dword loopCount; DynamicParamDataV14 depth; DynamicParamDataV14 pan; DynamicParamDataV14 pitch; DynamicParamDataV14 pitchMS; DynamicParamDataV14 volume; DynamicParamDataV14 volumeMS; RangeDataV14 initialDelay; RangeDataV14 playLength; RangeDataV14 positionOffsetAngle; RangeDataV14 positionRange; RangeDataV14 repeatCount; RangeDataV14 repeatTime; RangeDataV14 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV14; typedef struct { qword name; filename fileName; } ScriptRefDataV14; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV14; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV14 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV14; typedef struct { qword musicCue; qword reverbOverride; TPTR_START AudioSettingsDataV14 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV14 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV14 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV14 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV14 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; } ScriptFileDataV14; /* Version: 13 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV13; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV13 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV13; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV13 dynamicData TPTR_END; } BussDataV13; typedef struct { float offset; float value; } EnvelopePointDataV13; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV13 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV13; typedef struct { float max; float min; byte min; } RangeDataV13; typedef struct { RangeDataV13 time; RangeDataV13 value; } RandomParamDataV13; typedef struct { TPTR_START EnvelopeDataV13 envelopeData TPTR_END; TPTR_START RandomParamDataV13 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV13; typedef struct { float coneInsideAngle; float coneOutsideAngle; float coneOutsideVolume; DynamicParamDataV13 lowPass; DynamicParamDataV13 pan3D; DynamicParamDataV13 spread3D; DynamicParamDataV13 volumeA; DynamicParamDataV13 volumeB; } AttenuationDataV13; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV13; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV13 attenuation TPTR_END; TPTR_START CategoryDynamicDataV13 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV13; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; } ReverbDataV13; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV13 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV13 category TSTRUCT_ARRAY_PTR_END; } SnapshotDataV13; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV13 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV13 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV13 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV13 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV13; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV13; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV13; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV13 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV13 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV13 fileName TSTRUCT_ARRAY_PTR_END; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword flags; dword loopCount; DynamicParamDataV13 depth; DynamicParamDataV13 pan; DynamicParamDataV13 pitch; DynamicParamDataV13 pitchMS; DynamicParamDataV13 volume; DynamicParamDataV13 volumeMS; RangeDataV13 initialDelay; RangeDataV13 playLength; RangeDataV13 positionOffsetAngle; RangeDataV13 positionRange; RangeDataV13 repeatCount; RangeDataV13 repeatTime; RangeDataV13 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV13; typedef struct { qword name; filename fileName; } ScriptRefDataV13; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV13; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV13 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV13; typedef struct { qword musicCue; qword reverbOverride; TPTR_START AudioSettingsDataV13 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV13 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV13 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV13 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV13 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; } ScriptFileDataV13; /* Version: 12, ReferencedFunction: 0x140BC0060 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV12; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV12 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV12; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV12 dynamicData TPTR_END; } BussDataV12; typedef struct { float offset; float value; } EnvelopePointDataV12; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV12 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV12; typedef struct { float max; float min; byte min; } RangeDataV12; typedef struct { RangeDataV12 time; RangeDataV12 value; } RandomParamDataV12; typedef struct { TPTR_START EnvelopeDataV12 envelopeData TPTR_END; TPTR_START RandomParamDataV12 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV12; typedef struct { float coneInsideAngle; float coneOutsideAngle; float coneOutsideVolume; DynamicParamDataV12 lowPass; DynamicParamDataV12 pan3D; DynamicParamDataV12 spread3D; DynamicParamDataV12 volumeA; DynamicParamDataV12 volumeB; } AttenuationDataV12; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV12; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV12 attenuation TPTR_END; TPTR_START CategoryDynamicDataV12 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV12; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; } ReverbDataV12; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV12 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV12 category TSTRUCT_ARRAY_PTR_END; } SnapshotDataV12; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV12 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV12 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV12 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV12 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV12; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV12; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV12; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV12 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV12 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV12 fileName TSTRUCT_ARRAY_PTR_END; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword flags; dword loopCount; DynamicParamDataV12 depth; DynamicParamDataV12 pan; DynamicParamDataV12 pitch; DynamicParamDataV12 pitchMS; DynamicParamDataV12 volume; DynamicParamDataV12 volumeMS; RangeDataV12 initialDelay; RangeDataV12 playLength; RangeDataV12 positionOffsetAngle; RangeDataV12 positionRange; RangeDataV12 repeatCount; RangeDataV12 repeatTime; RangeDataV12 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV12; typedef struct { qword name; filename fileName; } ScriptRefDataV12; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV12; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV12 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV12; typedef struct { qword musicCue; TPTR_START AudioSettingsDataV12 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV12 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV12 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV12 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV12 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; byte musicCuePriority; } ScriptFileDataV12; /* Version: 11 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV11; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV11 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV11; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV11 dynamicData TPTR_END; } BussDataV11; typedef struct { float offset; float value; } EnvelopePointDataV11; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV11 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV11; typedef struct { float max; float min; byte min; } RangeDataV11; typedef struct { RangeDataV11 time; RangeDataV11 value; } RandomParamDataV11; typedef struct { TPTR_START EnvelopeDataV11 envelopeData TPTR_END; TPTR_START RandomParamDataV11 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV11; typedef struct { float coneInsideAngle; float coneOutsideAngle; float coneOutsideVolume; DynamicParamDataV11 lowPass; DynamicParamDataV11 pan3D; DynamicParamDataV11 spread3D; DynamicParamDataV11 volumeA; DynamicParamDataV11 volumeB; } AttenuationDataV11; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV11; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV11 attenuation TPTR_END; TPTR_START CategoryDynamicDataV11 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV11; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; } ReverbDataV11; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV11 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV11 category TSTRUCT_ARRAY_PTR_END; } SnapshotDataV11; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV11 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV11 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV11 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV11 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; filename musicScriptFileName; } AudioSettingsDataV11; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV11; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV11; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV11 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV11 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV11 fileName TSTRUCT_ARRAY_PTR_END; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword flags; dword loopCount; DynamicParamDataV11 depth; DynamicParamDataV11 pan; DynamicParamDataV11 pitch; DynamicParamDataV11 pitchMS; DynamicParamDataV11 volume; DynamicParamDataV11 volumeMS; RangeDataV11 initialDelay; RangeDataV11 playLength; RangeDataV11 positionOffsetAngle; RangeDataV11 positionRange; RangeDataV11 repeatCount; RangeDataV11 repeatTime; RangeDataV11 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV11; typedef struct { qword name; filename fileName; } ScriptRefDataV11; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV11; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV11 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV11; typedef struct { qword musicCue; TPTR_START AudioSettingsDataV11 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV11 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV11 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV11 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV11 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; } ScriptFileDataV11; /* Version: 10 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV10; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV10 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV10; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV10 dynamicData TPTR_END; } BussDataV10; typedef struct { float offset; float value; } EnvelopePointDataV10; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV10 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV10; typedef struct { float max; float min; byte min; } RangeDataV10; typedef struct { RangeDataV10 time; RangeDataV10 value; } RandomParamDataV10; typedef struct { TPTR_START EnvelopeDataV10 envelopeData TPTR_END; TPTR_START RandomParamDataV10 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV10; typedef struct { float coneInsideAngle; float coneOutsideAngle; float coneOutsideVolume; DynamicParamDataV10 lowPass; DynamicParamDataV10 pan3D; DynamicParamDataV10 spread3D; DynamicParamDataV10 volumeA; DynamicParamDataV10 volumeB; } AttenuationDataV10; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV10; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV10 attenuation TPTR_END; TPTR_START CategoryDynamicDataV10 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV10; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; } ReverbDataV10; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV10 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV10 category TSTRUCT_ARRAY_PTR_END; } SnapshotDataV10; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV10 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV10 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV10 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV10 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; } AudioSettingsDataV10; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV10; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV10; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV10 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV10 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV10 fileName TSTRUCT_ARRAY_PTR_END; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword flags; dword loopCount; DynamicParamDataV10 depth; DynamicParamDataV10 pan; DynamicParamDataV10 pitch; DynamicParamDataV10 pitchMS; DynamicParamDataV10 volume; DynamicParamDataV10 volumeMS; RangeDataV10 initialDelay; RangeDataV10 playLength; RangeDataV10 positionOffsetAngle; RangeDataV10 positionRange; RangeDataV10 repeatCount; RangeDataV10 repeatTime; RangeDataV10 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV10; typedef struct { qword name; filename fileName; } ScriptRefDataV10; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV10; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV10 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV10; typedef struct { qword musicCue; TPTR_START AudioSettingsDataV10 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV10 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV10 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV10 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV10 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; dword soundPoolCount; float fadeInTime; float soundPoolDelay; float volume; } ScriptFileDataV10; /* Version: 9 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV9; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV9 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV9; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV9 dynamicData TPTR_END; } BussDataV9; typedef struct { float offset; float value; } EnvelopePointDataV9; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV9 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV9; typedef struct { float max; float min; byte min; } RangeDataV9; typedef struct { RangeDataV9 time; RangeDataV9 value; } RandomParamDataV9; typedef struct { TPTR_START EnvelopeDataV9 envelopeData TPTR_END; TPTR_START RandomParamDataV9 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV9; typedef struct { float coneInsideAngle; float coneOutsideAngle; float coneOutsideVolume; DynamicParamDataV9 lowPass; DynamicParamDataV9 pan3D; DynamicParamDataV9 spread3D; DynamicParamDataV9 volumeA; DynamicParamDataV9 volumeB; } AttenuationDataV9; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV9; typedef struct { qword name; qword volumeGroupName; qword outputBussName; qword soundPoolCategory; TPTR_START AttenuationDataV9 attenuation TPTR_END; TPTR_START CategoryDynamicDataV9 dynamicData TPTR_END; float muteFadeTime; float soundPoolDelay; dword flags; dword maxAudible; dword soundPoolCount; byte maxAudibleBehavior; byte soundPoolCountBehavior; byte soundPoolMode; } CategoryDataV9; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; } ReverbDataV9; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV9 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV9 category TSTRUCT_ARRAY_PTR_END; } SnapshotDataV9; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV9 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV9 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV9 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV9 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; } AudioSettingsDataV9; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV9; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV9; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV9 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV9 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV9 fileName TSTRUCT_ARRAY_PTR_END; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword flags; dword loopCount; DynamicParamDataV9 depth; DynamicParamDataV9 pan; DynamicParamDataV9 pitch; DynamicParamDataV9 pitchMS; DynamicParamDataV9 volume; DynamicParamDataV9 volumeMS; RangeDataV9 initialDelay; RangeDataV9 playLength; RangeDataV9 positionOffsetAngle; RangeDataV9 positionRange; RangeDataV9 repeatCount; RangeDataV9 repeatTime; RangeDataV9 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV9; typedef struct { qword name; filename fileName; } ScriptRefDataV9; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV9; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV9 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV9; typedef struct { qword musicCue; qword endCue; TPTR_START AudioSettingsDataV9 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV9 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV9 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV9 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV9 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; float fadeInTime; float volume; } ScriptFileDataV9; /* Version: 8 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV8; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV8 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV8; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV8 dynamicData TPTR_END; } BussDataV8; typedef struct { float offset; float value; } EnvelopePointDataV8; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV8 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV8; typedef struct { float max; float min; byte min; } RangeDataV8; typedef struct { RangeDataV8 time; RangeDataV8 value; } RandomParamDataV8; typedef struct { TPTR_START EnvelopeDataV8 envelopeData TPTR_END; TPTR_START RandomParamDataV8 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV8; typedef struct { float coneInsideAngle; float coneOutsideAngle; float coneOutsideVolume; DynamicParamDataV8 lowPass; DynamicParamDataV8 pan3D; DynamicParamDataV8 spread3D; DynamicParamDataV8 volumeA; DynamicParamDataV8 volumeB; } AttenuationDataV8; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; float reverbDirect; float reverbRoom; dword flags; } CategoryDynamicDataV8; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV8 attenuation TPTR_END; TPTR_START CategoryDynamicDataV8 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV8; typedef struct { qword name; dword flags; float room; float roomHF; float roomLF; float decayTime; float decayHFRatio; float reflections; float reflectionsDelay; float reverb; float reverbDelay; float referenceHF; float referenceLF; float diffusion; float density; } ReverbDataV8; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV8 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV8 category TSTRUCT_ARRAY_PTR_END; } SnapshotDataV8; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV8 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV8 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ReverbDataV8 reverb TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV8 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; } AudioSettingsDataV8; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV8; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV8; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV8 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV8 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV8 fileName TSTRUCT_ARRAY_PTR_END; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword flags; dword loopCount; DynamicParamDataV8 depth; DynamicParamDataV8 pan; DynamicParamDataV8 pitch; DynamicParamDataV8 pitchMS; DynamicParamDataV8 volume; DynamicParamDataV8 volumeMS; RangeDataV8 initialDelay; RangeDataV8 playLength; RangeDataV8 positionOffsetAngle; RangeDataV8 positionRange; RangeDataV8 repeatCount; RangeDataV8 repeatTime; RangeDataV8 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte musicPriority; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV8; typedef struct { qword name; filename fileName; } ScriptRefDataV8; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV8; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV8 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV8; typedef struct { qword musicCue; qword endCue; TPTR_START AudioSettingsDataV8 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV8 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV8 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV8 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV8 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; float fadeInTime; float volume; } ScriptFileDataV8; /* Version: 7, ReferencedFunction: 0x140BBFFE0 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV7; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV7 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV7; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV7 dynamicData TPTR_END; } BussDataV7; typedef struct { float offset; float value; } EnvelopePointDataV7; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV7 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV7; typedef struct { float max; float min; byte min; } RangeDataV7; typedef struct { RangeDataV7 time; RangeDataV7 value; } RandomParamDataV7; typedef struct { TPTR_START EnvelopeDataV7 envelopeData TPTR_END; TPTR_START RandomParamDataV7 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV7; typedef struct { float coneInsideAngle; float coneOutsideAngle; float coneOutsideVolume; DynamicParamDataV7 lowPass; DynamicParamDataV7 pan3D; DynamicParamDataV7 spread3D; DynamicParamDataV7 volumeA; DynamicParamDataV7 volumeB; } AttenuationDataV7; typedef struct { qword name; float volume; float nonFocusGain; float lowPass; dword flags; } CategoryDynamicDataV7; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV7 attenuation TPTR_END; TPTR_START CategoryDynamicDataV7 dynamicData TPTR_END; float muteFadeTime; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV7; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV7 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDynamicDataV7 category TSTRUCT_ARRAY_PTR_END; } SnapshotDataV7; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; float focusTransition; TSTRUCT_ARRAY_PTR_START BussDataV7 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV7 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV7 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; } AudioSettingsDataV7; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV7; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV7; typedef struct { qword category; qword endCue; qword name; qword offsetBone; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV7 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV7 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV7 fileName TSTRUCT_ARRAY_PTR_END; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword flags; dword loopCount; DynamicParamDataV7 depth; DynamicParamDataV7 pan; DynamicParamDataV7 pitch; DynamicParamDataV7 pitchMS; DynamicParamDataV7 volume; DynamicParamDataV7 volumeMS; RangeDataV7 initialDelay; RangeDataV7 playLength; RangeDataV7 positionOffsetAngle; RangeDataV7 positionRange; RangeDataV7 repeatCount; RangeDataV7 repeatTime; RangeDataV7 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV7; typedef struct { qword name; filename fileName; } ScriptRefDataV7; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV7; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV7 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV7; typedef struct { qword musicCue; qword endCue; TPTR_START AudioSettingsDataV7 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV7 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV7 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV7 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV7 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; float fadeInTime; float volume; } ScriptFileDataV7; /* Version: 6 */ typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV6; typedef struct { qword name; dword flags; float volume; TSTRUCT_ARRAY_PTR_START DspDataV6 dsp TSTRUCT_ARRAY_PTR_END; } BussDynamicDataV6; typedef struct { qword name; dword flags; qword output; TPTR_START BussDynamicDataV6 dynamicData TPTR_END; } BussDataV6; typedef struct { float offset; float value; } EnvelopePointDataV6; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV6 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV6; typedef struct { float max; float min; byte min; } RangeDataV6; typedef struct { RangeDataV6 time; RangeDataV6 value; } RandomParamDataV6; typedef struct { TPTR_START EnvelopeDataV6 envelopeData TPTR_END; TPTR_START RandomParamDataV6 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV6; typedef struct { float coneInsideAngle; float coneOutsideAngle; float coneOutsideVolume; DynamicParamDataV6 lowPass; DynamicParamDataV6 pan3D; DynamicParamDataV6 spread3D; DynamicParamDataV6 volumeA; } AttenuationDataV6; typedef struct { qword name; qword volumeGroupName; qword outputBussName; TPTR_START AttenuationDataV6 attenuation TPTR_END; float muteFadeTime; float volumeA; float volumeAThreshold; float volumeB; float volumeBThreshold; float volumeChangeRate; float volumeDucking; float volumeDuckingTimeAttack; float volumeDuckingTimeRelease; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV6; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDynamicDataV6 buss TSTRUCT_ARRAY_PTR_END; } SnapshotDataV6; typedef struct { qword defaultSnapshot; qword effectsBuss; float distanceScale; TSTRUCT_ARRAY_PTR_START BussDataV6 buss TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV6 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV6 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; } AudioSettingsDataV6; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV6; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV6; typedef struct { qword category; qword endCue; qword name; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV6 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV6 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV6 fileName TSTRUCT_ARRAY_PTR_END; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword flags; dword loopCount; DynamicParamDataV6 depth; DynamicParamDataV6 pan; DynamicParamDataV6 pitch; DynamicParamDataV6 pitchMS; DynamicParamDataV6 volume; DynamicParamDataV6 volumeMS; RangeDataV6 initialDelay; RangeDataV6 playLength; RangeDataV6 positionOffsetAngle; RangeDataV6 positionRange; RangeDataV6 repeatCount; RangeDataV6 repeatTime; RangeDataV6 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV6; typedef struct { qword name; filename fileName; } ScriptRefDataV6; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV6; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV6 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV6; typedef struct { qword musicCue; qword endCue; TPTR_START AudioSettingsDataV6 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV6 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV6 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV6 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV6 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; float fadeInTime; float volume; } ScriptFileDataV6; /* Version: 5 */ typedef struct { float offset; float value; } EnvelopePointDataV5; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV5 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV5; typedef struct { float max; float min; byte min; } RangeDataV5; typedef struct { RangeDataV5 time; RangeDataV5 value; } RandomParamDataV5; typedef struct { TPTR_START EnvelopeDataV5 envelopeData TPTR_END; TPTR_START RandomParamDataV5 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV5; typedef struct { float coneInsideAngle; float coneOutsideAngle; float coneOutsideVolume; DynamicParamDataV5 lowPass; DynamicParamDataV5 pan3D; DynamicParamDataV5 spread3D; DynamicParamDataV5 volumeA; } AttenuationDataV5; typedef struct { qword name; qword volumeGroupName; TPTR_START AttenuationDataV5 attenuation TPTR_END; float muteFadeTime; float volumeA; float volumeAThreshold; float volumeB; float volumeBThreshold; float volumeChangeRate; float volumeDucking; float volumeDuckingTimeAttack; float volumeDuckingTimeRelease; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV5; typedef struct { dword type; dword flags; TSTRUCT_ARRAY_PTR_START float property TSTRUCT_ARRAY_PTR_END; } DspDataV5; typedef struct { qword name; qword output; dword flags; TSTRUCT_ARRAY_PTR_START DspDataV5 dsp TSTRUCT_ARRAY_PTR_END; float volume; } BussDataV5; typedef struct { qword name; float blendInTime; float blendOutTime; dword flags; TSTRUCT_ARRAY_PTR_START BussDataV5 buss TSTRUCT_ARRAY_PTR_END; } SnapshotDataV5; typedef struct { qword defaultBuss; qword effectsBuss; float distanceScale; TSTRUCT_ARRAY_PTR_START CategoryDataV5 category TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SnapshotDataV5 snapshot TSTRUCT_ARRAY_PTR_END; filename bankIndexFileName; filename bankScriptFileName; } AudioSettingsDataV5; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV5; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV5; typedef struct { qword category; qword endCue; qword name; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV5 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV5 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV5 fileName TSTRUCT_ARRAY_PTR_END; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword flags; dword loopCount; DynamicParamDataV5 depth; DynamicParamDataV5 pan; DynamicParamDataV5 pitch; DynamicParamDataV5 pitchMS; DynamicParamDataV5 volume; DynamicParamDataV5 volumeMS; RangeDataV5 initialDelay; RangeDataV5 playLength; RangeDataV5 positionOffsetAngle; RangeDataV5 positionRange; RangeDataV5 repeatCount; RangeDataV5 repeatTime; RangeDataV5 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV5; typedef struct { qword name; filename fileName; } ScriptRefDataV5; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV5; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV5 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV5; typedef struct { qword musicCue; qword endCue; TPTR_START AudioSettingsDataV5 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV5 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV5 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV5 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV5 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; float fadeInTime; float volume; } ScriptFileDataV5; /* Version: 4 */ typedef struct { qword name; qword parentName; dword flags; float volume; } VolumeGroupDataV4; typedef struct { float offset; float value; } EnvelopePointDataV4; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV4 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV4; typedef struct { float max; float min; byte min; } RangeDataV4; typedef struct { RangeDataV4 time; RangeDataV4 value; } RandomParamDataV4; typedef struct { TPTR_START EnvelopeDataV4 envelopeData TPTR_END; TPTR_START RandomParamDataV4 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV4; typedef struct { float coneInsideAngle; float coneOutsideAngle; float coneOutsideVolume; DynamicParamDataV4 lowPass; DynamicParamDataV4 pan3D; DynamicParamDataV4 spread3D; DynamicParamDataV4 volumeA; } AttenuationDataV4; typedef struct { qword name; qword volumeGroupName; TPTR_START AttenuationDataV4 attenuation TPTR_END; float muteFadeTime; float volumeA; float volumeAThreshold; float volumeB; float volumeBThreshold; float volumeChangeRate; float volumeDucking; float volumeDuckingTimeAttack; float volumeDuckingTimeRelease; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV4; typedef struct { TSTRUCT_ARRAY_PTR_START VolumeGroupDataV4 volumeGroup TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV4 category TSTRUCT_ARRAY_PTR_END; float distanceScale; filename bankIndexFileName; filename bankScriptFileName; } AudioSettingsDataV4; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV4; typedef struct { TSTRUCT_ARRAY_PTR_START DynamicParamDataV4 param TSTRUCT_ARRAY_PTR_END; byte type; } DspDataV4; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV4; typedef struct { qword category; qword endCue; qword name; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV4 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV4 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV4 fileName TSTRUCT_ARRAY_PTR_END; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword flags; dword loopCount; DynamicParamDataV4 depth; DynamicParamDataV4 pan; DynamicParamDataV4 pitch; DynamicParamDataV4 pitchMS; DynamicParamDataV4 volume; DynamicParamDataV4 volumeMS; RangeDataV4 initialDelay; RangeDataV4 playLength; RangeDataV4 positionOffsetAngle; RangeDataV4 positionRange; RangeDataV4 repeatCount; RangeDataV4 repeatTime; RangeDataV4 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV4; typedef struct { qword name; filename fileName; } ScriptRefDataV4; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV4; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV4 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV4; typedef struct { qword musicCue; qword endCue; TPTR_START AudioSettingsDataV4 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV4 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV4 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV4 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV4 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; float fadeInTime; float volume; } ScriptFileDataV4; /* Version: 3 */ typedef struct { qword name; qword parentName; dword flags; float volume; } VolumeGroupDataV3; typedef struct { float offset; float value; } EnvelopePointDataV3; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV3 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV3; typedef struct { float max; float min; byte min; } RangeDataV3; typedef struct { RangeDataV3 time; RangeDataV3 value; } RandomParamDataV3; typedef struct { TPTR_START EnvelopeDataV3 envelopeData TPTR_END; TPTR_START RandomParamDataV3 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV3; typedef struct { float coneInsideAngle; float coneOutsideAngle; float coneOutsideVolume; DynamicParamDataV3 lowPass; DynamicParamDataV3 pan3D; DynamicParamDataV3 spread3D; DynamicParamDataV3 volumeA; } AttenuationDataV3; typedef struct { qword name; qword volumeGroupName; TPTR_START AttenuationDataV3 attenuation TPTR_END; float muteFadeTime; float volumeA; float volumeAThreshold; float volumeB; float volumeBThreshold; float volumeChangeRate; float volumeDucking; float volumeDuckingTimeAttack; float volumeDuckingTimeRelease; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV3; typedef struct { TSTRUCT_ARRAY_PTR_START VolumeGroupDataV3 volumeGroup TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV3 category TSTRUCT_ARRAY_PTR_END; float distanceScale; filename voiceBankFileName; } AudioSettingsDataV3; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV3; typedef struct { TSTRUCT_ARRAY_PTR_START DynamicParamDataV3 param TSTRUCT_ARRAY_PTR_END; byte type; } DspDataV3; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV3; typedef struct { qword category; qword endCue; qword name; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV3 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV3 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV3 fileName TSTRUCT_ARRAY_PTR_END; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword flags; dword loopCount; DynamicParamDataV3 depth; DynamicParamDataV3 pan; DynamicParamDataV3 pitch; DynamicParamDataV3 pitchMS; DynamicParamDataV3 volume; DynamicParamDataV3 volumeMS; RangeDataV3 initialDelay; RangeDataV3 playLength; RangeDataV3 positionOffsetAngle; RangeDataV3 positionRange; RangeDataV3 repeatCount; RangeDataV3 repeatTime; RangeDataV3 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV3; typedef struct { qword name; filename fileName; } ScriptRefDataV3; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV3; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV3 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV3; typedef struct { qword musicCue; qword endCue; TPTR_START AudioSettingsDataV3 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV3 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV3 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV3 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV3 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; float fadeInTime; float volume; } ScriptFileDataV3; /* Version: 2 */ typedef struct { qword name; qword parentName; dword flags; float volume; } VolumeGroupDataV2; typedef struct { float offset; float value; } EnvelopePointDataV2; typedef struct { qword offsetParameter; TSTRUCT_ARRAY_PTR_START EnvelopePointDataV2 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; } EnvelopeDataV2; typedef struct { float max; float min; byte min; } RangeDataV2; typedef struct { RangeDataV2 time; RangeDataV2 value; } RandomParamDataV2; typedef struct { TPTR_START EnvelopeDataV2 envelopeData TPTR_END; TPTR_START RandomParamDataV2 randomParamData TPTR_END; float value; byte type; } DynamicParamDataV2; typedef struct { float coneInsideAngle; float coneOutsideAngle; float coneOutsideVolume; DynamicParamDataV2 lowPass; DynamicParamDataV2 pan3D; DynamicParamDataV2 spread3D; DynamicParamDataV2 volumeA; } AttenuationDataV2; typedef struct { qword name; qword volumeGroupName; TPTR_START AttenuationDataV2 attenuation TPTR_END; float muteFadeTime; float volumeA; float volumeAThreshold; float volumeB; float volumeBThreshold; float volumeChangeRate; float volumeDucking; float volumeDuckingTimeAttack; float volumeDuckingTimeRelease; dword flags; dword maxAudible; byte maxAudibleBehavior; } CategoryDataV2; typedef struct { TSTRUCT_ARRAY_PTR_START VolumeGroupDataV2 volumeGroup TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START CategoryDataV2 category TSTRUCT_ARRAY_PTR_END; float distanceScale; filename voiceBankFileName; } AudioSettingsDataV2; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } HandlerDataV2; typedef struct { TSTRUCT_ARRAY_PTR_START DynamicParamDataV2 param TSTRUCT_ARRAY_PTR_END; byte type; } DspDataV2; typedef struct { qword language; float weight; filename fileName; byte audioType; } FileNameDataV2; typedef struct { qword category; qword endCue; qword name; qword playlistId; TSTRUCT_ARRAY_PTR_START DspDataV2 dsp TSTRUCT_ARRAY_PTR_END; TPTR_START AttenuationDataV2 attenuation TPTR_END; TSTRUCT_ARRAY_PTR_START FileNameDataV2 fileName TSTRUCT_ARRAY_PTR_END; float endCueOffset; float fadeInTime; float fadeOutTime; float3 positionOffset; dword flags; dword loopCount; DynamicParamDataV2 depth; DynamicParamDataV2 pan; DynamicParamDataV2 pitch; DynamicParamDataV2 pitchMS; DynamicParamDataV2 volume; DynamicParamDataV2 volumeMS; RangeDataV2 initialDelay; RangeDataV2 playLength; RangeDataV2 positionOffsetAngle; RangeDataV2 positionRange; RangeDataV2 repeatCount; RangeDataV2 repeatTime; RangeDataV2 startTimeOffset; byte channelMode; byte channelPriority; byte fileIterateMode; byte loopMode; byte playbackMode; byte positionMode; byte repeatTimeFrom; } MetaSoundDataV2; typedef struct { qword name; filename fileName; } ScriptRefDataV2; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV2; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV2 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV2; typedef struct { qword musicCue; TPTR_START AudioSettingsDataV2 audioSettings TPTR_END; TSTRUCT_ARRAY_PTR_START HandlerDataV2 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV2 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV2 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV2 triggerKey TSTRUCT_ARRAY_PTR_END; dword flags; float fadeInTime; float volume; } ScriptFileDataV2; /* Version: 1 */ typedef struct { float offset; float value; } EnvelopePointDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START EnvelopePointDataV1 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; qword offsetParameter; } EnvelopeDataV1; typedef struct { float max; float min; byte min; } RangeDataV1; typedef struct { RangeDataV1 time; RangeDataV1 value; } RandomParamDataV1; typedef struct { TPTR_START EnvelopeDataV1 envelopeData TPTR_END; TPTR_START RandomParamDataV1 randomParamData TPTR_END; byte type; float value; } DynamicParamDataV1; typedef struct { float coneInsideAngle; float coneOutsideAngle; float coneOutsideVolume; DynamicParamDataV1 lowPass; DynamicParamDataV1 pan3D; DynamicParamDataV1 spread3D; DynamicParamDataV1 volumeA; } AttenuationDataV1; typedef struct { TPTR_START AttenuationDataV1 attenuation TPTR_END; dword flags; dword maxAudible; byte maxAudibleBehavior; float muteFadeTime; qword name; float volumeA; float volumeAThreshold; float volumeB; float volumeBThreshold; float volumeChangeRate; float volumeDucking; float volumeDuckingTimeAttack; float volumeDuckingTimeRelease; qword volumeGroupName; } CategoryDataV1; typedef struct { dword flags; qword name; qword parentName; float volume; } VolumeGroupDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START CategoryDataV1 category TSTRUCT_ARRAY_PTR_END; float distanceScale; filename voiceBankFileName; TSTRUCT_ARRAY_PTR_START VolumeGroupDataV1 volumeGroup TSTRUCT_ARRAY_PTR_END; } AudioSettingsDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; dword flags; qword name; } HandlerDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START DynamicParamDataV1 param TSTRUCT_ARRAY_PTR_END; byte type; } DspDataV1; typedef struct { byte audioType; filename fileName; qword language; float weight; } FileNameDataV1; typedef struct { TPTR_START AttenuationDataV1 attenuation TPTR_END; qword category; byte channelMode; byte channelPriority; DynamicParamDataV1 depth; TSTRUCT_ARRAY_PTR_START DspDataV1 dsp TSTRUCT_ARRAY_PTR_END; qword endCue; float endCueOffset; float fadeInTime; float fadeOutTime; byte fileIterateMode; TSTRUCT_ARRAY_PTR_START FileNameDataV1 fileName TSTRUCT_ARRAY_PTR_END; dword flags; RangeDataV1 initialDelay; dword loopCount; byte loopMode; qword name; DynamicParamDataV1 pan; DynamicParamDataV1 pitch; byte playbackMode; RangeDataV1 playLength; qword playlistId; byte positionMode; float3 positionOffset; RangeDataV1 positionOffsetAngle; RangeDataV1 positionRange; RangeDataV1 repeatCount; RangeDataV1 repeatTime; RangeDataV1 startTimeOffset; byte repeatTimeFrom; DynamicParamDataV1 volume; } MetaSoundDataV1; typedef struct { filename fileName; qword name; } ScriptRefDataV1; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV1; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV1 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV1; typedef struct { TPTR_START AudioSettingsDataV1 audioSettings TPTR_END; float fadeInTime; dword flags; TSTRUCT_ARRAY_PTR_START HandlerDataV1 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV1 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV1 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV1 triggerKey TSTRUCT_ARRAY_PTR_END; float volume; } ScriptFileDataV1; /* Version: 0 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; dword flags; qword name; } HandlerDataV0; typedef struct { float offset; float value; } EnvelopePointDataV0; typedef struct { TSTRUCT_ARRAY_PTR_START EnvelopePointDataV0 envelopePoint TSTRUCT_ARRAY_PTR_END; byte offsetType; qword offsetParameter; } EnvelopeDataV0; typedef struct { float max; float min; byte min; } RangeDataV0; typedef struct { RangeDataV0 time; RangeDataV0 value; } RandomParamDataV0; typedef struct { TPTR_START EnvelopeDataV0 envelopeData TPTR_END; TPTR_START RandomParamDataV0 randomParamData TPTR_END; byte type; float value; } DynamicParamDataV0; typedef struct { float coneInsideAngle; float coneOutsideAngle; float coneOutsideVolume; DynamicParamDataV0 lowPass; DynamicParamDataV0 pan3D; DynamicParamDataV0 spread3D; DynamicParamDataV0 volumeA; } AttenuationDataV0; typedef struct { TSTRUCT_ARRAY_PTR_START DynamicParamDataV0 param TSTRUCT_ARRAY_PTR_END; byte type; } DspDataV0; typedef struct { byte audioType; filename fileName; qword language; float weight; } FileNameDataV0; typedef struct { TPTR_START AttenuationDataV0 attenuation TPTR_END; qword category; byte channelMode; byte channelPriority; DynamicParamDataV0 depth; TSTRUCT_ARRAY_PTR_START DspDataV0 dsp TSTRUCT_ARRAY_PTR_END; qword endCue; float endCueOffset; float fadeInTime; float fadeOutTime; byte fileIterateMode; TSTRUCT_ARRAY_PTR_START FileNameDataV0 fileName TSTRUCT_ARRAY_PTR_END; dword flags; RangeDataV0 initialDelay; dword loopCount; byte loopMode; qword name; DynamicParamDataV0 pan; DynamicParamDataV0 pitch; byte playbackMode; RangeDataV0 playLength; qword playlistId; byte positionMode; float3 positionOffset; RangeDataV0 positionOffsetAngle; RangeDataV0 positionRange; RangeDataV0 repeatCount; RangeDataV0 repeatTime; RangeDataV0 startTimeOffset; byte repeatTimeFrom; DynamicParamDataV0 volume; } MetaSoundDataV0; typedef struct { filename fileName; qword name; } ScriptRefDataV0; typedef struct { qword cue; qword end; float time; byte type; } TriggerMarkerDataV0; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TriggerMarkerDataV0 triggerMarker TSTRUCT_ARRAY_PTR_END; } TriggerKeyDataV0; typedef struct { float fadeInTime; dword flags; TSTRUCT_ARRAY_PTR_START HandlerDataV0 handler TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MetaSoundDataV0 metaSound TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptRefDataV0 scriptRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV0 triggerKey TSTRUCT_ARRAY_PTR_END; float volume; } ScriptFileDataV0; /* =============================================== * Chunk: BKCK, versions: 3, strucTab: 0x141BF0140 * =============================================== */ /* Version: 2 */ typedef struct { dword voiceId; dword flags; dword reserved1; dword reserved2; dword reserved3; dword reserved4; float length; float offset; byte reserved5; byte reserved6; byte reserved7; byte reserved8; TSTRUCT_ARRAY_PTR_START byte audioData TSTRUCT_ARRAY_PTR_END; } AsndFileDataV2; typedef struct { dword reserved1; dword reserved2; dword reserved3; dword reserved4; } ReservedBankDataV2; typedef struct { dword reserved1; dword reserved2; dword reserved3; dword reserved4; TSTRUCT_ARRAY_PTR_START AsndFileDataV2 asndFile TSTRUCT_ARRAY_PTR_END; TPTR_START ReservedBankDataV2 reservedData TPTR_END; } BankFileDataV2; /* Version: 1 */ typedef struct { dword voiceId; dword flags; dword reserved1; dword reserved2; float length; float offset; TSTRUCT_ARRAY_PTR_START byte audioData TSTRUCT_ARRAY_PTR_END; } AsndFileDataV1; typedef struct { dword reserved1; dword reserved2; TSTRUCT_ARRAY_PTR_START AsndFileDataV1 asndFile TSTRUCT_ARRAY_PTR_END; } BankFileDataV1; /* Version: 0 */ typedef struct { dword voiceId; dword flags; dword reserved1; dword reserved2; float length; float offset; TSTRUCT_ARRAY_PTR_START byte audioData TSTRUCT_ARRAY_PTR_END; } AsndFileDataV0; typedef struct { dword reserved1; dword reserved2; TSTRUCT_ARRAY_PTR_START AsndFileDataV0 asndFile TSTRUCT_ARRAY_PTR_END; } BankFileDataV0; /* =============================================== * Chunk: BIDX, versions: 1, strucTab: 0x141BF01A8 * =============================================== */ /* Version: 0 */ typedef struct { filename fileName; } BankFileNameDataV0; typedef struct { TSTRUCT_ARRAY_PTR_START BankFileNameDataV0 bankFileName TSTRUCT_ARRAY_PTR_END; } BankLanguageDataV0; typedef struct { TSTRUCT_ARRAY_PTR_START BankLanguageDataV0 bankLanguage TSTRUCT_ARRAY_PTR_END; } BankIndexDataV0; /* =============================================== * Chunk: ASND, versions: 3, strucTab: 0x141BF0280 * =============================================== */ /* Version: 2 */ typedef struct { dword reserved1; dword reserved2; dword reserved3; dword reserved4; } ReservedWaveformDataV2; typedef struct { float length; float offset; TPTR_START ReservedWaveformDataV2 reservedData TPTR_END; dword reserved1; dword reserved2; dword crc; dword numSamples; dword loopStart; dword loopEnd; dword flags; byte format; byte reserved3; byte reserved4; byte reserved5; byte numChannels; byte reserved6; byte reserved7; byte reserved8; TSTRUCT_ARRAY_PTR_START byte audioData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte otherData TSTRUCT_ARRAY_PTR_END; } WaveformDataV2; /* Version: 1, ReferencedFunction: 0x140BC0550 */ typedef struct { float length; float offset; dword crc; dword numSamples; dword loopStart; dword loopEnd; dword flags; byte format; byte noteBase; byte noteHigh; byte noteLow; byte numChannels; byte reserved1; byte reserved2; byte reserved3; TSTRUCT_ARRAY_PTR_START byte audioData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte otherData TSTRUCT_ARRAY_PTR_END; } WaveformDataV1; /* Version: 0 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; dword flags; float length; byte noteBase; byte noteHigh; byte noteLow; byte numChannels; dword numSamples; byte waveformDataType; } WaveformDataV0; /* =============================================== * Chunk: CSCN, versions: 37, strucTab: 0x141C28DB0 * =============================================== */ /* Version: 36, ReferencedFunction: 0x140BDB490 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV36; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV36; typedef struct { float time; float value; } FlagKeyDataV36; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV36; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV36 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV36 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV36 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV36; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV36 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV36 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV36; typedef struct { qword name; qword playScript; qword updateScript; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; dword flags; TSTRUCT_ARRAY_PTR_START TrackGroupDataV36 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV36; typedef struct { float intensity; byte3 color; } ColorDefDataV36; typedef struct { ColorDefDataV36 ambientGroundColor; ColorDefDataV36 ambientSkyColor; ColorDefDataV36 fillColor; ColorDefDataV36 hemisphericalColor; qword name; } AmbientLightDataV36; typedef struct { qword name; filename fileName; } FileNameRefDataV36; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV36; typedef struct { wchar_ptr text; byte language; } TextEntryDataV36; typedef struct { qword name; dword index; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV36 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV36; typedef struct { byte16 speciesId; qword name; qword modelId; qword modelVariant; } SpeciesResourceDataV36; typedef struct { TSTRUCT_ARRAY_PTR_START AmbientLightDataV36 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV36 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV36 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV36 textResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SpeciesResourceDataV36 speciesResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV36; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV36 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV36 resources; TPTR_START TrackGroupDataV36 trackGroup TPTR_END; } SceneDataV36; /* Version: 35 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV35; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV35; typedef struct { float time; float value; } FlagKeyDataV35; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV35; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV35 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV35 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV35 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV35; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV35 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV35 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV35; typedef struct { qword name; qword playScript; qword updateScript; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; dword flags; TSTRUCT_ARRAY_PTR_START TrackGroupDataV35 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV35; typedef struct { float intensity; byte3 color; } ColorDefDataV35; typedef struct { ColorDefDataV35 ambientGroundColor; ColorDefDataV35 ambientSkyColor; ColorDefDataV35 fillColor; ColorDefDataV35 hemisphericalColor; qword name; } AmbientLightDataV35; typedef struct { qword name; filename fileName; } FileNameRefDataV35; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV35; typedef struct { wchar_ptr text; byte language; } TextEntryDataV35; typedef struct { qword name; dword index; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV35 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV35; typedef struct { byte16 speciesId; qword name; qword modelId; qword modelVariant; } SpeciesResourceDataV35; typedef struct { TSTRUCT_ARRAY_PTR_START AmbientLightDataV35 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV35 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV35 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV35 textResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SpeciesResourceDataV35 speciesResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV35; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV35 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV35 resources; TPTR_START TrackGroupDataV35 trackGroup TPTR_END; } SceneDataV35; /* Version: 34, ReferencedFunction: 0x140BDB3D0 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV34; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV34; typedef struct { float time; float value; } FlagKeyDataV34; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV34; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV34 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV34 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV34 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV34; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV34 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV34 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV34; typedef struct { qword name; qword playScript; qword updateScript; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; dword flags; TSTRUCT_ARRAY_PTR_START TrackGroupDataV34 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV34; typedef struct { float intensity; byte3 color; } ColorDefDataV34; typedef struct { ColorDefDataV34 ambientGroundColor; ColorDefDataV34 ambientSkyColor; ColorDefDataV34 fillColor; ColorDefDataV34 hemisphericalColor; qword name; } AmbientLightDataV34; typedef struct { qword name; filename fileName; } FileNameRefDataV34; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV34; typedef struct { wchar_ptr text; byte language; } TextEntryDataV34; typedef struct { qword name; dword index; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV34 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV34; typedef struct { byte16 speciesId; qword modelId; qword modelVariant; } SpeciesResourceDataV34; typedef struct { TSTRUCT_ARRAY_PTR_START AmbientLightDataV34 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV34 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV34 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV34 textResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SpeciesResourceDataV34 speciesResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV34; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV34 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV34 resources; TPTR_START TrackGroupDataV34 trackGroup TPTR_END; } SceneDataV34; /* Version: 33, ReferencedFunction: 0x140BDB310 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV33; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV33; typedef struct { float time; float value; } FlagKeyDataV33; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV33; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV33 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV33 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV33 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV33; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV33 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV33 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV33; typedef struct { qword name; qword playScript; qword updateScript; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; dword flags; TSTRUCT_ARRAY_PTR_START TrackGroupDataV33 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV33; typedef struct { float intensity; byte3 color; } ColorDefDataV33; typedef struct { ColorDefDataV33 ambientGroundColor; ColorDefDataV33 ambientSkyColor; ColorDefDataV33 fillColor; ColorDefDataV33 hemisphericalColor; qword name; } AmbientLightDataV33; typedef struct { qword name; filename fileName; } FileNameRefDataV33; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV33; typedef struct { wchar_ptr text; byte language; } TextEntryDataV33; typedef struct { qword name; dword index; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV33 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV33; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV33 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV33 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV33 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV33 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV33; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV33 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV33 resources; TPTR_START TrackGroupDataV33 trackGroup TPTR_END; } SceneDataV33; /* Version: 32, ReferencedFunction: 0x140BDB250 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV32; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV32; typedef struct { float time; float value; } FlagKeyDataV32; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV32; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV32 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV32 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV32 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV32; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV32 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV32 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV32; typedef struct { qword name; qword playScript; qword updateScript; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; dword flags; TSTRUCT_ARRAY_PTR_START TrackGroupDataV32 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV32; typedef struct { float intensity; byte3 color; } ColorDefDataV32; typedef struct { ColorDefDataV32 ambientGroundColor; ColorDefDataV32 ambientSkyColor; ColorDefDataV32 fillColor; ColorDefDataV32 hemisphericalColor; qword name; } AmbientLightDataV32; typedef struct { qword name; filename fileName; } FileNameRefDataV32; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV32; typedef struct { wchar_ptr text; byte language; } TextEntryDataV32; typedef struct { qword name; dword index; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV32 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV32; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV32 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV32 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV32 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV32 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV32; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV32 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV32 resources; TPTR_START TrackGroupDataV32 trackGroup TPTR_END; } SceneDataV32; /* Version: 31, ReferencedFunction: 0x140BDB190 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV31; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV31; typedef struct { float time; float value; } FlagKeyDataV31; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV31; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV31 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV31 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV31 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV31; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV31 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV31 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV31; typedef struct { qword name; qword playScript; qword updateScript; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; dword flags; TSTRUCT_ARRAY_PTR_START TrackGroupDataV31 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV31; typedef struct { float intensity; byte3 color; } ColorDefDataV31; typedef struct { ColorDefDataV31 ambientGroundColor; ColorDefDataV31 ambientSkyColor; ColorDefDataV31 fillColor; ColorDefDataV31 hemisphericalColor; qword name; } AmbientLightDataV31; typedef struct { qword name; filename fileName; } FileNameRefDataV31; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV31; typedef struct { wchar_ptr text; byte language; } TextEntryDataV31; typedef struct { qword name; dword index; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV31 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV31; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV31 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV31 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV31 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV31 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV31; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV31 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV31 resources; TPTR_START TrackGroupDataV31 trackGroup TPTR_END; } SceneDataV31; /* Version: 30, ReferencedFunction: 0x140BDB140 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV30; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV30; typedef struct { float time; float value; } FlagKeyDataV30; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV30; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV30 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV30 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV30 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV30; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV30 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV30 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV30; typedef struct { qword name; qword playScript; qword updateScript; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; dword flags; TSTRUCT_ARRAY_PTR_START TrackGroupDataV30 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV30; typedef struct { float intensity; byte3 color; } ColorDefDataV30; typedef struct { ColorDefDataV30 ambientGroundColor; ColorDefDataV30 ambientSkyColor; ColorDefDataV30 fillColor; ColorDefDataV30 hemisphericalColor; qword name; } AmbientLightDataV30; typedef struct { qword name; filename fileName; } FileNameRefDataV30; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV30; typedef struct { wchar_ptr text; byte language; } TextEntryDataV30; typedef struct { qword name; dword index; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV30 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV30; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV30 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV30 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV30 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV30 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV30; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV30 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV30 resources; TPTR_START TrackGroupDataV30 trackGroup TPTR_END; } SceneDataV30; /* Version: 29 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV29; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV29; typedef struct { float time; float value; } FlagKeyDataV29; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV29; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV29 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV29 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV29 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV29; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV29 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV29 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV29; typedef struct { qword name; qword playScript; qword updateScript; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; dword flags; TSTRUCT_ARRAY_PTR_START TrackGroupDataV29 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV29; typedef struct { float intensity; byte3 color; } ColorDefDataV29; typedef struct { ColorDefDataV29 ambientGroundColor; ColorDefDataV29 ambientSkyColor; ColorDefDataV29 fillColor; ColorDefDataV29 hemisphericalColor; qword name; } AmbientLightDataV29; typedef struct { qword name; filename fileName; } FileNameRefDataV29; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV29; typedef struct { wchar_ptr text; byte language; } TextEntryDataV29; typedef struct { byte16 guid; qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV29 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV29; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV29 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV29 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV29 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV29 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV29; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV29 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV29 resources; TPTR_START TrackGroupDataV29 trackGroup TPTR_END; } SceneDataV29; /* Version: 28, ReferencedFunction: 0x140BDB080 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV28; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV28; typedef struct { float time; float value; } FlagKeyDataV28; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV28; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV28 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV28 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV28 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV28; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV28 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV28 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV28; typedef struct { qword name; qword playScript; qword updateScript; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; dword flags; TSTRUCT_ARRAY_PTR_START TrackGroupDataV28 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV28; typedef struct { float intensity; byte3 color; } ColorDefDataV28; typedef struct { ColorDefDataV28 ambientGroundColor; ColorDefDataV28 ambientSkyColor; ColorDefDataV28 fillColor; ColorDefDataV28 hemisphericalColor; qword name; } AmbientLightDataV28; typedef struct { qword name; filename fileName; } FileNameRefDataV28; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV28; typedef struct { wchar_ptr text; byte language; } TextEntryDataV28; typedef struct { qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV28 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV28; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV28 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV28 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV28 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV28 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV28; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV28 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV28 resources; TPTR_START TrackGroupDataV28 trackGroup TPTR_END; } SceneDataV28; /* Version: 27, ReferencedFunction: 0x140BDAFA0 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV27; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV27; typedef struct { float time; float value; } FlagKeyDataV27; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV27; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV27 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV27 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV27 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV27; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV27 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV27 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV27; typedef struct { qword name; qword playScript; qword updateScript; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; dword flags; TSTRUCT_ARRAY_PTR_START TrackGroupDataV27 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV27; typedef struct { float intensity; byte3 color; } ColorDefDataV27; typedef struct { ColorDefDataV27 ambientGroundColor; ColorDefDataV27 ambientSkyColor; ColorDefDataV27 fillColor; ColorDefDataV27 hemisphericalColor; qword name; } AmbientLightDataV27; typedef struct { qword name; filename fileName; } FileNameRefDataV27; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV27; typedef struct { wchar_ptr text; byte language; } TextEntryDataV27; typedef struct { qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV27 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV27; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV27 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV27 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV27 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV27 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV27; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV27 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV27 resources; TPTR_START TrackGroupDataV27 trackGroup TPTR_END; } SceneDataV27; /* Version: 26, ReferencedFunction: 0x140BDAEE0 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV26; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV26; typedef struct { float time; float value; } FlagKeyDataV26; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV26; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV26 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV26 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV26 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV26; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV26 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV26 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV26; typedef struct { qword name; qword playScript; qword updateScript; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; dword flags; TSTRUCT_ARRAY_PTR_START TrackGroupDataV26 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV26; typedef struct { float intensity; byte3 color; } ColorDefDataV26; typedef struct { ColorDefDataV26 ambientGroundColor; ColorDefDataV26 ambientSkyColor; ColorDefDataV26 fillColor; ColorDefDataV26 hemisphericalColor; qword name; } AmbientLightDataV26; typedef struct { qword name; filename fileName; } FileNameRefDataV26; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV26; typedef struct { wchar_ptr text; byte language; } TextEntryDataV26; typedef struct { qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV26 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV26; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV26 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV26 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV26 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV26 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV26; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV26 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV26 resources; TPTR_START TrackGroupDataV26 trackGroup TPTR_END; } SceneDataV26; /* Version: 25, ReferencedFunction: 0x140BDAE20 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV25; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV25; typedef struct { float time; float value; } FlagKeyDataV25; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV25; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV25 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV25 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV25 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV25; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV25 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV25 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV25; typedef struct { qword name; qword playScript; qword updateScript; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; dword flags; TSTRUCT_ARRAY_PTR_START TrackGroupDataV25 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV25; typedef struct { float intensity; byte3 color; } ColorDefDataV25; typedef struct { ColorDefDataV25 ambientGroundColor; ColorDefDataV25 ambientSkyColor; ColorDefDataV25 fillColor; ColorDefDataV25 hemisphericalColor; qword name; } AmbientLightDataV25; typedef struct { qword name; filename fileName; } FileNameRefDataV25; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV25; typedef struct { wchar_ptr text; byte language; } TextEntryDataV25; typedef struct { qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV25 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV25; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV25 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV25 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV25 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV25 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV25; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV25 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV25 resources; TPTR_START TrackGroupDataV25 trackGroup TPTR_END; } SceneDataV25; /* Version: 24, ReferencedFunction: 0x140BDAD60 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV24; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV24; typedef struct { float time; float value; } FlagKeyDataV24; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV24; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV24 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV24 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV24 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV24; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV24 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV24 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV24; typedef struct { qword name; qword playScript; qword updateScript; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; dword flags; TSTRUCT_ARRAY_PTR_START TrackGroupDataV24 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV24; typedef struct { float intensity; byte3 color; } ColorDefDataV24; typedef struct { ColorDefDataV24 ambientGroundColor; ColorDefDataV24 ambientSkyColor; ColorDefDataV24 fillColor; ColorDefDataV24 hemisphericalColor; qword name; } AmbientLightDataV24; typedef struct { qword name; filename fileName; } FileNameRefDataV24; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV24; typedef struct { wchar_ptr text; byte language; } TextEntryDataV24; typedef struct { qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV24 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV24; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV24 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV24 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV24 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV24 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV24; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV24 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV24 resources; TPTR_START TrackGroupDataV24 trackGroup TPTR_END; } SceneDataV24; /* Version: 23 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV23; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV23; typedef struct { float time; float value; } FlagKeyDataV23; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV23; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV23 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV23 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV23 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV23; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV23 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV23 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV23; typedef struct { qword name; qword updateScript; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; dword flags; TSTRUCT_ARRAY_PTR_START TrackGroupDataV23 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV23; typedef struct { float intensity; byte3 color; } ColorDefDataV23; typedef struct { ColorDefDataV23 ambientGroundColor; ColorDefDataV23 ambientSkyColor; ColorDefDataV23 fillColor; ColorDefDataV23 hemisphericalColor; qword name; } AmbientLightDataV23; typedef struct { qword name; filename fileName; } FileNameRefDataV23; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV23; typedef struct { wchar_ptr text; byte language; } TextEntryDataV23; typedef struct { qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV23 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV23; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV23 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV23 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV23 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV23 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV23; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV23 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV23 resources; TPTR_START TrackGroupDataV23 trackGroup TPTR_END; } SceneDataV23; /* Version: 22, ReferencedFunction: 0x140BDACA0 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV22; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV22; typedef struct { float time; float value; } FlagKeyDataV22; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV22; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV22 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV22 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV22 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV22; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV22 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV22 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV22; typedef struct { qword name; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; qword updateScript; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV22 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV22; typedef struct { float intensity; byte3 color; } ColorDefDataV22; typedef struct { ColorDefDataV22 ambientGroundColor; ColorDefDataV22 ambientSkyColor; ColorDefDataV22 fillColor; ColorDefDataV22 hemisphericalColor; qword name; } AmbientLightDataV22; typedef struct { qword name; filename fileName; } FileNameRefDataV22; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV22; typedef struct { wchar_ptr text; byte language; } TextEntryDataV22; typedef struct { qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV22 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV22; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV22 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV22 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV22 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV22 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV22; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV22 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV22 resources; TPTR_START TrackGroupDataV22 trackGroup TPTR_END; } SceneDataV22; /* Version: 21 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV21; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV21; typedef struct { float time; float value; } FlagKeyDataV21; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV21; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV21 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV21 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV21 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV21; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV21 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV21 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV21; typedef struct { qword name; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; qword updateScript; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV21 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV21; typedef struct { float intensity; byte3 color; } ColorDefDataV21; typedef struct { ColorDefDataV21 ambientGroundColor; ColorDefDataV21 ambientSkyColor; ColorDefDataV21 fillColor; ColorDefDataV21 hemisphericalColor; qword name; } AmbientLightDataV21; typedef struct { qword name; filename fileName; } FileNameRefDataV21; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV21; typedef struct { wchar_ptr text; byte language; } TextEntryDataV21; typedef struct { qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV21 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV21; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV21 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV21 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV21 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV21 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV21; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV21 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV21 resources; TPTR_START TrackGroupDataV21 trackGroup TPTR_END; } SceneDataV21; /* Version: 20, ReferencedFunction: 0x140BDABE0 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV20; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV20; typedef struct { float time; float value; } FlagKeyDataV20; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV20; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV20 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV20 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV20 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV20; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV20 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV20 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV20; typedef struct { qword name; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; qword updateScript; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV20 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV20; typedef struct { float intensity; byte3 color; } ColorDefDataV20; typedef struct { ColorDefDataV20 ambientGroundColor; ColorDefDataV20 ambientSkyColor; ColorDefDataV20 fillColor; ColorDefDataV20 hemisphericalColor; qword name; } AmbientLightDataV20; typedef struct { qword name; filename fileName; } FileNameRefDataV20; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV20; typedef struct { wchar_ptr text; byte language; } TextEntryDataV20; typedef struct { qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV20 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV20; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV20 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV20 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV20 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV20 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV20; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV20 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV20 resources; } SceneDataV20; /* Version: 19, ReferencedFunction: 0x140BDAB20 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV19; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV19; typedef struct { float time; float value; } FlagKeyDataV19; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV19; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV19 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV19 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV19 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV19; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV19 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV19 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV19; typedef struct { qword name; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; qword updateScript; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV19 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV19; typedef struct { float intensity; byte3 color; } ColorDefDataV19; typedef struct { ColorDefDataV19 ambientGroundColor; ColorDefDataV19 ambientSkyColor; ColorDefDataV19 fillColor; ColorDefDataV19 hemisphericalColor; qword name; } AmbientLightDataV19; typedef struct { qword name; filename fileName; } FileNameRefDataV19; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV19; typedef struct { wchar_ptr text; byte language; } TextEntryDataV19; typedef struct { qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV19 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV19; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV19 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV19 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV19 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV19 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV19; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV19 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV19 resources; } SceneDataV19; /* Version: 18, ReferencedFunction: 0x140BDAB20 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV18; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV18; typedef struct { float time; float value; } FlagKeyDataV18; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV18; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV18 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV18 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV18 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV18; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV18 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV18 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV18; typedef struct { qword name; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; qword updateScript; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV18 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV18; typedef struct { float intensity; byte3 color; } ColorDefDataV18; typedef struct { ColorDefDataV18 ambientGroundColor; ColorDefDataV18 ambientSkyColor; ColorDefDataV18 fillColor; ColorDefDataV18 hemisphericalColor; qword name; } AmbientLightDataV18; typedef struct { qword name; filename fileName; } FileNameRefDataV18; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV18; typedef struct { wchar_ptr text; byte language; } TextEntryDataV18; typedef struct { qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV18 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV18; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV18 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV18 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV18 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV18 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV18; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV18 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV18 resources; } SceneDataV18; /* Version: 17, ReferencedFunction: 0x140BDAA60 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV17; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV17; typedef struct { float time; float value; } FlagKeyDataV17; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV17; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV17 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV17 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV17 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV17; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV17 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV17 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV17; typedef struct { qword name; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; qword updateScript; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV17 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV17; typedef struct { float intensity; byte3 color; } ColorDefDataV17; typedef struct { ColorDefDataV17 ambientGroundColor; ColorDefDataV17 ambientSkyColor; ColorDefDataV17 fillColor; ColorDefDataV17 hemisphericalColor; qword name; } AmbientLightDataV17; typedef struct { qword name; filename fileName; } FileNameRefDataV17; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV17; typedef struct { wchar_ptr text; byte language; } TextEntryDataV17; typedef struct { qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV17 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV17; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV17 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV17 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV17 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV17 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV17; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV17 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV17 resources; } SceneDataV17; /* Version: 16, ReferencedFunction: 0x140BDA9A0 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV16; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV16; typedef struct { float time; float value; } FlagKeyDataV16; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV16; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV16 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV16 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV16 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV16; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV16 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV16 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV16; typedef struct { qword name; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; qword updateScript; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV16 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV16; typedef struct { float intensity; byte3 color; } ColorDefDataV16; typedef struct { ColorDefDataV16 ambientGroundColor; ColorDefDataV16 ambientSkyColor; ColorDefDataV16 fillColor; ColorDefDataV16 hemisphericalColor; qword name; } AmbientLightDataV16; typedef struct { qword name; filename fileName; } FileNameRefDataV16; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV16; typedef struct { wchar_ptr text; byte language; } TextEntryDataV16; typedef struct { qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV16 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV16; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV16 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV16 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV16 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV16 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV16; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV16 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV16 resources; } SceneDataV16; /* Version: 15 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV15; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV15; typedef struct { float time; float value; } FlagKeyDataV15; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV15; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV15 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV15 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV15 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV15; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV15 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV15 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV15; typedef struct { qword name; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; qword updateScript; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV15 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV15; typedef struct { float intensity; byte3 color; } ColorDefDataV15; typedef struct { ColorDefDataV15 ambientGroundColor; ColorDefDataV15 ambientSkyColor; ColorDefDataV15 fillColor; ColorDefDataV15 hemisphericalColor; qword name; } AmbientLightDataV15; typedef struct { qword name; filename fileName; } FileNameRefDataV15; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV15; typedef struct { wchar_ptr text; byte language; } TextEntryDataV15; typedef struct { qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV15 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV15; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV15 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV15 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV15 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV15 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV15; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV15 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV15 resources; } SceneDataV15; /* Version: 14 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV14; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV14; typedef struct { float time; float value; } FlagKeyDataV14; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV14; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV14 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV14 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV14 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV14; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV14 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV14 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV14; typedef struct { qword name; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV14 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV14; typedef struct { float intensity; byte3 color; } ColorDefDataV14; typedef struct { ColorDefDataV14 ambientGroundColor; ColorDefDataV14 ambientSkyColor; ColorDefDataV14 fillColor; ColorDefDataV14 hemisphericalColor; qword name; } AmbientLightDataV14; typedef struct { qword name; filename fileName; } FileNameRefDataV14; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV14; typedef struct { wchar_ptr text; byte language; } TextEntryDataV14; typedef struct { qword name; dword id; dword voiceId; TSTRUCT_ARRAY_PTR_START TextEntryDataV14 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV14; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV14 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV14 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV14 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV14 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV14; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV14 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV14 resources; } SceneDataV14; /* Version: 13, ReferencedFunction: 0x140BDA900 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV13; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV13; typedef struct { float time; float value; } FlagKeyDataV13; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV13; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV13 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV13 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV13 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV13; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV13 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV13 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV13; typedef struct { qword name; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV13 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV13; typedef struct { float intensity; byte3 color; } ColorDefDataV13; typedef struct { ColorDefDataV13 ambientGroundColor; ColorDefDataV13 ambientSkyColor; ColorDefDataV13 fillColor; ColorDefDataV13 hemisphericalColor; qword name; } AmbientLightDataV13; typedef struct { qword name; filename fileName; } FileNameRefDataV13; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV13; typedef struct { wchar_ptr text; byte language; } TextEntryDataV13; typedef struct { qword name; dword id; TSTRUCT_ARRAY_PTR_START TextEntryDataV13 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV13; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV13 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV13 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV13 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV13 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV13; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV13 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV13 resources; } SceneDataV13; /* Version: 12, ReferencedFunction: 0x140BDA7D0 */ typedef struct { qword value; filename pathVal; byte type; } PropertyDataV12; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV12; typedef struct { float time; float value; } FlagKeyDataV12; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV12; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START CurveKeyDataV12 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV12 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV12 triggerKey TSTRUCT_ARRAY_PTR_END; byte type; } TrackDataV12; typedef struct { qword name; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV12 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV12 track TSTRUCT_ARRAY_PTR_END; byte type; } TrackGroupDataV12; typedef struct { qword name; fileref environmentMap; wchar_ptr map; wchar_ptr clientMap; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV12 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV12; typedef struct { float intensity; byte3 color; } ColorDefDataV12; typedef struct { ColorDefDataV12 ambientGroundColor; ColorDefDataV12 ambientSkyColor; ColorDefDataV12 fillColor; ColorDefDataV12 hemisphericalColor; qword name; } AmbientLightDataV12; typedef struct { qword name; filename fileName; } FileNameRefDataV12; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV12; typedef struct { wchar_ptr text; byte language; } TextEntryDataV12; typedef struct { qword name; dword id; TSTRUCT_ARRAY_PTR_START TextEntryDataV12 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV12; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV12 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV12 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV12 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV12 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV12; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV12 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV12 resources; } SceneDataV12; /* Version: 11, ReferencedFunction: 0x140BDA710 */ typedef struct { byte type; qword value; filename pathVal; } PropertyDataV11; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV11; typedef struct { float time; float value; } FlagKeyDataV11; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV11; typedef struct { qword name; byte type; TSTRUCT_ARRAY_PTR_START CurveKeyDataV11 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV11 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV11 triggerKey TSTRUCT_ARRAY_PTR_END; } TrackDataV11; typedef struct { qword name; byte type; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV11 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV11 track TSTRUCT_ARRAY_PTR_END; } TrackGroupDataV11; typedef struct { qword name; float length; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; TSTRUCT_ARRAY_PTR_START TrackGroupDataV11 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV11; typedef struct { byte3 color; float intensity; } ColorDefDataV11; typedef struct { ColorDefDataV11 ambientGroundColor; ColorDefDataV11 ambientSkyColor; ColorDefDataV11 fillColor; ColorDefDataV11 hemisphericalColor; qword name; } AmbientLightDataV11; typedef struct { qword name; filename fileName; } FileNameRefDataV11; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV11; typedef struct { wchar_ptr text; byte language; } TextEntryDataV11; typedef struct { qword name; dword id; TSTRUCT_ARRAY_PTR_START TextEntryDataV11 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV11; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV11 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV11 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV11 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV11 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV11; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV11 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV11 resources; } SceneDataV11; /* Version: 10, ReferencedFunction: 0x140BDA6B0 */ typedef struct { byte type; qword value; filename pathVal; } PropertyDataV10; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV10; typedef struct { float time; float value; } FlagKeyDataV10; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV10; typedef struct { qword name; byte type; TSTRUCT_ARRAY_PTR_START CurveKeyDataV10 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV10 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV10 triggerKey TSTRUCT_ARRAY_PTR_END; } TrackDataV10; typedef struct { qword name; byte type; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV10 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV10 track TSTRUCT_ARRAY_PTR_END; } TrackGroupDataV10; typedef struct { qword name; float length; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; TSTRUCT_ARRAY_PTR_START TrackGroupDataV10 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV10; typedef struct { byte3 color; float intensity; } ColorDefDataV10; typedef struct { ColorDefDataV10 ambientGroundColor; ColorDefDataV10 ambientSkyColor; ColorDefDataV10 fillColor; ColorDefDataV10 hemisphericalColor; qword name; } AmbientLightDataV10; typedef struct { qword name; filename fileName; } FileNameRefDataV10; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV10; typedef struct { wchar_ptr text; byte language; } TextEntryDataV10; typedef struct { qword name; dword id; TSTRUCT_ARRAY_PTR_START TextEntryDataV10 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV10; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV10 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV10 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV10 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV10 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV10; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV10 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV10 resources; } SceneDataV10; /* Version: 9, ReferencedFunction: 0x140BDA5F0 */ typedef struct { byte type; qword value; filename pathVal; } PropertyDataV9; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV9; typedef struct { float time; float value; } FlagKeyDataV9; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV9; typedef struct { qword name; byte type; TSTRUCT_ARRAY_PTR_START CurveKeyDataV9 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV9 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV9 triggerKey TSTRUCT_ARRAY_PTR_END; } TrackDataV9; typedef struct { qword name; byte type; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV9 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV9 track TSTRUCT_ARRAY_PTR_END; } TrackGroupDataV9; typedef struct { qword name; float length; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; TSTRUCT_ARRAY_PTR_START TrackGroupDataV9 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV9; typedef struct { byte3 color; float intensity; } ColorDefDataV9; typedef struct { ColorDefDataV9 ambientGroundColor; ColorDefDataV9 ambientSkyColor; ColorDefDataV9 fillColor; ColorDefDataV9 hemisphericalColor; qword name; } AmbientLightDataV9; typedef struct { qword name; filename fileName; } FileNameRefDataV9; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV9; typedef struct { wchar_ptr text; byte language; } TextEntryDataV9; typedef struct { qword name; dword id; TSTRUCT_ARRAY_PTR_START TextEntryDataV9 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV9; typedef struct { dword crc; TSTRUCT_ARRAY_PTR_START AmbientLightDataV9 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV9 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV9 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV9 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV9; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV9 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV9 resources; } SceneDataV9; /* Version: 8 */ typedef struct { byte type; qword value; filename pathVal; } PropertyDataV8; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV8; typedef struct { float time; float value; } FlagKeyDataV8; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV8; typedef struct { qword name; byte type; TSTRUCT_ARRAY_PTR_START CurveKeyDataV8 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV8 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV8 triggerKey TSTRUCT_ARRAY_PTR_END; } TrackDataV8; typedef struct { qword name; byte type; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV8 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV8 track TSTRUCT_ARRAY_PTR_END; } TrackGroupDataV8; typedef struct { qword name; float length; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; TSTRUCT_ARRAY_PTR_START TrackGroupDataV8 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV8; typedef struct { byte3 color; float intensity; } ColorDefDataV8; typedef struct { ColorDefDataV8 ambientGroundColor; ColorDefDataV8 ambientSkyColor; ColorDefDataV8 fillColor; ColorDefDataV8 hemisphericalColor; qword name; } AmbientLightDataV8; typedef struct { qword name; filename fileName; } FileNameRefDataV8; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV8; typedef struct { wchar_ptr text; byte language; } TextEntryDataV8; typedef struct { qword name; dword id; TSTRUCT_ARRAY_PTR_START TextEntryDataV8 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV8; typedef struct { TSTRUCT_ARRAY_PTR_START AmbientLightDataV8 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FileNameRefDataV8 fileNameRef TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV8 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV8 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV8; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV8 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV8 resources; } SceneDataV8; /* Version: 7, ReferencedFunction: 0x140BDA4E0 */ typedef struct { byte type; qword value; filename pathVal; } PropertyDataV7; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV7; typedef struct { float time; float value; } FlagKeyDataV7; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV7; typedef struct { qword name; byte type; TSTRUCT_ARRAY_PTR_START CurveKeyDataV7 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV7 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV7 triggerKey TSTRUCT_ARRAY_PTR_END; } TrackDataV7; typedef struct { qword name; byte type; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV7 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV7 track TSTRUCT_ARRAY_PTR_END; } TrackGroupDataV7; typedef struct { qword name; float length; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; TSTRUCT_ARRAY_PTR_START TrackGroupDataV7 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV7; typedef struct { byte3 color; float intensity; } ColorDefDataV7; typedef struct { ColorDefDataV7 ambientGroundColor; ColorDefDataV7 ambientSkyColor; ColorDefDataV7 fillColor; ColorDefDataV7 hemisphericalColor; qword name; } AmbientLightDataV7; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV7; typedef struct { wchar_ptr text; byte language; } TextEntryDataV7; typedef struct { qword name; dword id; TSTRUCT_ARRAY_PTR_START TextEntryDataV7 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV7; typedef struct { TSTRUCT_ARRAY_PTR_START AmbientLightDataV7 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV7 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV7 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV7; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV7 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV7 resources; } SceneDataV7; /* Version: 6, ReferencedFunction: 0x140BDA3F0 */ typedef struct { byte type; qword value; filename pathVal; } PropertyDataV6; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV6; typedef struct { float time; float value; } FlagKeyDataV6; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV6; typedef struct { qword name; byte type; TSTRUCT_ARRAY_PTR_START CurveKeyDataV6 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV6 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV6 triggerKey TSTRUCT_ARRAY_PTR_END; } TrackDataV6; typedef struct { qword name; byte type; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV6 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV6 track TSTRUCT_ARRAY_PTR_END; } TrackGroupDataV6; typedef struct { qword name; float length; filename environmentMap; wchar_ptr map; wchar_ptr clientMap; TSTRUCT_ARRAY_PTR_START TrackGroupDataV6 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV6; typedef struct { byte3 color; float intensity; } ColorDefDataV6; typedef struct { ColorDefDataV6 ambientGroundColor; ColorDefDataV6 ambientSkyColor; ColorDefDataV6 fillColor; ColorDefDataV6 hemisphericalColor; qword name; } AmbientLightDataV6; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV6; typedef struct { wchar_ptr text; byte language; } TextEntryDataV6; typedef struct { qword name; dword id; TSTRUCT_ARRAY_PTR_START TextEntryDataV6 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV6; typedef struct { TSTRUCT_ARRAY_PTR_START AmbientLightDataV6 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV6 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV6 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV6; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV6 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV6 resources; } SceneDataV6; /* Version: 5, ReferencedFunction: 0x140BDA330 */ typedef struct { byte type; qword value; filename pathVal; } PropertyDataV5; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV5; typedef struct { float time; float value; } FlagKeyDataV5; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV5; typedef struct { qword name; byte type; TSTRUCT_ARRAY_PTR_START CurveKeyDataV5 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV5 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV5 triggerKey TSTRUCT_ARRAY_PTR_END; } TrackDataV5; typedef struct { qword name; byte type; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV5 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV5 track TSTRUCT_ARRAY_PTR_END; } TrackGroupDataV5; typedef struct { filename environmentMap; wchar_ptr map; wchar_ptr clientMap; qword name; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV5 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV5; typedef struct { byte3 color; float intensity; } ColorDefDataV5; typedef struct { ColorDefDataV5 ambientGroundColor; ColorDefDataV5 ambientSkyColor; ColorDefDataV5 fillColor; ColorDefDataV5 hemisphericalColor; qword name; } AmbientLightDataV5; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV5; typedef struct { wchar_ptr text; byte language; } TextEntryDataV5; typedef struct { qword name; dword id; TSTRUCT_ARRAY_PTR_START TextEntryDataV5 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV5; typedef struct { TSTRUCT_ARRAY_PTR_START AmbientLightDataV5 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV5 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV5 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV5; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV5 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV5 resources; } SceneDataV5; /* Version: 4, ReferencedFunction: 0x140BDA270 */ typedef struct { byte type; qword value; filename pathVal; } PropertyDataV4; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV4; typedef struct { float time; float value; } FlagKeyDataV4; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV4; typedef struct { qword name; byte type; TSTRUCT_ARRAY_PTR_START CurveKeyDataV4 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV4 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV4 triggerKey TSTRUCT_ARRAY_PTR_END; } TrackDataV4; typedef struct { qword name; byte type; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV4 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV4 track TSTRUCT_ARRAY_PTR_END; } TrackGroupDataV4; typedef struct { filename environmentMap; wchar_ptr map; wchar_ptr clientMap; qword name; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV4 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV4; typedef struct { byte3 color; float intensity; } ColorDefDataV4; typedef struct { ColorDefDataV4 ambientGroundColor; ColorDefDataV4 ambientSkyColor; ColorDefDataV4 fillColor; ColorDefDataV4 hemisphericalColor; qword name; } AmbientLightDataV4; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV4; typedef struct { wchar_ptr text; byte language; } TextEntryDataV4; typedef struct { qword name; dword id; TSTRUCT_ARRAY_PTR_START TextEntryDataV4 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV4; typedef struct { TSTRUCT_ARRAY_PTR_START AmbientLightDataV4 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV4 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV4 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV4; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV4 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV4 resources; } SceneDataV4; /* Version: 3, ReferencedFunction: 0x140BDA190 */ typedef struct { byte type; qword value; filename pathVal; } PropertyDataV3; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV3; typedef struct { float time; float value; } FlagKeyDataV3; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV3; typedef struct { qword name; byte type; TSTRUCT_ARRAY_PTR_START CurveKeyDataV3 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV3 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV3 triggerKey TSTRUCT_ARRAY_PTR_END; } TrackDataV3; typedef struct { qword name; byte type; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV3 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV3 track TSTRUCT_ARRAY_PTR_END; } TrackGroupDataV3; typedef struct { filename environmentMap; wchar_ptr map; wchar_ptr clientMap; qword name; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV3 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV3; typedef struct { byte3 color; float intensity; } ColorDefDataV3; typedef struct { ColorDefDataV3 ambientGroundColor; ColorDefDataV3 ambientSkyColor; ColorDefDataV3 fillColor; ColorDefDataV3 hemisphericalColor; qword name; } AmbientLightDataV3; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV3; typedef struct { wchar_ptr text; byte language; } TextEntryDataV3; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TextEntryDataV3 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV3; typedef struct { TSTRUCT_ARRAY_PTR_START AmbientLightDataV3 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV3 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV3 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV3; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV3 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV3 resources; } SceneDataV3; /* Version: 2 */ typedef struct { byte type; qword value; filename pathVal; } PropertyDataV2; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV2; typedef struct { float time; float value; } FlagKeyDataV2; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV2; typedef struct { qword name; byte type; TSTRUCT_ARRAY_PTR_START CurveKeyDataV2 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV2 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV2 triggerKey TSTRUCT_ARRAY_PTR_END; } TrackDataV2; typedef struct { qword name; byte type; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV2 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV2 track TSTRUCT_ARRAY_PTR_END; } TrackGroupDataV2; typedef struct { filename environmentMap; wchar_ptr map; wchar_ptr clientMap; qword name; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV2 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV2; typedef struct { byte3 color; float intensity; } ColorDefDataV2; typedef struct { ColorDefDataV2 ambientGroundColor; ColorDefDataV2 ambientSkyColor; ColorDefDataV2 fillColor; ColorDefDataV2 hemisphericalColor; qword name; } AmbientLightDataV2; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV2; typedef struct { wchar_ptr text; byte language; } TextEntryDataV2; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TextEntryDataV2 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV2; typedef struct { TSTRUCT_ARRAY_PTR_START AmbientLightDataV2 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV2 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV2 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV2; typedef struct { qword startingSequence; TSTRUCT_ARRAY_PTR_START SequenceDataV2 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV2 resources; } SceneDataV2; /* Version: 1, ReferencedFunction: 0x140BDA050 */ typedef struct { byte type; qword value; filename pathVal; } PropertyDataV1; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV1; typedef struct { float time; float value; } FlagKeyDataV1; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV1; typedef struct { qword name; byte type; TSTRUCT_ARRAY_PTR_START CurveKeyDataV1 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV1 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV1 triggerKey TSTRUCT_ARRAY_PTR_END; } TrackDataV1; typedef struct { qword name; byte type; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV1 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV1 track TSTRUCT_ARRAY_PTR_END; } TrackGroupDataV1; typedef struct { filename environmentMap; wchar_ptr map; wchar_ptr clientMap; qword name; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV1 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV1; typedef struct { byte3 color; float intensity; } ColorDefDataV1; typedef struct { ColorDefDataV1 ambientGroundColor; ColorDefDataV1 ambientSkyColor; ColorDefDataV1 fillColor; ColorDefDataV1 hemisphericalColor; qword name; } AmbientLightDataV1; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START byte byteCode TSTRUCT_ARRAY_PTR_END; } ScriptDataV1; typedef struct { wchar_ptr text; byte language; } TextEntryDataV1; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TextEntryDataV1 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START AmbientLightDataV1 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScriptDataV1 script TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV1 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START SequenceDataV1 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV1 resources; } SceneDataV1; /* Version: 0 */ typedef struct { byte type; qword value; filename pathVal; } PropertyDataV0; typedef struct { float time; float value; float inTangent; float outTangent; } CurveKeyDataV0; typedef struct { float time; float value; } FlagKeyDataV0; typedef struct { float time; byte flags1; byte flags2; byte flags3; byte flags4; qword token1; qword token2; float value1; float value2; float value3; float value4; } TriggerKeyDataV0; typedef struct { qword name; byte type; TSTRUCT_ARRAY_PTR_START CurveKeyDataV0 curveKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START FlagKeyDataV0 flagKey TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TriggerKeyDataV0 triggerKey TSTRUCT_ARRAY_PTR_END; } TrackDataV0; typedef struct { qword name; byte type; dword flags; TSTRUCT_ARRAY_PTR_START PropertyDataV0 prop TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TrackDataV0 track TSTRUCT_ARRAY_PTR_END; } TrackGroupDataV0; typedef struct { filename environmentMap; wchar_ptr map; wchar_ptr clientMap; qword name; float length; TSTRUCT_ARRAY_PTR_START TrackGroupDataV0 trackGroup TSTRUCT_ARRAY_PTR_END; } SequenceDataV0; typedef struct { byte3 color; float intensity; } ColorDefDataV0; typedef struct { ColorDefDataV0 ambientGroundColor; ColorDefDataV0 ambientSkyColor; ColorDefDataV0 fillColor; ColorDefDataV0 hemisphericalColor; qword name; } AmbientLightDataV0; typedef struct { wchar_ptr text; byte language; } TextEntryDataV0; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START TextEntryDataV0 textEntry TSTRUCT_ARRAY_PTR_END; } TextResourceDataV0; typedef struct { TSTRUCT_ARRAY_PTR_START AmbientLightDataV0 ambientLightResource TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START TextResourceDataV0 textResource TSTRUCT_ARRAY_PTR_END; } ResourceDataV0; typedef struct { TSTRUCT_ARRAY_PTR_START SequenceDataV0 sequence TSTRUCT_ARRAY_PTR_END; ResourceDataV0 resources; } SceneDataV0; /* =============================================== * Chunk: havk, versions: 17, strucTab: 0x141D2DC20 * =============================================== */ /* Version: 16 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte moppData TSTRUCT_ARRAY_PTR_END; } PackMoppType; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word surfaces TSTRUCT_ARRAY_PTR_END; PackMoppType moppCodeData; } PackMapCollideCollisionV16; typedef struct { TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; } PackMapCollideBlockerV16; typedef struct { qword sequence; TSTRUCT_ARRAY_PTR_START dword collisionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword blockerIndices TSTRUCT_ARRAY_PTR_END; } PackMapCollideAnimationV16; typedef struct { byte quantizedExtents; TSTRUCT_ARRAY_PTR_START dword animations TSTRUCT_ARRAY_PTR_END; word navMeshIndex; } PackMapCollideGeometryV16; typedef struct { float3 translate; dword geometryIndex; } PackMapCollideModelObsV16; typedef struct { qword token; qword sequence; float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelPropV16; typedef struct { float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelZoneV16; typedef struct { qword guid; wchar_ptr name; dword flags; float2 verticalRange; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; } PackMapCollideWaterVolumeV16; typedef struct { float3 boundsMin; float3 boundsMax; dword flags; float waterSurfaceZ; TSTRUCT_ARRAY_PTR_START PackMapCollideCollisionV16 collisions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideBlockerV16 blockers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideAnimationV16 animations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideGeometryV16 geometries TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelObsV16 obsModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelPropV16 propModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelZoneV16 zoneModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideWaterVolumeV16 waterVolumes TSTRUCT_ARRAY_PTR_END; } PackMapCollideV16; /* Version: 15, ReferencedFunction: 0x140C833D0 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte moppData TSTRUCT_ARRAY_PTR_END; } PackMoppType; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word surfaces TSTRUCT_ARRAY_PTR_END; PackMoppType moppCodeData; } PackMapCollideCollisionV15; typedef struct { TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; } PackMapCollideBlockerV15; typedef struct { qword sequence; TSTRUCT_ARRAY_PTR_START dword collisionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword blockerIndices TSTRUCT_ARRAY_PTR_END; } PackMapCollideAnimationV15; typedef struct { byte quantizedExtents; TSTRUCT_ARRAY_PTR_START dword animations TSTRUCT_ARRAY_PTR_END; word navMeshIndex; } PackMapCollideGeometryV15; typedef struct { float3 translate; dword geometryIndex; } PackMapCollideModelObsV15; typedef struct { qword token; qword sequence; float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelPropV15; typedef struct { float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelZoneV15; typedef struct { qword guid; dword flags; float2 verticalRange; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; } PackMapCollideWaterVolumeV15; typedef struct { float3 boundsMin; float3 boundsMax; dword flags; float waterSurfaceZ; TSTRUCT_ARRAY_PTR_START PackMapCollideCollisionV15 collisions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideBlockerV15 blockers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideAnimationV15 animations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideGeometryV15 geometries TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelObsV15 obsModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelPropV15 propModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelZoneV15 zoneModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideWaterVolumeV15 waterVolumes TSTRUCT_ARRAY_PTR_END; } PackMapCollideV15; /* Version: 14, ReferencedFunction: 0x140C83340 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte moppData TSTRUCT_ARRAY_PTR_END; } PackMoppType; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word surfaces TSTRUCT_ARRAY_PTR_END; PackMoppType moppCodeData; } PackMapCollideCollisionV14; typedef struct { TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; } PackMapCollideBlockerV14; typedef struct { TSTRUCT_ARRAY_PTR_START byte navMesh TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte graph TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte mediator TSTRUCT_ARRAY_PTR_END; } PackMapCollideNavMeshV14; typedef struct { qword sequence; TSTRUCT_ARRAY_PTR_START dword collisionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword blockerIndices TSTRUCT_ARRAY_PTR_END; } PackMapCollideAnimationV14; typedef struct { byte quantizedExtents; TSTRUCT_ARRAY_PTR_START dword animations TSTRUCT_ARRAY_PTR_END; word navMeshIndex; } PackMapCollideGeometryV14; typedef struct { float3 translate; dword geometryIndex; } PackMapCollideModelObsV14; typedef struct { qword token; qword sequence; float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelPropV14; typedef struct { float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelZoneV14; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapCollideCollisionV14 collisions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideBlockerV14 blockers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideNavMeshV14 navMeshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideAnimationV14 animations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideGeometryV14 geometries TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelObsV14 obsModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelPropV14 propModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelZoneV14 zoneModels TSTRUCT_ARRAY_PTR_END; } PackMapCollideV14; /* Version: 13, ReferencedFunction: 0x140C82F10 */ typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word surfaces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte moppCodeData TSTRUCT_ARRAY_PTR_END; } PackMapCollideCollisionV13; typedef struct { TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; } PackMapCollideBlockerV13; typedef struct { qword sequence; TSTRUCT_ARRAY_PTR_START dword collisionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword blockerIndices TSTRUCT_ARRAY_PTR_END; } PackMapCollideAnimationV13; typedef struct { byte quantizedExtents; TSTRUCT_ARRAY_PTR_START dword animations TSTRUCT_ARRAY_PTR_END; } PackMapCollideGeometryV13; typedef struct { float3 translate; dword geometryIndex; } PackMapCollideModelObsV13; typedef struct { qword token; qword sequence; float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelPropV13; typedef struct { float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelZoneV13; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapCollideCollisionV13 collisions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideBlockerV13 blockers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideAnimationV13 animations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideGeometryV13 geometries TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelObsV13 obsModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelPropV13 propModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelZoneV13 zoneModels TSTRUCT_ARRAY_PTR_END; } PackMapCollideV13; /* Version: 12 */ typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word surfaces TSTRUCT_ARRAY_PTR_END; float moppCodeScale; TSTRUCT_ARRAY_PTR_START byte moppCodeData TSTRUCT_ARRAY_PTR_END; } PackMapCollideMeshV12; typedef struct { qword sequence; dword meshIndex; } PackMapCollideMeshRefV12; typedef struct { byte quantizedExtents; TSTRUCT_ARRAY_PTR_START PackMapCollideMeshRefV12 meshRefs TSTRUCT_ARRAY_PTR_END; } PackMapCollideGeometryV12; typedef struct { float3 translate; dword geometryIndex; } PackMapCollideModelObsV12; typedef struct { qword token; qword sequence; float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelPropV12; typedef struct { float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelZoneV12; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte queryMediatorMoppData TSTRUCT_ARRAY_PTR_END; } PackMapCollideAiChunkV12; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapCollideMeshV12 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideGeometryV12 geometries TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelObsV12 obsModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelPropV12 propModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelZoneV12 zoneModels TSTRUCT_ARRAY_PTR_END; dword2 aiChunkDims; TSTRUCT_ARRAY_PTR_START PackMapCollideAiChunkV12 aiChunks TSTRUCT_ARRAY_PTR_END; } PackMapCollideV12; /* Version: 11 */ typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; float moppCodeScale; TSTRUCT_ARRAY_PTR_START byte moppCodeData TSTRUCT_ARRAY_PTR_END; } PackMapCollideMeshV11; typedef struct { qword sequence; dword meshIndex; } PackMapCollideMeshRefV11; typedef struct { byte quantizedExtents; TSTRUCT_ARRAY_PTR_START PackMapCollideMeshRefV11 meshRefs TSTRUCT_ARRAY_PTR_END; } PackMapCollideGeometryV11; typedef struct { float3 translate; dword geometryIndex; } PackMapCollideModelObsV11; typedef struct { qword token; qword sequence; float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelPropV11; typedef struct { float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelZoneV11; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte queryMediatorMoppData TSTRUCT_ARRAY_PTR_END; } PackMapCollideAiChunkV11; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapCollideMeshV11 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideGeometryV11 geometries TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelObsV11 obsModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelPropV11 propModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelZoneV11 zoneModels TSTRUCT_ARRAY_PTR_END; dword2 aiChunkDims; TSTRUCT_ARRAY_PTR_START PackMapCollideAiChunkV11 aiChunks TSTRUCT_ARRAY_PTR_END; } PackMapCollideV11; /* Version: 10 */ typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; float moppCodeScale; TSTRUCT_ARRAY_PTR_START byte moppCodeData TSTRUCT_ARRAY_PTR_END; } PackMapCollideMeshV10; typedef struct { qword sequence; dword meshIndex; } PackMapCollideMeshRefV10; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapCollideMeshRefV10 meshRefs TSTRUCT_ARRAY_PTR_END; } PackMapCollideGeometryV10; typedef struct { dword geometryIndex; } PackMapCollideModelObsV10; typedef struct { qword token; qword sequence; float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelPropV10; typedef struct { float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelZoneV10; typedef struct { TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte queryMediatorMoppData TSTRUCT_ARRAY_PTR_END; } PackMapCollideAiChunkV10; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapCollideMeshV10 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideGeometryV10 geometries TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelObsV10 obsModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelPropV10 propModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelZoneV10 zoneModels TSTRUCT_ARRAY_PTR_END; float3 aiBoundaryMin; float3 aiBoundaryMax; dword2 aiChunkDims; TSTRUCT_ARRAY_PTR_START PackMapCollideAiChunkV10 aiChunks TSTRUCT_ARRAY_PTR_END; } PackMapCollideV10; /* Version: 9 */ typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; float moppCodeScale; TSTRUCT_ARRAY_PTR_START byte moppCodeData TSTRUCT_ARRAY_PTR_END; } PackMapCollideMeshV9; typedef struct { qword sequence; dword meshIndex; } PackMapCollideMeshRefV9; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapCollideMeshRefV9 meshRefs TSTRUCT_ARRAY_PTR_END; } PackMapCollideGeometryV9; typedef struct { dword geometryIndex; } PackMapCollideModelObsV9; typedef struct { qword token; qword sequence; float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelPropV9; typedef struct { float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelZoneV9; typedef struct { TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; } PackMapCollideAiChunkV9; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapCollideMeshV9 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideGeometryV9 geometries TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelObsV9 obsModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelPropV9 propModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelZoneV9 zoneModels TSTRUCT_ARRAY_PTR_END; float3 aiBoundaryMin; float3 aiBoundaryMax; dword2 aiChunkDims; TSTRUCT_ARRAY_PTR_START PackMapCollideAiChunkV9 aiChunks TSTRUCT_ARRAY_PTR_END; } PackMapCollideV9; /* Version: 8, ReferencedFunction: 0x140C833E0 */ typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; float moppCodeScale; TSTRUCT_ARRAY_PTR_START byte moppCodeData TSTRUCT_ARRAY_PTR_END; } PackMapCollideMeshV8; typedef struct { qword sequence; dword meshIndex; } PackMapCollideMeshRefV8; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapCollideMeshRefV8 meshRefs TSTRUCT_ARRAY_PTR_END; } PackMapCollideGeometryV8; typedef struct { qword token; qword sequence; float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelPropV8; typedef struct { float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelZoneV8; typedef struct { TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; } PackMapCollideAiChunkV8; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapCollideMeshV8 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideGeometryV8 geometries TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelPropV8 propModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelZoneV8 zoneModels TSTRUCT_ARRAY_PTR_END; float3 aiBoundaryMin; float3 aiBoundaryMax; dword2 aiChunkDims; TSTRUCT_ARRAY_PTR_START PackMapCollideAiChunkV8 aiChunks TSTRUCT_ARRAY_PTR_END; } PackMapCollideV8; /* Version: 7 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte cookedData TSTRUCT_ARRAY_PTR_END; } PackMapCollideMoppCodeV7; typedef struct { float scale; dword moppCodeIndex; } PackMapCollideMeshSizeV7; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideMeshSizeV7 sizes TSTRUCT_ARRAY_PTR_END; } PackMapCollideMeshV7; typedef struct { qword sequence; dword meshIndex; } PackMapCollideMeshRefV7; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapCollideMeshRefV7 meshRefs TSTRUCT_ARRAY_PTR_END; } PackMapCollideGeometryV7; typedef struct { qword token; qword sequence; float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelPropV7; typedef struct { float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelZoneV7; typedef struct { TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; } PackMapCollideAiChunkV7; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapCollideMoppCodeV7 moppCodes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideMeshV7 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideGeometryV7 geometries TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelPropV7 propModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelZoneV7 zoneModels TSTRUCT_ARRAY_PTR_END; float3 aiBoundaryMin; float3 aiBoundaryMax; dword2 aiChunkDims; TSTRUCT_ARRAY_PTR_START PackMapCollideAiChunkV7 aiChunks TSTRUCT_ARRAY_PTR_END; } PackMapCollideV7; /* Version: 6 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte cookedData TSTRUCT_ARRAY_PTR_END; } PackMapCollideMoppCodeV6; typedef struct { float scale; dword moppCodeIndex; } PackMapCollideMeshSizeV6; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideMeshSizeV6 sizes TSTRUCT_ARRAY_PTR_END; } PackMapCollideMeshV6; typedef struct { qword sequence; dword meshIndex; } PackMapCollideMeshRefV6; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapCollideMeshRefV6 meshRefs TSTRUCT_ARRAY_PTR_END; } PackMapCollideGeometryV6; typedef struct { qword token; qword sequence; float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelPropV6; typedef struct { float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapCollideModelZoneV6; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapCollideMoppCodeV6 moppCodes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideMeshV6 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideGeometryV6 geometries TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelPropV6 propModels TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCollideModelZoneV6 zoneModels TSTRUCT_ARRAY_PTR_END; } PackMapCollideV6; /* =============================================== * Chunk: nm15, versions: 4, strucTab: 0x141D2DFD0 * =============================================== */ /* Version: 3 */ typedef struct { dword chunkIndex; float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte queryMediatorMoppData TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshChunkV3; /* Version: 2 */ typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte queryMediatorMoppData TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshChunkV2; /* Version: 1, ReferencedFunction: 0x140C807D0 */ typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte queryMediatorMoppData TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshChunkV1; /* Version: 0 */ typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte queryMediatorMoppData TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshChunkV0; /* =============================================== * Chunk: area, versions: 5, strucTab: 0x141D2D870 * =============================================== */ /* Version: 4, ReferencedFunction: 0x140C7F900 */ typedef struct { TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; float height; } PackMapAreaPolygonV4; typedef struct { float3 position; float3 extents; float3 rotation; } PackMapAreaPortalV4; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapAreaPortalV4 portals TSTRUCT_ARRAY_PTR_END; float3 position; float3 extents; float3 pointInterior; float3 pointExterior; } PackMapAreaVolumeV4; typedef struct { qword token; byte type; byte floor; dword flags; PackMapAreaPolygonV4 polygon; PackMapAreaVolumeV4 volume; } PackMapAreaV4; typedef struct { wchar_ptr annotation; float renderOffset; } PackMapAreaToolV4; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapAreaV4 areas TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapAreaToolV4 areaTools TSTRUCT_ARRAY_PTR_END; } PackMapAreasV4; /* Version: 3 */ typedef struct { TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; float height; } PackMapAreaPolygonV3; typedef struct { float3 position; float3 extents; float3 rotation; } PackMapAreaPortalV3; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapAreaPortalV3 portals TSTRUCT_ARRAY_PTR_END; float3 position; float3 extents; float3 pointInterior; float3 pointExterior; } PackMapAreaVolumeV3; typedef struct { qword token; byte type; byte floor; dword flags; PackMapAreaPolygonV3 polygon; PackMapAreaVolumeV3 volume; } PackMapAreaV3; typedef struct { wchar_ptr annotation; float renderOffset; } PackMapAreaToolV3; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapAreaV3 areas TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapAreaToolV3 areaTools TSTRUCT_ARRAY_PTR_END; } PackMapAreasV3; /* Version: 2 */ typedef struct { TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; float height; } PackMapAreaPolygonV2; typedef struct { float3 position; float3 extents; float3 rotation; } PackMapAreaPortalV2; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapAreaPortalV2 portals TSTRUCT_ARRAY_PTR_END; float3 position; float3 extents; float3 pointInterior; float3 pointExterior; } PackMapAreaVolumeV2; typedef struct { qword token; byte type; byte floor; dword flags; PackMapAreaPolygonV2 polygon; PackMapAreaVolumeV2 volume; } PackMapAreaV2; typedef struct { wchar_ptr annotation; } PackMapAreaToolV2; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapAreaV2 areas TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapAreaToolV2 areaTools TSTRUCT_ARRAY_PTR_END; } PackMapAreasV2; /* Version: 1, ReferencedFunction: 0x140C7F8F0 */ typedef struct { TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; float height; } PackMapAreaPolygonV1; typedef struct { float3 position; float3 extents; float3 rotation; } PackMapAreaPortalV1; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapAreaPortalV1 portals TSTRUCT_ARRAY_PTR_END; float3 position; float3 extents; float3 pointInterior; float3 pointExterior; } PackMapAreaVolumeV1; typedef struct { qword token; byte type; byte floor; PackMapAreaPolygonV1 polygon; PackMapAreaVolumeV1 volume; } PackMapAreaV1; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapAreaV1 areas TSTRUCT_ARRAY_PTR_END; } PackMapAreasV1; /* Version: 0 */ typedef struct { float3 min; float3 max; float3 internal; float3 external; dword token; dword flags; } PackMapAreaV0; typedef struct { TSTRUCT_ARRAY_PTR_START float3 portalVerts TSTRUCT_ARRAY_PTR_END; } PackMapPortalV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapAreaV0 areas TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPortalV0 portals TSTRUCT_ARRAY_PTR_END; } PackMapAreasV0; /* =============================================== * Chunk: audi, versions: 9, strucTab: 0x141D2D9A0 * =============================================== */ /* Version: 8 */ typedef struct { dword regionType; dword overrideMode; filename filenameSourceDay; filename filenameAmbientDay; filename filenameSourceNight; filename filenameAmbientNight; filename filenameInterior; float exteriorVolume; dword priority; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; float3 position; float3 orientation; float fadeBand; float height; float radius; qword guid; dword flags; } PackMapAudioRegion; typedef struct { wchar_ptr annotation; } PackMapAudioRegionTool; typedef struct { filename dependency; dword flags; } PackMapAudioDep; typedef struct { filename filenameAmbientDaySurface; filename filenameAmbientDayUnderwater; filename filenameAmbientNightSurface; filename filenameAmbientNightUnderwater; TSTRUCT_ARRAY_PTR_START PackMapAudioRegion audioRegions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapAudioRegionTool audioRegionTools TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapAudioDep audioDepArray TSTRUCT_ARRAY_PTR_END; } MapAudio; /* Version: 7 */ typedef struct { dword regionType; dword overrideMode; filename filenameSourceDay; filename filenameAmbientDay; filename filenameSourceNight; filename filenameAmbientNight; filename filenameInterior; float exteriorVolume; dword priority; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; float3 position; float3 orientation; float fadeBand; float height; float radius; qword guid; dword flags; } PackMapAudioRegion; typedef struct { wchar_ptr annotation; } PackMapAudioRegionTool; typedef struct { filename filenameAmbientDaySurface; filename filenameAmbientDayUnderwater; filename filenameAmbientNightSurface; filename filenameAmbientNightUnderwater; TSTRUCT_ARRAY_PTR_START PackMapAudioRegion audioRegions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapAudioRegionTool audioRegionTools TSTRUCT_ARRAY_PTR_END; } MapAudio; /* Version: 6 */ typedef struct { dword regionType; dword overrideMode; filename filenameSourceDay; filename filenameAmbientDay; filename filenameSourceNight; filename filenameAmbientNight; filename filenameInterior; float exteriorVolume; dword priority; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; float3 position; float3 orientation; float fadeBand; float height; float radius; qword guid; dword flags; } PackMapAudioRegion; typedef struct { filename filenameAmbientDaySurface; filename filenameAmbientDayUnderwater; filename filenameAmbientNightSurface; filename filenameAmbientNightUnderwater; TSTRUCT_ARRAY_PTR_START PackMapAudioRegion audioRegions TSTRUCT_ARRAY_PTR_END; } MapAudio; /* Version: 5 */ typedef struct { dword regionType; dword overrideMode; filename filenameSourceDay; filename filenameAmbientDay; filename filenameSourceNight; filename filenameAmbientNight; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; float3 position; float3 orientation; float fadeBand; float height; float radius; qword guid; dword flags; } PackMapAudioRegion; typedef struct { filename filenameAmbientDaySurface; filename filenameAmbientDayUnderwater; filename filenameAmbientNightSurface; filename filenameAmbientNightUnderwater; TSTRUCT_ARRAY_PTR_START PackMapAudioRegion audioRegions TSTRUCT_ARRAY_PTR_END; } MapAudio; /* Version: 4, ReferencedFunction: 0x140C82E70 */ typedef struct { dword regionType; dword overrideMode; filename filenameSourceDay; filename filenameAmbientDay; filename filenameMusicDay; filename filenameSourceNight; filename filenameAmbientNight; filename filenameMusicNight; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; float3 position; float3 orientation; float fadeBand; float height; float radius; qword guid; } PackMapAudioRegion; typedef struct { filename filenameAmbientDaySurface; filename filenameMusicDaySurface; filename filenameAmbientDayUnderwater; filename filenameMusicDayUnderwater; filename filenameAmbientNightSurface; filename filenameMusicNightSurface; filename filenameAmbientNightUnderwater; filename filenameMusicNightUnderwater; TSTRUCT_ARRAY_PTR_START PackMapAudioRegion audioRegions TSTRUCT_ARRAY_PTR_END; } MapAudio; /* Version: 3, ReferencedFunction: 0x140C82D40 */ typedef struct { dword regionType; dword overrideMode; filename filenameSourceDay; filename filenameAmbientDay; filename filenameMusicDay; filename filenameSourceNight; filename filenameAmbientNight; filename filenameMusicNight; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; float3 position; float3 orientation; float fadeBand; float height; float radius; } PackMapAudioRegion; typedef struct { filename filenameAmbientDaySurface; filename filenameMusicDaySurface; filename filenameAmbientDayUnderwater; filename filenameMusicDayUnderwater; filename filenameAmbientNightSurface; filename filenameMusicNightSurface; filename filenameAmbientNightUnderwater; filename filenameMusicNightUnderwater; TSTRUCT_ARRAY_PTR_START PackMapAudioRegion audioRegions TSTRUCT_ARRAY_PTR_END; } MapAudio; /* Version: 2 */ typedef struct { dword regionType; dword overrideMode; filename filenameSource; filename filenameAmbient; filename filenameMusic; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; float3 position; float3 orientation; float fadeBand; float height; float radius; } PackMapAudioRegion; typedef struct { filename globalAmbientScriptFilename; filename globalMusicScriptFilename; filename globalAmbientUnderwaterScriptFilename; filename globalMusicUnderwaterScriptFilename; TSTRUCT_ARRAY_PTR_START PackMapAudioRegion audioRegions TSTRUCT_ARRAY_PTR_END; } MapAudio; /* Version: 1 */ typedef struct { dword regionType; dword overrideMode; filename filenameSource; filename filenameAmbient; filename filenameMusic; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; float3 position; float3 orientation; float fadeBand; float height; float radius; } PackMapAudioRegion; typedef struct { filename globalAmbientScriptFilename; filename globalMusicScriptFilename; TSTRUCT_ARRAY_PTR_START PackMapAudioRegion audioRegions TSTRUCT_ARRAY_PTR_END; } MapAudio; /* Version: 0 */ typedef struct { filename globalAmbientScriptFilename; filename globalMusicScriptFilename; } MapAudio; /* =============================================== * Chunk: bloc, versions: 1, strucTab: 0x141D2E398 * =============================================== */ /* Version: 0 */ typedef struct { filename filename; } PackMapBlockRecord; typedef struct { dword2 blockDims; TSTRUCT_ARRAY_PTR_START PackMapBlockRecord blockRecordArray TSTRUCT_ARRAY_PTR_END; } PackMapBlock; /* =============================================== * Chunk: cg15, versions: 1, strucTab: 0x141D2E380 * =============================================== */ /* Version: 0 */ typedef struct { dword materialId; float3 bottomLeftBound; float3 topRightBound; float3 centroid; TSTRUCT_ARRAY_PTR_START dword faces TSTRUCT_ARRAY_PTR_END; } PackMapCoarseNavGraphNodeV0; typedef struct { float3 edgeStart; float3 edgeEnd; } PackMapCoarseNavGraphConnectionEdgeV0; typedef struct { dword targetSectionUid; dword targetNodeIndex; TSTRUCT_ARRAY_PTR_START PackMapCoarseNavGraphConnectionEdgeV0 edges TSTRUCT_ARRAY_PTR_END; } PackMapCoarseNavGraphConnectionV0; typedef struct { dword nodeIndex; TSTRUCT_ARRAY_PTR_START PackMapCoarseNavGraphConnectionV0 connections TSTRUCT_ARRAY_PTR_END; } PackMapCoarseNavGraphNodeConnectionsV0; typedef struct { dword sectionUid; TSTRUCT_ARRAY_PTR_START PackMapCoarseNavGraphNodeV0 nodes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCoarseNavGraphNodeConnectionsV0 nodeConnections TSTRUCT_ARRAY_PTR_END; } PackMapCoarseNavGraphSectionV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapCoarseNavGraphSectionV0 sections TSTRUCT_ARRAY_PTR_END; } PackMapCoarseNavGraphV0; /* =============================================== * Chunk: cube, versions: 5, strucTab: 0x141D2E4B0 * =============================================== */ /* Version: 4 */ typedef struct { float3 position; filename filenameDayDefault; filename filenameNightDefault; filename filenameDayScript; filename filenameNightScript; filename filenameDayDefaultHiRes; filename filenameNightDefaultHiRes; filename filenameDayScriptHiRes; filename filenameNightScriptHiRes; qword envID; } PackMapCubeMapSampleV4; typedef struct { dword modulateColor; float brightness; float contrast; dword blurPasses; wchar_ptr envVolume; } PackMapCubeMapParamsV4; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapCubeMapSampleV4 sampleArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCubeMapParamsV4 paramsArray TSTRUCT_ARRAY_PTR_END; } PackMapCubeMapV4; /* Version: 3 */ typedef struct { float3 position; filename filenameDayDefault; filename filenameNightDefault; filename filenameDayScript; filename filenameNightScript; qword envID; } PackMapCubeMapSampleV3; typedef struct { dword modulateColor; float brightness; float contrast; dword blurPasses; wchar_ptr envVolume; } PackMapCubeMapParamsV3; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapCubeMapSampleV3 sampleArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCubeMapParamsV3 paramsArray TSTRUCT_ARRAY_PTR_END; } PackMapCubeMapV3; /* Version: 2, ReferencedFunction: 0x140001050 */ typedef struct { float3 position; filename filenameDayDefault; filename filenameNightDefault; filename filenameDayScript; filename filenameNightScript; } PackMapCubeMapSampleV2; typedef struct { dword modulateColor; float brightness; float contrast; dword blurPasses; } PackMapCubeMapParamsV2; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapCubeMapSampleV2 sampleArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCubeMapParamsV2 paramsArray TSTRUCT_ARRAY_PTR_END; } PackMapCubeMapV2; /* Version: 1, ReferencedFunction: 0x140C86830 */ typedef struct { float3 position; dword flags; TSTRUCT_ARRAY_PTR_START byte dayPtr TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte nightPtr TSTRUCT_ARRAY_PTR_END; } PackMapCubeMapSampleV1; typedef struct { dword modulateColor; float brightness; float contrast; dword blurPasses; } PackMapCubeMapParamsV1; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapCubeMapSampleV1 sampleArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCubeMapParamsV1 paramsArray TSTRUCT_ARRAY_PTR_END; } PackMapCubeMapV1; /* Version: 0 */ typedef struct { float3 position; dword flags; TSTRUCT_ARRAY_PTR_START byte dataPtr TSTRUCT_ARRAY_PTR_END; } PackMapCubeMapSampleV0; typedef struct { dword modulateColor; float brightness; float contrast; dword blurPasses; } PackMapCubeMapParamsV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapCubeMapSampleV0 sampleArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCubeMapParamsV0 paramsArray TSTRUCT_ARRAY_PTR_END; } PackMapCubeMapV0; /* =============================================== * Chunk: env, versions: 77, strucTab: 0x141D2F3A0 * =============================================== */ /* Version: 76, ReferencedFunction: 0x140C82AA0 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV76; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV76 lights TSTRUCT_PTR_ARRAY_PTR_END; float shadowInfluence; byte3 backlightColor; float backlightIntensity; } PackMapEnvDataLightingV76; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV47; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV47 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV47; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; dword reserved; } PackMapEnvDataLayerAttributesV76; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV76 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; dword reserved; } PackMapEnvDataLayerV76; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV76 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV76; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV47; typedef struct { dword dummy; } PackMapEnvDataEffectExV47; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float ssaoAmount; float ssaoBrighten; float ssaoContrast; float ssaoSunScale; dword flags; filename clutTexturePath; TPTR_START PackMapEnvDataEffectExV47 ext TPTR_END; } PackMapEnvDataEffectV76; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; float2 sunDirRange; } PackMapEnvDataHazeV76; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; float texFPS; filename texPath; byte type; wchar_ptr name; dword reserved; } PackMapEnvDataPFieldV76; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV47; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; float verticalOffset; } PackMapEnvDataSkyV76; typedef struct { dword rows; dword columns; dword start; float fps; byte4 color; float2 offset; float2 scale; float baseRotation; float cameraRotation; byte flags; } PackMapEnvLensFlareAtomV47; typedef struct { filename texture; } PackMapEnvLensFlareTextureV47; typedef struct { dword token; float4 value; } PackMapEnvDataShaderConstantV47; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvLensFlareAtomV47 atoms TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvLensFlareTextureV47 textures TSTRUCT_ARRAY_PTR_END; filename material; float2 fadeBand; float2 reverseFadeBand; float opacityCoeff; byte flags; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShaderConstantV47 constants TSTRUCT_ARRAY_PTR_END; } PackMapEnvLensFlareV47; typedef struct { dword dummy; } PackMapEnvDataSkyCardAttributesExV47; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; TPTR_START PackMapEnvLensFlareV47 lensFlare TPTR_END; TPTR_START PackMapEnvDataSkyCardAttributesExV47 ext TPTR_END; } PackMapEnvDataSkyCardAttributesV76; typedef struct { filename filename; float4 textureUV; } PackMapEnvDataShaderTextureV47; typedef struct { float2 textureAnimTranslation; float2 textureAnimScaleRangeX; float2 textureAnimScaleRangeY; float2 textureAnimScaleSpeed; float textureAnimRotation; dword texCoords; } PackEnvDataSkyCardAnimationV47; typedef struct { dword rows; dword columns; dword start; dword count; float fps; } PackMapEnvDataSkycardFlipbookV47; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShaderConstantV47 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShaderTextureV47 textures TSTRUCT_ARRAY_PTR_END; PackEnvDataSkyCardAnimationV47 textureAnimation; PackMapEnvDataSkycardFlipbookV47 flipbook; } PackMapEnvDataSkyCardMaterialV47; typedef struct { dword dummy; } PackMapEnvDataSkyCardExV47; typedef struct { PackMapEnvDataSkyCardAttributesV76 day; PackMapEnvDataSkyCardAttributesV76 night; dword flags; wchar_ptr name; float3 location; TPTR_START PackMapEnvDataSkyCardMaterialV47 material TPTR_END; TPTR_START PackMapEnvDataSkyCardExV47 ext TPTR_END; } PackMapEnvDataSkyCardV76; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV76 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV76; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; qword animSequence; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV47; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV47 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV47; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV47 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV47; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; float foamSpawn; float foamDissolve; float foamDepthAttenuation; byte4 foamColor0; byte4 foamColor1; } PackMapEnvDataWaterV76; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; byte gustSpeed; } PackMapEnvDataWindV76; typedef struct { qword token; } PackMapEnvDataAudioV47; typedef struct { dword dummy; } PackMapEnvDataBaseEx2V47; typedef struct { TPTR_START PackMapEnvDataBaseEx2V47 ext2 TPTR_END; float brightTime; float dimTime; float darkCoeff; float darkExp; float darkMin; float darkMax; float brightMin; float brightMax; float brightScale; float darkScale; float4 waterReflectionParams; } PackMapEnvDataBaseExV47; typedef struct { float3 center; float height; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; byte shapeType; } PackMapEnvDataShapeV47; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV76 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV47 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV76 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV47 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV76 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV76 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV76 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV47 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV76 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV76 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV47 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV76 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV76 wind TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataAudioV47 audio TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; dword flags; TPTR_START PackMapEnvDataBaseExV47 ext TPTR_END; byte type; qword guid; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShapeV47 shapeArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV76; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV76; typedef struct { filename texPathE; filename texPathW; filename texPathN; filename texPathS; filename texPathB; filename texPathT; } PackMapEnvDataSkyModeCubeTexV47; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV76 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV47 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV76 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV47 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV76 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV76 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV76 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV47 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV76 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV76 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV47 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV76 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV76 wind TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataAudioV47 audio TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; dword flags; TPTR_START PackMapEnvDataBaseExV47 ext TPTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV76 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeCubeTexV47 skyModeCubeTex TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataGlobalV76; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV76 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV76 dataGlobal TPTR_END; } PackMapEnvironmentV76; /* Version: 75, ReferencedFunction: 0x140C829F0 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV75; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV75 lights TSTRUCT_PTR_ARRAY_PTR_END; float shadowInfluence; byte3 backlightColor; float backlightIntensity; } PackMapEnvDataLightingV75; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV46; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV46 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV46; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; dword reserved; } PackMapEnvDataLayerAttributesV75; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV75 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; dword reserved; } PackMapEnvDataLayerV75; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV75 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV75; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV46; typedef struct { dword dummy; } PackMapEnvDataEffectExV46; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float ssaoAmount; float ssaoBrighten; float ssaoContrast; float ssaoSunScale; dword flags; filename clutTexturePath; TPTR_START PackMapEnvDataEffectExV46 ext TPTR_END; } PackMapEnvDataEffectV75; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; float2 sunDirRange; } PackMapEnvDataHazeV75; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; float texFPS; filename texPath; byte type; wchar_ptr name; dword reserved; } PackMapEnvDataPFieldV75; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV46; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; float verticalOffset; } PackMapEnvDataSkyV75; typedef struct { dword rows; dword columns; dword start; float fps; byte4 color; float2 offset; float2 scale; float baseRotation; float cameraRotation; byte flags; } PackMapEnvLensFlareAtomV46; typedef struct { filename texture; } PackMapEnvLensFlareTextureV46; typedef struct { dword token; float4 value; } PackMapEnvDataShaderConstantV46; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvLensFlareAtomV46 atoms TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvLensFlareTextureV46 textures TSTRUCT_ARRAY_PTR_END; filename material; float2 fadeBand; float2 reverseFadeBand; float opacityCoeff; byte flags; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShaderConstantV46 constants TSTRUCT_ARRAY_PTR_END; } PackMapEnvLensFlareV46; typedef struct { dword dummy; } PackMapEnvDataSkyCardAttributesExV46; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; TPTR_START PackMapEnvLensFlareV46 lensFlare TPTR_END; TPTR_START PackMapEnvDataSkyCardAttributesExV46 ext TPTR_END; } PackMapEnvDataSkyCardAttributesV75; typedef struct { filename filename; float4 textureUV; } PackMapEnvDataShaderTextureV46; typedef struct { float2 textureAnimTranslation; float2 textureAnimScaleRangeX; float2 textureAnimScaleRangeY; float2 textureAnimScaleSpeed; float textureAnimRotation; dword texCoords; } PackEnvDataSkyCardAnimationV46; typedef struct { dword rows; dword columns; dword start; dword count; float fps; } PackMapEnvDataSkycardFlipbookV46; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShaderConstantV46 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShaderTextureV46 textures TSTRUCT_ARRAY_PTR_END; PackEnvDataSkyCardAnimationV46 textureAnimation; PackMapEnvDataSkycardFlipbookV46 flipbook; } PackMapEnvDataSkyCardMaterialV46; typedef struct { dword dummy; } PackMapEnvDataSkyCardExV46; typedef struct { PackMapEnvDataSkyCardAttributesV75 day; PackMapEnvDataSkyCardAttributesV75 night; dword flags; wchar_ptr name; float3 location; TPTR_START PackMapEnvDataSkyCardMaterialV46 material TPTR_END; TPTR_START PackMapEnvDataSkyCardExV46 ext TPTR_END; } PackMapEnvDataSkyCardV75; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV75 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV75; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; qword animSequence; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV46; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV46 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV46; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV46 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV46; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; float foamSpawn; float foamDissolve; float foamDepthAttenuation; byte4 foamColor0; byte4 foamColor1; } PackMapEnvDataWaterV75; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; byte gustSpeed; } PackMapEnvDataWindV75; typedef struct { qword token; } PackMapEnvDataAudioV46; typedef struct { dword dummy; } PackMapEnvDataBaseEx2V46; typedef struct { TPTR_START PackMapEnvDataBaseEx2V46 ext2 TPTR_END; float brightTime; float dimTime; float darkCoeff; float darkExp; float darkMin; float darkMax; float brightMin; float brightMax; float brightScale; float darkScale; float4 waterReflectionParams; } PackMapEnvDataBaseExV46; typedef struct { float3 center; float height; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; byte shapeType; } PackMapEnvDataShapeV46; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV75 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV46 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV75 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV46 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV75 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV75 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV75 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV46 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV75 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV75 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV46 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV75 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV75 wind TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataAudioV46 audio TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; dword flags; TPTR_START PackMapEnvDataBaseExV46 ext TPTR_END; byte type; qword guid; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShapeV46 shapeArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV75; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV75; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV75 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV46 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV75 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV46 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV75 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV75 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV75 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV46 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV75 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV75 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV46 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV75 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV75 wind TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataAudioV46 audio TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; dword flags; TPTR_START PackMapEnvDataBaseExV46 ext TPTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV75 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV75; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV75 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV75 dataGlobal TPTR_END; } PackMapEnvironmentV75; /* Version: 74 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV74; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV74 lights TSTRUCT_PTR_ARRAY_PTR_END; float shadowInfluence; byte3 backlightColor; float backlightIntensity; } PackMapEnvDataLightingV74; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV45; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV45 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV45; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; dword reserved; } PackMapEnvDataLayerAttributesV74; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV74 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; dword reserved; } PackMapEnvDataLayerV74; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV74 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV74; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV45; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float2 flatteningRange; float2 flatteningCharacterRange; } PackMapEnvDataEffectV74; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; float2 sunDirRange; } PackMapEnvDataHazeV74; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; float texFPS; filename texPath; byte type; wchar_ptr name; dword reserved; } PackMapEnvDataPFieldV74; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV45; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; float verticalOffset; } PackMapEnvDataSkyV74; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV74; typedef struct { PackMapEnvDataSkyCardAttributesV74 day; PackMapEnvDataSkyCardAttributesV74 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV74; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV74 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV74; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; qword animSequence; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV45; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV45 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV45; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV45 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV45; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; float foamSpawn; float foamDissolve; float foamDepthAttenuation; byte4 foamColor0; byte4 foamColor1; } PackMapEnvDataWaterV74; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; byte gustSpeed; } PackMapEnvDataWindV74; typedef struct { qword token; } PackMapEnvDataAudioV45; typedef struct { float3 center; float height; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; byte shapeType; } PackMapEnvDataShapeV45; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV74 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV45 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV74 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV45 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV74 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV74 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV74 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV45 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV74 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV74 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV45 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV74 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV74 wind TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataAudioV45 audio TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; wchar_ptr reserved; byte type; qword guid; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShapeV45 shapeArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV74; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV74; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV74 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV45 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV74 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV45 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV74 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV74 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV74 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV45 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV74 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV74 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV45 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV74 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV74 wind TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataAudioV45 audio TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; wchar_ptr reserved; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV74 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV74; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV74 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV74 dataGlobal TPTR_END; } PackMapEnvironmentV74; /* Version: 73 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV73; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV73 lights TSTRUCT_PTR_ARRAY_PTR_END; float shadowInfluence; byte3 backlightColor; float backlightIntensity; } PackMapEnvDataLightingV73; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV44; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV44 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV44; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV73; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV73 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV73; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV73 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV73; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV44; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float2 flatteningRange; float2 flatteningCharacterRange; } PackMapEnvDataEffectV73; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; float2 sunDirRange; } PackMapEnvDataHazeV73; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; float texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV73; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV44; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; float verticalOffset; } PackMapEnvDataSkyV73; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV73; typedef struct { PackMapEnvDataSkyCardAttributesV73 day; PackMapEnvDataSkyCardAttributesV73 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV73; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV73 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV73; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; qword animSequence; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV44; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV44 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV44; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV44 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV44; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; float foamSpawn; float foamDissolve; float foamDepthAttenuation; byte4 foamColor0; byte4 foamColor1; } PackMapEnvDataWaterV73; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; byte gustSpeed; } PackMapEnvDataWindV73; typedef struct { qword token; } PackMapEnvDataAudioV44; typedef struct { float3 center; float height; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; byte shapeType; } PackMapEnvDataShapeV44; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV73 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV44 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV73 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV44 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV73 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV73 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV73 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV44 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV73 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV73 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV44 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV73 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV73 wind TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataAudioV44 audio TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; byte type; qword guid; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShapeV44 shapeArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV73; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV73; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV73 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV44 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV73 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV44 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV73 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV73 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV73 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV44 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV73 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV73 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV44 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV73 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV73 wind TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataAudioV44 audio TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV73 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV73; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV73 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV73 dataGlobal TPTR_END; } PackMapEnvironmentV73; /* Version: 72 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV72; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV72 lights TSTRUCT_PTR_ARRAY_PTR_END; float shadowInfluence; byte3 backlightColor; float backlightIntensity; } PackMapEnvDataLightingV72; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV43; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV43 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV43; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV72; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV72 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV72; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV72 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV72; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV43; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float2 flatteningRange; float2 flatteningCharacterRange; } PackMapEnvDataEffectV72; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; float2 sunDirRange; } PackMapEnvDataHazeV72; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; float texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV72; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV43; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; float verticalOffset; } PackMapEnvDataSkyV72; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV72; typedef struct { PackMapEnvDataSkyCardAttributesV72 day; PackMapEnvDataSkyCardAttributesV72 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV72; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV72 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV72; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; qword animSequence; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV43; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV43 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV43; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV43 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV43; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; float foamSpawn; float foamDissolve; float foamDepthAttenuation; byte4 foamColor0; byte4 foamColor1; } PackMapEnvDataWaterV72; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; byte gustSpeed; } PackMapEnvDataWindV72; typedef struct { float3 center; float height; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; byte shapeType; } PackMapEnvDataShapeV43; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV72 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV43 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV72 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV43 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV72 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV72 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV72 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV43 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV72 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV72 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV43 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV72 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV72 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; qword audioToken; byte type; qword guid; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShapeV43 shapeArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV72; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV72; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV72 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV43 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV72 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV43 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV72 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV72 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV72 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV43 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV72 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV72 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV43 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV72 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV72 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; qword audioToken; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV72 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV72; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV72 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV72 dataGlobal TPTR_END; } PackMapEnvironmentV72; /* Version: 71, ReferencedFunction: 0x140C82940 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV71; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV71 lights TSTRUCT_PTR_ARRAY_PTR_END; float shadowInfluence; byte3 backlightColor; float backlightIntensity; } PackMapEnvDataLightingV71; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV42; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV42 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV42; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV71; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV71 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV71; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV71 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV71; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV42; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float2 flatteningRange; float2 flatteningCharacterRange; } PackMapEnvDataEffectV71; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; float2 sunDirRange; } PackMapEnvDataHazeV71; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; float texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV71; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV42; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; float verticalOffset; } PackMapEnvDataSkyV71; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV71; typedef struct { PackMapEnvDataSkyCardAttributesV71 day; PackMapEnvDataSkyCardAttributesV71 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV71; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV71 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV71; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; qword animSequence; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV42; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV42 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV42; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV42 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV42; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; float foamSpawn; float foamDissolve; float foamDepthAttenuation; byte4 foamColor0; byte4 foamColor1; } PackMapEnvDataWaterV71; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; byte gustSpeed; } PackMapEnvDataWindV71; typedef struct { float3 center; float height; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; byte shapeType; } PackMapEnvDataShapeV42; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV71 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV42 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV71 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV42 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV71 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV71 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV71 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV42 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV71 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV71 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV42 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV71 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV71 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; byte type; qword guid; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShapeV42 shapeArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV71; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV71; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV71 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV42 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV71 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV42 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV71 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV71 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV71 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV42 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV71 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV71 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV42 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV71 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV71 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV71 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV71; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV71 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV71 dataGlobal TPTR_END; } PackMapEnvironmentV71; /* Version: 70, ReferencedFunction: 0x140C828F0 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV70; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV70 lights TSTRUCT_PTR_ARRAY_PTR_END; float shadowInfluence; } PackMapEnvDataLightingV70; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV41; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV41 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV41; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV70; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV70 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV70; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV70 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV70; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV41; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float2 flatteningRange; float2 flatteningCharacterRange; } PackMapEnvDataEffectV70; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; float2 sunDirRange; } PackMapEnvDataHazeV70; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; float texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV70; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV41; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; float verticalOffset; } PackMapEnvDataSkyV70; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV70; typedef struct { PackMapEnvDataSkyCardAttributesV70 day; PackMapEnvDataSkyCardAttributesV70 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV70; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV70 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV70; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; qword animSequence; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV41; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV41 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV41; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV41 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV41; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; float foamSpawn; float foamDissolve; float foamDepthAttenuation; byte4 foamColor0; byte4 foamColor1; } PackMapEnvDataWaterV70; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; byte gustSpeed; } PackMapEnvDataWindV70; typedef struct { float3 center; float height; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; byte shapeType; } PackMapEnvDataShapeV41; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV70 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV41 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV70 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV41 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV70 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV70 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV70 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV41 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV70 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV70 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV41 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV70 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV70 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; byte type; qword guid; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShapeV41 shapeArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV70; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV70; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV70 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV41 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV70 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV41 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV70 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV70 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV70 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV41 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV70 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV70 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV41 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV70 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV70 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV70 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV70; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV70 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV70 dataGlobal TPTR_END; } PackMapEnvironmentV70; /* Version: 69 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV69; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV69 lights TSTRUCT_PTR_ARRAY_PTR_END; float shadowInfluence; } PackMapEnvDataLightingV69; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV40; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV40 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV40; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV69; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV69 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV69; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV69 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV69; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV40; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float2 flatteningRange; float2 flatteningCharacterRange; } PackMapEnvDataEffectV69; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; float2 sunDirRange; } PackMapEnvDataHazeV69; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV69; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV40; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; float verticalOffset; } PackMapEnvDataSkyV69; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV69; typedef struct { PackMapEnvDataSkyCardAttributesV69 day; PackMapEnvDataSkyCardAttributesV69 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV69; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV69 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV69; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; qword animSequence; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV40; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV40 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV40; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV40 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV40; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; float foamSpawn; float foamDissolve; float foamDepthAttenuation; byte4 foamColor0; byte4 foamColor1; } PackMapEnvDataWaterV69; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; byte gustSpeed; } PackMapEnvDataWindV69; typedef struct { float3 center; float height; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; byte shapeType; } PackMapEnvDataShapeV40; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV69 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV40 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV69 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV40 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV69 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV69 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV69 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV40 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV69 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV69 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV40 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV69 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV69 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; byte type; qword guid; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShapeV40 shapeArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV69; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV69; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV69 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV40 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV69 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV40 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV69 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV69 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV69 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV40 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV69 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV69 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV40 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV69 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV69 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV69 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV69; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV69 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV69 dataGlobal TPTR_END; } PackMapEnvironmentV69; /* Version: 68, ReferencedFunction: 0x140C82790 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV68; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV68 lights TSTRUCT_PTR_ARRAY_PTR_END; float shadowInfluence; TPTR_START PackMapEnvDataLightV68 backlight TPTR_END; } PackMapEnvDataLightingV68; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV39; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV39 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV39; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV68; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV68 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV68; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV68 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV68; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV39; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float2 flatteningRange; float2 flatteningCharacterRange; } PackMapEnvDataEffectV68; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; float2 sunDirRange; } PackMapEnvDataHazeV68; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV68; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV39; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; float verticalOffset; } PackMapEnvDataSkyV68; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV68; typedef struct { PackMapEnvDataSkyCardAttributesV68 day; PackMapEnvDataSkyCardAttributesV68 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV68; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV68 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV68; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; qword animSequence; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV39; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV39 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV39; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV39 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV39; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; float foamSpawn; float foamDissolve; float foamDepthAttenuation; byte4 foamColor0; byte4 foamColor1; } PackMapEnvDataWaterV68; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; byte gustSpeed; } PackMapEnvDataWindV68; typedef struct { float3 center; float height; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; byte shapeType; } PackMapEnvDataShapeV39; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV68 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV39 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV68 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV39 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV68 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV68 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV68 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV39 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV68 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV68 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV39 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV68 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV68 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; byte type; qword guid; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShapeV39 shapeArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV68; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV68; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV68 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV39 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV68 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV39 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV68 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV68 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV68 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV39 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV68 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV68 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV39 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV68 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV68 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV68 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV68; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV68 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV68 dataGlobal TPTR_END; } PackMapEnvironmentV68; /* Version: 67 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV67; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV67 lights TSTRUCT_PTR_ARRAY_PTR_END; float shadowInfluence; } PackMapEnvDataLightingV67; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV38; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV38 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV38; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV67; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV67 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV67; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV67 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV67; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV38; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float2 flatteningRange; float2 flatteningCharacterRange; } PackMapEnvDataEffectV67; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; float2 sunDirRange; } PackMapEnvDataHazeV67; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV67; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV38; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; float verticalOffset; } PackMapEnvDataSkyV67; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV67; typedef struct { PackMapEnvDataSkyCardAttributesV67 day; PackMapEnvDataSkyCardAttributesV67 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV67; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV67 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV67; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; qword animSequence; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV38; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV38 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV38; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV38 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV38; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; float foamSpawn; float foamDissolve; float foamDepthAttenuation; byte4 foamColor0; byte4 foamColor1; } PackMapEnvDataWaterV67; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; byte gustSpeed; } PackMapEnvDataWindV67; typedef struct { float3 center; float height; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; byte shapeType; } PackMapEnvDataShapeV38; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV67 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV38 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV67 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV38 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV67 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV67 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV67 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV38 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV67 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV67 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV38 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV67 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV67 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; byte type; qword guid; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShapeV38 shapeArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV67; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV67; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV67 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV38 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV67 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV38 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV67 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV67 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV67 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV38 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV67 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV67 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV38 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV67 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV67 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV67 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV67; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV67 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV67 dataGlobal TPTR_END; } PackMapEnvironmentV67; /* Version: 66, ReferencedFunction: 0x140C825F0 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV66; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV66 lights TSTRUCT_PTR_ARRAY_PTR_END; float shadowInfluence; } PackMapEnvDataLightingV66; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV37; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV37 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV37; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV66; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV66 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV66; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV66 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV66; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV37; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float2 flatteningRange; float2 flatteningCharacterRange; } PackMapEnvDataEffectV66; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; float2 sunDirRange; } PackMapEnvDataHazeV66; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV66; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV37; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; float verticalOffset; } PackMapEnvDataSkyV66; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV66; typedef struct { PackMapEnvDataSkyCardAttributesV66 day; PackMapEnvDataSkyCardAttributesV66 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV66; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV66 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV66; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV37; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV37 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV37; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV37 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV37; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; float foamSpawn; float foamDissolve; float foamDepthAttenuation; byte4 foamColor0; byte4 foamColor1; } PackMapEnvDataWaterV66; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; byte gustSpeed; } PackMapEnvDataWindV66; typedef struct { float3 center; float height; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; byte shapeType; } PackMapEnvDataShapeV37; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV66 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV37 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV66 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV37 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV66 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV66 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV66 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV37 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV66 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV66 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV37 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV66 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV66 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; byte type; qword guid; TSTRUCT_ARRAY_PTR_START PackMapEnvDataShapeV37 shapeArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV66; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV66; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV66 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV37 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV66 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV37 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV66 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV66 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV66 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV37 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV66 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV66 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV37 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV66 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV66 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV66 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV66; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV66 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV66 dataGlobal TPTR_END; } PackMapEnvironmentV66; /* Version: 65, ReferencedFunction: 0x140C82570 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV65; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV65 lights TSTRUCT_PTR_ARRAY_PTR_END; float shadowInfluence; } PackMapEnvDataLightingV65; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV36; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV36 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV36; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV65; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV65 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV65; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV65 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV65; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV36; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float2 flatteningRange; float2 flatteningCharacterRange; } PackMapEnvDataEffectV65; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; float2 sunDirRange; } PackMapEnvDataHazeV65; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV65; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV36; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; float verticalOffset; } PackMapEnvDataSkyV65; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV65; typedef struct { PackMapEnvDataSkyCardAttributesV65 day; PackMapEnvDataSkyCardAttributesV65 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV65; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV65 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV65; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV36; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV36 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV36; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV36 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV36; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; float foamSpawn; float foamDissolve; float foamDepthAttenuation; byte4 foamColor0; byte4 foamColor1; } PackMapEnvDataWaterV65; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; byte gustSpeed; } PackMapEnvDataWindV65; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV65 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV36 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV65 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV36 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV65 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV65 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV65 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV36 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV65 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV65 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV36 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV65 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV65 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV65; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV65; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV65 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV36 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV65 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV36 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV65 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV65 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV65 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV36 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV65 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV65 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV36 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV65 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV65 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV65 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV65; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV65 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV65 dataGlobal TPTR_END; } PackMapEnvironmentV65; /* Version: 64, ReferencedFunction: 0x140C82430 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV64; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV64 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV64; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV35; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV35 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV35; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV64; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV64 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV64; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV64 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV64; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV35; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float2 flatteningRange; float2 flatteningCharacterRange; } PackMapEnvDataEffectV64; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; float2 sunDirRange; } PackMapEnvDataHazeV64; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV64; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV35; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; float verticalOffset; } PackMapEnvDataSkyV64; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV64; typedef struct { PackMapEnvDataSkyCardAttributesV64 day; PackMapEnvDataSkyCardAttributesV64 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV64; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV64 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV64; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV35; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV35 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV35; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV35 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV35; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; float foamSpawn; float foamDissolve; float foamDepthAttenuation; byte4 foamColor0; byte4 foamColor1; } PackMapEnvDataWaterV64; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; byte gustSpeed; } PackMapEnvDataWindV64; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV64 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV35 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV64 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV35 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV64 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV64 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV64 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV35 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV64 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV64 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV35 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV64 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV64 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV64; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV64; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV64 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV35 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV64 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV35 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV64 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV64 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV64 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV35 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV64 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV64 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV35 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV64 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV64 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV64 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV64; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV64 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV64 dataGlobal TPTR_END; } PackMapEnvironmentV64; /* Version: 63, ReferencedFunction: 0x140C82310 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV63; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV63 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV63; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV34; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV34 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV34; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV63; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV63 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV63; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV63 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV63; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV34; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float2 flatteningRange; float2 flatteningCharacterRange; } PackMapEnvDataEffectV63; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; float2 sunDirRange; } PackMapEnvDataHazeV63; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV63; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV34; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV63; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV63; typedef struct { PackMapEnvDataSkyCardAttributesV63 day; PackMapEnvDataSkyCardAttributesV63 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV63; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV63 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV63; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV34; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV34 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV34; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV34 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV34; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; float foamSpawn; float foamDissolve; float foamDepthAttenuation; byte4 foamColor0; byte4 foamColor1; } PackMapEnvDataWaterV63; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV63; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV63 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV34 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV63 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV34 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV63 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV63 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV63 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV34 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV63 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV63 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV34 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV63 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV63 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV63; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV63; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV63 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV34 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV63 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV34 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV63 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV63 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV63 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV34 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV63 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV63 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV34 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV63 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV63 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV63 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV63; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV63 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV63 dataGlobal TPTR_END; } PackMapEnvironmentV63; /* Version: 62, ReferencedFunction: 0x140C822E0 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV62; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV62 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV62; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV33; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV33 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV33; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV62; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV62 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV62; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV62 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV62; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV33; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float2 flatteningRange; float2 flatteningCharacterRange; } PackMapEnvDataEffectV62; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; float2 sunDirRange; } PackMapEnvDataHazeV62; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV62; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV33; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV62; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV62; typedef struct { PackMapEnvDataSkyCardAttributesV62 day; PackMapEnvDataSkyCardAttributesV62 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV62; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV62 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV62; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV33; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV33 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV33; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV33 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV33; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV62; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV62; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV62 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV33 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV62 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV33 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV62 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV62 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV62 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV33 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV62 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV62 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV33 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV62 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV62 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV62; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV62; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV62 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV33 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV62 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV33 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV62 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV62 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV62 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV33 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV62 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV62 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV33 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV62 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV62 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV62 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV62; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV62 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV62 dataGlobal TPTR_END; } PackMapEnvironmentV62; /* Version: 61, ReferencedFunction: 0x140C822B0 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV61; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV61 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV61; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV32; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV32 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV32; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV61; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV61 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV61; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV61 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV61; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV32; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float2 flatteningRange; float2 flatteningCharacterRange; } PackMapEnvDataEffectV61; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV61; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV61; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV32; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV61; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV61; typedef struct { PackMapEnvDataSkyCardAttributesV61 day; PackMapEnvDataSkyCardAttributesV61 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV61; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV61 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV61; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV32; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV32 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV32; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV32 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV32; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV61; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV61; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV61 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV32 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV61 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV32 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV61 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV61 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV61 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV32 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV61 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV61 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV32 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV61 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV61 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV61; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV61; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV61 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV32 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV61 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV32 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV61 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV61 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV61 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV32 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV61 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV61 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV32 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV61 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV61 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV61 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV61; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV61 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV61 dataGlobal TPTR_END; } PackMapEnvironmentV61; /* Version: 60, ReferencedFunction: 0x140C82280 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV60; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV60 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV60; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV31; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV31 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV31; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV60; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV60 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV60; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV60 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV60; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV31; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; float2 flatteningRange; } PackMapEnvDataEffectV60; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV60; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV60; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV31; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV60; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV60; typedef struct { PackMapEnvDataSkyCardAttributesV60 day; PackMapEnvDataSkyCardAttributesV60 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV60; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV60 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV60; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV31; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV31 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV31; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV31 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV31; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV60; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV60; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV60 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV31 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV60 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV31 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV60 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV60 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV60 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV31 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV60 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV60 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV31 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV60 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV60 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV60; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV60; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV60 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV31 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV60 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV31 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV60 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV60 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV60 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV31 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV60 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV60 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV31 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV60 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV60 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV60 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV60; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV60 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV60 dataGlobal TPTR_END; } PackMapEnvironmentV60; /* Version: 59, ReferencedFunction: 0x140C820E0 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV59; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV59 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV59; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV30; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV30 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV30; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV59; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV59 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV59; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV59 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV59; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV30; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV59; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV59; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV59; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV30; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV59; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV59; typedef struct { PackMapEnvDataSkyCardAttributesV59 day; PackMapEnvDataSkyCardAttributesV59 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV59; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV59 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV59; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; filename modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV30; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV30 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV30; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV30 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV30; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV59; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV59; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV59 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV30 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV59 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV30 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV59 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV59 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV59 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV30 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV59 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV59 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV30 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV59 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV59 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV59; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV59; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV59 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV30 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV59 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV30 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV59 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV59 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV59 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV30 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV59 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV59 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV30 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV59 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV59 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV59 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV59; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV59 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV59 dataGlobal TPTR_END; } PackMapEnvironmentV59; /* Version: 58, ReferencedFunction: 0x140C81FC0 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV58; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV58 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV58; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV29; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV29 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV29; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV58; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV58 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV58; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV58 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV58; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV29; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV58; typedef struct { byte4 nearColor; byte4 farColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV58; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV58; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV29; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV58; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV58; typedef struct { PackMapEnvDataSkyCardAttributesV58 day; PackMapEnvDataSkyCardAttributesV58 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV58; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV58 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV58; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; wchar_ptr modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV29; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV29 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV29; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV29 spawnGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnGroupsV29; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV58; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV58; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV58 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV29 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV58 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV29 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV58 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV58 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV58 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV29 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV58 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV58 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV29 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV58 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV58 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV58; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV58; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV58 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV29 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV58 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV29 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV58 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV58 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV58 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV29 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV58 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV58 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV29 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV58 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV58 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV58 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV58; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV58 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV58 dataGlobal TPTR_END; } PackMapEnvironmentV58; /* Version: 57 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV57; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV57 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV57; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV28; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV28 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV28; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV57; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV57 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV57; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV57 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV57; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV28; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV57; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV57; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV57; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV28; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV57; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV57; typedef struct { PackMapEnvDataSkyCardAttributesV57 day; PackMapEnvDataSkyCardAttributesV57 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV57; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV57 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV57; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 heightRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; wchar_ptr modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV28; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV28 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV28; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV28 spawnGroups TSTRUCT_ARRAY_PTR_END; qword targetVolume; } PackMapEnvDataSpawnGroupsV28; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV57; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV57; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV57 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV28 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV57 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV28 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV57 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV57 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV57 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV28 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV57 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV57 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV28 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV57 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV57 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV57; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV57; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV57 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV28 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV57 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV28 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV57 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV57 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV57 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV28 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV57 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV57 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV28 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV57 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV57 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV57 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV57; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV57 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV57 dataGlobal TPTR_END; } PackMapEnvironmentV57; /* Version: 56, ReferencedFunction: 0x140C81E60 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV56; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV56 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV56; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV27; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV27 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV27; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV56; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV56 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV56; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV56 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV56; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV27; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV56; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV56; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV56; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV27; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV56; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV56; typedef struct { PackMapEnvDataSkyCardAttributesV56 day; PackMapEnvDataSkyCardAttributesV56 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV56; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV56 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV56; typedef struct { dword2 spawnRange; dword2 lifeSpan; float2 scaleRange; float2 rotXRange; float2 rotYRange; float2 rotZRange; float probability; float delay; dword flags; wchar_ptr modelFile; word maxConcurrent; } PackMapEnvDataSpawnModelDataV27; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV27 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV27; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV27 spawnGroups TSTRUCT_ARRAY_PTR_END; qword targetVolume; } PackMapEnvDataSpawnGroupsV27; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV56; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV56; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV56 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV27 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV56 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV27 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV56 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV56 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV56 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV27 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV56 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV56 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV27 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV56 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV56 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV56; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV56; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV56 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV27 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV56 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV27 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV56 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV56 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV56 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV27 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV56 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV56 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV27 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV56 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV56 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV56 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV56; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV56 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV56 dataGlobal TPTR_END; } PackMapEnvironmentV56; /* Version: 55 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV55; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV55 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV55; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV26; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV26 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV26; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV55; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV55 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV55; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV55 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV55; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV26; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV55; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV55; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV55; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV26; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV55; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV55; typedef struct { PackMapEnvDataSkyCardAttributesV55 day; PackMapEnvDataSkyCardAttributesV55 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV55; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV55 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV55; typedef struct { dword2 spawnRange; dword2 lifeSpan; float probability; float delay; word maxConcurrent; dword flags; wchar_ptr modelFile; } PackMapEnvDataSpawnModelDataV26; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnModelDataV26 spawns TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSpawnListV26; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSpawnListV26 spawnGroups TSTRUCT_ARRAY_PTR_END; qword targetVolume; } PackMapEnvDataSpawnGroupsV26; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV55; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV55; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV55 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV26 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV55 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV26 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV55 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV55 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV55 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV26 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV55 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV55 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV26 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV55 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV55 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV55; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV55; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV55 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV26 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV55 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV26 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV55 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV55 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV55 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV26 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV55 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV55 skyCards TPTR_END; TPTR_START PackMapEnvDataSpawnGroupsV26 spawns TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV55 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV55 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV55 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV55; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV55 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV55 dataGlobal TPTR_END; } PackMapEnvironmentV55; /* Version: 54, ReferencedFunction: 0x140C81D90 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV54; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV54 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV54; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV25; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV25 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV25; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV54; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV54 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV54; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV54 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV54; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV25; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV54; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV54; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV54; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV25; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV54; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV54; typedef struct { PackMapEnvDataSkyCardAttributesV54 day; PackMapEnvDataSkyCardAttributesV54 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV54; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV54 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV54; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV54; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV54; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV54 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV25 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV54 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV25 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV54 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV54 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV54 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV25 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV54 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV54 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV54 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV54 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV54; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV54; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV54 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV25 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV54 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV25 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV54 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV54 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV54 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV25 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV54 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV54 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV54 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV54 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV54 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV54; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV54 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV54 dataGlobal TPTR_END; } PackMapEnvironmentV54; /* Version: 53, ReferencedFunction: 0x140C81CC0 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV53; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV53 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV53; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV24; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV24 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV24; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV53; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV53 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV53; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV53 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV53; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV24; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV53; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV53; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; float2 deviationSpeed; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV53; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV24; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV53; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV53; typedef struct { PackMapEnvDataSkyCardAttributesV53 day; PackMapEnvDataSkyCardAttributesV53 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV53; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV53 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV53; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV53; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV53; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV53 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV24 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV53 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV24 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV53 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV53 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV53 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV24 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV53 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV53 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV53 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV53 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV53; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV53; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV53 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV24 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV53 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV24 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV53 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV53 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV53 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV24 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV53 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV53 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV53 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV53 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV53 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV53; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV53 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV53 dataGlobal TPTR_END; } PackMapEnvironmentV53; /* Version: 52, ReferencedFunction: 0x140C81BC0 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV52; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV52 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV52; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV23; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV23 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV23; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV52; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV52 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV52; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV52 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV52; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV23; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV52; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV52; typedef struct { float altitude; float2 angle; word clusterCount; float2 clustering; float depth; float deviation; word extent; float fade; float3 fieldDirection; word flags; float2 lifetime; float2 opacity; word particleCount; float2 period; float2 rotation; float2 scaleX; float2 scaleY; dword seed; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV52; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV23; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV52; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV52; typedef struct { PackMapEnvDataSkyCardAttributesV52 day; PackMapEnvDataSkyCardAttributesV52 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV52; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV52 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV52; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV52; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV52; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV52 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV23 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV52 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV23 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV52 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV52 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV52 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV23 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV52 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV52 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV52 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV52 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV52; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV52; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV52 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV23 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV52 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV23 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV52 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV52 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV52 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV23 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV52 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV52 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV52 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV52 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV52 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV52; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV52 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV52 dataGlobal TPTR_END; } PackMapEnvironmentV52; /* Version: 51 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV51; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV51 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV51; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV22; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV22 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV22; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV51; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV51 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV51; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV51 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV51; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV22; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV51; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV51; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float lifetime; float2 opacity; word particleCount; float period; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV51; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV22; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV51; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV51; typedef struct { PackMapEnvDataSkyCardAttributesV51 day; PackMapEnvDataSkyCardAttributesV51 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV51; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV51 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV51; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV51; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV51; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV51 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV22 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV51 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV22 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV51 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV51 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV51 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV22 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV51 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV51 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV51 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV51 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV51; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV51; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV51 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV22 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV51 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV22 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV51 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV51 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV51 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV22 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV51 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV51 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV51 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV51 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV51 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV51; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV51 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV51 dataGlobal TPTR_END; } PackMapEnvironmentV51; /* Version: 50, ReferencedFunction: 0x140C81A40 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV50; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV50 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV50; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV21; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV21 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV21; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV50; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV50 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV50; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV50 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV50; typedef struct { float2 range; float distances[6]; byte4 lightColors[6]; byte4 shadowColors[6]; } PackMapEnvDataColoredLightRingsV21; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV50; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV50; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV50; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV21; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV50; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV50; typedef struct { PackMapEnvDataSkyCardAttributesV50 day; PackMapEnvDataSkyCardAttributesV50 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV50; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV50 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV50; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV50; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV50; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV50 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV21 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV50 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV21 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV50 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV50 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV50 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV21 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV50 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV50 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV50 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV50 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV50; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV50; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV50 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV21 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV50 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV21 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV50 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV50 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV50 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV21 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV50 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV50 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV50 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV50 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV50 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV50; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV50 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV50 dataGlobal TPTR_END; } PackMapEnvironmentV50; /* Version: 49, ReferencedFunction: 0x140C818B0 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV49; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV49 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV49; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV20; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV20 lightingChar TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLightingCharGroupV20; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV49; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV49 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV49; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV49 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV49; typedef struct { float2 range; byte4 colors[6]; float distances[6]; } PackMapEnvDataColoredLightRingsV20; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV49; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV49; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV49; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV20; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV49; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV49; typedef struct { PackMapEnvDataSkyCardAttributesV49 day; PackMapEnvDataSkyCardAttributesV49 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV49; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV49 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV49; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV49; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV49; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV49 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV20 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV49 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV20 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV49 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV49 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV49 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV20 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV49 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV49 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV49 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV49 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV49; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV49; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV49 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharGroupV20 lightingCharGroups TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV49 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV20 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV49 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV49 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV49 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV20 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV49 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV49 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV49 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV49 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV49 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV49; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV49 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV49 dataGlobal TPTR_END; } PackMapEnvironmentV49; /* Version: 48 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV48; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV48 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV48; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV19; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV48; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV48 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV48; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV48 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV48; typedef struct { float2 range; byte4 colors[6]; float distances[6]; } PackMapEnvDataColoredLightRingsV19; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV48; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV48; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV48; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV19; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV48; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV48; typedef struct { PackMapEnvDataSkyCardAttributesV48 day; PackMapEnvDataSkyCardAttributesV48 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV48; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV48 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV48; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV48; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV48; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV48 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV19 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV48 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV19 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV48 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV48 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV48 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV19 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV48 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV48 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV48 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV48 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV48; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV48; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV48 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV19 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV48 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV19 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV48 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV48 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV48 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV19 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV48 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV48 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV48 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV48 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; qword bindTarget; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV48 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV48; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV48 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV48 dataGlobal TPTR_END; } PackMapEnvironmentV48; /* Version: 47 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV47; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV47 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV47; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV18; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV47; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV47 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV47; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV47 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV47; typedef struct { float2 range; byte4 colors[6]; float distances[6]; } PackMapEnvDataColoredLightRingsV18; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV47; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV47; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV47; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV18; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV47; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV47; typedef struct { PackMapEnvDataSkyCardAttributesV47 day; PackMapEnvDataSkyCardAttributesV47 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV47; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV47 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV47; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV47; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV47; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV47 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV18 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV47 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV18 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV47 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV47 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV47 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV18 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV47 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV47 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV47 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV47 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV47; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV47; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV47 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV18 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV47 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV18 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV47 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV47 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV47 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV18 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV47 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV47 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV47 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV47 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV47 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV47; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV47 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV47 dataGlobal TPTR_END; } PackMapEnvironmentV47; /* Version: 46 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV46; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV46 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV46; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV17; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV46; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV46 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV46; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV46 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV46; typedef struct { float2 range; byte4 colors[6]; float distances[6]; } PackMapEnvDataColoredLightRingsV17; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV46; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV46; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV46; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV17; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV46; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV46; typedef struct { PackMapEnvDataSkyCardAttributesV46 day; PackMapEnvDataSkyCardAttributesV46 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV46; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV46 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV46; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV46; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV46; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV46 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV17 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV46 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV17 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV46 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV46 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV46 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV17 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV46 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV46 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV46 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV46 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV46; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV46; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV46 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV17 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV46 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV17 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV46 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV46 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV46 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV17 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV46 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV46 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV46 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV46 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV46 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV46; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV46 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV46 dataGlobal TPTR_END; } PackMapEnvironmentV46; /* Version: 45 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV45; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV45 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV45; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV16; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV45; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV45 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV45; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV45 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV45; typedef struct { float2 range; byte4 colors[6]; float distances[6]; } PackMapEnvDataColoredLightRingsV16; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV45; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV45; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV45; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV16; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV45; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV45; typedef struct { PackMapEnvDataSkyCardAttributesV45 day; PackMapEnvDataSkyCardAttributesV45 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV45; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV45 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV45; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV45; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV45; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV45 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV16 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV45 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV16 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV45 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV45 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV45 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV16 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV45 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV45 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV45 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV45 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV45; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV45; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV45 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV16 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV45 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV16 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV45 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV45 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV45 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV16 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV45 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV45 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV45 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV45 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV45 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV45; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV45 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV45 dataGlobal TPTR_END; } PackMapEnvironmentV45; /* Version: 44, ReferencedFunction: 0x140C81720 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV44; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV44 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV44; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV15; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV44; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV44 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV44; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV44 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV44; typedef struct { float2 range; byte4 colors[6]; float distances[6]; } PackMapEnvDataColoredLightRingsV15; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV44; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV44; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV44; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV15; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV44; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV44; typedef struct { PackMapEnvDataSkyCardAttributesV44 day; PackMapEnvDataSkyCardAttributesV44 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV44; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV44 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV44; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV44; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV44; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV44 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV15 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV44 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV15 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV44 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV44 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV44 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV15 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV44 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV44 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV44 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV44 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV44; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV44; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV44 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV15 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV44 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataColoredLightRingsV15 coloredLightRings TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV44 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV44 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV44 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV15 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV44 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV44 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV44 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV44 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV44 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV44; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV44 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV44 dataGlobal TPTR_END; } PackMapEnvironmentV44; /* Version: 43, ReferencedFunction: 0x140C81580 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV43; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV43 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV43; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV14; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; float fadeWidth; float fadeEnd; } PackMapEnvDataLayerAttributesV43; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV43 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV43; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV43 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV43; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV43; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV43; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV43; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV14; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV43; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; float brightness; } PackMapEnvDataSkyCardAttributesV43; typedef struct { PackMapEnvDataSkyCardAttributesV43 day; PackMapEnvDataSkyCardAttributesV43 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV43; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV43 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV43; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV43; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV43; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV43 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV14 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV43 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV43 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV43 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV43 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV14 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV43 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV43 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV43 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV43 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV43; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV43; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV43 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV14 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV43 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV43 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV43 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV43 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV14 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV43 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV43 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV43 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV43 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV43 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV43; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV43 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV43 dataGlobal TPTR_END; } PackMapEnvironmentV43; /* Version: 42, ReferencedFunction: 0x140C814B0 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV42; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV42 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV42; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV13; typedef struct { float brightness; float density; float haze; float lightIntensity; float2 velocity; } PackMapEnvDataLayerAttributesV42; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV42 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV42; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV42 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV42; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV42; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV42; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV42; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV13; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV42; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; } PackMapEnvDataSkyCardAttributesV42; typedef struct { PackMapEnvDataSkyCardAttributesV42 day; PackMapEnvDataSkyCardAttributesV42 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV42; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV42 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV42; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV42; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV42; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV42 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV13 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV42 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV42 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV42 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV42 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV13 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV42 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV42 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV42 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV42 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV42; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV42; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV42 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV13 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV42 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV42 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV42 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV42 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV13 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV42 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV42 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV42 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV42 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV42 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV42; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV42 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV42 dataGlobal TPTR_END; } PackMapEnvironmentV42; /* Version: 41, ReferencedFunction: 0x140C81340 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV41; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV41 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV41; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV12; typedef struct { float density; float haze; float lightIntensity; float2 velocity; } PackMapEnvDataLayerAttributesV41; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV41 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV41; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV41 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV41; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV41; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV41; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV41; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV12; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV41; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; } PackMapEnvDataSkyCardAttributesV41; typedef struct { PackMapEnvDataSkyCardAttributesV41 day; PackMapEnvDataSkyCardAttributesV41 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV41; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV41 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV41; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; float depthAttenuation; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataWaterV41; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV41; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV41 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV12 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV41 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV41 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV41 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV41 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV12 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV41 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV41 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV41 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV41 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV41; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV41; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV41 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV12 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV41 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV41 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV41 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV41 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV12 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV41 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV41 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV41 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV41 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START byte nightMods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV41 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV41; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV41 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV41 dataGlobal TPTR_END; } PackMapEnvironmentV41; /* Version: 40, ReferencedFunction: 0x140C81300 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV40; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV40 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV40; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV11; typedef struct { float density; float haze; float lightIntensity; float2 velocity; } PackMapEnvDataLayerAttributesV40; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV40 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV40; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV40 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV40; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV40; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV40; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV40; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV11; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV40; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; } PackMapEnvDataSkyCardAttributesV40; typedef struct { PackMapEnvDataSkyCardAttributesV40 day; PackMapEnvDataSkyCardAttributesV40 night; dword flags; wchar_ptr name; } PackMapEnvDataSkyCardV40; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV40 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV40; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; filename bumpTexture; filename patternTexture; float depthAttenuation; } PackMapEnvDataWaterV40; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV40; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV40 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV11 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV40 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV40 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV40 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV40 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV11 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV40 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV40 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV40 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV40 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV40; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV40; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV40 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV11 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV40 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV40 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV40 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV40 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV11 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV40 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV40 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV40 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV40 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV40 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV40; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV40 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV40 dataGlobal TPTR_END; } PackMapEnvironmentV40; /* Version: 39 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV39; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV39 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV39; typedef struct { float sunScale; float saturation; float sunFill; float ambScale; float ambFill; byte flags; } PackMapEnvDataLightingCharV10; typedef struct { float density; float haze; float lightIntensity; float2 velocity; } PackMapEnvDataLayerAttributesV39; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV39 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV39; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV39 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV39; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV39; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV39; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV39; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV10; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV39; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; } PackMapEnvDataSkyCardAttributesV39; typedef struct { PackMapEnvDataSkyCardAttributesV39 day; PackMapEnvDataSkyCardAttributesV39 night; wchar_ptr name; } PackMapEnvDataSkyCardV39; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV39 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV39; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; filename bumpTexture; filename patternTexture; float depthAttenuation; } PackMapEnvDataWaterV39; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV39; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV39 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV10 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV39 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV39 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV39 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV39 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV10 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV39 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV39 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV39 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV39 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; qword guid; } PackMapEnvDataLocalV39; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV39; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV39 lighting TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingCharV10 lightingChar TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV39 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV39 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV39 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV39 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV10 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV39 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV39 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV39 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV39 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV39 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV39; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV39 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV39 dataGlobal TPTR_END; } PackMapEnvironmentV39; /* Version: 38, ReferencedFunction: 0x140C81260 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV38; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV38 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV38; typedef struct { float density; float haze; float lightIntensity; float2 velocity; } PackMapEnvDataLayerAttributesV38; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV38 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV38; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV38 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV38; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; float focalDepth; float focalRange; } PackMapEnvDataEffectV38; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV38; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV38; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV9; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV38; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; } PackMapEnvDataSkyCardAttributesV38; typedef struct { PackMapEnvDataSkyCardAttributesV38 day; PackMapEnvDataSkyCardAttributesV38 night; wchar_ptr name; } PackMapEnvDataSkyCardV38; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV38 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV38; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; filename bumpTexture; filename patternTexture; float depthAttenuation; } PackMapEnvDataWaterV38; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV38; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV38 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV38 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV38 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV38 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV38 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV9 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV38 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV38 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV38 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV38 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV38; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV38; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV38 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV38 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV38 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV38 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV38 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV9 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV38 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV38 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV38 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV38 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV38 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV38; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV38 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV38 dataGlobal TPTR_END; } PackMapEnvironmentV38; /* Version: 37, ReferencedFunction: 0x140C811C0 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV37; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV37 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV37; typedef struct { float density; float haze; float lightIntensity; float2 velocity; } PackMapEnvDataLayerAttributesV37; typedef struct { float altitude; float cutOut; float depth; float extent; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV37 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV37; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV37 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV37; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; } PackMapEnvDataEffectV37; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV37; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV37; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV8; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV37; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; } PackMapEnvDataSkyCardAttributesV37; typedef struct { PackMapEnvDataSkyCardAttributesV37 day; PackMapEnvDataSkyCardAttributesV37 night; wchar_ptr name; } PackMapEnvDataSkyCardV37; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV37 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV37; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; filename bumpTexture; filename patternTexture; float depthAttenuation; } PackMapEnvDataWaterV37; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV37; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV37 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV37 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV37 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV37 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV37 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV8 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV37 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV37 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV37 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV37 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV37; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV37; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV37 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV37 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV37 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV37 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV37 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV8 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV37 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV37 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV37 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV37 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV37 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV37; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV37 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV37 dataGlobal TPTR_END; } PackMapEnvironmentV37; /* Version: 36 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV36; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV36 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV36; typedef struct { float density; float haze; float lightIntensity; float2 velocity; } PackMapEnvDataLayerAttributesV36; typedef struct { float altitude; float cutOut; float depth; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV36 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV36; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV36 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV36; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; } PackMapEnvDataEffectV36; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV36; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV36; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV7; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV36; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; } PackMapEnvDataSkyCardAttributesV36; typedef struct { PackMapEnvDataSkyCardAttributesV36 day; PackMapEnvDataSkyCardAttributesV36 night; wchar_ptr name; } PackMapEnvDataSkyCardV36; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV36 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV36; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; filename bumpTexture; filename patternTexture; float depthAttenuation; } PackMapEnvDataWaterV36; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV36; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV36 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV36 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV36 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV36 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV36 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV7 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV36 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV36 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV36 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV36 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV36; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV36; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV36 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV36 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV36 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV36 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV36 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV7 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV36 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV36 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV36 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV36 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV36 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV36; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV36 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV36 dataGlobal TPTR_END; } PackMapEnvironmentV36; /* Version: 35, ReferencedFunction: 0x140C81160 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV35; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV35 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV35; typedef struct { float density; float haze; float lightIntensity; float2 velocity; } PackMapEnvDataLayerAttributesV35; typedef struct { float altitude; float cutOut; float depth; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV35 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV35; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV35 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV35; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; } PackMapEnvDataEffectV35; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV35; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV35; typedef struct { wchar_ptr name; float4 x; float4 y; float4 z; } PackMapEnvDataPFieldCutoutV6; typedef struct { byte flags; float dayBrightness; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightBrightness; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV35; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; } PackMapEnvDataSkyCardAttributesV35; typedef struct { PackMapEnvDataSkyCardAttributesV35 day; PackMapEnvDataSkyCardAttributesV35 night; wchar_ptr name; } PackMapEnvDataSkyCardV35; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV35 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV35; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; filename bumpTexture; filename patternTexture; } PackMapEnvDataWaterV35; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV35; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV35 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV35 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV35 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV35 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV35 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV6 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV35 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV35 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV35 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV35 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV35; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV35; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV35 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV35 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV35 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV35 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV35 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataPFieldCutoutV6 particleFieldCutouts TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV35 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV35 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV35 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV35 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV35 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV35; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV35 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV35 dataGlobal TPTR_END; } PackMapEnvironmentV35; /* Version: 34 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV34; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV34 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV34; typedef struct { float density; float haze; float lightIntensity; float2 velocity; } PackMapEnvDataLayerAttributesV34; typedef struct { float altitude; float cutOut; float depth; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV34 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV34; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV34 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV34; typedef struct { byte4 glow; byte4 tintColor; byte4 tintTargetColor; float saturation; float tintAmount; float tintFocus; byte4 glowLevel; float glowAmplify; } PackMapEnvDataEffectV34; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV34; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV34; typedef struct { byte flags; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV34; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; } PackMapEnvDataSkyCardAttributesV34; typedef struct { PackMapEnvDataSkyCardAttributesV34 day; PackMapEnvDataSkyCardAttributesV34 night; wchar_ptr name; } PackMapEnvDataSkyCardV34; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV34 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV34; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; filename bumpTexture; filename patternTexture; } PackMapEnvDataWaterV34; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV34; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV34 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV34 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV34 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV34 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV34 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV34 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV34 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV34 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV34 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV34; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV34; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV34 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV34 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV34 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV34 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV34 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV34 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV34 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV34 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV34 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV34 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV34; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV34 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV34 dataGlobal TPTR_END; } PackMapEnvironmentV34; /* Version: 33 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV33; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV33 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV33; typedef struct { float density; float haze; float lightIntensity; float2 velocity; } PackMapEnvDataLayerAttributesV33; typedef struct { float altitude; float cutOut; float depth; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV33 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV33; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV33 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV33; typedef struct { byte4 glow; byte4 tintColor; float saturation; float tintAmount; byte4 glowLevel; float glowAmplify; } PackMapEnvDataEffectV33; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV33; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV33; typedef struct { byte flags; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV33; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; } PackMapEnvDataSkyCardAttributesV33; typedef struct { PackMapEnvDataSkyCardAttributesV33 day; PackMapEnvDataSkyCardAttributesV33 night; wchar_ptr name; } PackMapEnvDataSkyCardV33; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV33 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV33; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; filename bumpTexture; filename patternTexture; } PackMapEnvDataWaterV33; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV33; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV33 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV33 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV33 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV33 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV33 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV33 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV33 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV33 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV33 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV33; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV33; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV33 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV33 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV33 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV33 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV33 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV33 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV33 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV33 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV33 wind TSTRUCT_PTR_ARRAY_PTR_END; wchar_ptr name; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV33 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV33; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV33 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV33 dataGlobal TPTR_END; } PackMapEnvironmentV33; /* Version: 32, ReferencedFunction: 0x140C80F90 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV32; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV32 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV32; typedef struct { float density; float haze; float lightIntensity; float2 velocity; } PackMapEnvDataLayerAttributesV32; typedef struct { float altitude; float cutOut; float depth; float scale; filename texture; TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerAttributesV32 attributes TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEnvDataLayerV32; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV32 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV32; typedef struct { byte4 glow; byte4 tintColor; float saturation; float tintAmount; byte4 glowLevel; float glowAmplify; } PackMapEnvDataEffectV32; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV32; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV32; typedef struct { byte flags; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV32; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; } PackMapEnvDataSkyCardAttributesV32; typedef struct { PackMapEnvDataSkyCardAttributesV32 day; PackMapEnvDataSkyCardAttributesV32 night; wchar_ptr name; } PackMapEnvDataSkyCardV32; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV32 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV32; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; filename bumpTexture; filename patternTexture; } PackMapEnvDataWaterV32; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV32; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV32 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV32 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV32 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV32 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV32 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV32 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV32 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV32 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV32 wind TSTRUCT_PTR_ARRAY_PTR_END; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV32; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV32; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV32 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV32 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV32 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV32 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV32 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV32 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV32 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV32 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV32 wind TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV32 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV32; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV32 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV32 dataGlobal TPTR_END; } PackMapEnvironmentV32; /* Version: 31, ReferencedFunction: 0x140C80F10 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV31; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV31 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV31; typedef struct { float density; float depth; float haze; float lightIntensity; float2 velocity; } PackMapEnvDataLayerAttributesV31; typedef struct { float altitude; float cutOut; float scale; filename texture; PackMapEnvDataLayerAttributesV31 day; PackMapEnvDataLayerAttributesV31 night; wchar_ptr name; } PackMapEnvDataLayerV31; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV31 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV31; typedef struct { byte4 glow; byte4 tintColor; float saturation; float tintAmount; byte4 glowLevel; float glowAmplify; } PackMapEnvDataEffectV31; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV31; typedef struct { float altitude; float2 angle; float depth; float deviation; word extent; float fade; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV31; typedef struct { byte flags; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV31; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; } PackMapEnvDataSkyCardAttributesV31; typedef struct { PackMapEnvDataSkyCardAttributesV31 day; PackMapEnvDataSkyCardAttributesV31 night; wchar_ptr name; } PackMapEnvDataSkyCardV31; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV31 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV31; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; float patternEdge; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; filename bumpTexture; filename patternTexture; } PackMapEnvDataWaterV31; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV31; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV31 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV31 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV31 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV31 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV31 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV31 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV31 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV31 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV31 wind TSTRUCT_PTR_ARRAY_PTR_END; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV31; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV31; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV31 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV31 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV31 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV31 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV31 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV31 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV31 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV31 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV31 wind TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV31 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV31; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV31 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV31 dataGlobal TPTR_END; } PackMapEnvironmentV31; /* Version: 30, ReferencedFunction: 0x140C80E80 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV30; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV30 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV30; typedef struct { float density; float depth; float haze; float lightIntensity; float2 velocity; } PackMapEnvDataLayerAttributesV30; typedef struct { float altitude; float cutOut; float scale; filename texture; PackMapEnvDataLayerAttributesV30 day; PackMapEnvDataLayerAttributesV30 night; wchar_ptr name; } PackMapEnvDataLayerV30; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV30 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV30; typedef struct { byte4 glow; byte4 tintColor; float saturation; float tintAmount; byte4 glowLevel; float glowAmplify; } PackMapEnvDataEffectV30; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV30; typedef struct { float2 angle; float deviation; word extent; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV30; typedef struct { byte flags; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV30; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; } PackMapEnvDataSkyCardAttributesV30; typedef struct { PackMapEnvDataSkyCardAttributesV30 day; PackMapEnvDataSkyCardAttributesV30 night; wchar_ptr name; } PackMapEnvDataSkyCardV30; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV30 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV30; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; filename bumpTexture; filename patternTexture; } PackMapEnvDataWaterV30; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV30; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV30 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV30 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV30 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV30 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV30 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV30 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV30 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV30 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV30 wind TSTRUCT_PTR_ARRAY_PTR_END; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV30; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV30; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV30 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV30 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV30 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV30 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV30 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV30 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV30 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV30 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV30 wind TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV30 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV30; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV30 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV30 dataGlobal TPTR_END; } PackMapEnvironmentV30; /* Version: 29 */ typedef struct { byte3 color; float intensity; float3 direction; } PackMapEnvDataLightV29; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataLightV29 lights TSTRUCT_PTR_ARRAY_PTR_END; } PackMapEnvDataLightingV29; typedef struct { float density; float depth; float haze; float lightIntensity; float2 velocity; } PackMapEnvDataLayerAttributesV29; typedef struct { float altitude; float scale; filename texture; PackMapEnvDataLayerAttributesV29 day; PackMapEnvDataLayerAttributesV29 night; wchar_ptr name; } PackMapEnvDataLayerV29; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLayerV29 layers TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataCloudsV29; typedef struct { byte4 glow; byte4 tintColor; float saturation; float tintAmount; byte4 glowLevel; float glowAmplify; } PackMapEnvDataEffectV29; typedef struct { byte4 distColor; float2 distRange; byte4 heightColor; float2 heightRange; float depthCue; } PackMapEnvDataHazeV29; typedef struct { float2 angle; float deviation; word extent; float3 fieldDirection; byte flags; float2 opacity; word particleCount; float2 rotation; float2 scaleX; float2 scaleY; float2 speed; dword2 texColRow; word texFPS; filename texPath; byte type; wchar_ptr name; } PackMapEnvDataPFieldV29; typedef struct { byte flags; float dayHazeBottom; float dayHazeDensity; float dayHazeFalloff; float dayLightIntensity; float dayStarDensity; float nightHazeBottom; float nightHazeDensity; float nightHazeFalloff; float nightLightIntensity; float nightStarDensity; } PackMapEnvDataSkyV29; typedef struct { float azimuth; float density; float hazeDensity; float latitude; float lightIntensity; float minHaze; float2 scale; float speed; filename texture; float4 textureUV; } PackMapEnvDataSkyCardAttributesV29; typedef struct { PackMapEnvDataSkyCardAttributesV29 day; PackMapEnvDataSkyCardAttributesV29 night; wchar_ptr name; } PackMapEnvDataSkyCardV29; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyCardV29 cards TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataSkyCardsV29; typedef struct { dword waterFlags; float animAmplitude; float animChoppiness; float2 animWind; float bumpAmount; float bumpAngle0; float bumpAngle1; float bumpScale0; float bumpScale1; float bumpSpeed0; float bumpSpeed1; float bumpTile0; float bumpTile1; float patternAngle; float patternTile; float patternSpeed; byte4 surfaceShallowColor; byte4 surfaceDeepColor; byte4 patternColor; float surfaceFresnel; float distortAmount; filename bumpTexture; filename patternTexture; } PackMapEnvDataWaterV29; typedef struct { byte azimuth; byte elevation; byte noise; byte speed; byte gust; byte gustFreq; } PackMapEnvDataWindV29; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV29 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV29 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV29 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV29 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV29 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV29 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV29 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV29 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV29 wind TSTRUCT_PTR_ARRAY_PTR_END; float3 center; float2 zRange; float fadeHorizInner; float fadeHorizOuter; float fadeVertical; byte type; TSTRUCT_ARRAY_PTR_START float2 vertexArray TSTRUCT_ARRAY_PTR_END; } PackMapEnvDataLocalV29; typedef struct { filename texPathNE; filename texPathSW; filename texPathT; } PackMapEnvDataSkyModeTexV29; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLightingV29 lighting TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataCloudsV29 clouds TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataEffectV29 effect TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataHazeV29 haze TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataPFieldV29 particleFields TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START PackMapEnvDataSkyV29 sky TPTR_END; TPTR_START PackMapEnvDataSkyCardsV29 skyCards TPTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWaterV29 water TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START PackMapEnvDataWindV29 wind TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEnvDataSkyModeTexV29 skyModeTex TSTRUCT_ARRAY_PTR_END; filename starFile; } PackMapEnvDataGlobalV29; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEnvDataLocalV29 dataLocalArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapEnvDataGlobalV29 dataGlobal TPTR_END; } PackMapEnvironmentV29; /* =============================================== * Chunk: laye, versions: 2, strucTab: 0x141D2FBC0 * =============================================== */ /* Version: 1 */ typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START dword layerIds TSTRUCT_ARRAY_PTR_END; } PackMapLayerProp; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START dword layerIds TSTRUCT_ARRAY_PTR_END; } PackMapLayerLight; typedef struct { dword layerId; TSTRUCT_ARRAY_PTR_START dword4 metaData TSTRUCT_ARRAY_PTR_END; } PackMapLayer; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLayerProp props TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapLayerLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapLayer layers TSTRUCT_ARRAY_PTR_END; } PackMapLayers; /* Version: 0 */ typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START dword layerIds TSTRUCT_ARRAY_PTR_END; } PackMapLayerProp; typedef struct { dword layerId; TSTRUCT_ARRAY_PTR_START dword4 metaData TSTRUCT_ARRAY_PTR_END; } PackMapLayer; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLayerProp props TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapLayer layers TSTRUCT_ARRAY_PTR_END; } PackMapLayers; /* =============================================== * Chunk: lght, versions: 20, strucTab: 0x141D2FC90 * =============================================== */ /* Version: 19, ReferencedFunction: 0x140C7FE20 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapPointLightgroups; typedef struct { float fadeCamera; float fadeLight; float lighten; float darken; } PackMapPortalData; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPortalData portalData TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapPortalLight; typedef struct { filename shadowFilename; } PackMapSpotShadow; typedef struct { float distance; dword flags; dword lightFlags; byte3 color; float intensity; float nearDist; float farDist; float innerAngle; float outerAngle; } PackMapSpotLod; typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; float3 direction; float3 upDirection; float innerAngle; float outerAngle; filename textureName; TPTR_START PackMapSpotShadow shadowData TPTR_END; PackMapSpotLod lodData[2]; } PackMapSpotLight; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapSpotLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapSpotLightgroups; typedef struct { filename filename; dword2 dims; dword format; TSTRUCT_ARRAY_PTR_START byte image TSTRUCT_ARRAY_PTR_END; } PackMapVolumeImage; typedef struct { qword guid; float3 position; float3 extents; float3 rotation; float2 intensities; float4 pack; wchar_ptr name; TSTRUCT_ARRAY_PTR_START float3 floodPoints TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START PackMapVolumeImage images TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapVolumeLight; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPointLightgroups pointLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPortalLight portalLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapSpotLightgroups spotLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapVolumeLight volumeLights TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; dword maxLightVsConstants; } PackMapLights; /* Version: 18 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapPointLightgroups; typedef struct { float fadeCamera; float fadeLight; float lighten; float darken; } PackMapPortalData; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPortalData portalData TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapPortalLight; typedef struct { filename shadowFilename; } PackMapSpotShadow; typedef struct { float distance; dword flags; dword lightFlags; byte3 color; float intensity; float nearDist; float farDist; float innerAngle; float outerAngle; } PackMapSpotLod; typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; float3 direction; float3 upDirection; float innerAngle; float outerAngle; filename textureName; TPTR_START PackMapSpotShadow shadowData TPTR_END; PackMapSpotLod lodData[2]; } PackMapSpotLight; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapSpotLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapSpotLightgroups; typedef struct { filename filename; dword2 dims; dword format; TSTRUCT_ARRAY_PTR_START byte image TSTRUCT_ARRAY_PTR_END; } PackMapVolumeImage; typedef struct { qword guid; float3 position; float3 extents; float3 rotation; float2 intensities; float4 pack; wchar_ptr name; TSTRUCT_ARRAY_PTR_START float3 floodPoints TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START PackMapVolumeImage images TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapVolumeLight; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPointLightgroups pointLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPortalLight portalLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapSpotLightgroups spotLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapVolumeLight volumeLights TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; } PackMapLights; /* Version: 17 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapPointLightgroups; typedef struct { float fadeCamera; float fadeLight; float lighten; float darken; } PackMapPortalData; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPortalData portalData TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapPortalLight; typedef struct { filename shadowFilename; } PackMapSpotShadow; typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; float3 direction; float3 upDirection; float innerAngle; float outerAngle; filename textureName; TPTR_START PackMapSpotShadow shadowData TPTR_END; } PackMapSpotLight; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapSpotLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapSpotLightgroups; typedef struct { filename filename; dword2 dims; dword format; TSTRUCT_ARRAY_PTR_START byte image TSTRUCT_ARRAY_PTR_END; } PackMapVolumeImage; typedef struct { qword guid; float3 position; float3 extents; float3 rotation; float2 intensities; float4 pack; wchar_ptr name; TSTRUCT_ARRAY_PTR_START float3 floodPoints TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START PackMapVolumeImage images TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapVolumeLight; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPointLightgroups pointLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPortalLight portalLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapSpotLightgroups spotLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapVolumeLight volumeLights TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; } PackMapLights; /* Version: 16 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapPointLightgroups; typedef struct { float fadeCamera; float fadeLight; float lighten; float darken; } PackMapPortalData; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPortalData portalData TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapPortalLight; typedef struct { filename shadowFilename; } PackMapSpotShadow; typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; float3 direction; float innerAngle; float outerAngle; filename textureName; TPTR_START PackMapSpotShadow shadowData TPTR_END; } PackMapSpotLight; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapSpotLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapSpotLightgroups; typedef struct { filename filename; dword2 dims; dword format; TSTRUCT_ARRAY_PTR_START byte image TSTRUCT_ARRAY_PTR_END; } PackMapVolumeImage; typedef struct { qword guid; float3 position; float3 extents; float3 rotation; float2 intensities; float4 pack; wchar_ptr name; TSTRUCT_ARRAY_PTR_START float3 floodPoints TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START PackMapVolumeImage images TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapVolumeLight; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPointLightgroups pointLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPortalLight portalLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapSpotLightgroups spotLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapVolumeLight volumeLights TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; } PackMapLights; /* Version: 15, ReferencedFunction: 0x140C7FD50 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapPointLightgroups; typedef struct { float fadeCamera; float fadeLight; float lighten; float darken; } PackMapPortalData; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPortalData portalData TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapPortalLight; typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; float3 direction; float innerAngle; float outerAngle; filename textureName; } PackMapPointLight; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapPointLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapSpotLightgroups; typedef struct { filename filename; dword2 dims; dword format; TSTRUCT_ARRAY_PTR_START byte image TSTRUCT_ARRAY_PTR_END; } PackMapVolumeImage; typedef struct { qword guid; float3 position; float3 extents; float3 rotation; float2 intensities; float4 pack; wchar_ptr name; TSTRUCT_ARRAY_PTR_START float3 floodPoints TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START PackMapVolumeImage images TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapVolumeLight; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPointLightgroups pointLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPortalLight portalLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapSpotLightgroups spotLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapVolumeLight volumeLights TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; } PackMapLightsV15; /* Version: 14 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapPointLightgroups; typedef struct { qword guid; float fadeCamera; float fadeLight; float lighten; float darken; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapProtalLight; typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; float3 direction; float innerAngle; float outerAngle; filename textureName; } PackMapPointLight; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapPointLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapSpotLightgroups; typedef struct { filename filename; dword2 dims; dword format; TSTRUCT_ARRAY_PTR_START byte image TSTRUCT_ARRAY_PTR_END; } PackMapVolumeImage; typedef struct { qword guid; float3 position; float3 extents; float3 rotation; float2 intensities; float4 pack; wchar_ptr name; TSTRUCT_ARRAY_PTR_START float3 floodPoints TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START PackMapVolumeImage images TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapVolumeLight; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPointLightgroups pointLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapProtalLight portalLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapSpotLightgroups spotLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapVolumeLight volumeLights TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; } PackMapLightsV14; /* Version: 13, ReferencedFunction: 0x140C7FBA0 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapLightgroups; typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; float3 direction; float innerAngle; float outerAngle; filename textureName; } PackMapPointLight; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapPointLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapPointLightgroups; typedef struct { filename filename; dword2 dims; dword format; TSTRUCT_ARRAY_PTR_START byte image TSTRUCT_ARRAY_PTR_END; } PackMapVolumeImage; typedef struct { qword guid; float3 position; float3 extents; float3 rotation; float2 intensities; float4 pack; wchar_ptr name; TSTRUCT_ARRAY_PTR_START float3 floodPoints TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START PackMapVolumeImage images TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapVolumeLight; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLightgroups pointLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPointLightgroups spotLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapVolumeLight volumeLights TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; } PackMapLights; /* Version: 12, ReferencedFunction: 0x140C7F940 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapLightgroups; typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; float3 direction; float innerAngle; float outerAngle; filename textureName; } PackMapPointLight; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapPointLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapPointLightgroups; typedef struct { filename filename; dword2 dims; dword format; TSTRUCT_ARRAY_PTR_START byte image TSTRUCT_ARRAY_PTR_END; } PackMapVolumeImage; typedef struct { qword guid; float3 position; float3 extents; float3 rotation; float2 intensities; float4 pack; wchar_ptr name; float3 floodPoint; dword flags; TSTRUCT_ARRAY_PTR_START PackMapVolumeImage images TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapVolumeLight; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLightgroups pointLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPointLightgroups spotLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapVolumeLight volumeLights TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; } PackMapLights; /* Version: 11, ReferencedFunction: 0x140C7F940 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapLightgroups; typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; float3 direction; float innerAngle; float outerAngle; filename textureName; } PackMapPointLight; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapPointLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapPointLightgroups; typedef struct { filename filename; dword2 dims; dword format; TSTRUCT_ARRAY_PTR_START byte image TSTRUCT_ARRAY_PTR_END; } PackMapVolumeImage; typedef struct { qword guid; float3 position; float3 extents; float3 rotation; float2 intensities; float4 pack; wchar_ptr name; float3 floodPoint; dword flags; TSTRUCT_ARRAY_PTR_START PackMapVolumeImage images TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapVolumeLight; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLightgroups pointLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPointLightgroups spotLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapVolumeLight volumeLights TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; } PackMapLights; /* Version: 10, ReferencedFunction: 0x140C80650 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; } PackMapLightgroups; typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; float3 direction; float innerAngle; float outerAngle; filename textureName; } PackMapPointLight; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapPointLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; } PackMapPointLightgroups; typedef struct { filename filename; dword2 dims; dword format; TSTRUCT_ARRAY_PTR_START byte image TSTRUCT_ARRAY_PTR_END; } PackMapVolumeImage; typedef struct { qword guid; float3 position; float3 extents; float3 rotation; float2 intensities; float4 pack; wchar_ptr name; float3 floodPoint; dword flags; TSTRUCT_ARRAY_PTR_START PackMapVolumeImage images TSTRUCT_ARRAY_PTR_END; } PackMapVolumeLight; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLightgroups pointLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPointLightgroups spotLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapVolumeLight volumeLights TSTRUCT_ARRAY_PTR_END; } PackMapLights; /* Version: 9, ReferencedFunction: 0x140C80590 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; } PackMapLightgroups; typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; float3 direction; float innerAngle; float outerAngle; filename textureName; } PackMapPointLight; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapPointLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; } PackMapPointLightgroups; typedef struct { filename filename; dword dims; dword format; TSTRUCT_ARRAY_PTR_START byte image TSTRUCT_ARRAY_PTR_END; } PackMapVolumeImage; typedef struct { qword guid; float3 position; float3 extents; float3 rotation; float2 intensities; float4 pack; wchar_ptr name; float3 floodPoint; dword flags; TSTRUCT_ARRAY_PTR_START PackMapVolumeImage images TSTRUCT_ARRAY_PTR_END; } PackMapVolumeLight; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLightgroups pointLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPointLightgroups spotLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapVolumeLight volumeLights TSTRUCT_ARRAY_PTR_END; } PackMapLights; /* Version: 8, ReferencedFunction: 0x140C80520 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; } PackMapLightgroups; typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; float3 direction; float innerAngle; float outerAngle; filename textureName; } PackMapPointLight; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapPointLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; } PackMapPointLightgroups; typedef struct { filename filename; dword dims; dword format; TSTRUCT_ARRAY_PTR_START byte image TSTRUCT_ARRAY_PTR_END; } PackMapVolumeImage; typedef struct { qword guid; float3 minExt; float3 maxExt; float2 intensities; float4 pack; wchar_ptr name; float3 floodPoint; TSTRUCT_ARRAY_PTR_START PackMapVolumeImage images TSTRUCT_ARRAY_PTR_END; } PackMapVolumeLight; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLightgroups pointLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPointLightgroups spotLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapVolumeLight volumeLights TSTRUCT_ARRAY_PTR_END; } PackMapLights; /* Version: 7 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; } PackMapLightgroups; typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; float3 direction; float innerAngle; float outerAngle; filename textureName; } PackMapPointLight; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapPointLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; } PackMapPointLightgroups; typedef struct { filename filename; dword dims; dword format; TSTRUCT_ARRAY_PTR_START byte image TSTRUCT_ARRAY_PTR_END; } PackMapVolumeImage; typedef struct { qword guid; float3 minExt; float3 maxExt; float2 intensities; float4 pack; wchar_ptr name; TSTRUCT_ARRAY_PTR_START PackMapVolumeImage images TSTRUCT_ARRAY_PTR_END; } PackMapVolumeLight; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLightgroups pointLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPointLightgroups spotLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapVolumeLight volumeLights TSTRUCT_ARRAY_PTR_END; } PackMapLights; /* Version: 6 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; } PackMapLightgroups; typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; float3 direction; float innerAngle; float outerAngle; filename textureName; } PackMapPointLight; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapPointLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; } PackMapPointLightgroups; typedef struct { filename filename; dword dims; dword format; TSTRUCT_ARRAY_PTR_START byte image TSTRUCT_ARRAY_PTR_END; } PackMapVolumeImage; typedef struct { qword guid; float3 minExt; float3 maxExt; float2 intensities; float4 pack; TSTRUCT_ARRAY_PTR_START PackMapVolumeImage images TSTRUCT_ARRAY_PTR_END; } PackMapVolumeLight; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLightgroups pointLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPointLightgroups spotLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapVolumeLight volumeLights TSTRUCT_ARRAY_PTR_END; } PackMapLights; /* Version: 5, ReferencedFunction: 0x140C80340 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; } PackMapLightgroups; typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; float3 direction; float innerAngle; float outerAngle; filename textureName; } PackMapPointLight; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapPointLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; } PackMapPointLightgroups; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLightgroups pointLights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPointLightgroups spotLights TSTRUCT_ARRAY_PTR_END; } PackMapLights; /* Version: 4, ReferencedFunction: 0x140C800F0 */ typedef struct { float3 position; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; float offset; float amplitude; dword curveType; } PackMapCurve; typedef struct { qword guid; TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; } PackMapLightgroups; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLightgroups lights TSTRUCT_ARRAY_PTR_END; } PackMapLights; /* Version: 3, ReferencedFunction: 0x140C7FF90 */ typedef struct { dword type; float3 position; float elevation; float azimuth; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { float gust; float gustFreq; float noise; float phase; dword curveType; } PackMapCurve; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapCurve curves TSTRUCT_ARRAY_PTR_END; } PackMapLightgroups; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLightgroups lights TSTRUCT_ARRAY_PTR_END; } PackMapLights; /* Version: 2, ReferencedFunction: 0x140C7FE30 */ typedef struct { dword type; float3 position; float elevation; float azimuth; byte3 color; float intensity; float nearDistance; float farDistance; dword flags; } PackMapLight; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; } PackMapLightgroups; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLightgroups groups TSTRUCT_ARRAY_PTR_END; } PackMapLights; /* Version: 1 */ typedef struct { dword type; float3 position; float elevation; float azimuth; byte3 color; float intensity; float nearDistance; float farDistance; } PackMapLight; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapLight lights TSTRUCT_ARRAY_PTR_END; } PackMapLights; /* =============================================== * Chunk: msn, versions: 3, strucTab: 0x141D2FFD0 * =============================================== */ /* Version: 2 */ typedef struct { float3 position; float3 forward; wchar_ptr description; } PackMapInterestPoint; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapInterestPoint interestPoint TSTRUCT_ARRAY_PTR_END; } MapMission; /* Version: 1 */ typedef struct { float3 position; float3 forward; } PackMapInterestPoint; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapInterestPoint interestPoint TSTRUCT_ARRAY_PTR_END; } MapMission; /* =============================================== * Chunk: nm15, versions: 4, strucTab: 0x141D2DF10 * =============================================== */ /* Version: 3, ReferencedFunction: 0x140001050 */ typedef struct { dword chunkIndex; float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte queryMediatorMoppData TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshChunkV3; typedef struct { dword chunkIndex; qword mapPropId; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte mediatorData TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshMoverV3; typedef struct { float3 boundsMin; float3 boundsMax; dword2 chunkDims; TSTRUCT_ARRAY_PTR_START PackMapNavMeshChunkV3 chunkArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapNavMeshMoverV3 dynamicArray TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshV3; /* Version: 2 */ typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte queryMediatorMoppData TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshChunkV2; typedef struct { qword mapPropId; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte mediatorData TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshMoverV2; typedef struct { float3 boundsMin; float3 boundsMax; dword2 chunkDims; TSTRUCT_ARRAY_PTR_START PackMapNavMeshChunkV2 chunkArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapNavMeshMoverV2 dynamicArray TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshV2; /* Version: 1, ReferencedFunction: 0x140C807F0 */ typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte queryMediatorMoppData TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshChunkV1; typedef struct { float3 boundsMin; float3 boundsMax; dword2 chunkDims; TSTRUCT_ARRAY_PTR_START PackMapNavMeshChunkV1 chunkArray TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshV1; /* Version: 0 */ typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte queryMediatorMoppData TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshChunkV0; typedef struct { float3 boundsMin; float3 boundsMax; dword2 chunkDims; TSTRUCT_ARRAY_PTR_START PackMapNavMeshChunkV0 chunkArray TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshV0; /* =============================================== * Chunk: nmex, versions: 4, strucTab: 0x141D2DF70 * =============================================== */ /* Version: 3 */ typedef struct { float3 boundsMin; float3 boundsMax; filename filename; } PackMapNavMeshChunkExternalV3; typedef struct { dword chunkIndex; qword mapPropId; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte mediatorData TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshMoverV3; typedef struct { float3 boundsMin; float3 boundsMax; dword2 chunkDims; TSTRUCT_ARRAY_PTR_START PackMapNavMeshChunkExternalV3 chunkArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapNavMeshMoverV3 dynamicArray TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshExternalV3; /* Version: 2 */ typedef struct { float3 boundsMin; float3 boundsMax; filename filename; } PackMapNavMeshChunkExternalV2; typedef struct { qword mapPropId; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte mediatorData TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshMoverV2; typedef struct { float3 boundsMin; float3 boundsMax; dword2 chunkDims; TSTRUCT_ARRAY_PTR_START PackMapNavMeshChunkExternalV2 chunkArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapNavMeshMoverV2 dynamicArray TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshExternalV2; /* Version: 1 */ typedef struct { float3 boundsMin; float3 boundsMax; filename filename; } PackMapNavMeshChunkExternalV1; typedef struct { float3 boundsMin; float3 boundsMax; dword2 chunkDims; TSTRUCT_ARRAY_PTR_START PackMapNavMeshChunkExternalV1 chunkArray TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshExternalV1; /* Version: 0 */ typedef struct { float3 boundsMin; float3 boundsMax; filename filename; } PackMapNavMeshChunkExternalV0; typedef struct { float3 boundsMin; float3 boundsMax; dword2 chunkDims; TSTRUCT_ARRAY_PTR_START PackMapNavMeshChunkExternalV0 chunkArray TSTRUCT_ARRAY_PTR_END; } PackMapNavMeshExternalV0; /* =============================================== * Chunk: obs, versions: 3, strucTab: 0x141D30020 * =============================================== */ /* Version: 2 */ typedef struct { dword token; dword flags; TSTRUCT_ARRAY_PTR_START float3 bottmVertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 topVertices TSTRUCT_ARRAY_PTR_END; wchar_ptr name; qword surface; } PackMapEditCollision; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditCollision obstacles TSTRUCT_ARRAY_PTR_END; } MapObstacles; /* Version: 1 */ typedef struct { dword token; dword flags; TSTRUCT_ARRAY_PTR_START float3 bottmVertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 topVertices TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } PackMapEditCollision; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditCollision obstacles TSTRUCT_ARRAY_PTR_END; } MapObstacles; /* Version: 0 */ typedef struct { dword token; dword flags; TSTRUCT_ARRAY_PTR_START float3 bottmVertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 topVertices TSTRUCT_ARRAY_PTR_END; } PackMapEditCollision; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditCollision obstacles TSTRUCT_ARRAY_PTR_END; } MapObstacles; /* =============================================== * Chunk: occ, versions: 1, strucTab: 0x141D30130 * =============================================== */ /* Version: 0 */ typedef struct { dword token; dword flags; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; wchar_ptr name; } MapOcclusion; typedef struct { TSTRUCT_ARRAY_PTR_START MapOcclusion Occlusions TSTRUCT_ARRAY_PTR_END; } MapOcclusions; /* =============================================== * Chunk: octm, versions: 1, strucTab: 0x141D30148 * =============================================== */ /* Version: 0 */ typedef struct { dword enableTomeQueries; TSTRUCT_ARRAY_PTR_START byte tome TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte propIDMap TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte reserved TSTRUCT_ARRAY_PTR_END; } MapOcclusionTome; /* =============================================== * Chunk: parm, versions: 1, strucTab: 0x141D30160 * =============================================== */ /* Version: 0 */ typedef struct { float4 rect; dword flags; byte16 guid; } MapParam; /* =============================================== * Chunk: phys, versions: 11, strucTab: 0x141D30210 * =============================================== */ /* Version: 10 */ typedef struct { TSTRUCT_ARRAY_PTR_START word indexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte moppCodeData TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsMeshV10; typedef struct { TPTR_START PackMapPhysicsMeshV10 mesh TPTR_END; TSTRUCT_ARRAY_PTR_START byte sceneFilePtr TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsObjectV10; typedef struct { qword sequence; dword objectIndex; } PackMapPhysicsObjectRefV10; typedef struct { wchar_ptr filePath; byte quantizedExtents; TSTRUCT_ARRAY_PTR_START PackMapPhysicsObjectRefV10 objRefArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word surface TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsGeometryV10; typedef struct { qword token; float scale; float3 translate; float4 rotate; dword geometryIndex; } PackMapPhysicsModelPropV10; typedef struct { float scale; float3 translate; float4 rotate; dword geometryIndex; } PackMapPhysicsModelZoneV8; typedef struct { float3 translate; dword geometryIndex; } PackMapPhysicsModelObstacleV10; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapPhysicsObjectV10 objectArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsGeometryV10 geometryArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelPropV10 propModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelPropV10 debrisModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelZoneV8 zoneModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelObstacleV10 obsModelArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsBlockV10; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapPhysicsBlockV10 blockArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsV10; /* Version: 9, ReferencedFunction: 0x140C82C60 */ typedef struct { TSTRUCT_ARRAY_PTR_START word indexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte moppCodeData TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsMeshV9; typedef struct { TPTR_START PackMapPhysicsMeshV9 mesh TPTR_END; TSTRUCT_ARRAY_PTR_START byte sceneFilePtr TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsObjectV9; typedef struct { qword sequence; dword objectIndex; } PackMapPhysicsObjectRefV9; typedef struct { wchar_ptr filePath; byte quantizedExtents; TSTRUCT_ARRAY_PTR_START PackMapPhysicsObjectRefV9 objRefArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsGeometryV9; typedef struct { qword token; float scale; float3 translate; float4 rotate; dword geometryIndex; } PackMapPhysicsModelPropV9; typedef struct { float scale; float3 translate; float4 rotate; dword geometryIndex; } PackMapPhysicsModelZoneV7; typedef struct { float3 translate; dword geometryIndex; } PackMapPhysicsModelObstacleV9; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapPhysicsObjectV9 objectArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsGeometryV9 geometryArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelPropV9 propModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelPropV9 debrisModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelZoneV7 zoneModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelObstacleV9 obsModelArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsBlockV9; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapPhysicsBlockV9 blockArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsV9; /* Version: 8 */ typedef struct { TSTRUCT_ARRAY_PTR_START word indexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte moppCodeData TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsMeshV8; typedef struct { float3 dimensions; float3 position; float4 rotation; } SceneBoxShapeV7; typedef struct { float3 center; float radius; } SceneSphereShapeV7; typedef struct { float3 p0; float3 p1; float radius; } SceneCapsuleShapeV7; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; } SceneMeshShapeV7; typedef struct { TSTRUCT_ARRAY_PTR_START SceneBoxShapeV7 boxes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneSphereShapeV7 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneCapsuleShapeV7 capsules TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneMeshShapeV7 meshes TSTRUCT_ARRAY_PTR_END; } SceneFilePhysicsV7; typedef struct { float3 position; float4 rotation; dword flags; float smoothing; byte singlesided; } ScenePathNodeV6; typedef struct { TSTRUCT_ARRAY_PTR_START qword properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePathNodeV6 points TSTRUCT_ARRAY_PTR_END; byte closed; } ScenePathV6; typedef struct { dword indices[2]; TSTRUCT_ARRAY_PTR_START dword triangles TSTRUCT_ARRAY_PTR_END; } SceneEdgeV6; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneEdgeV6 edges TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } SceneGameMeshV6; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } SceneGameSurfaceV6; typedef struct { TSTRUCT_ARRAY_PTR_START ScenePathV6 paths TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameMeshV6 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameSurfaceV6 surfaces TSTRUCT_ARRAY_PTR_END; } SceneFileGameV6; typedef struct { TPTR_START PackMapPhysicsMeshV8 mesh TPTR_END; TPTR_START SceneFilePhysicsV7 physics TPTR_END; TPTR_START SceneFileGameV6 game TPTR_END; } PackMapPhysicsObjectV8; typedef struct { qword sequence; dword objectIndex; } PackMapPhysicsObjectRefV8; typedef struct { wchar_ptr filePath; byte quantizedExtents; TSTRUCT_ARRAY_PTR_START PackMapPhysicsObjectRefV8 objRefArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsGeometryV8; typedef struct { qword token; float scale; float3 translate; float4 rotate; dword geometryIndex; } PackMapPhysicsModelPropV8; typedef struct { float scale; float3 translate; float4 rotate; dword geometryIndex; } PackMapPhysicsModelZoneV6; typedef struct { float3 translate; dword geometryIndex; } PackMapPhysicsModelObstacleV8; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapPhysicsObjectV8 objectArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsGeometryV8 geometryArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelPropV8 propModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelPropV8 debrisModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelZoneV6 zoneModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelObstacleV8 obsModelArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsBlockV8; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapPhysicsBlockV8 blockArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsV8; /* Version: 7 */ typedef struct { TSTRUCT_ARRAY_PTR_START word indexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte moppCodeData TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsMeshV7; typedef struct { float3 dimensions; float3 position; float4 rotation; } SceneBoxShapeV7; typedef struct { float3 center; float radius; } SceneSphereShapeV7; typedef struct { float3 p0; float3 p1; float radius; } SceneCapsuleShapeV7; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; } SceneMeshShapeV7; typedef struct { TSTRUCT_ARRAY_PTR_START SceneBoxShapeV7 boxes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneSphereShapeV7 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneCapsuleShapeV7 capsules TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneMeshShapeV7 meshes TSTRUCT_ARRAY_PTR_END; } SceneFilePhysicsV7; typedef struct { float3 position; float4 rotation; dword flags; float smoothing; byte singlesided; } ScenePathNodeV6; typedef struct { TSTRUCT_ARRAY_PTR_START qword properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePathNodeV6 points TSTRUCT_ARRAY_PTR_END; byte closed; } ScenePathV6; typedef struct { dword indices[2]; TSTRUCT_ARRAY_PTR_START dword triangles TSTRUCT_ARRAY_PTR_END; } SceneEdgeV6; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneEdgeV6 edges TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } SceneGameMeshV6; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } SceneGameSurfaceV6; typedef struct { TSTRUCT_ARRAY_PTR_START ScenePathV6 paths TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameMeshV6 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameSurfaceV6 surfaces TSTRUCT_ARRAY_PTR_END; } SceneFileGameV6; typedef struct { TPTR_START PackMapPhysicsMeshV7 mesh TPTR_END; TPTR_START SceneFilePhysicsV7 physics TPTR_END; TPTR_START SceneFileGameV6 game TPTR_END; } PackMapPhysicsObjectV7; typedef struct { qword sequence; dword objectIndex; } PackMapPhysicsObjectRefV7; typedef struct { wchar_ptr filePath; byte quantizedExtents; TSTRUCT_ARRAY_PTR_START PackMapPhysicsObjectRefV7 objRefArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsGeometryV7; typedef struct { qword token; float scale; float3 translate; float4 rotate; dword geometryIndex; } PackMapPhysicsModelPropV7; typedef struct { float scale; float3 translate; float4 rotate; dword geometryIndex; } PackMapPhysicsModelZoneV5; typedef struct { float3 translate; dword geometryIndex; } PackMapPhysicsModelObstacleV7; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapPhysicsObjectV7 objectArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsGeometryV7 geometryArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelPropV7 propModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelZoneV5 zoneModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelObstacleV7 obsModelArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsBlockV7; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapPhysicsBlockV7 blockArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsV7; /* Version: 6, ReferencedFunction: 0x140C82C50 */ typedef struct { TSTRUCT_ARRAY_PTR_START word indexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte moppCodeData TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsMeshV6; typedef struct { float3 dimensions; float3 position; float4 rotation; } SceneBoxShapeV7; typedef struct { float3 center; float radius; } SceneSphereShapeV7; typedef struct { float3 p0; float3 p1; float radius; } SceneCapsuleShapeV7; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; } SceneMeshShapeV7; typedef struct { TSTRUCT_ARRAY_PTR_START SceneBoxShapeV7 boxes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneSphereShapeV7 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneCapsuleShapeV7 capsules TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneMeshShapeV7 meshes TSTRUCT_ARRAY_PTR_END; } SceneFilePhysicsV7; typedef struct { float3 position; float4 rotation; dword flags; float smoothing; byte singlesided; } ScenePathNodeV6; typedef struct { TSTRUCT_ARRAY_PTR_START qword properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePathNodeV6 points TSTRUCT_ARRAY_PTR_END; byte closed; } ScenePathV6; typedef struct { dword indices[2]; TSTRUCT_ARRAY_PTR_START dword triangles TSTRUCT_ARRAY_PTR_END; } SceneEdgeV6; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneEdgeV6 edges TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } SceneGameMeshV6; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } SceneGameSurfaceV6; typedef struct { TSTRUCT_ARRAY_PTR_START ScenePathV6 paths TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameMeshV6 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameSurfaceV6 surfaces TSTRUCT_ARRAY_PTR_END; } SceneFileGameV6; typedef struct { TPTR_START PackMapPhysicsMeshV6 mesh TPTR_END; TPTR_START SceneFilePhysicsV7 physics TPTR_END; TPTR_START SceneFileGameV6 game TPTR_END; } PackMapPhysicsObjectV6; typedef struct { qword sequence; dword objectIndex; } PackMapPhysicsObjectRefV6; typedef struct { wchar_ptr filePath; byte quantizedExtents; TSTRUCT_ARRAY_PTR_START PackMapPhysicsObjectRefV6 objRefArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsGeometryV6; typedef struct { qword token; float scale; float3 translate; float4 rotate; dword geometryIndex; } PackMapPhysicsModelPropV6; typedef struct { float scale; float3 translate; float4 rotate; dword geometryIndex; } PackMapPhysicsModelZoneV4; typedef struct { float3 translate; dword geometryIndex; } PackMapPhysicsModelObstacleV6; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapPhysicsObjectV6 objectArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsGeometryV6 geometryArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelPropV6 propModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelZoneV4 zoneModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelObstacleV6 obsModelArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsV6; /* Version: 5, ReferencedFunction: 0x140C82C50 */ typedef struct { TSTRUCT_ARRAY_PTR_START word indexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte moppCodeData TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsMeshV5; typedef struct { float3 dimensions; float3 position; float4 rotation; } SceneBoxShapeV7; typedef struct { float3 center; float radius; } SceneSphereShapeV7; typedef struct { float3 p0; float3 p1; float radius; } SceneCapsuleShapeV7; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; } SceneMeshShapeV7; typedef struct { TSTRUCT_ARRAY_PTR_START SceneBoxShapeV7 boxes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneSphereShapeV7 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneCapsuleShapeV7 capsules TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneMeshShapeV7 meshes TSTRUCT_ARRAY_PTR_END; } SceneFilePhysicsV7; typedef struct { float3 position; float4 rotation; float radius; dword flags; float smoothing; byte singlesided; } ScenePathNodeV5; typedef struct { TSTRUCT_ARRAY_PTR_START qword properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePathNodeV5 points TSTRUCT_ARRAY_PTR_END; byte closed; } ScenePathV5; typedef struct { dword indices[2]; TSTRUCT_ARRAY_PTR_START dword triangles TSTRUCT_ARRAY_PTR_END; } SceneEdgeV5; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneEdgeV5 edges TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword surfaceFlags TSTRUCT_ARRAY_PTR_END; } SceneGameMeshV5; typedef struct { TSTRUCT_ARRAY_PTR_START ScenePathV5 paths TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameMeshV5 meshes TSTRUCT_ARRAY_PTR_END; } SceneFileGameV5; typedef struct { TPTR_START PackMapPhysicsMeshV5 mesh TPTR_END; TPTR_START SceneFilePhysicsV7 physics TPTR_END; TPTR_START SceneFileGameV5 game TPTR_END; } PackMapPhysicsObjectV5; typedef struct { qword sequence; dword objectIndex; } PackMapPhysicsObjectRefV5; typedef struct { wchar_ptr filePath; byte quantizedExtents; TSTRUCT_ARRAY_PTR_START PackMapPhysicsObjectRefV5 objRefArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsGeometryV5; typedef struct { qword token; float scale; float3 translate; float4 rotate; dword geometryIndex; } PackMapPhysicsModelPropV5; typedef struct { float scale; float3 translate; float4 rotate; dword geometryIndex; } PackMapPhysicsModelZoneV3; typedef struct { float3 translate; dword geometryIndex; } PackMapPhysicsModelObstacleV5; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapPhysicsObjectV5 objectArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsGeometryV5 geometryArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelPropV5 propModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelZoneV3 zoneModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelObstacleV5 obsModelArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsV5; /* Version: 4, ReferencedFunction: 0x140C82C50 */ typedef struct { TSTRUCT_ARRAY_PTR_START word indexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte moppCodeData TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsMeshV4; typedef struct { float3 dimensions; float3 position; float4 rotation; } SceneBoxShapeV7; typedef struct { float3 center; float radius; } SceneSphereShapeV7; typedef struct { float3 p0; float3 p1; float radius; } SceneCapsuleShapeV7; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; } SceneMeshShapeV7; typedef struct { TSTRUCT_ARRAY_PTR_START SceneBoxShapeV7 boxes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneSphereShapeV7 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneCapsuleShapeV7 capsules TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneMeshShapeV7 meshes TSTRUCT_ARRAY_PTR_END; } SceneFilePhysicsV7; typedef struct { float3 position; float4 rotation; float radius; dword flags; float smoothing; byte singlesided; } ScenePathNodeV5; typedef struct { TSTRUCT_ARRAY_PTR_START qword properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePathNodeV5 points TSTRUCT_ARRAY_PTR_END; byte closed; } ScenePathV5; typedef struct { dword indices[2]; TSTRUCT_ARRAY_PTR_START dword triangles TSTRUCT_ARRAY_PTR_END; } SceneEdgeV5; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneEdgeV5 edges TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword surfaceFlags TSTRUCT_ARRAY_PTR_END; } SceneGameMeshV5; typedef struct { TSTRUCT_ARRAY_PTR_START ScenePathV5 paths TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameMeshV5 meshes TSTRUCT_ARRAY_PTR_END; } SceneFileGameV5; typedef struct { TPTR_START PackMapPhysicsMeshV4 mesh TPTR_END; TPTR_START SceneFilePhysicsV7 physics TPTR_END; TPTR_START SceneFileGameV5 game TPTR_END; } PackMapPhysicsObjectV4; typedef struct { qword sequence; dword objectIndex; } PackMapPhysicsObjectRefV4; typedef struct { fileref filePath; byte quantizedExtents; TSTRUCT_ARRAY_PTR_START PackMapPhysicsObjectRefV4 objRefArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsGeometryV4; typedef struct { qword token; float scale; float3 translate; float4 rotate; dword geometryIndex; } PackMapPhysicsModelPropV4; typedef struct { float scale; float3 translate; float4 rotate; dword geometryIndex; } PackMapPhysicsModelZoneV2; typedef struct { float3 translate; dword geometryIndex; } PackMapPhysicsModelObstacleV4; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapPhysicsObjectV4 objectArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsGeometryV4 geometryArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelPropV4 propModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelZoneV2 zoneModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelObstacleV4 obsModelArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsV4; /* Version: 3 */ typedef struct { TSTRUCT_ARRAY_PTR_START word indexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte moppCodeData TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsMeshV3; typedef struct { float scale; TSTRUCT_ARRAY_PTR_START byte gameDataPtr TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsShapeDataV3; typedef struct { TSTRUCT_ARRAY_PTR_START dword shapeDataIndexArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsGeometryV3; typedef struct { dword2 token; float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapPhysicsModelPropV3; typedef struct { float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapPhysicsModelZoneV1; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapPhysicsMeshV3 meshArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsShapeDataV3 shapeArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsGeometryV3 geometryArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelPropV3 propModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelZoneV1 zoneModelArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsV3; /* Version: 2, ReferencedFunction: 0x140C82C40 */ typedef struct { float scale; TSTRUCT_ARRAY_PTR_START byte gameDataPtr TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsShapeDataV2; typedef struct { TSTRUCT_ARRAY_PTR_START dword shapeDataIndexArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsGeometryV2; typedef struct { dword2 token; float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapPhysicsModelPropV2; typedef struct { float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapPhysicsModelZoneV0; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapPhysicsShapeDataV2 shapeArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsGeometryV2 geometryArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelPropV2 propModelArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelZoneV0 zoneModelArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsV2; /* Version: 1, ReferencedFunction: 0x140C82C30 */ typedef struct { float scale; TSTRUCT_ARRAY_PTR_START byte gameDataPtr TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsShapeDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START dword shapeDataIndexArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsGeometryV1; typedef struct { dword2 token; float scale; float3 translate; float3 rotate; dword geometryIndex; } PackMapPhysicsModelPropV1; typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START PackMapPhysicsShapeDataV1 shapeArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsGeometryV1 geometryArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPhysicsModelPropV1 propModelArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsV1; /* =============================================== * Chunk: pnvm, versions: 3, strucTab: 0x141D30660 * =============================================== */ /* Version: 2 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte mediatorMoppData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsNavMeshChunkV2; typedef struct { float3 boundsMin; float3 boundsMax; dword2 chunkDims; float erosionRadius; TSTRUCT_ARRAY_PTR_START PackMapPhysicsNavMeshChunkV2 chunkArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsNavMeshV2; /* Version: 1, ReferencedFunction: 0x140C835C0 */ typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte mediatorMoppData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsNavMeshChunkV1; typedef struct { float3 boundsMin; float3 boundsMax; dword2 chunkDims; TSTRUCT_ARRAY_PTR_START PackMapPhysicsNavMeshChunkV1 chunkArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsNavMeshV1; /* Version: 0 */ typedef struct { float3 boundsMin; float3 boundsMax; TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte mediatorMoppData TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsNavMeshChunkV0; typedef struct { float3 boundsMin; float3 boundsMax; dword2 chunkDims; TSTRUCT_ARRAY_PTR_START PackMapPhysicsNavMeshChunkV0 chunkArray TSTRUCT_ARRAY_PTR_END; } PackMapPhysicsNavMeshV0; /* =============================================== * Chunk: prp2, versions: 22, strucTab: 0x141D30810 * =============================================== */ /* Version: 21 */ typedef struct { dword token; float4 constant; dword submodel; } PackMapPropConstantV18; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropConstantV18 constants TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; dword reserved; word broadId; word bucketId; byte byte; byte sortLayer; } PackMapPropObjV21; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropConstantV18 constants TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; dword reserved; word broadId; word bucketId; byte byte; byte sortLayer; qword animSequence; } PackMapPropObjAnimSeqV21; typedef struct { float3 position; float3 rotation; float scale; } PackMapPropTransformV21; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropConstantV18 constants TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; dword reserved; word broadId; word bucketId; byte byte; byte sortLayer; TSTRUCT_ARRAY_PTR_START PackMapPropTransformV21 transforms TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword origGuidArray TSTRUCT_ARRAY_PTR_END; } PackMapPropObjInstanceV21; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; } PackMapPropObjToolV21; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropConstantV18 constants TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; dword reserved; word broadId; word bucketId; byte byte; byte sortLayer; dword layerMask; byte glomType; qword parent; float3 glomOrigin; } PackMapPropObjMetaV21; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; float3 glomClipScale; float3 position; float3 rotation; float scale; } PackMapPropObjVolumeV21; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV21 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV21 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjInstanceV21 propInstanceArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV21 propToolArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjMetaV21 propMetaArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjVolumeV21 propVolumeArray TSTRUCT_ARRAY_PTR_END; wchar_ptr reserved; PackBroadphaseType broadPhase; dword nextBroadId; } PackMapPropV21; /* Version: 20 */ typedef struct { dword token; float4 constant; dword submodel; } PackMapPropConstantV17; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropConstantV17 constants TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; byte sortLayer; } PackMapPropObjV20; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropConstantV17 constants TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; byte sortLayer; qword animSequence; } PackMapPropObjAnimSeqV20; typedef struct { float3 position; float3 rotation; float scale; } PackMapPropTransformV20; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropConstantV17 constants TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; byte sortLayer; TSTRUCT_ARRAY_PTR_START PackMapPropTransformV20 transforms TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword origGuidArray TSTRUCT_ARRAY_PTR_END; } PackMapPropObjInstanceV20; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; } PackMapPropObjToolV20; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropConstantV17 constants TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; byte sortLayer; dword layerMask; byte glomType; qword parent; float3 glomOrigin; } PackMapPropObjMetaV20; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; float3 glomClipScale; float3 position; float3 rotation; float scale; } PackMapPropObjVolumeV20; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV20 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV20 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjInstanceV20 propInstanceArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV20 propToolArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjMetaV20 propMetaArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjVolumeV20 propVolumeArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; dword nextBroadId; } PackMapPropV20; /* Version: 19 */ typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constValues TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; byte sortLayer; } PackMapPropObjV19; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constValues TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; byte sortLayer; qword animSequence; } PackMapPropObjAnimSeqV19; typedef struct { float3 position; float3 rotation; float scale; } PackMapPropTransformV19; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constValues TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; byte sortLayer; TSTRUCT_ARRAY_PTR_START PackMapPropTransformV19 transforms TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword origGuidArray TSTRUCT_ARRAY_PTR_END; } PackMapPropObjInstanceV19; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; } PackMapPropObjToolV19; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constValues TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; byte sortLayer; dword layerMask; byte glomType; qword parent; float3 glomOrigin; } PackMapPropObjMetaV19; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; float3 glomClipScale; float3 position; float3 rotation; float scale; } PackMapPropObjVolumeV19; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV19 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV19 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjInstanceV19 propInstanceArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV19 propToolArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjMetaV19 propMetaArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjVolumeV19 propVolumeArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; dword nextBroadId; } PackMapPropV19; /* Version: 18 */ typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; byte sortLayer; } PackMapPropObjV18; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; byte sortLayer; qword animSequence; } PackMapPropObjAnimSeqV18; typedef struct { float3 position; float3 rotation; float scale; } PackMapPropTransformV18; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; byte sortLayer; TSTRUCT_ARRAY_PTR_START PackMapPropTransformV18 transforms TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword origGuidArray TSTRUCT_ARRAY_PTR_END; } PackMapPropObjInstanceV18; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; } PackMapPropObjToolV18; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; byte sortLayer; dword layerMask; byte glomType; qword parent; float3 glomOrigin; } PackMapPropObjMetaV18; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; float3 glomClipScale; float3 position; float3 rotation; float scale; } PackMapPropObjVolumeV18; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV18 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV18 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjInstanceV18 propInstanceArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV18 propToolArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjMetaV18 propMetaArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjVolumeV18 propVolumeArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; dword nextBroadId; } PackMapPropV18; /* Version: 17, ReferencedFunction: 0x140C85860 */ typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; } PackMapPropObjV17; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; qword animSequence; } PackMapPropObjAnimSeqV17; typedef struct { float3 position; float3 rotation; float scale; } PackMapPropTransformV17; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; TSTRUCT_ARRAY_PTR_START PackMapPropTransformV17 transforms TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword origGuidArray TSTRUCT_ARRAY_PTR_END; } PackMapPropObjInstanceV17; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; } PackMapPropObjToolV17; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; dword layerMask; byte glomType; qword parent; float3 glomOrigin; } PackMapPropObjMetaV17; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; float3 glomClipScale; float3 position; float3 rotation; float scale; } PackMapPropObjVolumeV17; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV17 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV17 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjInstanceV17 propInstanceArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV17 propToolArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjMetaV17 propMetaArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjVolumeV17 propVolumeArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; dword nextBroadId; } PackMapPropV17; /* Version: 16 */ typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; } PackMapPropObjV16; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; qword animSequence; } PackMapPropObjAnimSeqV16; typedef struct { float3 position; float3 rotation; float scale; } PackMapPropTransformV16; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; TSTRUCT_ARRAY_PTR_START PackMapPropTransformV16 transforms TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword origGuidArray TSTRUCT_ARRAY_PTR_END; } PackMapPropObjInstanceV16; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; } PackMapPropObjToolV16; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; qword permutation; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; dword layerMask; byte glomType; qword parent; float3 glomOrigin; } PackMapPropObjMetaV16; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; float3 glomClipScale; float3 position; float3 rotation; float scale; } PackMapPropObjVolumeV16; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV16 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV16 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjInstanceV16 propInstanceArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV16 propToolArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjMetaV16 propMetaArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjVolumeV16 propVolumeArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; dword nextBroadId; } PackMapPropV16; /* Version: 15 */ typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; } PackMapPropObjV15; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; qword animSequence; } PackMapPropObjAnimSeqV15; typedef struct { float3 position; float3 rotation; float scale; } PackMapPropTransformV15; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; TSTRUCT_ARRAY_PTR_START PackMapPropTransformV15 transforms TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword origGuidArray TSTRUCT_ARRAY_PTR_END; } PackMapPropObjInstanceV15; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; } PackMapPropObjToolV15; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float4 bounds; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; dword layerMask; byte glomType; qword parent; float3 glomOrigin; } PackMapPropObjMetaV15; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; float3 glomClipScale; float3 position; float3 rotation; float scale; } PackMapPropObjVolumeV15; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV15 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV15 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjInstanceV15 propInstanceArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV15 propToolArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjMetaV15 propMetaArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjVolumeV15 propVolumeArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; dword nextBroadId; } PackMapPropV15; /* Version: 14, ReferencedFunction: 0x140C857F0 */ typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; } PackMapPropObjV14; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; qword animSequence; } PackMapPropObjAnimSeqV14; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; } PackMapPropObjToolV14; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; word bucketId; byte byte; dword layerMask; byte glomType; qword parent; float3 glomOrigin; } PackMapPropObjMetaV14; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; float3 glomClipScale; float3 position; float3 rotation; float scale; } PackMapPropObjVolumeV14; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV14 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV14 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV14 propToolArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjMetaV14 propMetaArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjVolumeV14 propVolumeArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; dword nextBroadId; } PackMapPropV14; /* Version: 13 */ typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; byte byte; } PackMapPropObjV13; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; byte byte; qword animSequence; } PackMapPropObjAnimSeqV13; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; } PackMapPropObjToolV13; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; byte byte; dword layerMask; byte glomType; qword parent; float3 glomOrigin; } PackMapPropObjMetaV13; typedef struct { qword guid; dword layerMask; byte glomType; TSTRUCT_ARRAY_PTR_START qword children TSTRUCT_ARRAY_PTR_END; float3 glomClipScale; float3 position; float3 rotation; float scale; } PackMapPropObjVolumeV13; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV13 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV13 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV13 propToolArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjMetaV13 propMetaArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjVolumeV13 propVolumeArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; dword nextBroadId; } PackMapPropV13; /* Version: 12, ReferencedFunction: 0x140C84310 */ typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; byte byte; } PackMapPropObjV12; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; byte byte; qword animSequence; } PackMapPropObjAnimSeqV12; typedef struct { qword guid; dword layerMask; byte glomType; } PackMapPropObjToolV12; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; byte byte; dword layerMask; byte glomType; qword parent; float3 glomOrigin; } PackMapPropObjMetaV12; typedef struct { qword guid; dword layerMask; byte glomType; float3 glomClipScale; float3 position; float3 rotation; float scale; } PackMapPropObjVolumeV12; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV12 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV12 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV12 propToolArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjMetaV12 propMetaArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjVolumeV12 propVolumeArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; dword nextBroadId; } PackMapPropV12; /* Version: 11, ReferencedFunction: 0x140C84120 */ typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; byte byte; } PackMapPropObjV11; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; word broadId; byte byte; qword animSequence; } PackMapPropObjAnimSeqV11; typedef struct { qword guid; dword layerMask; float3 glomOrigin; float3 glomClipScale; qword glomTargetId; byte glomType; } PackMapPropObjToolV11; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV11 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV11 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV11 propToolArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; dword nextBroadId; } PackMapPropV11; /* Version: 10, ReferencedFunction: 0x140C85D30 */ typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; byte byte; } PackMapPropObjV10; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; byte byte; qword animSequence; } PackMapPropObjAnimSeqV10; typedef struct { qword guid; dword layerMask; float3 glomOrigin; float3 glomClipScale; qword glomTargetId; byte glomType; } PackMapPropObjToolV10; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV10 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV10 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV10 propToolArray TSTRUCT_ARRAY_PTR_END; } PackMapPropV10; /* Version: 9, ReferencedFunction: 0x140C85BE0 */ typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; byte byte; } PackMapPropObjV9; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; byte byte; qword animSequence; } PackMapPropObjAnimSeqV9; typedef struct { qword guid; dword layerMask; float3 glomOrigin; float3 glomClipScale; qword glomTargetId; byte glomType; } PackMapPropObjToolV9; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV9 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV9 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV9 propToolArray TSTRUCT_ARRAY_PTR_END; } PackMapPropV9; /* Version: 8 */ typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; byte byte; } PackMapPropObjV8; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START filename blitTextures TSTRUCT_ARRAY_PTR_END; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; byte byte; qword animSequence; } PackMapPropObjAnimSeqV8; typedef struct { qword guid; dword layerMask; float3 glomOrigin; float3 glomClipScale; qword glomTargetId; byte glomType; } PackMapPropObjToolV8; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV8 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV8 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV8 propToolArray TSTRUCT_ARRAY_PTR_END; } PackMapPropV8; /* Version: 7, ReferencedFunction: 0x140C85B90 */ typedef struct { filename filename; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; byte byte; } PackMapPropObjV7; typedef struct { filename filename; qword guid; float3 position; float3 rotation; byte4 color; float scale; float lod1; float lod2; dword flags; byte byte; qword animSequence; } PackMapPropObjAnimSeqV7; typedef struct { qword guid; dword layerMask; float3 glomOrigin; float3 glomClipScale; qword glomTargetId; byte glomType; } PackMapPropObjToolV7; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV7 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV7 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV7 propToolArray TSTRUCT_ARRAY_PTR_END; } PackMapPropV7; /* Version: 6, ReferencedFunction: 0x140C859E0 */ typedef struct { filename filename; qword guid; float3 position; float3 rotation; float scale; float lod1; float lod2; dword flags; byte byte; } PackMapPropObjV6; typedef struct { filename filename; qword guid; float3 position; float3 rotation; float scale; float lod1; float lod2; dword flags; byte byte; qword animSequence; } PackMapPropObjAnimSeqV6; typedef struct { qword guid; dword layerMask; float3 glomOrigin; float3 glomClipScale; qword glomTargetId; byte glomType; } PackMapPropObjToolV6; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV6 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV6 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV6 propToolArray TSTRUCT_ARRAY_PTR_END; } PackMapPropV6; /* Version: 5 */ typedef struct { filename filename; qword guid; float3 position; float3 rotation; float scale; word lod1; word lod2; dword flags; byte byte; } PackMapPropObjV5; typedef struct { filename filename; qword guid; float3 position; float3 rotation; float scale; word lod1; word lod2; dword flags; byte byte; qword animSequence; } PackMapPropObjAnimSeqV5; typedef struct { qword guid; dword layerMask; float3 glomOrigin; float3 glomClipScale; qword glomTargetId; byte glomType; } PackMapPropObjToolV5; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV5 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV5 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV5 propToolArray TSTRUCT_ARRAY_PTR_END; } PackMapPropV5; /* Version: 4 */ typedef struct { filename filename; qword guid; float3 position; float3 rotation; float scale; word lod1; word lod2; dword flags; byte byte; } PackMapPropObjV4; typedef struct { filename filename; qword guid; float3 position; float3 rotation; float scale; word lod1; word lod2; dword flags; byte byte; qword animSequence; } PackMapPropObjAnimSeqV4; typedef struct { qword guid; dword layerMask; } PackMapPropObjToolV4; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV4 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV4 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV4 propToolArray TSTRUCT_ARRAY_PTR_END; } PackMapPropV4; /* Version: 3 */ typedef struct { filename filename; qword guid; float3 position; float3 rotation; float scale; word lod1; word lod2; dword flags; } PackMapPropObjV3; typedef struct { filename filename; qword guid; float3 position; float3 rotation; float scale; word lod1; word lod2; dword flags; qword animSequence; } PackMapPropObjAnimSeqV3; typedef struct { qword guid; dword layerMask; } PackMapPropObjToolV3; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapPropObjV3 propArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjAnimSeqV3 propAnimArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapPropObjToolV3 propToolArray TSTRUCT_ARRAY_PTR_END; } PackMapPropV3; /* =============================================== * Chunk: reso, versions: 2, strucTab: 0x141D30F60 * =============================================== */ /* Version: 1 */ typedef struct { filename filename; dword type; qword permutation; } PackMapResourceMapNodeItemV1; typedef struct { float3 position; dword flags; TSTRUCT_ARRAY_PTR_START PackMapResourceMapNodeItemV1 itemArray TSTRUCT_ARRAY_PTR_END; } PackMapResourceMapNodeV1; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapResourceMapNodeV1 nodeArray TSTRUCT_ARRAY_PTR_END; } PackMapResourceMapV1; /* Version: 0 */ typedef struct { filename filename; dword type; } PackMapResourceMapNodeItemV0; typedef struct { float3 position; dword flags; TSTRUCT_ARRAY_PTR_START PackMapResourceMapNodeItemV0 itemArray TSTRUCT_ARRAY_PTR_END; } PackMapResourceMapNodeV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapResourceMapNodeV0 nodeArray TSTRUCT_ARRAY_PTR_END; } PackMapResourceMapV0; /* =============================================== * Chunk: rive, versions: 6, strucTab: 0x141D30FF0 * =============================================== */ /* Version: 5, ReferencedFunction: 0x140C86C20 */ typedef struct { dword type; qword val; filename strVal; } PackMapRiverProperty; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapRiverProperty properties TSTRUCT_ARRAY_PTR_END; } MapRiverReach; typedef struct { qword guid; wchar_ptr name; TSTRUCT_ARRAY_PTR_START PackMapRiverProperty properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapRiverReach reaches TSTRUCT_ARRAY_PTR_END; } MapRiver; typedef struct { TSTRUCT_ARRAY_PTR_START MapRiver rivers TSTRUCT_ARRAY_PTR_END; } PackMapRivers; /* Version: 4 */ typedef struct { float scale; float speedX; float speedY; float tiling; dword flags; byte uvIndex; } MapRiverTextureMap; typedef struct { filename materialFile; TSTRUCT_ARRAY_PTR_START filename textureFiles TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapRiverTextureMap textureMaps TSTRUCT_ARRAY_PTR_END; dword flags; } MapRiverMaterial; typedef struct { float width; float curveLength; float curvePercent; dword xTessellation; dword2 yTessellation; dword broadId; dword fvf; dword flags; TSTRUCT_ARRAY_PTR_START MapRiverMaterial materials TSTRUCT_ARRAY_PTR_END; wchar_ptr reserved; } MapRiverReach; typedef struct { qword guid; wchar_ptr name; float xTiling; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapRiverReach reaches TSTRUCT_ARRAY_PTR_END; dword flags; } MapRiver; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { dword flags; dword nextBroadId; TSTRUCT_ARRAY_PTR_START MapRiver rivers TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; } PackMapRivers; /* Version: 3 */ typedef struct { float scale; float speedX; float speedY; float tiling; byte uvIndex; } MapRiverTextureMap; typedef struct { filename materialFile; TSTRUCT_ARRAY_PTR_START filename textureFiles TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapRiverTextureMap textureMaps TSTRUCT_ARRAY_PTR_END; } MapRiverMaterial; typedef struct { float width; float curveLength; float curvePercent; dword xTessellation; dword2 yTessellation; dword broadId; dword fvf; dword flags; TSTRUCT_ARRAY_PTR_START MapRiverMaterial materials TSTRUCT_ARRAY_PTR_END; } MapRiverReach; typedef struct { qword guid; wchar_ptr name; float xTiling; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapRiverReach reaches TSTRUCT_ARRAY_PTR_END; dword flags; } MapRiver; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { dword flags; dword nextBroadId; TSTRUCT_ARRAY_PTR_START MapRiver rivers TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; } PackMapRivers; /* Version: 2 */ typedef struct { float scale; float speedX; float speedY; float tiling; byte uvIndex; } MapRiverTextureMap; typedef struct { filename materialFile; TSTRUCT_ARRAY_PTR_START filename textureFiles TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapRiverTextureMap textureMaps TSTRUCT_ARRAY_PTR_END; } MapRiverMaterial; typedef struct { float width; float curveLength; float curvePercent; dword xTessellation; dword2 yTessellation; dword broadId; dword fvf; TSTRUCT_ARRAY_PTR_START MapRiverMaterial materials TSTRUCT_ARRAY_PTR_END; } MapRiverReach; typedef struct { qword guid; wchar_ptr name; float xTiling; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapRiverReach reaches TSTRUCT_ARRAY_PTR_END; } MapRiver; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { dword flags; dword nextBroadId; TSTRUCT_ARRAY_PTR_START MapRiver rivers TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; } PackMapRivers; /* Version: 1 */ typedef struct { float scale; float speedX; float speedY; float tiling; byte uvIndex; } MapRiverTextureMap; typedef struct { filename materialFile; TSTRUCT_ARRAY_PTR_START filename textureFiles TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapRiverTextureMap textureMaps TSTRUCT_ARRAY_PTR_END; } MapRiverMaterial; typedef struct { float width; float curveLength; float curvePercent; dword xTessellation; dword2 yTessellation; dword broadId; TSTRUCT_ARRAY_PTR_START MapRiverMaterial materials TSTRUCT_ARRAY_PTR_END; } MapRiverReach; typedef struct { qword guid; wchar_ptr name; float xTiling; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapRiverReach reaches TSTRUCT_ARRAY_PTR_END; } MapRiver; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { dword flags; dword nextBroadId; TSTRUCT_ARRAY_PTR_START MapRiver rivers TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; } PackMapRivers; /* Version: 0 */ typedef struct { float scale; float speed; float tiling; byte uvIndex; } MapRiverTextureMap; typedef struct { filename materialFile; TSTRUCT_ARRAY_PTR_START filename textureFiles TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapRiverTextureMap textureMaps TSTRUCT_ARRAY_PTR_END; } MapRiverMaterial; typedef struct { float width; float curveLength; float curvePercent; dword xTessellation; dword2 yTessellation; dword broadId; TSTRUCT_ARRAY_PTR_START MapRiverMaterial materials TSTRUCT_ARRAY_PTR_END; } MapRiverReach; typedef struct { qword guid; float xTiling; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapRiverReach reaches TSTRUCT_ARRAY_PTR_END; } MapRiver; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { dword flags; dword nextBroadId; TSTRUCT_ARRAY_PTR_START MapRiver rivers TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; } PackMapRivers; /* =============================================== * Chunk: tlfs, versions: 1, strucTab: 0x141D301F0 * =============================================== */ /* Version: 0 */ typedef struct { fileref filename; qword time; TSTRUCT_ARRAY_PTR_START byte dataPtr TSTRUCT_ARRAY_PTR_END; } PackMapToolFsFileV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapToolFsFileV0 filePtr TSTRUCT_ARRAY_PTR_END; } PackMapToolFsV0; /* =============================================== * Chunk: shad, versions: 2, strucTab: 0x141D310E0 * =============================================== */ /* Version: 1, ReferencedFunction: 0x140C86D80 */ typedef struct { dword compressionMode; TSTRUCT_ARRAY_PTR_START byte bytes TSTRUCT_ARRAY_PTR_END; } PackMapShadowTileV1; typedef struct { dword2 shadowDims; dword2 tileDims; TSTRUCT_ARRAY_PTR_START PackMapShadowTileV1 tiles TSTRUCT_ARRAY_PTR_END; float worldToShadow[16]; float2 s; float2 t; float2 u; float3 shadowEye; float3 shadowDir; float3 shadowUp; } PackMapShadowV1; /* Version: 0 */ typedef struct { dword compressionMode; TSTRUCT_ARRAY_PTR_START byte bytes TSTRUCT_ARRAY_PTR_END; } PackMapShadowTileV0; typedef struct { dword2 shadowDims; dword2 tileDims; TSTRUCT_ARRAY_PTR_START PackMapShadowTileV0 tiles TSTRUCT_ARRAY_PTR_END; float worldToShadow[16]; float2 s; float2 t; float2 u; } PackMapShadowV0; /* =============================================== * Chunk: shex, versions: 2, strucTab: 0x141D31110 * =============================================== */ /* Version: 1 */ typedef struct { filename filename; dword2 shadowDims; } PackMapShadowExtV1; /* =============================================== * Chunk: shor, versions: 4, strucTab: 0x141D311E0 * =============================================== */ /* Version: 3, ReferencedFunction: 0x140C86D90 */ typedef struct { float offset; float opacity; float animationSpeed; float2 edgeSize; dword flags; TSTRUCT_ARRAY_PTR_START float2 points TSTRUCT_ARRAY_PTR_END; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; float restTime; float2 fadeRanges[4]; float simplifyDistMin; float simplifyDistMax; float simplifyDot; } MapShoreChain; typedef struct { TSTRUCT_ARRAY_PTR_START MapShoreChain chains TSTRUCT_ARRAY_PTR_END; } MapShore; /* Version: 2 */ typedef struct { float offset; float opacity; float animationSpeed; float2 edgeSize; dword flags; TSTRUCT_ARRAY_PTR_START float2 points TSTRUCT_ARRAY_PTR_END; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; float restTime; float2 fadeRanges[4]; } MapShoreChain; typedef struct { TSTRUCT_ARRAY_PTR_START MapShoreChain chains TSTRUCT_ARRAY_PTR_END; } MapShore; /* =============================================== * Chunk: snd, versions: 1, strucTab: 0x141D2D820 * =============================================== */ /* Version: 0 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START filename files TSTRUCT_ARRAY_PTR_END; } MapLegacy; /* =============================================== * Chunk: surf, versions: 3, strucTab: 0x141D312A0 * =============================================== */ /* Version: 2 */ typedef struct { qword Id; qword Sound; dword flags; } MapSurfaceAttribute; typedef struct { wchar_ptr name; wchar_ptr category; byte4 color; } MapSurfaceAttributeTool; typedef struct { qword surfaceId; TSTRUCT_ARRAY_PTR_START dword bitArray TSTRUCT_ARRAY_PTR_END; } MapSurfaceOverride; typedef struct { dword2 chunkCoord; TSTRUCT_ARRAY_PTR_START MapSurfaceOverride overrideArray TSTRUCT_ARRAY_PTR_END; } MapSurfaceTerrainOverride; typedef struct { qword propId; TSTRUCT_ARRAY_PTR_START MapSurfaceOverride overrideArray TSTRUCT_ARRAY_PTR_END; } MapSurfacePropOverride; typedef struct { TSTRUCT_ARRAY_PTR_START MapSurfaceAttribute attributeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapSurfaceAttributeTool toolData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapSurfaceTerrainOverride terrainArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapSurfacePropOverride propArray TSTRUCT_ARRAY_PTR_END; } MapSurfaces; /* Version: 1 */ typedef struct { qword Id; qword Sound; dword flags; } MapSurfaceAttribute; typedef struct { wchar_ptr name; wchar_ptr category; byte4 color; } MapSurfaceAttributeTool; typedef struct { TSTRUCT_ARRAY_PTR_START MapSurfaceAttribute attributeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapSurfaceAttributeTool toolData TSTRUCT_ARRAY_PTR_END; } MapSurfaces; /* Version: 0 */ typedef struct { word index; byte descriptor; byte data; } MapSurfaceMeta; typedef struct { dword coord[3]; TSTRUCT_ARRAY_PTR_START MapSurfaceMeta metadata TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte typeData TSTRUCT_ARRAY_PTR_END; } MapSurfaceChunk; typedef struct { TSTRUCT_ARRAY_PTR_START MapSurfaceChunk chunkData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword typeData TSTRUCT_ARRAY_PTR_END; } MapSurfaces; /* =============================================== * Chunk: zon2, versions: 23, strucTab: 0x141D319F0 * =============================================== */ /* Version: 22 */ typedef struct { filename filename; float probability; dword flags; float3 hslOffset; byte zOffsets[2]; qword permutation; } PackMapZoneModelV23; typedef struct { byte type; byte height; byte width; byte radiusGround; byte sortGroup; byte tiling; float2 scaleRange; float probability; float2 fadeRange; float2 rotRange[3]; float2 hslRanges[4]; float instanceScaleJitter; byte noise; dword layerFlags; filename materialname; TSTRUCT_ARRAY_PTR_START PackMapZoneModelV23 modelArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapZoneModelV23 subModel TPTR_END; wchar_ptr reserved; } PackMapZoneLayerDefV23; typedef struct { TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; dword2 chunkCoord; byte seed; TSTRUCT_ARRAY_PTR_START dword paintFlags TSTRUCT_ARRAY_PTR_END; wchar_ptr string; } PackMapZonePageV11; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZonePageV11 pageArray TSTRUCT_ARRAY_PTR_END; dword flags; } PackMapZonePageTableV11; typedef struct { filename defFilename; dword token; TSTRUCT_ARRAY_PTR_START PackMapZoneLayerDefV23 layerDefArray TSTRUCT_ARRAY_PTR_END; qword timeStamp; TPTR_START PackMapZonePageTableV11 pageTable TPTR_END; wchar_ptr reserved; } PackMapZoneDefV23; typedef struct { word index; byte offset; } PackMapZoneEncodingDataV23; typedef struct { float normalX; float normalY; float zPos; } PackMapZoneCollideDataV23; typedef struct { dword zoneFlags; dword4 vertRect; float waterHeight; byte seed; dword defToken; float2 range; float zPos; TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneEncodingDataV23 encodeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneCollideDataV23 collideData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word offsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; word broadId; wchar_ptr reserved; } PackMapZoneV23; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZoneDefV23 zoneDefArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneV23 zoneArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; wchar_ptr string; } PackMapZonesV23; /* Version: 21 */ typedef struct { filename filename; float probability; dword flags; float3 hslOffset; byte zOffsets[2]; } PackMapZoneModelV22; typedef struct { byte type; byte height; byte width; byte radiusGround; byte sortGroup; byte tiling; float2 scaleRange; float probability; float2 fadeRange; float2 rotRange[3]; float2 hslRanges[4]; float instanceScaleJitter; byte noise; dword layerFlags; filename materialname; TSTRUCT_ARRAY_PTR_START PackMapZoneModelV22 modelArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapZoneModelV22 subModel TPTR_END; wchar_ptr reserved; } PackMapZoneLayerDefV22; typedef struct { TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; dword2 chunkCoord; byte seed; TSTRUCT_ARRAY_PTR_START dword paintFlags TSTRUCT_ARRAY_PTR_END; wchar_ptr string; } PackMapZonePageV10; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZonePageV10 pageArray TSTRUCT_ARRAY_PTR_END; dword flags; } PackMapZonePageTableV10; typedef struct { filename defFilename; dword token; TSTRUCT_ARRAY_PTR_START PackMapZoneLayerDefV22 layerDefArray TSTRUCT_ARRAY_PTR_END; qword timeStamp; TPTR_START PackMapZonePageTableV10 pageTable TPTR_END; wchar_ptr reserved; } PackMapZoneDefV22; typedef struct { word index; byte offset; } PackMapZoneEncodingDataV22; typedef struct { float normalX; float normalY; float zPos; } PackMapZoneCollideDataV22; typedef struct { dword zoneFlags; dword4 vertRect; float waterHeight; byte seed; dword defToken; float2 range; float zPos; TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneEncodingDataV22 encodeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneCollideDataV22 collideData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word offsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; word broadId; wchar_ptr reserved; } PackMapZoneV22; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZoneDefV22 zoneDefArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneV22 zoneArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; wchar_ptr string; } PackMapZonesV22; /* Version: 20, ReferencedFunction: 0x140C877D0 */ typedef struct { filename filename; float probability; dword flags; float3 hslOffset; byte zOffsets[2]; } PackMapZoneModelV21; typedef struct { byte type; byte height; byte width; byte radiusGround; byte sortGroup; byte tiling; float2 scaleRange; float probability; float2 fadeRange; float2 rotRange[3]; float2 hslRanges[4]; float instanceScaleJitter; byte noise; dword layerFlags; filename materialname; TSTRUCT_ARRAY_PTR_START PackMapZoneModelV21 modelArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapZoneModelV21 subModel TPTR_END; } PackMapZoneLayerDefV21; typedef struct { TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; dword2 chunkCoord; byte seed; TSTRUCT_ARRAY_PTR_START dword paintFlags TSTRUCT_ARRAY_PTR_END; } PackMapZonePageV9; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZonePageV9 pageArray TSTRUCT_ARRAY_PTR_END; dword flags; } PackMapZonePageTableV9; typedef struct { filename defFilename; dword token; TSTRUCT_ARRAY_PTR_START PackMapZoneLayerDefV21 layerDefArray TSTRUCT_ARRAY_PTR_END; qword timeStamp; TPTR_START PackMapZonePageTableV9 pageTable TPTR_END; } PackMapZoneDefV21; typedef struct { word index; byte offset; } PackMapZoneEncodingDataV21; typedef struct { float normalX; float normalY; float zPos; } PackMapZoneCollideDataV21; typedef struct { dword zoneFlags; dword4 vertRect; float waterHeight; byte seed; dword defToken; float2 range; float zPos; TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneEncodingDataV21 encodeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneCollideDataV21 collideData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word offsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapZoneV21; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZoneDefV21 zoneDefArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneV21 zoneArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; } PackMapZonesV21; /* Version: 19, ReferencedFunction: 0x140001050 */ typedef struct { filename filename; float probability; dword flags; float3 hslOffset; byte zOffsets[2]; } PackMapZoneModelV20; typedef struct { byte type; byte height; byte width; byte radiusGround; byte sortGroup; byte tiling; float2 scaleRange; float probability; float2 fadeRange; float2 rotRange[3]; float2 hslRanges[3]; float instanceScaleJitter; byte noise; dword layerFlags; filename materialname; TSTRUCT_ARRAY_PTR_START PackMapZoneModelV20 modelArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapZoneModelV20 subModel TPTR_END; } PackMapZoneLayerDefV20; typedef struct { TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; dword2 chunkCoord; byte seed; TSTRUCT_ARRAY_PTR_START dword paintFlags TSTRUCT_ARRAY_PTR_END; } PackMapZonePageV8; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZonePageV8 pageArray TSTRUCT_ARRAY_PTR_END; dword flags; } PackMapZonePageTableV8; typedef struct { filename defFilename; dword token; TSTRUCT_ARRAY_PTR_START PackMapZoneLayerDefV20 layerDefArray TSTRUCT_ARRAY_PTR_END; qword timeStamp; TPTR_START PackMapZonePageTableV8 pageTable TPTR_END; } PackMapZoneDefV20; typedef struct { word index; byte offset; } PackMapZoneEncodingDataV20; typedef struct { float normalX; float normalY; float zPos; } PackMapZoneCollideDataV20; typedef struct { dword zoneFlags; dword4 vertRect; float waterHeight; byte seed; dword defToken; float2 range; float zPos; TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneEncodingDataV20 encodeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneCollideDataV20 collideData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word offsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapZoneV20; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZoneDefV20 zoneDefArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneV20 zoneArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; } PackMapZonesV20; /* Version: 18, ReferencedFunction: 0x140C87750 */ typedef struct { filename filename; float probability; dword flags; float3 hslOffset; byte zOffsets[2]; } PackMapZoneModelV19; typedef struct { byte type; byte height; byte width; byte radiusGround; byte sortGroup; byte tiling; float2 scaleRange; float probability; float2 fadeRange; float2 rotRange[3]; float2 hslRanges[4]; byte noise; dword layerFlags; filename materialname; TSTRUCT_ARRAY_PTR_START PackMapZoneModelV19 modelArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapZoneModelV19 subModel TPTR_END; } PackMapZoneLayerDefV19; typedef struct { TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; dword2 chunkCoord; byte seed; TSTRUCT_ARRAY_PTR_START dword paintFlags TSTRUCT_ARRAY_PTR_END; } PackMapZonePageV7; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZonePageV7 pageArray TSTRUCT_ARRAY_PTR_END; dword flags; } PackMapZonePageTableV7; typedef struct { filename defFilename; dword token; TSTRUCT_ARRAY_PTR_START PackMapZoneLayerDefV19 layerDefArray TSTRUCT_ARRAY_PTR_END; qword timeStamp; TPTR_START PackMapZonePageTableV7 pageTable TPTR_END; } PackMapZoneDefV19; typedef struct { word index; byte offset; } PackMapZoneEncodingDataV19; typedef struct { float normalX; float normalY; float zPos; } PackMapZoneCollideDataV19; typedef struct { dword zoneFlags; dword4 vertRect; float waterHeight; byte seed; dword defToken; float2 range; float zPos; TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneEncodingDataV19 encodeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneCollideDataV19 collideData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word offsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapZoneV19; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZoneDefV19 zoneDefArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneV19 zoneArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; } PackMapZonesV19; /* Version: 17, ReferencedFunction: 0x140C876A0 */ typedef struct { filename filename; float probability; dword flags; float3 hslOffset; byte zOffsets[2]; } PackMapZoneModelV18; typedef struct { byte type; byte height; byte width; byte radiusGround; byte sortGroup; byte tiling; float2 scaleRange; float probability; float2 fadeRange; float2 rotRange[3]; float2 hslRanges[3]; byte noise; dword layerFlags; filename materialname; TSTRUCT_ARRAY_PTR_START PackMapZoneModelV18 modelArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapZoneModelV18 subModel TPTR_END; } PackMapZoneLayerDefV18; typedef struct { TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; dword2 chunkCoord; byte seed; TSTRUCT_ARRAY_PTR_START dword paintFlags TSTRUCT_ARRAY_PTR_END; } PackMapZonePageV6; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZonePageV6 pageArray TSTRUCT_ARRAY_PTR_END; dword flags; } PackMapZonePageTableV6; typedef struct { filename defFilename; dword token; TSTRUCT_ARRAY_PTR_START PackMapZoneLayerDefV18 layerDefArray TSTRUCT_ARRAY_PTR_END; qword timeStamp; TPTR_START PackMapZonePageTableV6 pageTable TPTR_END; } PackMapZoneDefV18; typedef struct { word index; byte offset; } PackMapZoneEncodingDataV18; typedef struct { float normalX; float normalY; float zPos; } PackMapZoneCollideDataV18; typedef struct { dword zoneFlags; dword4 vertRect; float waterHeight; byte seed; dword defToken; float2 range; float zPos; TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneEncodingDataV18 encodeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneCollideDataV18 collideData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word offsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapZoneV18; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZoneDefV18 zoneDefArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneV18 zoneArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; } PackMapZonesV18; /* Version: 16, ReferencedFunction: 0x140C874C0 */ typedef struct { filename filename; float probability; dword flags; float3 hslOffset; } PackMapZoneModelV17; typedef struct { byte type; byte height; byte width; byte radiusGround; byte sortGroup; byte tiling; float2 scaleRange; float probability; float2 fadeRange; float2 rotRange[3]; byte noise; dword layerFlags; TSTRUCT_ARRAY_PTR_START PackMapZoneModelV17 modelArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapZoneModelV17 subModel TPTR_END; } PackMapZoneLayerDefV17; typedef struct { TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; dword2 chunkCoord; byte seed; TSTRUCT_ARRAY_PTR_START dword paintFlags TSTRUCT_ARRAY_PTR_END; } PackMapZonePageV5; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZonePageV5 pageArray TSTRUCT_ARRAY_PTR_END; dword flags; } PackMapZonePageTableV5; typedef struct { filename defFilename; dword token; TSTRUCT_ARRAY_PTR_START PackMapZoneLayerDefV17 layerDefArray TSTRUCT_ARRAY_PTR_END; qword timeStamp; TPTR_START PackMapZonePageTableV5 pageTable TPTR_END; } PackMapZoneDefV17; typedef struct { word index; byte offset; } PackMapZoneEncodingDataV17; typedef struct { float normalX; float normalY; float zPos; } PackMapZoneCollideDataV17; typedef struct { dword zoneFlags; dword4 vertRect; float waterHeight; byte seed; dword defToken; float2 range; float zPos; TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneEncodingDataV17 encodeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneCollideDataV17 collideData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word offsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapZoneV17; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZoneDefV17 zoneDefArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneV17 zoneArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; } PackMapZonesV17; /* Version: 15, ReferencedFunction: 0x140C874C0 */ typedef struct { filename filename; float probability; dword flags; float3 hslOffset; } PackMapZoneModelV16; typedef struct { byte type; byte height; byte width; byte radiusGround; byte sortGroup; byte tiling; float2 scaleRange; float probability; float2 fadeRange; float2 rotRange[3]; byte noise; dword layerFlags; TSTRUCT_ARRAY_PTR_START PackMapZoneModelV16 modelArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapZoneModelV16 subModel TPTR_END; } PackMapZoneLayerDefV16; typedef struct { TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; dword2 chunkCoord; byte seed; TSTRUCT_ARRAY_PTR_START dword paintFlags TSTRUCT_ARRAY_PTR_END; } PackMapZonePageV4; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZonePageV4 pageArray TSTRUCT_ARRAY_PTR_END; dword flags; } PackMapZonePageTableV4; typedef struct { filename defFilename; dword token; TSTRUCT_ARRAY_PTR_START PackMapZoneLayerDefV16 layerDefArray TSTRUCT_ARRAY_PTR_END; qword timeStamp; TPTR_START PackMapZonePageTableV4 pageTable TPTR_END; } PackMapZoneDefV16; typedef struct { word index; byte offset; } PackMapZoneEncodingDataV16; typedef struct { float normalX; float normalY; float zPos; } PackMapZoneCollideDataV16; typedef struct { dword zoneFlags; dword4 vertRect; float waterHeight; byte seed; dword defToken; float2 range; float zPos; TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneEncodingDataV16 encodeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneCollideDataV16 collideData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word offsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; word broadId; } PackMapZoneV16; typedef struct { TSTRUCT_ARRAY_PTR_START byte broadphaseData TSTRUCT_ARRAY_PTR_END; } PackBroadphaseType; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZoneDefV16 zoneDefArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneV16 zoneArray TSTRUCT_ARRAY_PTR_END; PackBroadphaseType broadPhase; word maxBroadId; } PackMapZonesV16; /* Version: 14 */ typedef struct { filename filename; float probability; dword flags; float3 hslOffset; } PackMapZoneModelV15; typedef struct { byte type; byte height; byte width; byte radiusGround; byte sortGroup; byte tiling; float2 scaleRange; float probability; float2 fadeRange; float2 rotRange[3]; byte noise; dword layerFlags; TSTRUCT_ARRAY_PTR_START PackMapZoneModelV15 modelArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapZoneModelV15 subModel TPTR_END; } PackMapZoneLayerDefV15; typedef struct { TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; dword2 chunkCoord; byte seed; TSTRUCT_ARRAY_PTR_START dword paintFlags TSTRUCT_ARRAY_PTR_END; } PackMapZonePageV3; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZonePageV3 pageArray TSTRUCT_ARRAY_PTR_END; dword flags; } PackMapZonePageTableV3; typedef struct { filename defFilename; dword token; TSTRUCT_ARRAY_PTR_START PackMapZoneLayerDefV15 layerDefArray TSTRUCT_ARRAY_PTR_END; qword timeStamp; TPTR_START PackMapZonePageTableV3 pageTable TPTR_END; } PackMapZoneDefV15; typedef struct { word index; byte offset; } PackMapZoneEncodingDataV15; typedef struct { float normalX; float normalY; float zPos; } PackMapZoneCollideDataV15; typedef struct { dword zoneFlags; dword4 vertRect; float waterHeight; byte seed; dword defToken; float2 range; float zPos; TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneEncodingDataV15 encodeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneCollideDataV15 collideData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word offsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; } PackMapZoneV15; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZoneDefV15 zoneDefArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneV15 zoneArray TSTRUCT_ARRAY_PTR_END; } PackMapZonesV15; /* Version: 13 */ typedef struct { filename filename; float probability; dword flags; } PackMapZoneModelV14; typedef struct { byte type; byte height; byte width; byte radiusGround; byte sortGroup; byte tiling; float2 scaleRange; float probability; float2 fadeRange; float2 rotRange[3]; byte noise; dword layerFlags; TSTRUCT_ARRAY_PTR_START PackMapZoneModelV14 modelArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapZoneModelV14 subModel TPTR_END; } PackMapZoneLayerDefV14; typedef struct { TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; dword2 chunkCoord; byte seed; TSTRUCT_ARRAY_PTR_START dword paintFlags TSTRUCT_ARRAY_PTR_END; } PackMapZonePageV2; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZonePageV2 pageArray TSTRUCT_ARRAY_PTR_END; dword flags; } PackMapZonePageTableV2; typedef struct { filename defFilename; dword token; TSTRUCT_ARRAY_PTR_START PackMapZoneLayerDefV14 layerDefArray TSTRUCT_ARRAY_PTR_END; qword timeStamp; TPTR_START PackMapZonePageTableV2 pageTable TPTR_END; } PackMapZoneDefV14; typedef struct { word index; byte offset; } PackMapZoneEncodingDataV14; typedef struct { float normalX; float normalY; float zPos; } PackMapZoneCollideDataV14; typedef struct { dword zoneFlags; dword4 vertRect; float waterHeight; byte seed; dword defToken; float2 range; float zPos; TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneEncodingDataV14 encodeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneCollideDataV14 collideData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word offsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; } PackMapZoneV14; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZoneDefV14 zoneDefArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneV14 zoneArray TSTRUCT_ARRAY_PTR_END; } PackMapZonesV14; /* Version: 12 */ typedef struct { filename filename; float probability; dword flags; } PackMapZoneModelV13; typedef struct { byte type; byte height; byte width; byte radiusGround; byte sortGroup; byte tiling; float2 scaleRange; float probability; float2 fadeRange; float2 rotRange[3]; byte noise; dword layerFlags; TSTRUCT_ARRAY_PTR_START PackMapZoneModelV13 modelArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapZoneModelV13 subModel TPTR_END; } PackMapZoneLayerDefV13; typedef struct { filename defFilename; dword token; TSTRUCT_ARRAY_PTR_START PackMapZoneLayerDefV13 layerDefArray TSTRUCT_ARRAY_PTR_END; qword timeStamp; } PackMapZoneDefV13; typedef struct { word index; byte offset; } PackMapZoneEncodingDataV13; typedef struct { float normalX; float normalY; float zPos; } PackMapZoneCollideDataV13; typedef struct { dword zoneFlags; dword4 vertRect; float waterHeight; byte seed; dword defToken; float2 range; float zPos; TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneEncodingDataV13 encodeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneCollideDataV13 collideData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word offsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; } PackMapZoneV13; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZoneDefV13 zoneDefArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneV13 zoneArray TSTRUCT_ARRAY_PTR_END; } PackMapZonesV13; /* Version: 11 */ typedef struct { filename filename; float probability; dword flags; } PackMapZoneModelV12; typedef struct { byte height; byte width; byte radiusGround; byte sortGroup; byte tiling; float2 scaleRange; float probability; float2 fadeRange; float2 rotRange[3]; byte noise; dword layerFlags; TSTRUCT_ARRAY_PTR_START PackMapZoneModelV12 modelArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapZoneModelV12 subModel TPTR_END; } PackMapZoneLayerDefV12; typedef struct { filename defFilename; dword token; TSTRUCT_ARRAY_PTR_START PackMapZoneLayerDefV12 layerDefArray TSTRUCT_ARRAY_PTR_END; qword timeStamp; } PackMapZoneDefV12; typedef struct { word index; byte offset; } PackMapZoneEncodingDataV12; typedef struct { float normalX; float normalY; float zPos; } PackMapZoneCollideDataV12; typedef struct { dword zoneFlags; dword4 vertRect; float waterHeight; byte seed; dword defToken; float2 range; float zPos; TSTRUCT_ARRAY_PTR_START byte flags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneEncodingDataV12 encodeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneCollideDataV12 collideData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word offsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; } PackMapZoneV12; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapZoneDefV12 zoneDefArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapZoneV12 zoneArray TSTRUCT_ARRAY_PTR_END; } PackMapZonesV12; /* =============================================== * Chunk: trn, versions: 15, strucTab: 0x141D313F0 * =============================================== */ /* Version: 14 */ typedef struct { dword chunkFlags; TSTRUCT_ARRAY_PTR_START word surfaceIndexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword surfaceTokenArray TSTRUCT_ARRAY_PTR_END; } PackMapTerrainChunkV14; typedef struct { dword tokenName; float4 value; } PackMapTerrainConstV14; typedef struct { dword tokenName; dword flags; filename filename; dword2 flags; dword layer; } PackMapTerrainTexV14; typedef struct { filename materialFile; dword fvf; TSTRUCT_ARRAY_PTR_START dword constIndexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texIndexArray TSTRUCT_ARRAY_PTR_END; } PackMapTerrainMaterialV14; typedef struct { float2 translation; float2 xScaleRange; float2 yScaleRange; float2 scaleSpeed; float rotation; } PackMapTerrainChunkUVDataV14; typedef struct { byte tiling[3]; PackMapTerrainMaterialV14 hiResMaterial; PackMapTerrainMaterialV14 loResMaterial; PackMapTerrainMaterialV14 faderMaterial; TPTR_START PackMapTerrainChunkUVDataV14 uvData TPTR_END; } PackMapTerrrainChunkMaterialV14; typedef struct { filename pagedImage; TSTRUCT_ARRAY_PTR_START PackMapTerrainConstV14 constArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapTerrainTexV14 texFileArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapTerrrainChunkMaterialV14 materials TSTRUCT_ARRAY_PTR_END; float2 midFade; float2 farFade; } PackMapTerrainMaterialsV14; typedef struct { dword2 dims; float swapDistance; TSTRUCT_ARRAY_PTR_START float heightMapArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword tileFlagArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapTerrainChunkV14 chunkArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapTerrainMaterialsV14 materials TPTR_END; } PackMapTerrainV14; /* Version: 13, ReferencedFunction: 0x140C873D0 */ typedef struct { dword chunkFlags; TSTRUCT_ARRAY_PTR_START byte tileTableArray TSTRUCT_ARRAY_PTR_END; } PackMapTerrainChunkV13; typedef struct { dword tokenName; float4 value; } PackMapTerrainConstV13; typedef struct { dword tokenName; dword flags; filename filename; dword2 flags; dword layer; } PackMapTerrainTexV13; typedef struct { filename materialFile; dword fvf; TSTRUCT_ARRAY_PTR_START dword constIndexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texIndexArray TSTRUCT_ARRAY_PTR_END; } PackMapTerrainMaterialV13; typedef struct { float2 translation; float2 xScaleRange; float2 yScaleRange; float2 scaleSpeed; float rotation; } PackMapTerrainChunkUVDataV13; typedef struct { byte tiling[3]; PackMapTerrainMaterialV13 hiResMaterial; PackMapTerrainMaterialV13 loResMaterial; PackMapTerrainMaterialV13 faderMaterial; TPTR_START PackMapTerrainChunkUVDataV13 uvData TPTR_END; } PackMapTerrrainChunkMaterialV13; typedef struct { filename pagedImage; TSTRUCT_ARRAY_PTR_START PackMapTerrainConstV13 constArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapTerrainTexV13 texFileArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapTerrrainChunkMaterialV13 materials TSTRUCT_ARRAY_PTR_END; float2 midFade; float2 farFade; } PackMapTerrainMaterialsV13; typedef struct { dword2 dims; float swapDistance; TSTRUCT_ARRAY_PTR_START float heightMapArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword tileFlagArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapTerrainChunkV13 chunkArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapTerrainMaterialsV13 materials TPTR_END; TSTRUCT_ARRAY_PTR_START qword typeArray TSTRUCT_ARRAY_PTR_END; } PackMapTerrainV13; /* Version: 12, ReferencedFunction: 0x140C87200 */ typedef struct { dword chunkFlags; TSTRUCT_ARRAY_PTR_START byte tileTableArray TSTRUCT_ARRAY_PTR_END; } PackMapTerrainChunkV12; typedef struct { dword tokenName; float4 value; } PackMapTerrainConstV12; typedef struct { dword tokenName; dword flags; filename filename; dword2 flags; dword layer; } PackMapTerrainTexV12; typedef struct { filename materialFile; dword fvf; TSTRUCT_ARRAY_PTR_START dword constIndexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texIndexArray TSTRUCT_ARRAY_PTR_END; } PackMapTerrainMaterialV12; typedef struct { float2 translation; float2 xScaleRange; float2 yScaleRange; float2 scaleSpeed; float rotation; } PackMapTerrainChunkUVDataV12; typedef struct { byte tiling[3]; PackMapTerrainMaterialV12 hiResMaterial; PackMapTerrainMaterialV12 loResMaterial; TPTR_START PackMapTerrainChunkUVDataV12 uvData TPTR_END; } PackMapTerrrainChunkMaterialV12; typedef struct { filename pagedImage; TSTRUCT_ARRAY_PTR_START PackMapTerrainConstV12 constArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapTerrainTexV12 texFileArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapTerrrainChunkMaterialV12 materials TSTRUCT_ARRAY_PTR_END; } PackMapTerrainMaterialsV12; typedef struct { dword2 dims; float swapDistance; TSTRUCT_ARRAY_PTR_START float heightMapArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword tileFlagArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapTerrainChunkV12 chunkArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapTerrainMaterialsV12 materials TPTR_END; TSTRUCT_ARRAY_PTR_START qword typeArray TSTRUCT_ARRAY_PTR_END; } PackMapTerrainV12; /* Version: 11, ReferencedFunction: 0x140C87160 */ typedef struct { dword chunkFlags; TSTRUCT_ARRAY_PTR_START byte tileTableArray TSTRUCT_ARRAY_PTR_END; } PackMapTerrainChunkV11; typedef struct { dword tokenName; float4 value; } PackMapTerrainConstV11; typedef struct { dword tokenName; dword flags; filename filename; dword2 flags; dword layer; } PackMapTerrainTexV11; typedef struct { filename materialFile; dword fvf; TSTRUCT_ARRAY_PTR_START dword constIndexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texIndexArray TSTRUCT_ARRAY_PTR_END; } PackMapTerrainMaterialV11; typedef struct { float2 translation; float2 xScaleRange; float2 yScaleRange; float2 scaleSpeed; float rotation; } PackMapTerrainChunkUVDataV11; typedef struct { byte tiling[3]; PackMapTerrainMaterialV11 hiResMaterial; PackMapTerrainMaterialV11 loResMaterial; TPTR_START PackMapTerrainChunkUVDataV11 uvData TPTR_END; } PackMapTerrrainChunkMaterialV11; typedef struct { filename pagedImage; TSTRUCT_ARRAY_PTR_START PackMapTerrainConstV11 constArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapTerrainTexV11 texFileArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapTerrrainChunkMaterialV11 materials TSTRUCT_ARRAY_PTR_END; } PackMapTerrainMaterialsV11; typedef struct { dword2 dims; float swapDistance; TSTRUCT_ARRAY_PTR_START float heightMapArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword tileFlagArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapTerrainChunkV11 chunkArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapTerrainMaterialsV11 materials TPTR_END; TSTRUCT_ARRAY_PTR_START qword typeArray TSTRUCT_ARRAY_PTR_END; } PackMapTerrainV11; /* Version: 10 */ typedef struct { dword chunkFlags; TSTRUCT_ARRAY_PTR_START byte tileTableArray TSTRUCT_ARRAY_PTR_END; } PackMapTerrainChunkV10; typedef struct { dword tokenName; float4 value; } PackMapTerrainConstV10; typedef struct { dword tokenName; dword flags; filename filename; dword2 flags; dword layer; } PackMapTerrainTexV10; typedef struct { filename materialFile; dword fvf; TSTRUCT_ARRAY_PTR_START dword constIndexArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword texIndexArray TSTRUCT_ARRAY_PTR_END; } PackMapTerrainMaterialV10; typedef struct { float2 translation; float2 xScaleRange; float2 yScaleRange; float2 scaleSpeed; float rotation; } PackMapTerrainChunkUVDataV10; typedef struct { byte tiling; PackMapTerrainMaterialV10 hiResMaterial; PackMapTerrainMaterialV10 loResMaterial; TPTR_START PackMapTerrainChunkUVDataV10 uvData TPTR_END; } PackMapTerrrainChunkMaterialV10; typedef struct { filename pagedImage; TSTRUCT_ARRAY_PTR_START PackMapTerrainConstV10 constArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapTerrainTexV10 texFileArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapTerrrainChunkMaterialV10 materials TSTRUCT_ARRAY_PTR_END; } PackMapTerrainMaterialsV10; typedef struct { dword2 dims; float swapDistance; TSTRUCT_ARRAY_PTR_START float heightMapArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword tileFlagArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapTerrainChunkV10 chunkArray TSTRUCT_ARRAY_PTR_END; TPTR_START PackMapTerrainMaterialsV10 materials TPTR_END; TSTRUCT_ARRAY_PTR_START qword typeArray TSTRUCT_ARRAY_PTR_END; } PackMapTerrainV10; /* =============================================== * Chunk: trni, versions: 4, strucTab: 0x141D31600 * =============================================== */ /* Version: 3, ReferencedFunction: 0x140C87430 */ typedef struct { dword2 rawDims; dword2 strippedDims; dword rawFormat; dword strippedFormat; dword diskFormat; } PagedImageLayerDataV3; typedef struct { dword layer; dword2 coord; filename filename; dword flags; byte4 solidColor; } PagedImagePageDataV3; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageLayerDataV3 layers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PagedImagePageDataV3 rawPages TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PagedImagePageDataV3 strippedPages TSTRUCT_ARRAY_PTR_END; dword flags; } PagedImageTableDataV3; typedef struct { dword layer; dword2 coord; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; } PagedImageEmbeddedPageDataV3; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageEmbeddedPageDataV3 rawPages TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PagedImageEmbeddedPageDataV3 strippedPages TSTRUCT_ARRAY_PTR_END; } PagedImageEmbeddedPagesDataV3; typedef struct { TPTR_START PagedImageTableDataV3 tableData TPTR_END; TPTR_START PagedImageEmbeddedPagesDataV3 pageData TPTR_END; } MapTerrainImg; /* Version: 2 */ typedef struct { dword2 dims; dword2 rawDims; dword diskFormat; dword rawFormat; dword strippedFormat; } PagedImageLayerDataV2; typedef struct { dword layer; dword2 coord; filename filename; dword flags; byte4 solidColor; } PagedImagePageDataV2; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageLayerDataV2 layers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PagedImagePageDataV2 pages TSTRUCT_ARRAY_PTR_END; dword flags; } PagedImageTableDataV2; typedef struct { dword layer; dword2 coord; TSTRUCT_ARRAY_PTR_START byte rawData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte compressedData TSTRUCT_ARRAY_PTR_END; } PagedImageEmbeddedPageDataV2; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageEmbeddedPageDataV2 pages TSTRUCT_ARRAY_PTR_END; } PagedImageEmbeddedPagesDataV2; typedef struct { TPTR_START PagedImageTableDataV2 tableData TPTR_END; TPTR_START PagedImageEmbeddedPagesDataV2 pageData TPTR_END; } MapTerrainImg; /* Version: 1 */ typedef struct { dword2 dims; dword2 rawDims; dword diskFormat; dword rawFormat; dword strippedFormat; } PagedImageLayerDataV1; typedef struct { dword layer; dword2 coord; filename filename; dword flags; byte4 solidColor; } PagedImagePageDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageLayerDataV1 layers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PagedImagePageDataV1 pages TSTRUCT_ARRAY_PTR_END; } PagedImageTableDataV1; typedef struct { dword layer; dword2 coord; TSTRUCT_ARRAY_PTR_START byte rawData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte compressedData TSTRUCT_ARRAY_PTR_END; } PagedImageEmbeddedPageDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageEmbeddedPageDataV1 pages TSTRUCT_ARRAY_PTR_END; } PagedImageEmbeddedPagesDataV1; typedef struct { TPTR_START PagedImageTableDataV1 tableData TPTR_END; TPTR_START PagedImageEmbeddedPagesDataV1 pageData TPTR_END; } MapTerrainImg; /* Version: 0 */ typedef struct { dword2 dims; dword2 rawDims; dword diskFormat; dword rawFormat; dword strippedFormat; } PagedImageLayerDataV0; typedef struct { dword layer; dword2 coord; filename filename; dword flags; } PagedImagePageDataV0; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageLayerDataV0 layers TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PagedImagePageDataV0 pages TSTRUCT_ARRAY_PTR_END; } PagedImageTableDataV0; typedef struct { dword layer; dword2 coord; TSTRUCT_ARRAY_PTR_START byte rawData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte compressedData TSTRUCT_ARRAY_PTR_END; } PagedImageEmbeddedPageDataV0; typedef struct { TSTRUCT_ARRAY_PTR_START PagedImageEmbeddedPageDataV0 pages TSTRUCT_ARRAY_PTR_END; } PagedImageEmbeddedPagesDataV0; typedef struct { TPTR_START PagedImageTableDataV0 tableData TPTR_END; TPTR_START PagedImageEmbeddedPagesDataV0 pageData TPTR_END; } MapTerrainImg; /* =============================================== * Chunk: watr, versions: 2, strucTab: 0x141D31660 * =============================================== */ /* Version: 1, ReferencedFunction: 0x140C874B0 */ typedef struct { qword guid; dword waterSurfaceFlags; float waterSurfaceZ; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; } PackMapWaterSurfaceV1; typedef struct { dword waterFlags; float waterPlaneZ; TSTRUCT_ARRAY_PTR_START PackMapWaterSurfaceV1 waterSurfaces TSTRUCT_ARRAY_PTR_END; } PackMapWaterV1; /* Version: 0 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte waterFoamData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword waterChunks TSTRUCT_ARRAY_PTR_END; } PackMapWaterV0; /* =============================================== * Chunk: edit, versions: 17, strucTab: 0x141D2E880 * =============================================== */ /* Version: 16, ReferencedFunction: 0x140001050 */ typedef struct { qword guid; dword moduleId; TSTRUCT_ARRAY_PTR_START dword layerFlags TSTRUCT_ARRAY_PTR_END; } MapEditLayerItem; typedef struct { TSTRUCT_ARRAY_PTR_START byte layerStates TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START wchar_ptr layerNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword layerIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditLayerItem items TSTRUCT_ARRAY_PTR_END; } MapEditLayers; typedef struct { wchar_ptr name; dword flags; TSTRUCT_ARRAY_PTR_START float2 anchors TSTRUCT_ARRAY_PTR_END; float2 zRange; } PackMapEditAnnotation; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditAnnotation annotations TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotations; typedef struct { dword dirtyFlags; dword2 chunkCoord; } PackMapEditDirtyChunks; typedef struct { float attack; float rotation; float3 position; wchar_ptr name; } MapEditCamLocations; typedef struct { dword flags; float3 position; } PackMapEditDirtyChunks; typedef struct { wchar_ptr name; dword surfaceType; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; float2 range; } PackMapEditSurfacePoly; typedef struct { float3 position; float radius; } PackMapEditSurfaceRoadNode; typedef struct { wchar_ptr name; dword surfaceType; TSTRUCT_ARRAY_PTR_START PackMapEditSurfaceRoadNode nodes TSTRUCT_ARRAY_PTR_END; } PackMapEditSurfaceRoad; typedef struct { qword propId; byte mode; qword animSequence; } PackMapEditNavmeshGenPropMode; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks floodPoints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEditSurfacePoly surfacePolys TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEditSurfaceRoad surfaceRoads TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEditNavmeshGenPropMode propModesForGeneration TSTRUCT_ARRAY_PTR_END; } PackMapEditNavMeshData; typedef struct { qword guid; dword moduleId; dword flags; float3 position; float3 rotation; float scale; } MapEditSnapPoint; typedef struct { wchar_ptr name; qword substrateId0; qword substrateId1; dword substrateModuleId0; dword substrateModuleId1; float3 position0; float3 position1; float3 limits; } MapEditMeasureSpan; typedef struct { MapEditLayers layers; PackMapEditAnnotations annotations; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks dirtyChunks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditCamLocations camLocations TSTRUCT_ARRAY_PTR_END; PackMapEditNavMeshData navMeshData; TSTRUCT_ARRAY_PTR_START MapEditSnapPoint snapPoints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditMeasureSpan measureSpans TSTRUCT_ARRAY_PTR_END; wchar_ptr mapHome; byte homeSave; wchar_ptr reserved; } MapEditData; /* Version: 15, ReferencedFunction: 0x140001050 */ typedef struct { qword guid; dword moduleId; TSTRUCT_ARRAY_PTR_START dword layerFlags TSTRUCT_ARRAY_PTR_END; } MapEditLayerItem; typedef struct { TSTRUCT_ARRAY_PTR_START byte layerStates TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START wchar_ptr layerNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword layerIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditLayerItem items TSTRUCT_ARRAY_PTR_END; } MapEditLayers; typedef struct { wchar_ptr name; dword flags; TSTRUCT_ARRAY_PTR_START float2 anchors TSTRUCT_ARRAY_PTR_END; float2 zRange; } PackMapEditAnnotation; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditAnnotation annotations TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotations; typedef struct { dword dirtyFlags; dword2 chunkCoord; } PackMapEditDirtyChunks; typedef struct { float attack; float rotation; float3 position; wchar_ptr name; } MapEditCamLocations; typedef struct { dword flags; float3 position; } PackMapEditDirtyChunks; typedef struct { wchar_ptr name; dword surfaceType; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; float2 range; } PackMapEditSurfacePoly; typedef struct { float3 position; float radius; } PackMapEditSurfaceRoadNode; typedef struct { wchar_ptr name; dword surfaceType; TSTRUCT_ARRAY_PTR_START PackMapEditSurfaceRoadNode nodes TSTRUCT_ARRAY_PTR_END; } PackMapEditSurfaceRoad; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks floodPoints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEditSurfacePoly surfacePolys TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEditSurfaceRoad surfaceRoads TSTRUCT_ARRAY_PTR_END; } PackMapEditNavMeshData; typedef struct { qword guid; dword moduleId; dword flags; float3 position; float3 rotation; float scale; } MapEditSnapPoint; typedef struct { wchar_ptr name; qword substrateId0; qword substrateId1; dword substrateModuleId0; dword substrateModuleId1; float3 position0; float3 position1; float3 limits; } MapEditMeasureSpan; typedef struct { MapEditLayers layers; PackMapEditAnnotations annotations; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks dirtyChunks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditCamLocations camLocations TSTRUCT_ARRAY_PTR_END; PackMapEditNavMeshData navMeshData; TSTRUCT_ARRAY_PTR_START MapEditSnapPoint snapPoints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditMeasureSpan measureSpans TSTRUCT_ARRAY_PTR_END; wchar_ptr mapHome; byte homeSave; wchar_ptr reserved; } MapEditData; /* Version: 14, ReferencedFunction: 0x140001050 */ typedef struct { qword guid; dword moduleId; TSTRUCT_ARRAY_PTR_START dword layerFlags TSTRUCT_ARRAY_PTR_END; } MapEditLayerItem; typedef struct { TSTRUCT_ARRAY_PTR_START byte layerStates TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START wchar_ptr layerNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword layerIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditLayerItem items TSTRUCT_ARRAY_PTR_END; } MapEditLayers; typedef struct { wchar_ptr name; dword flags; TSTRUCT_ARRAY_PTR_START float2 anchors TSTRUCT_ARRAY_PTR_END; float2 zRange; } PackMapEditAnnotation; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditAnnotation annotations TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotations; typedef struct { dword dirtyFlags; dword2 chunkCoord; } PackMapEditDirtyChunks; typedef struct { float attack; float rotation; float3 position; wchar_ptr name; } MapEditCamLocations; typedef struct { dword flags; float3 position; } PackMapEditDirtyChunks; typedef struct { wchar_ptr name; dword surfaceType; TSTRUCT_ARRAY_PTR_START float2 vertices TSTRUCT_ARRAY_PTR_END; float2 range; } PackMapEditSurfacePoly; typedef struct { float3 position; float radius; } PackMapEditSurfaceRoadNode; typedef struct { wchar_ptr name; dword surfaceType; TSTRUCT_ARRAY_PTR_START PackMapEditSurfaceRoadNode nodes TSTRUCT_ARRAY_PTR_END; } PackMapEditSurfaceRoad; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks floodPoints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEditSurfacePoly surfacePolys TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEditSurfaceRoad surfaceRoads TSTRUCT_ARRAY_PTR_END; } PackMapEditNavMeshData; typedef struct { qword guid; dword moduleId; dword flags; float3 position; float3 rotation; float scale; } MapEditSnapPoint; typedef struct { MapEditLayers layers; PackMapEditAnnotations annotations; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks dirtyChunks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditCamLocations camLocations TSTRUCT_ARRAY_PTR_END; PackMapEditNavMeshData navMeshData; TSTRUCT_ARRAY_PTR_START MapEditSnapPoint snapPoints TSTRUCT_ARRAY_PTR_END; wchar_ptr mapHome; byte homeSave; wchar_ptr reserved; } MapEditData; /* Version: 13, ReferencedFunction: 0x140001050 */ typedef struct { qword guid; dword moduleId; TSTRUCT_ARRAY_PTR_START dword layerFlags TSTRUCT_ARRAY_PTR_END; } MapEditLayerItem; typedef struct { TSTRUCT_ARRAY_PTR_START byte layerStates TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START wchar_ptr layerNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword layerIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditLayerItem items TSTRUCT_ARRAY_PTR_END; } MapEditLayers; typedef struct { wchar_ptr name; dword flags; TSTRUCT_ARRAY_PTR_START float2 anchors TSTRUCT_ARRAY_PTR_END; float2 zRange; } PackMapEditAnnotation; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditAnnotation annotations TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotations; typedef struct { dword dirtyFlags; dword2 chunkCoord; } PackMapEditDirtyChunks; typedef struct { float attack; float rotation; float3 position; wchar_ptr name; } MapEditCamLocations; typedef struct { dword flags; float3 position; } PackMapEditDirtyChunks; typedef struct { qword guid; dword moduleId; dword flags; float3 position; float3 rotation; float scale; } MapEditSnapPoint; typedef struct { MapEditLayers layers; PackMapEditAnnotations annotations; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks dirtyChunks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditCamLocations camLocations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks floodPoints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditSnapPoint snapPoints TSTRUCT_ARRAY_PTR_END; wchar_ptr mapHome; byte homeSave; wchar_ptr reserved; } MapEditData; /* Version: 12, ReferencedFunction: 0x140001050 */ typedef struct { qword guid; dword moduleId; dword layerFlags; } MapEditLayerItem; typedef struct { byte layerStates[31]; wchar_ptr layerNames[31]; TSTRUCT_ARRAY_PTR_START MapEditLayerItem items TSTRUCT_ARRAY_PTR_END; } MapEditLayers; typedef struct { wchar_ptr name; dword flags; TSTRUCT_ARRAY_PTR_START float2 anchors TSTRUCT_ARRAY_PTR_END; float2 zRange; } PackMapEditAnnotation; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditAnnotation annotations TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotations; typedef struct { dword dirtyFlags; dword2 chunkCoord; } PackMapEditDirtyChunks; typedef struct { float attack; float rotation; float3 position; wchar_ptr name; } MapEditCamLocations; typedef struct { dword flags; float3 position; } PackMapEditDirtyChunks; typedef struct { qword guid; dword moduleId; dword flags; float3 position; float3 rotation; float scale; } MapEditSnapPoint; typedef struct { MapEditLayers layers; PackMapEditAnnotations annotations; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks dirtyChunks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditCamLocations camLocations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks floodPoints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditSnapPoint snapPoints TSTRUCT_ARRAY_PTR_END; wchar_ptr mapHome; byte homeSave; wchar_ptr reserved; } MapEditData; /* Version: 11 */ typedef struct { qword guid; dword moduleId; dword layerFlags; } MapEditLayerItem; typedef struct { byte layerStates[31]; wchar_ptr layerNames[31]; TSTRUCT_ARRAY_PTR_START MapEditLayerItem items TSTRUCT_ARRAY_PTR_END; } MapEditLayers; typedef struct { wchar_ptr name; dword flags; TSTRUCT_ARRAY_PTR_START float2 anchors TSTRUCT_ARRAY_PTR_END; float2 zRange; } PackMapEditAnnotation; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditAnnotation annotations TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotations; typedef struct { dword dirtyFlags; dword2 chunkCoord; } PackMapEditDirtyChunks; typedef struct { float attack; float rotation; float3 position; wchar_ptr name; } MapEditCamLocations; typedef struct { dword flags; float3 position; } PackMapEditDirtyChunks; typedef struct { qword guid; dword moduleId; dword flags; float3 position; float3 rotation; float scale; } MapEditSnapPoint; typedef struct { MapEditLayers layers; PackMapEditAnnotations annotations; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks dirtyChunks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditCamLocations camLocations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks floodPoints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditSnapPoint snapPoints TSTRUCT_ARRAY_PTR_END; wchar_ptr mapHome; byte homeSave; wchar_ptr reserved; } MapEditData; /* Version: 10 */ typedef struct { dword layerPropCount[31]; byte layerStates[31]; wchar_ptr layerNames[31]; } MapEditLayers; typedef struct { wchar_ptr name; dword flags; TSTRUCT_ARRAY_PTR_START float2 anchors TSTRUCT_ARRAY_PTR_END; float2 zRange; } PackMapEditAnnotation; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditAnnotation annotations TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotations; typedef struct { dword dirtyFlags; dword2 chunkCoord; } PackMapEditDirtyChunks; typedef struct { float attack; float rotation; float3 position; wchar_ptr name; } MapEditCamLocations; typedef struct { dword flags; float3 position; } PackMapEditDirtyChunks; typedef struct { MapEditLayers layers; PackMapEditAnnotations annotations; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks dirtyChunks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditCamLocations camLocations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks floodPoints TSTRUCT_ARRAY_PTR_END; wchar_ptr mapHome; byte homeSave; wchar_ptr reserved; } MapEditData; /* Version: 9 */ typedef struct { dword layerPropCount[31]; byte layerStates[31]; wchar_ptr layerNames[31]; } MapEditLayers; typedef struct { wchar_ptr name; dword flags; TSTRUCT_ARRAY_PTR_START float2 anchors TSTRUCT_ARRAY_PTR_END; float2 zRange; } PackMapEditAnnotation; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditAnnotation annotations TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotations; typedef struct { dword dirtyFlags; dword2 chunkCoord; } PackMapEditDirtyChunks; typedef struct { float attack; float rotation; float3 position; wchar_ptr name; } MapEditCamLocations; typedef struct { dword flags; float3 position; } PackMapEditDirtyChunks; typedef struct { MapEditLayers layers; PackMapEditAnnotations annotations; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks dirtyChunks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditCamLocations camLocations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks floodPoints TSTRUCT_ARRAY_PTR_END; wchar_ptr mapHome; byte homeSave; } MapEditData; /* Version: 8 */ typedef struct { dword layerPropCount[31]; byte layerStates[31]; wchar_ptr layerNames[31]; } MapEditLayers; typedef struct { wchar_ptr name; dword flags; TSTRUCT_ARRAY_PTR_START float2 anchors TSTRUCT_ARRAY_PTR_END; float2 zRange; } PackMapEditAnnotation; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditAnnotation annotations TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotations; typedef struct { dword dirtyFlags; dword2 chunkCoord; } PackMapEditDirtyChunks; typedef struct { float attack; float rotation; float3 position; wchar_ptr name; } MapEditCamLocations; typedef struct { dword flags; float3 position; } PackMapEditDirtyChunks; typedef struct { MapEditLayers layers; PackMapEditAnnotations annotations; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks dirtyChunks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditCamLocations camLocations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks floodPoints TSTRUCT_ARRAY_PTR_END; } MapEditData; /* Version: 7 */ typedef struct { dword layerPropCount[31]; byte layerStates[31]; } MapEditLayers; typedef struct { wchar_ptr name; dword flags; TSTRUCT_ARRAY_PTR_START float2 anchors TSTRUCT_ARRAY_PTR_END; float2 zRange; } PackMapEditAnnotation; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditAnnotation annotations TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotations; typedef struct { dword dirtyFlags; dword2 chunkCoord; } PackMapEditDirtyChunks; typedef struct { float attack; float rotation; float3 position; wchar_ptr name; } MapEditCamLocations; typedef struct { dword flags; float3 position; } PackMapEditDirtyChunks; typedef struct { MapEditLayers layers; PackMapEditAnnotations annotations; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks dirtyChunks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditCamLocations camLocations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks floodPoints TSTRUCT_ARRAY_PTR_END; } MapEditData; /* Version: 6 */ typedef struct { TSTRUCT_ARRAY_PTR_START wchar_ptr regions TSTRUCT_ARRAY_PTR_END; } MapEditRegion; typedef struct { byte3 ambientColor; byte3 directionalColor; float ambientIntenisty; float directionalIntenisty; } MapEditRegion; typedef struct { dword layerPropCount[31]; byte layerStates[31]; } MapEditLayers; typedef struct { wchar_ptr name; dword flags; TSTRUCT_ARRAY_PTR_START float2 anchors TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotation; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditAnnotation annotations TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotations; typedef struct { dword dirtyFlags; dword2 chunkCoord; } PackMapEditDirtyChunks; typedef struct { float attack; float rotation; float3 position; wchar_ptr name; } MapEditCamLocations; typedef struct { dword flags; float3 position; } PackMapEditDirtyChunks; typedef struct { MapEditRegion regions; MapEditRegion miniMapParams; MapEditLayers layers; PackMapEditAnnotations annotations; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks dirtyChunks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditCamLocations camLocations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks floodPoints TSTRUCT_ARRAY_PTR_END; } MapEditData; /* Version: 5, ReferencedFunction: 0x140001050 */ typedef struct { TSTRUCT_ARRAY_PTR_START wchar_ptr regions TSTRUCT_ARRAY_PTR_END; } MapEditRegion; typedef struct { byte3 ambientColor; byte3 directionalColor; float ambientIntenisty; float directionalIntenisty; } MapEditRegion; typedef struct { dword layerPropCount[31]; byte layerStates[31]; } MapEditLayers; typedef struct { wchar_ptr name; dword flags; TSTRUCT_ARRAY_PTR_START float2 anchors TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotation; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditAnnotation annotations TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotations; typedef struct { dword dirtyFlags; dword2 chunkCoord; } PackMapEditDirtyChunks; typedef struct { float attack; float rotation; float3 position; wchar_ptr name; } MapEditCamLocations; typedef struct { MapEditRegion regions; MapEditRegion miniMapParams; MapEditLayers layers; PackMapEditAnnotations annotations; TSTRUCT_ARRAY_PTR_START PackMapEditDirtyChunks dirtyChunks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START MapEditCamLocations camLocations TSTRUCT_ARRAY_PTR_END; } MapEditData; /* Version: 4, ReferencedFunction: 0x140001050 */ typedef struct { TSTRUCT_ARRAY_PTR_START wchar_ptr regions TSTRUCT_ARRAY_PTR_END; } MapEditRegion; typedef struct { byte3 ambientColor; byte3 directionalColor; float ambientIntenisty; float directionalIntenisty; } MapEditRegion; typedef struct { dword layerPropCount[31]; byte layerStates[31]; } MapEditLayers; typedef struct { wchar_ptr name; dword flags; TSTRUCT_ARRAY_PTR_START float2 anchors TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotation; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditAnnotation annotations TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotations; typedef struct { float attack; float rotation; float3 position; wchar_ptr name; } MapEditCamLocations; typedef struct { MapEditRegion regions; MapEditRegion miniMapParams; MapEditLayers layers; PackMapEditAnnotations annotations; TSTRUCT_ARRAY_PTR_START MapEditCamLocations camLocations TSTRUCT_ARRAY_PTR_END; } MapEditData; /* Version: 3 */ typedef struct { TSTRUCT_ARRAY_PTR_START wchar_ptr regions TSTRUCT_ARRAY_PTR_END; } MapEditRegion; typedef struct { byte3 ambientColor; byte3 directionalColor; float ambientIntenisty; float directionalIntenisty; } MapEditRegion; typedef struct { TSTRUCT_ARRAY_PTR_START byte layerStates TSTRUCT_ARRAY_PTR_END; } MapEditLayers; typedef struct { wchar_ptr name; dword flags; TSTRUCT_ARRAY_PTR_START float2 anchors TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotation; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapEditAnnotation annotations TSTRUCT_ARRAY_PTR_END; } PackMapEditAnnotations; typedef struct { float attack; float rotation; float3 position; wchar_ptr name; } MapEditCamLocations; typedef struct { MapEditRegion regions; MapEditRegion miniMapParams; MapEditLayers layers; PackMapEditAnnotations annotations; TSTRUCT_ARRAY_PTR_START MapEditCamLocations camLocations TSTRUCT_ARRAY_PTR_END; } MapEditData; /* =============================================== * Chunk: dcal, versions: 11, strucTab: 0x141D2E610 * =============================================== */ /* Version: 10, ReferencedFunction: 0x140C86BE0 */ typedef struct { float3 position; float3 normal; float3 tangent; float3 bitangent; } PackMapDecalVertexV9; typedef struct { float3 position; float3 extents; float3 rotation; float2 textureScaleUV0; float2 textureOffsetUV0; float2 textureScaleUV1; float2 textureOffsetUV1; float2 gridSize; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; dword flags; float2 animTranslation; float2 animScaleRangeX; float2 animScaleRangeY; float2 animScaleSpeed; float animRotation; float surfaceBias; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapDecalVertexV9 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword propIds TSTRUCT_ARRAY_PTR_END; byte projection; qword surfaceId; qword id; } PackMapDecalV10; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapDecalV10 decals TSTRUCT_ARRAY_PTR_END; } PackMapDecalsV10; /* Version: 9, ReferencedFunction: 0x140C86930 */ typedef struct { float3 position; float3 normal; float3 tangent; float3 bitangent; } PackMapDecalVertexV8; typedef struct { float3 position; float3 extents; float3 rotation; float2 textureScaleUV0; float2 textureOffsetUV0; float2 textureScaleUV1; float2 textureOffsetUV1; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; dword flags; float2 animTranslation; float2 animScaleRangeX; float2 animScaleRangeY; float2 animScaleSpeed; float animRotation; float surfaceBias; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapDecalVertexV8 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword propIds TSTRUCT_ARRAY_PTR_END; byte projection; qword surfaceId; qword id; } PackMapDecalV9; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapDecalV9 decals TSTRUCT_ARRAY_PTR_END; } PackMapDecalsV9; /* Version: 8 */ typedef struct { float3 position; } PackMapDecalVertexV7; typedef struct { float3 position; float3 extents; float3 rotation; float2 textureScaleUV0; float2 textureOffsetUV0; float2 textureScaleUV1; float2 textureOffsetUV1; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; dword flags; float2 animTranslation; float2 animScaleRangeX; float2 animScaleRangeY; float2 animScaleSpeed; float animRotation; float surfaceBias; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapDecalVertexV7 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword propIds TSTRUCT_ARRAY_PTR_END; byte projection; qword surfaceId; qword id; } PackMapDecalV8; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapDecalV8 decals TSTRUCT_ARRAY_PTR_END; } PackMapDecalsV8; /* Version: 7, ReferencedFunction: 0x140C868E0 */ typedef struct { float3 position; } PackMapDecalVertexV6; typedef struct { float3 position; float3 extents; float3 rotation; float2 textureScaleUV0; float2 textureOffsetUV0; float2 textureScaleUV1; float2 textureOffsetUV1; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; dword flags; float2 animTranslation; float2 animScaleRangeX; float2 animScaleRangeY; float2 animScaleSpeed; float animRotation; float surfaceBias; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapDecalVertexV6 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword propIds TSTRUCT_ARRAY_PTR_END; byte projection; qword id; } PackMapDecalV7; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapDecalV7 decals TSTRUCT_ARRAY_PTR_END; } PackMapDecalsV7; /* Version: 6 */ typedef struct { float3 position; } PackMapDecalVertexV5; typedef struct { float3 position; float3 extents; float3 rotation; float2 textureScaleUV0; float2 textureOffsetUV0; float2 textureScaleUV1; float2 textureOffsetUV1; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; dword flags; float2 animTranslation; float2 animScaleRangeX; float2 animScaleRangeY; float2 animScaleSpeed; float animRotation; float surfaceBias; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapDecalVertexV5 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword propIds TSTRUCT_ARRAY_PTR_END; byte projection; } PackMapDecalV6; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapDecalV6 decals TSTRUCT_ARRAY_PTR_END; } PackMapDecalsV6; /* Version: 5 */ typedef struct { float3 position; } PackMapDecalVertexV4; typedef struct { float3 position; float3 extents; float3 rotation; float2 textureScaleUV0; float2 textureOffsetUV0; float2 textureScaleUV1; float2 textureOffsetUV1; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; dword flags; float2 animTranslation; float2 animScaleRangeX; float2 animScaleRangeY; float2 animScaleSpeed; float animRotation; float surfaceBias; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackMapDecalVertexV4 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword propIds TSTRUCT_ARRAY_PTR_END; } PackMapDecalV5; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapDecalV5 decals TSTRUCT_ARRAY_PTR_END; } PackMapDecalsV5; /* Version: 4 */ typedef struct { float3 position; float3 extents; float3 rotation; float2 textureScaleUV0; float2 textureOffsetUV0; float2 textureScaleUV1; float2 textureOffsetUV1; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; dword flags; float2 animTranslation; float2 animScaleRangeX; float2 animScaleRangeY; float2 animScaleSpeed; float animRotation; float surfaceBias; TSTRUCT_ARRAY_PTR_START dword constantTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 constantValues TSTRUCT_ARRAY_PTR_END; } PackMapDecalV4; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapDecalV4 decals TSTRUCT_ARRAY_PTR_END; } PackMapDecalsV4; /* Version: 3, ReferencedFunction: 0x140C86870 */ typedef struct { float3 position; float3 extents; float3 rotation; float2 textureScaleUV0; float2 textureOffsetUV0; float2 textureScaleUV1; float2 textureOffsetUV1; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; dword flags; float2 animTranslation; float2 animScaleRangeX; float2 animScaleRangeY; float2 animScaleSpeed; float animRotation; float surfaceBias; } PackMapDecalV3; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapDecalV3 decals TSTRUCT_ARRAY_PTR_END; } PackMapDecalsV3; /* Version: 2 */ typedef struct { float3 position; float3 extents; float3 rotation; float2 textureScale; float2 textureOffset; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; dword flags; float2 animTranslation; float2 animScaleRangeX; float2 animScaleRangeY; float2 animScaleSpeed; float animRotation; } PackMapDecalV2; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapDecalV2 decals TSTRUCT_ARRAY_PTR_END; } PackMapDecalsV2; /* Version: 1 */ typedef struct { float3 position; float3 extents; float3 rotation; float2 textureScale; float2 textureOffset; filename materialFilename; TSTRUCT_ARRAY_PTR_START filename textureFilenames TSTRUCT_ARRAY_PTR_END; dword flags; } PackMapDecalV1; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapDecalV1 decals TSTRUCT_ARRAY_PTR_END; } PackMapDecalsV1; /* =============================================== * Chunk: exp, versions: 1, strucTab: 0x141D2FB60 * =============================================== */ /* Version: 0 */ typedef struct { dword type; qword val; filename strVal; } MapExpansionProperty; typedef struct { TSTRUCT_ARRAY_PTR_START MapExpansionProperty properties TSTRUCT_ARRAY_PTR_END; } MapExpansionProperties; /* =============================================== * Chunk: pack, versions: 1, strucTab: 0x141D30178 * =============================================== */ /* Version: 0 */ typedef struct { wchar_ptr file; wchar_ptr name; qword token; dword flags; } MapVariant; typedef struct { filename baseFile; TSTRUCT_ARRAY_PTR_START MapVariant variants TSTRUCT_ARRAY_PTR_END; dword flags; } MapPackage; /* =============================================== * Chunk: MODL, versions: 67, strucTab: 0x141DCCD70 * =============================================== */ /* Version: 66 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV66; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV66; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV66; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV66; typedef struct { dword flags; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; float2 scrollFreq; float2 scale; float2 scaleFreq; float rotate; float rotate; } ModelMaterialTexTransformV66; typedef struct { qword token; dword materialId; filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV66 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV66 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV66 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV66 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV66 texTransforms TSTRUCT_ARRAY_PTR_END; byte texCoordCount; dword sortLayer; } ModelMaterialDataV66; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV66 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV66; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV66; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV66; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV66; typedef struct { float4 x; float4 y; float4 z; } ModelMatrix43V66; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; dword affinity; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV66 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV66 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV66 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; TPTR_START ModelMatrix43V66 transform TPTR_END; byte windInfluence; byte alignmentType; byte spawnShape; } ModelParticleEmitterV66; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV66 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV66 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV66; typedef struct { dword affinity; qword bone; byte type; byte response; dword flags; float dragCoef; float gravityCoef; float length; float width; float height; float radius; TPTR_START ModelMatrix43V66 transform TPTR_END; } ModelObstacleDataV66; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV66; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV66; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV66 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV66 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV66; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV66; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV66 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV66; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV66; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV66 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV66; typedef struct { qword strippedToken; char_ptr boneName; float3 OBBMin; float3 OBBMax; } ModelClothGroupBindingV66; typedef struct { byte weight; word vertIndex; } ModelClothSoftLockV66; typedef struct { word distance; word relationship; word vertIndexA; word vertIndexB; } ModelClothConstraintV66; typedef struct { dword materialIndex; float drag; float gravity; float compressibility; float slack; float stretchiness; float weight; float wind; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV66 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothGroupBindingV66 groupBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothSoftLockV66 softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV66 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV66 lod1Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START dword lockedNormals TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedTanegents TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedBitangents TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; byte flags; byte rigidness; float translateWeight; qword visBone; } ModelClothDataV66; typedef struct { qword bone; float farDistance; float intensity; float nearDistance; } ModelEffectWindV66; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectWindV66 effectWind TSTRUCT_ARRAY_PTR_END; } ModelWindDataV66; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV66; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; TPTR_START ModelParticleFlipbookV66 flipbook TPTR_END; float fps; float frequency; dword groupMax; dword groupMin; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float texOffset; float2 texRange; float texScale; float texSpeed; byte thicknessPreset; float2 thicknessRange; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV66; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV66; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV66 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV66 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV66 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV66; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV66; typedef struct { qword bone; float3 translation; float4 rotation; float4 boneInverseOffset[3]; } ModelBoneOffsetDataV66; typedef struct { float3 center; float radius; } ModelBoundingSphereV66; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV66 permutations TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV66 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV66 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV66 streakData TPTR_END; TPTR_START ModelLightDataV66 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV66 clothData TSTRUCT_ARRAY_PTR_END; TPTR_START ModelWindDataV66 windData TPTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV66 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV66 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV66 boneOffsetData TSTRUCT_ARRAY_PTR_END; TPTR_START ModelBoundingSphereV66 boundingSphere TPTR_END; } ModelFileDataV66; /* Version: 65, ReferencedFunction: 0x140D10590 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV65; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV65; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV65; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV65; typedef struct { dword flags; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; float2 scrollFreq; float2 scale; float2 scaleFreq; float rotate; float rotate; } ModelMaterialTexTransformV65; typedef struct { qword token; dword materialId; filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV65 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV65 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV65 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV65 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV65 texTransforms TSTRUCT_ARRAY_PTR_END; byte texCoordCount; } ModelMaterialDataV65; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV65 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV65; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV65; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV65; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV65; typedef struct { float4 x; float4 y; float4 z; } ModelMatrix43V65; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; dword affinity; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV65 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV65 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV65 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; TPTR_START ModelMatrix43V65 transform TPTR_END; byte windInfluence; byte alignmentType; byte spawnShape; } ModelParticleEmitterV65; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV65 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV65 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV65; typedef struct { dword affinity; qword bone; byte type; byte response; dword flags; float dragCoef; float gravityCoef; float length; float width; float height; float radius; TPTR_START ModelMatrix43V65 transform TPTR_END; } ModelObstacleDataV65; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV65; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV65; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV65 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV65 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV65; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV65; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV65 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV65; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV65; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV65 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV65; typedef struct { qword strippedToken; char_ptr boneName; float3 OBBMin; float3 OBBMax; } ModelClothGroupBindingV65; typedef struct { byte weight; word vertIndex; } ModelClothSoftLockV65; typedef struct { word distance; word relationship; word vertIndexA; word vertIndexB; } ModelClothConstraintV65; typedef struct { dword materialIndex; float drag; float gravity; float compressibility; float slack; float stretchiness; float weight; float wind; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV65 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothGroupBindingV65 groupBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothSoftLockV65 softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV65 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV65 lod1Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START dword lockedNormals TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedTanegents TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedBitangents TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; byte flags; byte rigidness; float translateWeight; qword visBone; } ModelClothDataV65; typedef struct { qword bone; float farDistance; float intensity; float nearDistance; } ModelEffectWindV65; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectWindV65 effectWind TSTRUCT_ARRAY_PTR_END; } ModelWindDataV65; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV65; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; TPTR_START ModelParticleFlipbookV65 flipbook TPTR_END; float fps; float frequency; dword groupMax; dword groupMin; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float texOffset; float2 texRange; float texScale; float texSpeed; byte thicknessPreset; float2 thicknessRange; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV65; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV65; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV65 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV65 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV65 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV65; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV65; typedef struct { qword bone; float3 translation; float4 rotation; float4 boneInverseOffset[3]; } ModelBoneOffsetDataV65; typedef struct { float3 center; float radius; } ModelBoundingSphereV65; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV65 permutations TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV65 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV65 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV65 streakData TPTR_END; TPTR_START ModelLightDataV65 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV65 clothData TSTRUCT_ARRAY_PTR_END; TPTR_START ModelWindDataV65 windData TPTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV65 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV65 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV65 boneOffsetData TSTRUCT_ARRAY_PTR_END; TPTR_START ModelBoundingSphereV65 boundingSphere TPTR_END; } ModelFileDataV65; /* Version: 64 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV64; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV64; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV64; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV64; typedef struct { dword flags; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; float2 scrollFreq; float2 scale; float2 scaleFreq; float rotate; float rotate; } ModelMaterialTexTransformV64; typedef struct { qword token; dword materialId; filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV64 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV64 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV64 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV64 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV64 texTransforms TSTRUCT_ARRAY_PTR_END; byte texCoordCount; } ModelMaterialDataV64; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV64 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV64; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV64; typedef struct { word index; float3 vector; } ModelMeshMorphVertV64; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV64 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV64 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV64; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV64 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV64 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; } ModelMeshDataV64; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV64; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV64; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV64; typedef struct { float4 x; float4 y; float4 z; } ModelMatrix43V64; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; dword affinity; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV64 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV64 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV64 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; TPTR_START ModelMatrix43V64 transform TPTR_END; byte windInfluence; byte alignmentType; byte spawnShape; } ModelParticleEmitterV64; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV64 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV64 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV64; typedef struct { dword affinity; qword bone; byte type; byte response; dword flags; float dragCoef; float gravityCoef; float length; float width; float height; float radius; TPTR_START ModelMatrix43V64 transform TPTR_END; } ModelObstacleDataV64; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV64; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV64; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV64 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV64 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV64; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV64; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV64 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV64; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV64; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV64 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV64; typedef struct { qword strippedToken; char_ptr boneName; float3 OBBMin; float3 OBBMax; } ModelClothGroupBindingV64; typedef struct { byte weight; word vertIndex; } ModelClothSoftLockV64; typedef struct { word distance; word relationship; word vertIndexA; word vertIndexB; } ModelClothConstraintV64; typedef struct { dword materialIndex; float drag; float gravity; float compressibility; float slack; float stretchiness; float weight; float wind; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV64 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothGroupBindingV64 groupBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothSoftLockV64 softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV64 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV64 lod1Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START dword lockedNormals TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedTanegents TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedBitangents TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; byte flags; byte rigidness; float translateWeight; qword visBone; } ModelClothDataV64; typedef struct { qword bone; float farDistance; float intensity; float nearDistance; } ModelEffectWindV64; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectWindV64 effectWind TSTRUCT_ARRAY_PTR_END; } ModelWindDataV64; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV64; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; TPTR_START ModelParticleFlipbookV64 flipbook TPTR_END; float fps; float frequency; dword groupMax; dword groupMin; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float texOffset; float2 texRange; float texScale; float texSpeed; byte thicknessPreset; float2 thicknessRange; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV64; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV64; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV64 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV64 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV64 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV64; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV64; typedef struct { qword bone; float3 translation; float4 rotation; float4 boneInverseOffset[3]; } ModelBoneOffsetDataV64; typedef struct { float3 center; float radius; } ModelBoundingSphereV64; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV64 permutations TSTRUCT_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV64 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelCloudDataV64 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV64 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV64 streakData TPTR_END; TPTR_START ModelLightDataV64 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV64 clothData TSTRUCT_ARRAY_PTR_END; TPTR_START ModelWindDataV64 windData TPTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV64 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV64 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV64 boneOffsetData TSTRUCT_ARRAY_PTR_END; TPTR_START ModelBoundingSphereV64 boundingSphere TPTR_END; } ModelFileDataV64; /* Version: 63, ReferencedFunction: 0x140D104B0 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV63; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV63; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV63; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV63; typedef struct { dword flags; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV63; typedef struct { qword token; dword materialId; filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV63 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV63 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV63 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV63 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV63 texTransforms TSTRUCT_ARRAY_PTR_END; byte texCoordCount; } ModelMaterialDataV63; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV63 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV63; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV63; typedef struct { word index; float3 vector; } ModelMeshMorphVertV63; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV63 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV63 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV63; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV63 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV63 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; } ModelMeshDataV63; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV63; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV63; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV63; typedef struct { float4 x; float4 y; float4 z; } ModelMatrix43V63; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; dword affinity; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV63 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV63 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV63 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; TPTR_START ModelMatrix43V63 transform TPTR_END; byte windInfluence; byte alignmentType; byte spawnShape; } ModelParticleEmitterV63; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV63 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV63 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV63; typedef struct { dword affinity; qword bone; byte type; byte response; dword flags; float dragCoef; float gravityCoef; float length; float width; float height; float radius; TPTR_START ModelMatrix43V63 transform TPTR_END; } ModelObstacleDataV63; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV63; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV63; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV63 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV63 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV63; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV63; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV63 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV63; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV63; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV63 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV63; typedef struct { qword strippedToken; char_ptr boneName; float3 OBBMin; float3 OBBMax; } ModelClothGroupBindingV63; typedef struct { byte weight; word vertIndex; } ModelClothSoftLockV63; typedef struct { word distance; word relationship; word vertIndexA; word vertIndexB; } ModelClothConstraintV63; typedef struct { dword materialIndex; float drag; float gravity; float compressibility; float slack; float stretchiness; float weight; float wind; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV63 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothGroupBindingV63 groupBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothSoftLockV63 softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV63 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV63 lod1Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START dword lockedNormals TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedTanegents TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedBitangents TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; byte flags; byte rigidness; float translateWeight; } ModelClothDataV63; typedef struct { qword bone; float farDistance; float intensity; float nearDistance; } ModelEffectWindV63; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectWindV63 effectWind TSTRUCT_ARRAY_PTR_END; } ModelWindDataV63; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV63; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; TPTR_START ModelParticleFlipbookV63 flipbook TPTR_END; float fps; float frequency; dword groupMax; dword groupMin; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float texOffset; float2 texRange; float texScale; float texSpeed; byte thicknessPreset; float2 thicknessRange; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV63; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV63; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV63 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV63 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV63 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV63; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV63; typedef struct { qword bone; float3 translation; float4 rotation; float4 boneInverseOffset[3]; } ModelBoneOffsetDataV63; typedef struct { float3 center; float radius; } ModelBoundingSphereV63; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV63 permutations TSTRUCT_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV63 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelCloudDataV63 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV63 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV63 streakData TPTR_END; TPTR_START ModelLightDataV63 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV63 clothData TSTRUCT_ARRAY_PTR_END; TPTR_START ModelWindDataV63 windData TPTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV63 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV63 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV63 boneOffsetData TSTRUCT_ARRAY_PTR_END; TPTR_START ModelBoundingSphereV63 boundingSphere TPTR_END; } ModelFileDataV63; /* Version: 62, ReferencedFunction: 0x140D102F0 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV62; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV62; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV62; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV62; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV62; typedef struct { qword token; dword materialId; filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV62 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV62 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV62 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV62 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV62 texTransforms TSTRUCT_ARRAY_PTR_END; byte texCoordCount; } ModelMaterialDataV62; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV62 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV62; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV62; typedef struct { word index; float3 vector; } ModelMeshMorphVertV62; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV62 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV62 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV62; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV62 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV62 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; } ModelMeshDataV62; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV62; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV62; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV62; typedef struct { float4 x; float4 y; float4 z; } ModelMatrix43V62; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; dword affinity; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV62 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV62 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV62 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; TPTR_START ModelMatrix43V62 transform TPTR_END; byte windInfluence; byte alignmentType; byte spawnShape; } ModelParticleEmitterV62; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV62 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV62 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV62; typedef struct { dword affinity; qword bone; byte type; byte response; dword flags; float dragCoef; float gravityCoef; float length; float width; float height; float radius; TPTR_START ModelMatrix43V62 transform TPTR_END; } ModelObstacleDataV62; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV62; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV62; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV62 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV62 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV62; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV62; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV62 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV62; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV62; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV62 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV62; typedef struct { qword strippedToken; char_ptr boneName; float3 OBBMin; float3 OBBMax; } ModelClothGroupBindingV62; typedef struct { byte weight; word vertIndex; } ModelClothSoftLockV62; typedef struct { word distance; word relationship; word vertIndexA; word vertIndexB; } ModelClothConstraintV62; typedef struct { dword materialIndex; float drag; float gravity; float compressibility; float slack; float stretchiness; float weight; float wind; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV62 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothGroupBindingV62 groupBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothSoftLockV62 softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV62 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV62 lod1Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START dword lockedNormals TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedTanegents TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedBitangents TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; byte flags; byte rigidness; float translateWeight; } ModelClothDataV62; typedef struct { qword bone; float farDistance; float intensity; float nearDistance; } ModelEffectWindV62; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectWindV62 effectWind TSTRUCT_ARRAY_PTR_END; } ModelWindDataV62; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV62; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; TPTR_START ModelParticleFlipbookV62 flipbook TPTR_END; float fps; float frequency; dword groupMax; dword groupMin; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float texOffset; float2 texRange; float texScale; float texSpeed; byte thicknessPreset; float2 thicknessRange; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV62; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV62; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV62 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV62 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV62 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV62; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV62; typedef struct { qword bone; float3 translation; float4 rotation; float4 boneInverseOffset[3]; } ModelBoneOffsetDataV62; typedef struct { float3 center; float radius; } ModelBoundingSphereV62; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV62 permutations TSTRUCT_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV62 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelCloudDataV62 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV62 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV62 streakData TPTR_END; TPTR_START ModelLightDataV62 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV62 clothData TSTRUCT_ARRAY_PTR_END; TPTR_START ModelWindDataV62 windData TPTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV62 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV62 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV62 boneOffsetData TSTRUCT_ARRAY_PTR_END; TPTR_START ModelBoundingSphereV62 boundingSphere TPTR_END; } ModelFileDataV62; /* Version: 61, ReferencedFunction: 0x140D10280 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV61; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV61; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV61; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV61; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV61; typedef struct { qword token; dword materialId; filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV61 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV61 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV61 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV61 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV61 texTransforms TSTRUCT_ARRAY_PTR_END; byte texCoordCount; } ModelMaterialDataV61; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV61 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV61; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV61; typedef struct { word index; float3 vector; } ModelMeshMorphVertV61; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV61 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV61 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV61; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV61 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV61 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; } ModelMeshDataV61; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV61; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV61 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV61; typedef struct { qword boneLeft; qword boneRight; } ModelBoneSymmetryV61; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV61 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneSymmetryV61 boneSymmetries TSTRUCT_ARRAY_PTR_END; } ModelSkeletonDataV61; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV61; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV61; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV61 Skeleton TPTR_END; ModelTransformDataV61 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV61 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV61 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV61; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV61; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV61; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV61; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV61; typedef struct { float4 x; float4 y; float4 z; } ModelMatrix43V61; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; dword affinity; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV61 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV61 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV61 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; TPTR_START ModelMatrix43V61 transform TPTR_END; byte windInfluence; byte alignmentType; byte spawnShape; } ModelParticleEmitterV61; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV61 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV61 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV61; typedef struct { dword affinity; qword bone; byte type; byte response; dword flags; float dragCoef; float gravityCoef; float length; float width; float height; float radius; TPTR_START ModelMatrix43V61 transform TPTR_END; } ModelObstacleDataV61; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV61; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV61; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV61 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV61 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV61; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV61; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV61 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV61; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV61; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV61 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV61; typedef struct { qword strippedToken; char_ptr boneName; float3 OBBMin; float3 OBBMax; } ModelClothGroupBindingV61; typedef struct { byte weight; word vertIndex; } ModelClothSoftLockV61; typedef struct { word distance; word relationship; word vertIndexA; word vertIndexB; } ModelClothConstraintV61; typedef struct { dword materialIndex; float drag; float gravity; float compressibility; float slack; float stretchiness; float weight; float wind; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV61 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothGroupBindingV61 groupBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothSoftLockV61 softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV61 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV61 lod1Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START dword lockedNormals TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedTanegents TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedBitangents TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; byte flags; byte rigidness; } ModelClothDataV61; typedef struct { qword bone; float farDistance; float intensity; float nearDistance; } ModelEffectWindV61; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectWindV61 effectWind TSTRUCT_ARRAY_PTR_END; } ModelWindDataV61; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV61; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; TPTR_START ModelParticleFlipbookV61 flipbook TPTR_END; float fps; float frequency; dword groupMax; dword groupMin; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float texOffset; float2 texRange; float texScale; float texSpeed; byte thicknessPreset; float2 thicknessRange; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV61; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV61; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV61 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV61 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV61 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV61; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV61; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV61 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV61; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV61; typedef struct { qword bone; float3 translation; float4 rotation; float4 boneInverseOffset[3]; } ModelBoneOffsetDataV61; typedef struct { qword name; qword parentBone; float3 translation; } ModelFixedOffsetDataV61; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV61 permutations TSTRUCT_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV61 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV61 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV61 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV61 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV61 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV61 streakData TPTR_END; TPTR_START ModelLightDataV61 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV61 clothData TSTRUCT_ARRAY_PTR_END; TPTR_START ModelWindDataV61 windData TPTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV61 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV61 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV61 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV61 boneOffsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFixedOffsetDataV61 fixedOffsetData TSTRUCT_ARRAY_PTR_END; filename modelReference; } ModelFileDataV61; /* Version: 60, ReferencedFunction: 0x140D0FEA0 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV60; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV60; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV60; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV60; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV60; typedef struct { qword token; dword materialId; filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV60 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV60 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV60 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV60 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV60 texTransforms TSTRUCT_ARRAY_PTR_END; byte texCoordCount; } ModelMaterialDataV60; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV60 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV60; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV60; typedef struct { word index; float3 vector; } ModelMeshMorphVertV60; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV60 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV60 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV60; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV60 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV60 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; } ModelMeshDataV60; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV60; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV60 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV60; typedef struct { qword boneLeft; qword boneRight; } ModelBoneSymmetryV60; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV60 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneSymmetryV60 boneSymmetries TSTRUCT_ARRAY_PTR_END; } ModelSkeletonDataV60; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV60; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV60; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV60 Skeleton TPTR_END; ModelTransformDataV60 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV60 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV60 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV60; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV60; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV60; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV60; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV60; typedef struct { float4 x; float4 y; float4 z; } ModelMatrix43V60; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV60 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV60 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV60 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; TPTR_START ModelMatrix43V60 transform TPTR_END; byte windInfluence; byte alignmentType; byte spawnShape; } ModelParticleEmitterV60; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV60 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV60 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV60; typedef struct { qword bone; byte type; byte response; dword flags; float dragCoef; float gravityCoef; float length; float width; float height; float radius; TPTR_START ModelMatrix43V60 transform TPTR_END; } ModelObstacleDataV60; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV60; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV60; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV60 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV60 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV60; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV60; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV60 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV60; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV60; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV60 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV60; typedef struct { qword strippedToken; char_ptr boneName; float3 OBBMin; float3 OBBMax; } ModelClothGroupBindingV60; typedef struct { byte weight; word vertIndex; } ModelClothSoftLockV60; typedef struct { word distance; word relationship; word vertIndexA; word vertIndexB; } ModelClothConstraintV60; typedef struct { dword materialIndex; float drag; float gravity; float compressibility; float slack; float stretchiness; float weight; float wind; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV60 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothGroupBindingV60 groupBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothSoftLockV60 softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV60 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV60 lod1Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START dword lockedNormals TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedTanegents TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedBitangents TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; byte flags; byte rigidness; } ModelClothDataV60; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV60; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; TPTR_START ModelParticleFlipbookV60 flipbook TPTR_END; float fps; float frequency; dword groupMax; dword groupMin; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float texOffset; float2 texRange; float texScale; float texSpeed; byte thicknessPreset; float2 thicknessRange; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV60; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV60; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV60 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV60 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV60 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV60; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV60; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV60 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV60; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV60; typedef struct { qword bone; float3 translation; float4 rotation; float4 boneInverseOffset[3]; } ModelBoneOffsetDataV60; typedef struct { qword name; qword parentBone; float3 translation; } ModelFixedOffsetDataV60; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV60 permutations TSTRUCT_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV60 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV60 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV60 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV60 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV60 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV60 streakData TPTR_END; TPTR_START ModelLightDataV60 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV60 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV60 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV60 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV60 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV60 boneOffsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFixedOffsetDataV60 fixedOffsetData TSTRUCT_ARRAY_PTR_END; filename modelReference; } ModelFileDataV60; /* Version: 59, ReferencedFunction: 0x140D0FE40 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV59; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV59; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV59; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV59; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV59; typedef struct { qword token; dword materialId; filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV59 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV59 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV59 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV59 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV59 texTransforms TSTRUCT_ARRAY_PTR_END; byte texCoordCount; } ModelMaterialDataV59; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV59 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV59; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV59; typedef struct { word index; float3 vector; } ModelMeshMorphVertV59; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV59 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV59 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV59; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV59 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV59 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; } ModelMeshDataV59; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV59; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV59 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV59; typedef struct { qword boneLeft; qword boneRight; } ModelBoneSymmetryV59; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV59 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneSymmetryV59 boneSymmetries TSTRUCT_ARRAY_PTR_END; } ModelSkeletonDataV59; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV59; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV59; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV59 Skeleton TPTR_END; ModelTransformDataV59 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV59 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV59 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV59; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV59; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV59; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV59; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV59; typedef struct { float4 x; float4 y; float4 z; } ModelMatrix43V59; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV59 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV59 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV59 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; TPTR_START ModelMatrix43V59 transform TPTR_END; byte windInfluence; byte alignmentType; byte spawnShape; } ModelParticleEmitterV59; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV59 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV59 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV59; typedef struct { qword bone; byte type; byte response; dword flags; float dragCoef; float gravityCoef; float length; float width; float height; float radius; TPTR_START ModelMatrix43V59 transform TPTR_END; } ModelObstacleDataV59; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV59; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV59; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV59 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV59 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV59; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV59; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV59 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV59; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV59; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV59 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV59; typedef struct { byte weight; word vertIndex; } ModelClothSoftLockV59; typedef struct { word distance; word relationship; word vertIndexA; word vertIndexB; } ModelClothConstraintV59; typedef struct { dword materialIndex; float drag; float gravity; float compressibility; float slack; float stretchiness; float weight; float wind; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV59 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothSoftLockV59 softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV59 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV59 lod1Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START dword lockedNormals TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedTanegents TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedBitangents TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; byte flags; byte rigidness; } ModelClothDataV59; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV59; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; TPTR_START ModelParticleFlipbookV59 flipbook TPTR_END; float fps; float frequency; dword groupMax; dword groupMin; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float texOffset; float2 texRange; float texScale; float texSpeed; byte thicknessPreset; float2 thicknessRange; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV59; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV59; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV59 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV59 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV59 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV59; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV59; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV59 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV59; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV59; typedef struct { qword bone; float3 translation; float4 rotation; float4 boneInverseOffset[3]; } ModelBoneOffsetDataV59; typedef struct { qword name; qword parentBone; float3 translation; } ModelFixedOffsetDataV59; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV59 permutations TSTRUCT_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV59 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV59 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV59 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV59 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV59 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV59 streakData TPTR_END; TPTR_START ModelLightDataV59 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV59 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV59 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV59 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV59 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV59 boneOffsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFixedOffsetDataV59 fixedOffsetData TSTRUCT_ARRAY_PTR_END; filename modelReference; } ModelFileDataV59; /* Version: 58, ReferencedFunction: 0x140D0FD00 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV58; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV58; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV58; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV58; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV58; typedef struct { qword token; dword materialId; filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV58 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV58 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV58 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV58 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV58 texTransforms TSTRUCT_ARRAY_PTR_END; byte texCoordCount; } ModelMaterialDataV58; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV58 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV58; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV58; typedef struct { word index; float3 vector; } ModelMeshMorphVertV58; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV58 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV58 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV58; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV58 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV58 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; } ModelMeshDataV58; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV58; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV58 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV58; typedef struct { qword boneLeft; qword boneRight; } ModelBoneSymmetryV58; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV58 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneSymmetryV58 boneSymmetries TSTRUCT_ARRAY_PTR_END; } ModelSkeletonDataV58; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV58; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV58; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV58 Skeleton TPTR_END; ModelTransformDataV58 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV58 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV58 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV58; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV58; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV58; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV58; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV58; typedef struct { float4 x; float4 y; float4 z; } ModelMatrix43V58; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV58 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV58 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV58 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; TPTR_START ModelMatrix43V58 transform TPTR_END; byte windInfluence; byte alignmentType; byte spawnShape; } ModelParticleEmitterV58; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV58 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV58 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV58; typedef struct { qword bone; byte type; byte response; dword flags; float dragCoef; float gravityCoef; float length; float width; float height; float radius; TPTR_START ModelMatrix43V58 transform TPTR_END; } ModelObstacleDataV58; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV58; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV58; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV58 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV58 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV58; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV58; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV58 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV58; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV58; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV58 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV58; typedef struct { byte weight; word vertIndex; } ModelClothSoftLockV58; typedef struct { word distance; word relationship; word vertIndexA; word vertIndexB; } ModelClothConstraintV58; typedef struct { dword materialIndex; float drag; float gravity; float compressibility; float slack; float stretchiness; float weight; float wind; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV58 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothSoftLockV58 softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV58 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV58 lod1Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START dword lockedNormals TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedTanegents TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword lockedBitangents TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; byte flags; byte rigidness; } ModelClothDataV58; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV58; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; TPTR_START ModelParticleFlipbookV58 flipbook TPTR_END; float fps; float frequency; dword groupMax; dword groupMin; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float texOffset; float texScale; float texSpeed; byte thicknessPreset; float2 thicknessRange; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV58; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV58; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV58 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV58 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV58 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV58; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV58; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV58 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV58; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV58; typedef struct { qword bone; float3 translation; float4 rotation; float4 boneInverseOffset[3]; } ModelBoneOffsetDataV58; typedef struct { qword name; qword parentBone; float3 translation; } ModelFixedOffsetDataV58; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV58 permutations TSTRUCT_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV58 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV58 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV58 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV58 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV58 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV58 streakData TPTR_END; TPTR_START ModelLightDataV58 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV58 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV58 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV58 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV58 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV58 boneOffsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFixedOffsetDataV58 fixedOffsetData TSTRUCT_ARRAY_PTR_END; filename modelReference; } ModelFileDataV58; /* Version: 57 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV57; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV57; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV57; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV57; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV57; typedef struct { qword token; dword materialId; filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV57 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV57 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV57 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV57 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV57 texTransforms TSTRUCT_ARRAY_PTR_END; byte texCoordCount; } ModelMaterialDataV57; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV57 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV57; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV57; typedef struct { word index; float3 vector; } ModelMeshMorphVertV57; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV57 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV57 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV57; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV57 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV57 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; } ModelMeshDataV57; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV57; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV57 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV57; typedef struct { qword boneLeft; qword boneRight; } ModelBoneSymmetryV57; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV57 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneSymmetryV57 boneSymmetries TSTRUCT_ARRAY_PTR_END; } ModelSkeletonDataV57; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV57; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV57; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV57 Skeleton TPTR_END; ModelTransformDataV57 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV57 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV57 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV57; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV57; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV57; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV57; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV57; typedef struct { float4 x; float4 y; float4 z; } ModelMatrix43V57; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV57 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV57 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV57 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; TPTR_START ModelMatrix43V57 transform TPTR_END; byte windInfluence; byte alignmentType; byte spawnShape; } ModelParticleEmitterV57; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV57 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV57 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV57; typedef struct { qword bone; byte type; byte response; dword flags; float dragCoef; float gravityCoef; float length; float width; float height; float radius; TPTR_START ModelMatrix43V57 transform TPTR_END; } ModelObstacleDataV57; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV57; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV57; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV57 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV57 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV57; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV57; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV57 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV57; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV57; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV57 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV57; typedef struct { byte weight; word vertIndex; } ModelClothSoftLockV57; typedef struct { word distance; word relationship; word vertIndexA; word vertIndexB; } ModelClothConstraintV57; typedef struct { dword materialIndex; float drag; float gravity; float compressibility; float slack; float stretchiness; float weight; float wind; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV57 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothSoftLockV57 softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV57 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV57 lod1Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; word lockCount; word lod1VertexCount; byte flags; byte rigidness; } ModelClothDataV57; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV57; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV57; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV57; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV57 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV57 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV57 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV57; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV57; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV57 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV57; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV57; typedef struct { qword bone; float3 translation; float4 rotation; float4 boneInverseOffset[3]; } ModelBoneOffsetDataV57; typedef struct { qword name; qword parentBone; float3 translation; } ModelFixedOffsetDataV57; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV57 permutations TSTRUCT_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV57 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV57 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV57 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV57 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV57 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV57 streakData TPTR_END; TPTR_START ModelLightDataV57 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV57 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV57 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV57 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV57 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV57 boneOffsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFixedOffsetDataV57 fixedOffsetData TSTRUCT_ARRAY_PTR_END; filename modelReference; } ModelFileDataV57; /* Version: 56 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV56; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV56; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV56; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV56; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV56; typedef struct { qword token; dword materialId; filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV56 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV56 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV56 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV56 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV56 texTransforms TSTRUCT_ARRAY_PTR_END; byte texCoordCount; } ModelMaterialDataV56; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV56 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV56; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV56; typedef struct { word index; float3 vector; } ModelMeshMorphVertV56; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV56 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV56 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV56; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV56 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV56 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; } ModelMeshDataV56; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV56; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV56 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV56; typedef struct { qword boneLeft; qword boneRight; } ModelBoneSymmetryV56; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV56 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneSymmetryV56 boneSymmetries TSTRUCT_ARRAY_PTR_END; } ModelSkeletonDataV56; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV56; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV56; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV56 Skeleton TPTR_END; ModelTransformDataV56 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV56 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV56 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV56; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV56; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV56; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV56; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV56; typedef struct { float4 x; float4 y; float4 z; } ModelMatrix43V56; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV56 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV56 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV56 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; TPTR_START ModelMatrix43V56 transform TPTR_END; byte windInfluence; byte alignmentType; byte spawnShape; } ModelParticleEmitterV56; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV56 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV56 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV56; typedef struct { qword bone; byte type; byte response; dword flags; float dragCoef; float gravityCoef; float length; float width; float height; float radius; TPTR_START ModelMatrix43V56 transform TPTR_END; } ModelObstacleDataV56; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV56; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV56; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV56 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV56 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV56; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV56; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV56 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV56; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV56; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV56 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV56; typedef struct { byte weight; word vertIndex; } ModelClothSoftLockV56; typedef struct { word distance; word relationship; word vertIndexA; word vertIndexB; } ModelClothConstraintV56; typedef struct { dword materialIndex; float drag; float gravity; float compressibility; float slack; float stretchiness; float weight; float wind; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV56 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothSoftLockV56 softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV56 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV56 lod1Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; word lockCount; word lod1VertexCount; byte flags; byte rigidness; } ModelClothDataV56; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV56; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV56; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV56; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV56 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV56 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV56 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV56; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV56; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV56 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV56; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV56; typedef struct { qword bone; float3 translation; float4 rotation; float4 boneInverseOffset[3]; } ModelBoneOffsetDataV56; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV56 permutations TSTRUCT_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV56 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV56 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV56 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV56 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV56 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV56 streakData TPTR_END; TPTR_START ModelLightDataV56 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV56 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV56 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV56 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV56 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV56 boneOffsetData TSTRUCT_ARRAY_PTR_END; filename modelReference; } ModelFileDataV56; /* Version: 55, ReferencedFunction: 0x140D0FBD0 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV55; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV55; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV55; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV55; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV55; typedef struct { qword token; dword materialId; filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV55 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV55 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV55 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV55 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV55 texTransforms TSTRUCT_ARRAY_PTR_END; byte texCoordCount; } ModelMaterialDataV55; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV55 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV55; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV55; typedef struct { word index; float3 vector; } ModelMeshMorphVertV55; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV55 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV55 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV55; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV55 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV55 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; } ModelMeshDataV55; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV55; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV55 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV55; typedef struct { qword boneLeft; qword boneRight; } ModelBoneSymmetryV55; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV55 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneSymmetryV55 boneSymmetries TSTRUCT_ARRAY_PTR_END; } ModelSkeletonDataV55; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV55; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV55; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV55 Skeleton TPTR_END; ModelTransformDataV55 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV55 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV55 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV55; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV55; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV55; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV55; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV55; typedef struct { float4 x; float4 y; float4 z; } ModelMatrix43V55; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV55 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV55 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV55 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; TPTR_START ModelMatrix43V55 transform TPTR_END; byte windInfluence; byte alignmentType; byte spawnShape; } ModelParticleEmitterV55; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV55 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV55 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV55; typedef struct { qword bone; byte type; byte response; dword flags; float dragCoef; float gravityCoef; float length; float width; float height; float radius; TPTR_START ModelMatrix43V55 transform TPTR_END; } ModelObstacleDataV55; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV55; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV55; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV55 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV55 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV55; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV55; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV55 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV55; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV55; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV55 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV55; typedef struct { byte weight; word vertIndex; } ModelClothSoftLockV55; typedef struct { word distance; word relationship; word vertIndexA; word vertIndexB; } ModelClothConstraintV55; typedef struct { dword materialIndex; float drag; float gravity; float compressibility; float slack; float stretchiness; float weight; float wind; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV55 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothSoftLockV55 softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV55 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV55 lod1Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; word lockCount; word lod1VertexCount; byte flags; byte rigidness; } ModelClothDataV55; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV55; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV55; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV55; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV55 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV55 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV55 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV55; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV55; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV55 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV55; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV55; typedef struct { qword bone; float3 translation; float4 rotation; float4 boneInverseOffset[3]; } ModelBoneOffsetDataV55; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV55 permutations TSTRUCT_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV55 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV55 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV55 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV55 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV55 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV55 streakData TPTR_END; TPTR_START ModelLightDataV55 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV55 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV55 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV55 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV55 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV55 boneOffsetData TSTRUCT_ARRAY_PTR_END; } ModelFileDataV55; /* Version: 54 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV54; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV54; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV54; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV54; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV54; typedef struct { qword token; dword materialId; filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV54 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV54 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV54 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV54 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV54 texTransforms TSTRUCT_ARRAY_PTR_END; byte texCoordCount; } ModelMaterialDataV54; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV54 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV54; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV54; typedef struct { word index; float3 vector; } ModelMeshMorphVertV54; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV54 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV54 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV54; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV54 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV54 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; } ModelMeshDataV54; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV54; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV54 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV54; typedef struct { qword boneLeft; qword boneRight; } ModelBoneSymmetryV54; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV54 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneSymmetryV54 boneSymmetries TSTRUCT_ARRAY_PTR_END; } ModelSkeletonDataV54; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV54; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV54; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV54 Skeleton TPTR_END; ModelTransformDataV54 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV54 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV54 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV54; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV54; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV54; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV54; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV54; typedef struct { float4 x; float4 y; float4 z; } ModelMatrix43V54; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV54 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV54 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV54 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; TPTR_START ModelMatrix43V54 transform TPTR_END; byte windInfluence; byte alignmentType; byte spawnShape; } ModelParticleEmitterV54; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV54 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV54 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV54; typedef struct { qword bone; byte type; byte response; dword flags; float dragCoef; float gravityCoef; float length; float width; float height; float radius; TPTR_START ModelMatrix43V54 transform TPTR_END; } ModelObstacleDataV54; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV54; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV54; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV54 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV54 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV54; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV54; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV54 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV54; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV54; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV54 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV54; typedef struct { byte weight; word vertIndex; } ModelClothSoftLockV54; typedef struct { word distance; word relationship; word vertIndexA; word vertIndexB; } ModelClothConstraintV54; typedef struct { dword materialIndex; float drag; float gravity; float compressibility; float slack; float stretchiness; float weight; float wind; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV54 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothSoftLockV54 softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV54 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV54 lod1Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; word lockCount; word lod1VertexCount; byte flags; byte rigidness; } ModelClothDataV54; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV54; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV54; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV54; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV54 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV54 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV54 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV54; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV54; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV54 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV54; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV54; typedef struct { qword bone; float3 translation; float4 rotation; } ModelBoneOffsetDataV54; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV54 permutations TSTRUCT_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV54 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV54 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV54 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV54 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV54 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV54 streakData TPTR_END; TPTR_START ModelLightDataV54 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV54 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV54 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV54 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV54 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV54 boneOffsetData TSTRUCT_ARRAY_PTR_END; } ModelFileDataV54; /* Version: 53, ReferencedFunction: 0x140D0F880 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV53; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV53; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV53; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV53; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV53; typedef struct { dword materialId; filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV53 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV53 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV53 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV53 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV53 texTransforms TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV53; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV53 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV53; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV53; typedef struct { word index; float3 vector; } ModelMeshMorphVertV53; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV53 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV53 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV53; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV53 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV53 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; } ModelMeshDataV53; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV53; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV53 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV53; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV53 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelSkeletonDataV53; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV53; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV53; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV53 Skeleton TPTR_END; ModelTransformDataV53 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV53 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV53 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV53; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV53; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV53; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV53; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV53; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV53 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV53 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV53 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV53; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV53 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV53 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV53; typedef struct { float4 x; float4 y; float4 z; } ModelMatrix43V53; typedef struct { qword bone; byte type; byte response; dword flags; float dragCoef; float gravityCoef; float length; float width; float height; float radius; TPTR_START ModelMatrix43V53 transform TPTR_END; } ModelObstacleDataV53; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV53; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV53; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV53 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV53 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV53; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV53; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV53 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV53; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV53; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV53 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV53; typedef struct { byte weight; word vertIndex; } ModelClothSoftLockV53; typedef struct { word distance; word relationship; word vertIndexA; word vertIndexB; } ModelClothConstraintV53; typedef struct { dword materialIndex; byte flags; float drag; float gravity; float compressibility; float stretchiness; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV53 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothSoftLockV53 softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV53 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV53 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; } ModelClothDataV53; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV53; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV53; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV53; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV53 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV53 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV53 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV53; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV53; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV53 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV53; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV53; typedef struct { qword bone; float3 translation; float4 rotation; } ModelBoneOffsetDataV53; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV53 permutations TSTRUCT_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV53 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV53 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV53 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV53 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV53 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV53 streakData TPTR_END; TPTR_START ModelLightDataV53 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV53 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV53 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV53 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV53 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV53 boneOffsetData TSTRUCT_ARRAY_PTR_END; } ModelFileDataV53; /* Version: 52, ReferencedFunction: 0x140D0F710 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV52; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV52; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV52; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV52; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV52; typedef struct { dword materialId; filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV52 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV52 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV52 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV52 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV52 texTransforms TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV52; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV52 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV52; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV52; typedef struct { word index; float3 vector; } ModelMeshMorphVertV52; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV52 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV52 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV52; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV52 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV52 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; } ModelMeshDataV52; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV52; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV52 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV52; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV52 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelSkeletonDataV52; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV52; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV52; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV52 Skeleton TPTR_END; ModelTransformDataV52 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV52 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV52 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV52; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV52; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV52; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV52; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV52; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV52 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV52 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV52 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV52; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV52 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV52 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV52; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV52; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV52; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV52; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV52 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV52 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV52; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV52; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV52 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV52; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV52; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV52 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV52; typedef struct { byte weight; word vertIndex; } ModelClothSoftLockV52; typedef struct { word distance; word relationship; word vertIndexA; word vertIndexB; } ModelClothConstraintV52; typedef struct { qword bone; byte type; float depth; float height; float radius; float width; } ModelClothObstacleV52; typedef struct { dword materialIndex; byte flags; float drag; float gravity; float compressibility; float stretchiness; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV52 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothSoftLockV52 softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV52 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV52 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV52 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV52; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV52; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV52; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV52; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV52 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV52 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV52 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV52; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV52; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV52 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV52; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV52; typedef struct { qword bone; float3 offset; } ModelBoneOffsetDataV52; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV52 permutations TSTRUCT_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV52 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV52 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV52 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV52 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV52 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV52 streakData TPTR_END; TPTR_START ModelLightDataV52 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV52 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV52 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV52 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV52 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV52 boneOffsetData TSTRUCT_ARRAY_PTR_END; } ModelFileDataV52; /* Version: 51, ReferencedFunction: 0x140D0F420 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV51; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV51; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV51; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV51; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV51; typedef struct { dword materialId; filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV51 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV51 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV51 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV51 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV51 texTransforms TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV51; typedef struct { qword token; TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV51 materials TSTRUCT_PTR_ARRAY_PTR_END; } ModelPermutationDataV51; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV51; typedef struct { word index; float3 vector; } ModelMeshMorphVertV51; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV51 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV51 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV51; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV51 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV51 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; } ModelMeshDataV51; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV51; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV51 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV51; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV51 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelSkeletonDataV51; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV51; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV51; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV51 Skeleton TPTR_END; ModelTransformDataV51 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV51 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV51 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV51; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV51; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV51; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV51; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV51; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV51 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV51 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV51 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV51; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV51 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV51 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV51; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV51; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV51; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV51; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV51 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV51 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV51; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV51; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV51 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV51; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV51; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV51 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV51; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV51; typedef struct { qword bone; byte type; float depth; float height; float radius; float width; } ModelClothObstacleV51; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV51 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV51 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV51 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV51 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV51; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV51; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV51; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float2 radius; byte shape; float updatePos; } ModelLightningNodeV51; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV51 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV51 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV51 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV51; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV51; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV51 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV51; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV51; typedef struct { qword bone; float3 offset; } ModelBoneOffsetDataV51; typedef struct { TSTRUCT_ARRAY_PTR_START ModelPermutationDataV51 permutations TSTRUCT_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV51 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV51 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV51 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV51 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV51 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV51 streakData TPTR_END; TPTR_START ModelLightDataV51 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV51 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV51 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV51 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV51 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV51 boneOffsetData TSTRUCT_ARRAY_PTR_END; } ModelFileDataV51; /* Version: 50, ReferencedFunction: 0x140D0F3E0 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV50; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV50; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV50; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV50; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV50; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV50 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV50 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV50 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV50 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV50 texTransforms TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV50; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV50; typedef struct { word index; float3 vector; } ModelMeshMorphVertV50; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV50 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV50 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV50; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV50 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV50 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV50; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV50; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV50 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV50; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV50 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelSkeletonDataV50; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV50; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV50; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV50 Skeleton TPTR_END; ModelTransformDataV50 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV50 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV50 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV50; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV50; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV50; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV50; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV50; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV50 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV50 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV50 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV50; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV50 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV50 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV50; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV50; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV50; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV50; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV50 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV50 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV50; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV50; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV50 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV50; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV50; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV50 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV50; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV50; typedef struct { qword bone; byte type; } ModelClothObstacleV50; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV50 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV50 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV50 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV50 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV50; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword fvf; dword materialIndex; } ModelLightningSystemV50; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV50; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV50; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV50 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV50 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV50 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV50; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV50; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV50 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV50; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV50; typedef struct { qword bone; float3 offset; } ModelBoneOffsetDataV50; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV50 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV50 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV50 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV50 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV50 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV50 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV50 streakData TPTR_END; TPTR_START ModelLightDataV50 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV50 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV50 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV50 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV50 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV50 boneOffsetData TSTRUCT_ARRAY_PTR_END; } ModelFileDataV50; /* Version: 49 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV49; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV49; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV49; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV49; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV49; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV49 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV49 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV49 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV49 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV49 texTransforms TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV49; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV49; typedef struct { word index; float3 vector; } ModelMeshMorphVertV49; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV49 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV49 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV49; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV49 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV49 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV49; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV49; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV49 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV49; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV49 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelSkeletonDataV49; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV49; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV49; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV49 Skeleton TPTR_END; ModelTransformDataV49 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV49 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV49 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV49; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV49; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV49; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV49; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV49; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV49 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV49 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV49 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV49; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV49 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV49 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV49; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV49; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV49; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV49; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV49 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV49 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV49; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV49; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV49 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV49; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV49; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV49 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV49; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV49; typedef struct { qword bone; byte type; } ModelClothObstacleV49; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV49 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV49 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV49 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV49 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV49; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV49; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV49; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV49; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV49 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV49 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV49 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV49; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV49; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV49 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV49; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV49; typedef struct { qword bone; float3 offset; } ModelBoneOffsetDataV49; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV49 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV49 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV49 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV49 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV49 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV49 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV49 streakData TPTR_END; TPTR_START ModelLightDataV49 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV49 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV49 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV49 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV49 softBodyData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneOffsetDataV49 boneOffsetData TSTRUCT_ARRAY_PTR_END; } ModelFileDataV49; /* Version: 48, ReferencedFunction: 0x140D0E8B0 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV48; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV48; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV48; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV48; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV48; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV48 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV48 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV48 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV48 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV48 texTransforms TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV48; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV48; typedef struct { word index; float3 vector; } ModelMeshMorphVertV48; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV48 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV48 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV48; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV48 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV48 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV48; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV48; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV48 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV48; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV48 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelSkeletonDataV48; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV48; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV48; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV48 Skeleton TPTR_END; ModelTransformDataV48 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV48 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV48 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV48; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV48; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV48; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV48; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV48; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV48 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV48 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV48 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV48; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV48 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV48 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV48; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV48; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV48; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV48; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV48 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV48 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV48; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV48; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV48 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV48; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV48; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV48 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV48; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV48; typedef struct { qword bone; byte type; } ModelClothObstacleV48; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV48 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV48 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV48 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV48 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV48; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV48; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV48; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV48; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV48 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV48 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV48 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV48; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV48; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV48 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV48; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV48; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV48 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV48 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV48 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV48 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV48 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV48 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV48 streakData TPTR_END; TPTR_START ModelLightDataV48 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV48 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV48 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV48 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV48 softBodyData TSTRUCT_ARRAY_PTR_END; } ModelFileDataV48; /* Version: 47, ReferencedFunction: 0x140D0E5F0 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV47; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV47; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV47; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV47; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV47; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV47 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV47 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV47 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV47 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV47 texTransforms TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV47; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV47; typedef struct { word index; float3 vector; } ModelMeshMorphVertV47; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV47 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV47 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV47; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV47 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV47 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV47; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV47; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV47 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV47; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV47 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelSkeletonDataV47; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV47; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV47; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV47 Skeleton TPTR_END; ModelTransformDataV47 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV47 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV47 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV47; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV47; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV47; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV47; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV47; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV47 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV47 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV47 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV47; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV47 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV47 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV47; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV47; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV47; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV47; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV47 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV47 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV47; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV47; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV47 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV47; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV47; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV47 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV47; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV47; typedef struct { qword bone; byte type; } ModelClothObstacleV47; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV47 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV47 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV47 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV47 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV47; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV47; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV47; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV47; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV47 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV47 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV47 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV47; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV47; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV47 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV47; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV47; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV47 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV47 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV47 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV47 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV47 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV47 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV47 streakData TPTR_END; TPTR_START ModelLightDataV47 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV47 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV47 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV47 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV47 softBodyData TSTRUCT_ARRAY_PTR_END; } ModelFileDataV47; /* Version: 46, ReferencedFunction: 0x140D0E550 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV46; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV46; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV46; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV46; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV46; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV46 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV46 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV46 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV46 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV46 texTransforms TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV46; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV46; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV46; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV46 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV46 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV46; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV46; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV46 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV46; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV46 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelSkeletonDataV46; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV46; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV46; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV46 Skeleton TPTR_END; ModelTransformDataV46 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV46 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV46 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV46; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV46; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV46; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV46; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV46; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV46 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV46 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV46 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV46; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV46 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV46 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV46; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV46; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV46; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV46; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV46 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV46 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV46; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV46; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV46 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV46; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV46; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV46 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV46; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV46; typedef struct { qword bone; byte type; } ModelClothObstacleV46; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV46 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV46 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV46 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV46 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV46; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV46; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV46; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV46; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV46 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV46 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV46 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV46; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV46; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV46 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV46; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV46; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV46 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV46 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV46 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV46 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV46 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV46 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV46 streakData TPTR_END; TPTR_START ModelLightDataV46 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV46 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV46 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV46 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV46 softBodyData TSTRUCT_ARRAY_PTR_END; } ModelFileDataV46; /* Version: 45 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV45; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV45; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV45; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV45; typedef struct { byte random; byte uvIndex; byte columns; byte rows; word count; float fps; float2 scroll; } ModelMaterialTexTransformV45; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV45 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV45 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV45 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV45 uvTransLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMaterialTexTransformV45 texTransforms TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV45; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV45; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV45; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV45 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV45 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV45; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV45; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV45 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV45; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV45 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelSkeletonDataV45; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV45; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV45; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV45 Skeleton TPTR_END; ModelTransformDataV45 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV45 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV45 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV45; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV45; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV45; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV45; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV45; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV45 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV45 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV45 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV45; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV45 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV45 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV45; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV45; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV45; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV45; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV45 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV45 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV45; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV45; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV45 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV45; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV45; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV45 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV45; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV45; typedef struct { qword bone; byte type; } ModelClothObstacleV45; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV45 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV45 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV45 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV45 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV45; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV45; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV45; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV45; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV45 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV45 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV45 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV45; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV45; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV45 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV45; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV45; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV45 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV45 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV45 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV45 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV45 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV45 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV45 streakData TPTR_END; TPTR_START ModelLightDataV45 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV45 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV45 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV45 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV45 softBodyData TSTRUCT_ARRAY_PTR_END; } ModelFileDataV45; /* Version: 44, ReferencedFunction: 0x140D0E380 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV44; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV44; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV44; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV44; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV44 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV44 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV44 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV44 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV44; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV44; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV44; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV44 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV44 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV44; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV44; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV44 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV44; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV44 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelSkeletonDataV44; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV44; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV44; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV44 Skeleton TPTR_END; ModelTransformDataV44 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV44 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV44 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV44; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV44; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV44; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV44; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV44; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV44 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV44 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV44 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV44; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV44 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV44 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV44; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV44; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV44; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV44; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV44 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV44 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV44; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV44; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV44 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV44; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV44; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV44 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV44; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV44; typedef struct { qword bone; byte type; } ModelClothObstacleV44; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV44 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV44 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV44 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV44 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV44; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV44; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV44; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV44; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV44 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV44 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV44 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV44; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV44; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV44 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV44; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV44; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV44 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV44 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV44 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV44 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV44 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV44 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV44 streakData TPTR_END; TPTR_START ModelLightDataV44 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV44 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV44 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV44 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV44 softBodyData TSTRUCT_ARRAY_PTR_END; } ModelFileDataV44; /* Version: 43 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV43; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV43; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV43; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV43; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV43 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV43 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV43 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV43 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV43; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV43; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV43; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV43 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV43 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV43; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV43; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV43 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV43; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV43 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelSkeletonDataV43; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV43; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV43; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV43 Skeleton TPTR_END; ModelTransformDataV43 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV43 MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV43 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV43; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV43; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV43; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV43; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV43; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV43 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV43 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV43 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV43; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV43 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV43 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV43; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV43; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV43; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV43; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV43 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV43 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV43; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV43; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV43 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV43; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV43; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV43 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV43; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV43; typedef struct { qword bone; byte type; } ModelClothObstacleV43; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV43 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV43 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV43 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV43 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV43; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV43; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV43; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV43; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV43 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV43 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV43 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV43; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV43; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV43 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV43; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV43; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV43 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV43 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV43 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV43 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV43 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV43 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV43 streakData TPTR_END; TPTR_START ModelLightDataV43 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV43 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV43 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV43 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV43 softBodyData TSTRUCT_ARRAY_PTR_END; } ModelFileDataV43; /* Version: 42 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV42; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV42; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV42; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV42; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV42 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV42 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV42 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV42 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV42; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV42; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV42; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV42 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV42 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV42; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV42; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV42 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV42; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV42 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV42; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV42; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV42; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV42 Skeleton TPTR_END; ModelTransformDataV42 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV42 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV42 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV42; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV42; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV42; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV42; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV42; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV42 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV42 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV42 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV42; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV42 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV42 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV42; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV42; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV42; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV42; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV42 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV42 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV42; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV42; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV42 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV42; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV42; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV42 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV42; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV42; typedef struct { qword bone; byte type; } ModelClothObstacleV42; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV42 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV42 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV42 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV42 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV42; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV42; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV42; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV42; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV42 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV42 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV42 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV42; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV42; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV42 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV42; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV42; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV42 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV42 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV42 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV42 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV42 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV42 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV42 streakData TPTR_END; TPTR_START ModelLightDataV42 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV42 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV42 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV42 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV42 softBodyData TSTRUCT_ARRAY_PTR_END; } ModelFileDataV42; /* Version: 41 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV41; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV41; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV41; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV41; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV41 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV41 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV41 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV41 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV41; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV41; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV41; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV41 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV41 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV41; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV41; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV41 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV41; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV41 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV41; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV41; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV41; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV41 Skeleton TPTR_END; ModelTransformDataV41 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV41 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV41 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV41; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV41; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV41; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV41; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV41; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV41 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV41 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV41 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV41; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV41 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV41 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV41; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV41; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV41; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV41; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV41 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV41 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV41; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV41; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV41 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV41; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV41; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV41 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV41; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV41; typedef struct { qword bone; byte type; } ModelClothObstacleV41; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV41 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV41 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV41 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV41 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV41; typedef struct { TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV41; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV41; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV41; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV41 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV41 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV41 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV41; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV41; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV41 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV41; typedef struct { dword materialIndex; dword flags; dword vertexFvf; TSTRUCT_ARRAY_PTR_START byte vertBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; } ModelSoftBodyDataV41; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV41 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV41 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV41 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV41 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV41 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV41 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV41 streakData TPTR_END; TPTR_START ModelLightDataV41 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV41 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV41 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV41 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSoftBodyDataV41 softBodyData TSTRUCT_ARRAY_PTR_END; } ModelFileDataV41; /* Version: 40, ReferencedFunction: 0x140D0E340 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV40; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV40; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV40; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV40; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV40 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV40 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV40 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV40 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV40; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV40; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV40; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV40 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV40 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV40; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV40; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV40 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV40; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV40 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV40; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV40; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV40; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV40 Skeleton TPTR_END; ModelTransformDataV40 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV40 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV40 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV40; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV40; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword fvf; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV40; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV40; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV40; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; float offset; TPTR_START ModelParticleCurveV40 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV40 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV40 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 velocityInherit; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV40; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV40 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV40 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV40; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV40; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV40; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV40; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV40 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV40 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV40; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV40; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV40 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV40; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV40; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV40 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV40; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV40; typedef struct { qword bone; byte type; } ModelClothObstacleV40; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV40 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV40 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV40 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV40 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV40; typedef struct { TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV40; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV40; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV40; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV40 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV40 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV40 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV40; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV40; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV40 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV40; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV40 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV40 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV40 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV40 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV40 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV40 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV40 streakData TPTR_END; TPTR_START ModelLightDataV40 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV40 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV40 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV40 boneConstraints TSTRUCT_ARRAY_PTR_END; } ModelFileDataV40; /* Version: 39, ReferencedFunction: 0x140D0E280 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV39; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV39; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV39; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV39; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV39 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV39 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV39 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV39 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV39; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV39; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV39; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV39 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV39 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV39; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV39; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV39 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV39; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV39 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV39; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV39; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV39; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV39 Skeleton TPTR_END; ModelTransformDataV39 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV39 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV39 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV39; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV39; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV39; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV39; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV39; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV39 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV39 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV39 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV39; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV39 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV39 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV39; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV39; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV39; typedef struct { qword bone; dword colorStart; dword colorEnd; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV39; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV39 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV39 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV39; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV39; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV39 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV39; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV39; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV39 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV39; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV39; typedef struct { qword bone; byte type; } ModelClothObstacleV39; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV39 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV39 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV39 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV39 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV39; typedef struct { TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV39; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV39; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV39; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV39 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV39 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV39 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV39; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV39; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV39 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV39; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV39 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV39 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV39 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV39 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV39 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV39 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV39 streakData TPTR_END; TPTR_START ModelLightDataV39 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV39 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV39 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV39 boneConstraints TSTRUCT_ARRAY_PTR_END; } ModelFileDataV39; /* Version: 38, ReferencedFunction: 0x140D0E080 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV38; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV38; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV38; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV38; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV38 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV38 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV38 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV38 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV38; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV38; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV38; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV38 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV38 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV38; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV38; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV38 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV38; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV38 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV38; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV38; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV38; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV38 Skeleton TPTR_END; ModelTransformDataV38 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV38 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV38 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV38; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV38; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV38; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV38; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV38; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV38 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV38 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV38 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV38; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV38 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV38 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV38; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV38; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV38; typedef struct { qword bone; dword color; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV38; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV38 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV38 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV38; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV38; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV38 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV38; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV38; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV38 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV38; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV38; typedef struct { qword bone; byte type; } ModelClothObstacleV38; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV38 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV38 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV38 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV38 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV38; typedef struct { TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV38; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV38; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV38; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV38 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV38 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV38 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV38; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV38; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV38 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV38; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV38 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV38 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV38 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV38 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV38 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV38 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV38 streakData TPTR_END; TPTR_START ModelLightDataV38 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV38 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV38 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV38 boneConstraints TSTRUCT_ARRAY_PTR_END; } ModelFileDataV38; /* Version: 37 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV37; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV37; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV37; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV37; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV37 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV37 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV37 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV37 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV37; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV37; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV37; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV37 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV37 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV37; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV37; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV37 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV37; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV37 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV37; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV37; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV37; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV37 Skeleton TPTR_END; ModelTransformDataV37 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV37 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV37 trackMasks TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV37; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV37; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV37; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV37; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV37; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV37 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV37 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV37 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV37; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV37 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV37 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV37; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV37; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV37; typedef struct { qword bone; dword color; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV37; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV37 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV37 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV37; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV37; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV37 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV37; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV37; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV37 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV37; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV37; typedef struct { qword bone; byte type; } ModelClothObstacleV37; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV37 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV37 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV37 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV37 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV37; typedef struct { TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV37; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV37; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV37; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV37 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV37 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV37 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV37; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV37; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV37 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV37; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV37 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV37 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV37 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV37 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV37 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV37 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV37 streakData TPTR_END; TPTR_START ModelLightDataV37 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV37 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV37 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV37 boneConstraints TSTRUCT_ARRAY_PTR_END; } ModelFileDataV37; /* Version: 36, ReferencedFunction: 0x140D0DF30 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV36; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV36; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV36; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV36; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV36 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV36 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV36 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV36 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV36; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV36; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV36; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV36 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV36 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV36; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV36; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV36 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV36; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV36 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV36; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV36; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV36; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV36 Skeleton TPTR_END; ModelTransformDataV36 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV36 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV36 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV36; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV36; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV36; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV36; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV36; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV36 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV36 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV36 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV36; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV36 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV36 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV36; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV36; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV36; typedef struct { qword bone; dword color; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV36; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV36 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV36 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV36; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV36; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV36 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV36; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV36; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV36 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV36; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV36; typedef struct { qword bone; byte type; } ModelClothObstacleV36; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV36 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV36 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV36 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV36 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV36; typedef struct { TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV36; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV36; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV36; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV36 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV36 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV36 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV36; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV36; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV36 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV36; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV36 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV36 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV36 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV36 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV36 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV36 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV36 streakData TPTR_END; TPTR_START ModelLightDataV36 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV36 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV36 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV36 boneConstraints TSTRUCT_ARRAY_PTR_END; } ModelFileDataV36; /* Version: 35, ReferencedFunction: 0x140D0DD90 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV35; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV35; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV35; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV35; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV35 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV35 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV35 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV35 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV35; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV35; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV35; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV35 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV35 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV35; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV35; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV35 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV35; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV35 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV35; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV35; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV35; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV35 Skeleton TPTR_END; ModelTransformDataV35 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV35 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV35 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV35; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV35; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV35; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV35; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV35; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV35 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV35 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV35 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV35; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV35 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV35 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV35; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV35; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV35; typedef struct { qword bone; dword color; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV35; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV35 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV35 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV35; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV35; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV35 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV35; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV35; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV35 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV35; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV35; typedef struct { qword bone; byte type; } ModelClothObstacleV35; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV35 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV35 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV35 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV35 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV35; typedef struct { TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV35; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin[3]; dword colorEnd[3]; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float2 opacity; byte opacityPreset; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV35; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; float updatePos; } ModelLightningNodeV35; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV35 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV35 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV35 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV35; typedef struct { qword token; word flags; float twistOffset; byte animBlend; byte drag; float ellipseRatio; byte gravity; float collisionRadius; byte wind; float2 angle; byte angleStrength; byte angleType; float2 distanceInner; byte distanceInnerStrength; byte distanceInnerType; float2 distanceOuter; byte distanceOuterStrength; byte distanceOuterType; float2 twist; byte twistStrength; byte twistType; } ModelBoneConstraintV35; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV35 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV35 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV35 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV35 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV35 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV35 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV35 streakData TPTR_END; TPTR_START ModelLightDataV35 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV35 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV35 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV35 boneConstraints TSTRUCT_ARRAY_PTR_END; } ModelFileDataV35; /* Version: 34, ReferencedFunction: 0x140D0DC50 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV34; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV34; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV34; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV34; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV34 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV34 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV34 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV34 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV34; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV34; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV34; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV34 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV34 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV34; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV34; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV34 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV34; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV34 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV34; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV34; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV34; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV34 Skeleton TPTR_END; ModelTransformDataV34 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV34 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV34 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV34; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV34; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV34; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV34; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV34; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV34 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV34 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV34 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; byte windInfluence; } ModelParticleEmitterV34; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV34 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV34 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV34; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelObstacleDataV34; typedef struct { float3 acceleration; float3 velocity; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; float wind; } ModelStreakV34; typedef struct { qword bone; dword color; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV34; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV34 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV34 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV34; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; } ModelEffectLightV34; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV34 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV34; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV34; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV34 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV34; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV34; typedef struct { qword bone; byte type; } ModelClothObstacleV34; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV34 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV34 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV34 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV34 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV34; typedef struct { TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV34; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin; dword colorEnd; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV34; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; } ModelLightningNodeV34; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV34 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV34 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV34 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV34; typedef struct { qword token; word flags; float twistOffset; byte animBlend; byte drag; float ellipseRatio; byte gravity; float collisionRadius; byte wind; float2 angle; byte angleStrength; byte angleType; float2 distanceInner; byte distanceInnerStrength; byte distanceInnerType; float2 distanceOuter; byte distanceOuterStrength; byte distanceOuterType; float2 twist; byte twistStrength; byte twistType; } ModelBoneConstraintV34; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV34 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV34 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV34 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV34 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV34 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV34 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV34 streakData TPTR_END; TPTR_START ModelLightDataV34 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV34 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV34 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV34 boneConstraints TSTRUCT_ARRAY_PTR_END; } ModelFileDataV34; /* Version: 33 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV33; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV33; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV33; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV33; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV33 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV33 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV33 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV33 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV33; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV33; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV33; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV33 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV33 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV33; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV33; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV33 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV33; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV33 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV33; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV33; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV33; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV33 Skeleton TPTR_END; ModelTransformDataV33 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV33 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV33 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV33; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV33; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV33; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV33; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV33; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV33 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV33 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV33 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; byte windInfluence; } ModelParticleEmitterV33; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV33 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV33 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV33; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelObstacleDataV33; typedef struct { float3 acceleration; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; dword visBoneIndex; float wind; } ModelStreakV33; typedef struct { qword bone; dword color; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV33; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV33 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV33 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV33; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV33; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV33 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV33; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV33; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV33 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV33; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV33; typedef struct { qword bone; byte type; } ModelClothObstacleV33; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV33 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV33 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV33 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV33 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV33; typedef struct { TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV33; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin; dword colorEnd; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV33; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; dword visBoneIndex; } ModelLightningNodeV33; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV33 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV33 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV33 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV33; typedef struct { qword token; word flags; float twistOffset; byte animBlend; byte drag; float ellipseRatio; byte gravity; float collisionRadius; byte wind; float2 angle; byte angleStrength; byte angleType; float2 distanceInner; byte distanceInnerStrength; byte distanceInnerType; float2 distanceOuter; byte distanceOuterStrength; byte distanceOuterType; float2 twist; byte twistStrength; byte twistType; } ModelBoneConstraintV33; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV33 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV33 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV33 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV33 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV33 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV33 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV33 streakData TPTR_END; TPTR_START ModelLightDataV33 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV33 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV33 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV33 boneConstraints TSTRUCT_ARRAY_PTR_END; } ModelFileDataV33; /* Version: 32 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV32; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV32; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV32; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV32; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV32 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV32 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV32 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV32 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV32; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV32; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV32; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV32 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV32 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV32; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV32; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV32 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV32; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV32 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV32; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV32; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV32; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV32 Skeleton TPTR_END; ModelTransformDataV32 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV32 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV32 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV32; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV32; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV32; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV32; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV32; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV32 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV32 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV32 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; byte windInfluence; } ModelParticleEmitterV32; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV32 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV32 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV32; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelObstacleDataV32; typedef struct { float3 acceleration; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; dword visBoneIndex; float wind; } ModelStreakV32; typedef struct { qword bone; dword color; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV32; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV32 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV32 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV32; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV32; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV32 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV32; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV32; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV32 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV32; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV32; typedef struct { qword bone; byte type; } ModelClothObstacleV32; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV32 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV32 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV32 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV32 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV32; typedef struct { TSTRUCT_ARRAY_PTR_START word boltIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; } ModelLightningSystemV32; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word nodeIndices TSTRUCT_ARRAY_PTR_END; dword colorBegin; dword colorEnd; float colorPeriod; float2 colorFalloff; dword flags; float fps; float probability; float2 lifetime; word numSegments; float period; float texOffset; float texScale; float texSpeed; float thickness; byte thicknessPreset; byte type; float variance; byte variancePreset; float noise; } ModelLightningBoltV32; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START word childrenIndices TSTRUCT_ARRAY_PTR_END; dword flags; float probability; float radius; byte shape; dword visBoneIndex; } ModelLightningNodeV32; typedef struct { TSTRUCT_ARRAY_PTR_START ModelLightningSystemV32 systems TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningBoltV32 bolts TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningNodeV32 nodes TSTRUCT_ARRAY_PTR_END; } ModelLightningDataV32; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV32 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV32 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV32 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV32 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV32 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV32 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV32 streakData TPTR_END; TPTR_START ModelLightDataV32 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV32 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; TPTR_START ModelLightningDataV32 lightningData TPTR_END; } ModelFileDataV32; /* Version: 31 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV31; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV31; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV31; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV31; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV31 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV31 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV31 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV31 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV31; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV31; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV31; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV31 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV31 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV31; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV31; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV31 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV31; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV31 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV31; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV31; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV31; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV31 Skeleton TPTR_END; ModelTransformDataV31 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV31 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV31 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV31; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV31; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV31; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV31; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV31; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV31 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV31 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV31 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; byte windInfluence; } ModelParticleEmitterV31; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV31 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV31 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV31; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelObstacleDataV31; typedef struct { float3 acceleration; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float texScale; dword visBoneIndex; float wind; } ModelStreakV31; typedef struct { qword bone; dword color; float falloff; float lifetime; dword flags; float texV; } ModelStreakAnchorV31; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV31 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV31 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV31; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV31; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV31 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV31; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV31; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV31 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV31; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV31; typedef struct { qword bone; byte type; } ModelClothObstacleV31; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV31 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV31 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV31 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV31 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV31; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV31 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV31 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV31 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV31 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV31 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV31 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV31 streakData TPTR_END; TPTR_START ModelLightDataV31 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV31 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; } ModelFileDataV31; /* Version: 30 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV30; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV30; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV30; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV30; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV30 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV30 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV30 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV30 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV30; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV30; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV30; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV30 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV30 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV30; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV30; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV30 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV30; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV30 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV30; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV30; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV30; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV30 Skeleton TPTR_END; ModelTransformDataV30 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV30 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV30 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV30; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyDataV30; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV30; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV30; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV30; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV30 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV30 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV30 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; byte windInfluence; } ModelParticleEmitterV30; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV30 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV30 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV30; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelObstacleDataV30; typedef struct { float3 acceleration; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float stretchDist; float texScale; dword visBoneIndex; float wind; } ModelStreakV30; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV30; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV30 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV30 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV30; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV30; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV30 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV30; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV30; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV30 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV30; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV30; typedef struct { qword bone; byte type; } ModelClothObstacleV30; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV30 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV30 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV30 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV30 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV30; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV30 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV30 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV30 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV30 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV30 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV30 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV30 streakData TPTR_END; TPTR_START ModelLightDataV30 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV30 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; } ModelFileDataV30; /* Version: 29, ReferencedFunction: 0x140D0DB70 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; dword uvAnimId; byte uvPSInputIndex; } ModelTextureDataV29; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV29; typedef struct { qword linkToken; dword constantToken; } ModelMatConstLinkV29; typedef struct { qword linkToken; dword uvAnimId; byte type; } ModelUVTransLinkV29; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV29 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV29 constants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstLinkV29 matConstLinks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVTransLinkV29 uvTransLinks TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV29; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV29; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV29; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV29 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV29 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV29; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV29; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV29 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV29; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV29 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV29; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV29; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV29; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV29 Skeleton TPTR_END; ModelTransformDataV29 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV29 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV29 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV29; typedef struct { qword id; dword type; dword mergeIndex; qword val; filename strVal; } ModelPropertyDataV29; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV29; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV29; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV29; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV29 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV29 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV29 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; byte windInfluence; } ModelParticleEmitterV29; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV29 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV29 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV29; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelObstacleDataV29; typedef struct { float3 acceleration; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float stretchDist; float texScale; dword visBoneIndex; float wind; } ModelStreakV29; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV29; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV29 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV29 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV29; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV29; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV29 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV29; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV29; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV29 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV29; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV29; typedef struct { qword bone; byte type; } ModelClothObstacleV29; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV29 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV29 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV29 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothObstacleV29 obstacles TSTRUCT_ARRAY_PTR_END; } ModelClothDataV29; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV29 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV29 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV29 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV29 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV29 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV29 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV29 streakData TPTR_END; TPTR_START ModelLightDataV29 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV29 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; } ModelFileDataV29; /* Version: 28 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV28; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV28; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV28 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV28 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV28; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV28; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV28; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV28 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV28 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; } ModelMeshDataV28; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV28; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV28 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV28; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV28 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV28; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV28; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV28; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV28 Skeleton TPTR_END; ModelTransformDataV28 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV28 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV28 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelModelDataV28; typedef struct { qword id; dword type; dword mergeIndex; qword val; filename strVal; } ModelPropertyDataV28; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV28; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV28; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV28; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV28 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV28 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV28 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; byte windInfluence; } ModelParticleEmitterV28; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV28 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV28 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV28; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelObstacleDataV28; typedef struct { float3 acceleration; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float stretchDist; float texScale; dword visBoneIndex; float wind; } ModelStreakV28; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV28; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV28 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV28 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV28; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV28; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV28 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV28; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV28; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV28 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV28; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV28; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV28 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV28 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV28 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; } ModelClothDataV28; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV28 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV28 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV28 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV28 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV28 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV28 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV28 streakData TPTR_END; TPTR_START ModelLightDataV28 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV28 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; } ModelFileDataV28; /* Version: 27 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV27; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV27; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV27 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV27 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV27; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV27; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV27; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV27 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV27 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; } ModelMeshDataV27; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV27; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV27 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV27; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV27 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV27; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV27; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV27; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV27 Skeleton TPTR_END; ModelTransformDataV27 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV27 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV27 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; } ModelModelDataV27; typedef struct { qword id; dword type; dword mergeIndex; qword val; filename strVal; } ModelPropertyDataV27; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV27; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV27; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV27; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV27 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV27 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV27 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; byte windInfluence; } ModelParticleEmitterV27; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV27 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV27 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV27; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelObstacleDataV27; typedef struct { float3 acceleration; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float stretchDist; float texScale; dword visBoneIndex; float wind; } ModelStreakV27; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV27; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV27 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV27 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV27; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV27; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV27 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV27; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV27; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV27 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV27; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV27; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV27 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV27 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV27 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; } ModelClothDataV27; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV27 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV27 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV27 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV27 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV27 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV27 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV27 streakData TPTR_END; TPTR_START ModelLightDataV27 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV27 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; } ModelFileDataV27; /* Version: 26, ReferencedFunction: 0x140D0D7B0 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV26; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV26; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV26 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV26 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV26; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV26; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV26; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV26 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV26 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV26; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV26; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV26 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV26; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV26 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV26; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV26; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV26; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV26 Skeleton TPTR_END; ModelTransformDataV26 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV26 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV26 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; } ModelModelDataV26; typedef struct { qword id; dword type; dword mergeIndex; qword val; filename strVal; } ModelPropertyDataV26; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV26; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV26; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV26; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV26 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV26 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV26 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; byte windInfluence; } ModelParticleEmitterV26; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV26 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV26 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV26; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelObstacleDataV26; typedef struct { float3 acceleration; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float stretchDist; float texScale; dword visBoneIndex; float wind; } ModelStreakV26; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV26; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV26 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV26 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV26; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV26; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV26 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV26; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV26; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV26 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV26; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV26; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV26 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV26 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV26 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; } ModelClothDataV26; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV26 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV26 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV26 model TPTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyDataV26 properties TSTRUCT_ARRAY_PTR_END; TPTR_START ModelCloudDataV26 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV26 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV26 streakData TPTR_END; TPTR_START ModelLightDataV26 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV26 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; } ModelFileDataV26; /* Version: 25, ReferencedFunction: 0x140D0D5C0 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV25; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV25; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV25 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV25 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV25; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV25; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV25; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV25 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV25 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV25; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV25; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV25 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV25; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV25 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV25; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV25; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV25; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV25 Skeleton TPTR_END; ModelTransformDataV25 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV25 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV25 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; } ModelModelDataV25; typedef struct { qword token; float value; } ModelFloatPropertyDataV25; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV25 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV25; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV25; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV25; typedef struct { byte columns; byte count; float fps; byte rows; byte start; } ModelParticleFlipbookV25; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV25 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV25 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV25 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; byte windInfluence; } ModelParticleEmitterV25; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV25 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV25 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV25; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelObstacleDataV25; typedef struct { float3 acceleration; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; float jitter; dword materialIndex; float noise; float spawnDist; float stretchDist; float texScale; dword visBoneIndex; float wind; } ModelStreakV25; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV25; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV25 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV25 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV25; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV25; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV25 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV25; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV25; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV25 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV25; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV25; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV25 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV25 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV25 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; } ModelClothDataV25; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV25 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV25 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV25 model TPTR_END; TPTR_START ModelPropertyDataV25 properties TPTR_END; TPTR_START ModelCloudDataV25 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV25 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV25 streakData TPTR_END; TPTR_START ModelLightDataV25 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV25 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; } ModelFileDataV25; /* Version: 24, ReferencedFunction: 0x140D0D560 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV24; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV24; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV24 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV24 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV24; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV24; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV24; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV24 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV24 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV24; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV24; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV24 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV24; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV24 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV24; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV24; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV24; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV24 Skeleton TPTR_END; ModelTransformDataV24 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV24 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV24 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; } ModelModelDataV24; typedef struct { qword token; float value; } ModelFloatPropertyDataV24; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV24 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV24; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV24; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV24; typedef struct { byte columns; byte count; dword fps; byte rows; byte start; } ModelParticleFlipbookV24; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; dword emitterFlags; TPTR_START ModelParticleCurveV24 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV24 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV24 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; byte windInfluence; } ModelParticleEmitterV24; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV24 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV24 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV24; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelObstacleDataV24; typedef struct { float3 acceleration; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; dword materialIndex; float noise; float spawnDist; float stretchDist; float texScale; dword visBoneIndex; float wind; } ModelStreakV24; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV24; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV24 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV24 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV24; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV24; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV24 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV24; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV24; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV24 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV24; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV24; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV24 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV24 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV24 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; } ModelClothDataV24; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV24 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV24 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV24 model TPTR_END; TPTR_START ModelPropertyDataV24 properties TPTR_END; TPTR_START ModelCloudDataV24 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV24 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV24 streakData TPTR_END; TPTR_START ModelLightDataV24 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV24 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; } ModelFileDataV24; /* Version: 23, ReferencedFunction: 0x140D0D4E0 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV23; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV23; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV23 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV23 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV23; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV23; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV23; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV23 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV23 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV23; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV23; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV23 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV23; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV23 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV23; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV23; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV23; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV23 Skeleton TPTR_END; ModelTransformDataV23 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV23 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV23 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; } ModelModelDataV23; typedef struct { qword token; float value; } ModelFloatPropertyDataV23; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV23 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV23; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV23; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV23; typedef struct { byte columns; byte count; dword fps; byte rows; byte start; } ModelParticleFlipbookV23; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; TPTR_START ModelParticleCurveV23 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV23 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV23 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; byte windInfluence; } ModelParticleEmitterV23; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV23 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV23 emitters TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV23; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelObstacleDataV23; typedef struct { float3 acceleration; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; dword materialIndex; float noise; float spawnDist; float stretchDist; float texScale; dword visBoneIndex; float wind; } ModelStreakV23; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV23; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV23 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV23 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV23; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV23; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV23 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV23; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV23; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV23 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV23; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV23; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV23 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV23 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV23 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; } ModelClothDataV23; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV23 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV23 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV23 model TPTR_END; TPTR_START ModelPropertyDataV23 properties TPTR_END; TPTR_START ModelCloudDataV23 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelObstacleDataV23 obstacles TSTRUCT_ARRAY_PTR_END; TPTR_START ModelStreakDataV23 streakData TPTR_END; TPTR_START ModelLightDataV23 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV23 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; } ModelFileDataV23; /* Version: 22 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV22; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV22; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV22 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV22 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV22; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV22; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV22; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV22 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV22 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV22; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV22; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV22 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV22; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV22 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV22; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV22; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV22; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV22 Skeleton TPTR_END; ModelTransformDataV22 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV22 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV22 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; } ModelModelDataV22; typedef struct { qword token; float value; } ModelFloatPropertyDataV22; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV22 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV22; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV22; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV22; typedef struct { byte columns; byte count; dword fps; byte rows; byte start; } ModelParticleFlipbookV22; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; TPTR_START ModelParticleCurveV22 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV22 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV22 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; byte windInfluence; } ModelParticleEmitterV22; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV22; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV22 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV22 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV22 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV22; typedef struct { float3 acceleration; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; dword materialIndex; float noise; float spawnDist; float stretchDist; float texScale; dword visBoneIndex; float wind; } ModelStreakV22; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV22; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV22 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV22 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV22; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV22; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV22 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV22; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV22; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV22 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV22; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV22; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV22 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV22 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV22 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; } ModelClothDataV22; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV22 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV22 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV22 model TPTR_END; TPTR_START ModelPropertyDataV22 properties TPTR_END; TPTR_START ModelCloudDataV22 cloudData TPTR_END; TPTR_START ModelStreakDataV22 streakData TPTR_END; TPTR_START ModelLightDataV22 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV22 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; } ModelFileDataV22; /* Version: 21, ReferencedFunction: 0x140D0D410 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV21; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV21; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV21 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV21 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV21; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV21; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV21; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV21 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV21 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV21; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV21; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV21 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV21; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV21 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV21; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV21; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV21; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV21 Skeleton TPTR_END; ModelTransformDataV21 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV21 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV21 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; } ModelModelDataV21; typedef struct { qword token; float value; } ModelFloatPropertyDataV21; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV21 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV21; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; float3 velocity; } ModelParticleCloudV21; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV21; typedef struct { byte columns; byte count; dword fps; byte rows; byte start; } ModelParticleFlipbookV21; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; byte alignmentType; float3 alignmentDir; qword bone; float4 colorBegin; float4 colorEnd; float colorPeriod; float2 colorFalloff; float drag; TPTR_START ModelParticleCurveV21 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV21 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV21 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; byte windInfluence; } ModelParticleEmitterV21; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV21; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV21 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV21 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV21 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV21; typedef struct { float3 acceleration; TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; dword materialIndex; float noise; float spawnDist; float stretchDist; float texScale; dword visBoneIndex; float wind; } ModelStreakV21; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV21; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV21 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV21 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV21; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV21; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV21 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV21; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV21; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV21 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV21; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV21; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV21 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV21 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV21 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; } ModelClothDataV21; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV21 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV21 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV21 model TPTR_END; TPTR_START ModelPropertyDataV21 properties TPTR_END; TPTR_START ModelCloudDataV21 cloudData TPTR_END; TPTR_START ModelStreakDataV21 streakData TPTR_END; TPTR_START ModelLightDataV21 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV21 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; } ModelFileDataV21; /* Version: 20, ReferencedFunction: 0x140D0D1F0 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV20; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV20; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV20 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV20 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV20; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV20; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV20; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV20 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV20 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV20; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV20; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV20 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV20; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV20 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV20; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV20; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV20; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV20 Skeleton TPTR_END; ModelTransformDataV20 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV20 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV20 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; } ModelModelDataV20; typedef struct { qword token; float value; } ModelFloatPropertyDataV20; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV20 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV20; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV20; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV20; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV20; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; float colorFalloff; float drag; TPTR_START ModelParticleCurveV20 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV20 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV20 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; } ModelParticleEmitterV20; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV20; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV20 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV20 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV20 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV20; typedef struct { TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; dword materialIndex; float spawnFreq; float stretchDist; float texScale; dword visBoneIndex; } ModelStreakV20; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV20; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV20 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV20 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV20; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV20; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV20 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV20; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { qword token; byte weight; } ModelClothBoneWeightV20; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV20 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV20; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV20; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV20 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV20 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV20 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; } ModelClothDataV20; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV20 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV20 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV20 model TPTR_END; TPTR_START ModelPropertyDataV20 properties TPTR_END; TPTR_START ModelCloudDataV20 cloudData TPTR_END; TPTR_START ModelStreakDataV20 streakData TPTR_END; TPTR_START ModelLightDataV20 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV20 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; } ModelFileDataV20; /* Version: 19 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV19; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV19; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV19 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV19 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV19; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV19; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV19; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV19 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV19 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV19; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV19; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV19 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV19; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV19 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV19; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV19; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV19; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV19 Skeleton TPTR_END; ModelTransformDataV19 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV19 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV19 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; } ModelModelDataV19; typedef struct { qword token; float value; } ModelFloatPropertyDataV19; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV19 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV19; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV19; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV19; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV19; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; float colorFalloff; float drag; TPTR_START ModelParticleCurveV19 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV19 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV19 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; } ModelParticleEmitterV19; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV19; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV19 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV19 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV19 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV19; typedef struct { TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; dword materialIndex; float spawnFreq; float stretchDist; float texScale; dword visBoneIndex; } ModelStreakV19; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV19; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV19 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV19 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV19; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV19; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV19 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV19; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { word index; byte weight; } ModelClothBoneWeightV19; typedef struct { TSTRUCT_ARRAY_PTR_START ModelClothBoneWeightV19 weights TSTRUCT_ARRAY_PTR_END; } ModelClothMeshGroupV19; typedef struct { word vertIndexA; word vertIndexB; float distance; } ModelClothConstraintV19; typedef struct { dword materialIndex; byte flags; float gravity; float weight; float wind; byte rigidness; PackVertexType mesh; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; word lockCount; TSTRUCT_ARRAY_PTR_START ModelClothMeshGroupV19 groups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte softLocks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV19 lod0Constraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelClothConstraintV19 lod1Constraints TSTRUCT_ARRAY_PTR_END; word lod1VertexCount; TSTRUCT_ARRAY_PTR_START word lod1Indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 barycentricCoords TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word barycentricIndices TSTRUCT_ARRAY_PTR_END; } ModelClothDataV19; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV19 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV19 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV19 model TPTR_END; TPTR_START ModelPropertyDataV19 properties TPTR_END; TPTR_START ModelCloudDataV19 cloudData TPTR_END; TPTR_START ModelStreakDataV19 streakData TPTR_END; TPTR_START ModelLightDataV19 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelClothDataV19 clothData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; } ModelFileDataV19; /* Version: 18 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV18; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV18; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV18 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV18 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV18; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV18; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; char_ptr meshName; } ModelMeshMorphTargetV18; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV18 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV18 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV18; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV18; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV18 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV18; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV18 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV18; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV18; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType trackMask; qword token; } ModelTrackMaskV18; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV18 Skeleton TPTR_END; ModelTransformDataV18 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV18 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV18 trackMasks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte skeletonHash TSTRUCT_ARRAY_PTR_END; } ModelModelDataV18; typedef struct { qword token; float value; } ModelFloatPropertyDataV18; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV18 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV18; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV18; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV18; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV18; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; float colorFalloff; float drag; TPTR_START ModelParticleCurveV18 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV18 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV18 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; } ModelParticleEmitterV18; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV18; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV18 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV18 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV18 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV18; typedef struct { TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; dword materialIndex; float spawnFreq; float stretchDist; float texScale; dword visBoneIndex; } ModelStreakV18; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV18; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV18 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV18 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV18; typedef struct { qword bone; byte color[3]; float farDistance; float intensity; float nearDistance; dword visBoneIndex; } ModelEffectLightV18; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV18 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV18; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV18 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV18 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV18 model TPTR_END; TPTR_START ModelPropertyDataV18 properties TPTR_END; TPTR_START ModelCloudDataV18 cloudData TPTR_END; TPTR_START ModelStreakDataV18 streakData TPTR_END; TPTR_START ModelLightDataV18 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; } ModelFileDataV18; /* Version: 17 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV17; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV17; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV17 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV17 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV17; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV17; typedef struct { TSTRUCT_ARRAY_PTR_START word positionIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word normalIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 normals TSTRUCT_ARRAY_PTR_END; } ModelMeshMorphTargetV17; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV17 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV17 morphTargets TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV17; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV17; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV17 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV17; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV17 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV17; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV17; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV17 Skeleton TPTR_END; ModelTransformDataV17 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV17 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; } ModelModelDataV17; typedef struct { qword token; float value; } ModelFloatPropertyDataV17; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV17 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV17; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV17; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV17; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV17; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; float colorFalloff; float drag; TPTR_START ModelParticleCurveV17 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV17 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV17 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; } ModelParticleEmitterV17; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV17; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV17 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV17 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV17 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV17; typedef struct { TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; dword materialIndex; float spawnFreq; float stretchDist; float texScale; dword visBoneIndex; } ModelStreakV17; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV17; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV17 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV17 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV17; typedef struct { qword bone; byte color[4]; float2 ranges; } ModelEffectLightV17; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV17 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV17; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV17 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV17 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV17 model TPTR_END; TPTR_START ModelPropertyDataV17 properties TPTR_END; TPTR_START ModelCloudDataV17 cloudData TPTR_END; TPTR_START ModelStreakDataV17 streakData TPTR_END; TPTR_START ModelLightDataV17 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; filename soundScript; } ModelFileDataV17; /* Version: 16 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV16; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV16; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV16 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV16 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV16; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV16; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV16 lods TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV16; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV16; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV16 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV16; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV16 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV16; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV16; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV16 Skeleton TPTR_END; ModelTransformDataV16 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV16 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; } ModelModelDataV16; typedef struct { qword token; float value; } ModelFloatPropertyDataV16; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV16 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV16; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV16; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV16; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV16; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; float colorFalloff; float drag; TPTR_START ModelParticleCurveV16 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV16 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV16 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; } ModelParticleEmitterV16; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV16; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV16 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV16 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV16 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV16; typedef struct { TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; dword materialIndex; float spawnFreq; float stretchDist; float texScale; dword visBoneIndex; } ModelStreakV16; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV16; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV16 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV16 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV16; typedef struct { qword bone; byte color[4]; float2 ranges; } ModelEffectLightV16; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV16 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV16; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV16 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV16 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV16 model TPTR_END; TPTR_START ModelPropertyDataV16 properties TPTR_END; TPTR_START ModelCloudDataV16 cloudData TPTR_END; TPTR_START ModelStreakDataV16 streakData TPTR_END; TPTR_START ModelLightDataV16 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; float lodOverride[2]; } ModelFileDataV16; /* Version: 15 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV15; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV15; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV15 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV15 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV15; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshLodDataV15; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshLodDataV15 lods TSTRUCT_ARRAY_PTR_END; PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV15; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV15; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV15 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV15; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV15 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV15; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV15; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV15 Skeleton TPTR_END; ModelTransformDataV15 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV15 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; } ModelModelDataV15; typedef struct { qword token; float value; } ModelFloatPropertyDataV15; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV15 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV15; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV15; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV15; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV15; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; float colorFalloff; float drag; TPTR_START ModelParticleCurveV15 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV15 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV15 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; } ModelParticleEmitterV15; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV15; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV15 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV15 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV15 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV15; typedef struct { TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; dword materialIndex; float spawnFreq; float stretchDist; float texScale; dword visBoneIndex; } ModelStreakV15; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV15; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV15 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV15 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV15; typedef struct { qword bone; byte color[4]; float2 ranges; } ModelEffectLightV15; typedef struct { TSTRUCT_ARRAY_PTR_START ModelEffectLightV15 effectLights TSTRUCT_ARRAY_PTR_END; } ModelLightDataV15; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV15 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV15 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV15 model TPTR_END; TPTR_START ModelPropertyDataV15 properties TPTR_END; TPTR_START ModelCloudDataV15 cloudData TPTR_END; TPTR_START ModelStreakDataV15 streakData TPTR_END; TPTR_START ModelLightDataV15 lightData TPTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; } ModelFileDataV15; /* Version: 14 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV14; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV14; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV14 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV14 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV14; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword actionOffsetNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 actionOffsets TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV14; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV14; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV14 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV14; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV14 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV14; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV14; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV14 Skeleton TPTR_END; ModelTransformDataV14 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV14 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; } ModelModelDataV14; typedef struct { qword token; float value; } ModelFloatPropertyDataV14; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV14 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV14; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV14; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV14; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV14; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; float colorFalloff; float drag; TPTR_START ModelParticleCurveV14 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV14 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV14 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; } ModelParticleEmitterV14; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV14; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV14 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV14 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV14 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV14; typedef struct { TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; dword materialIndex; float spawnFreq; float stretchDist; float texScale; dword visBoneIndex; } ModelStreakV14; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV14; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV14 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV14 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV14; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV14 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV14 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV14 model TPTR_END; TPTR_START ModelPropertyDataV14 properties TPTR_END; TPTR_START ModelCloudDataV14 cloudData TPTR_END; TPTR_START ModelStreakDataV14 streakData TPTR_END; } ModelFileDataV14; /* Version: 13 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV13; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV13; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV13 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV13 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV13; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV13; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV13; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV13 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV13; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV13 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV13; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV13; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV13 Skeleton TPTR_END; ModelTransformDataV13 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV13 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; } ModelModelDataV13; typedef struct { qword token; float value; } ModelFloatPropertyDataV13; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV13 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV13; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV13; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV13; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV13; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; float colorFalloff; float drag; TPTR_START ModelParticleCurveV13 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV13 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV13 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; } ModelParticleEmitterV13; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV13; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV13 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV13 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV13 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV13; typedef struct { TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; dword materialIndex; float spawnFreq; float stretchDist; float texScale; dword visBoneIndex; } ModelStreakV13; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV13; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV13 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV13 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV13; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV13 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV13 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV13 model TPTR_END; TPTR_START ModelPropertyDataV13 properties TPTR_END; TPTR_START ModelCloudDataV13 cloudData TPTR_END; TPTR_START ModelStreakDataV13 streakData TPTR_END; } ModelFileDataV13; /* Version: 12 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV12; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV12; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV12 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV12 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV12; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV12; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV12; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV12 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV12; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV12 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV12; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV12; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV12 Skeleton TPTR_END; ModelTransformDataV12 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV12 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; } ModelModelDataV12; typedef struct { qword token; float value; } ModelFloatPropertyDataV12; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV12 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV12; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV12; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV12; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV12; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; float colorFalloff; float drag; TPTR_START ModelParticleCurveV12 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV12 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV12 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; } ModelParticleEmitterV12; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV12; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV12 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV12 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV12 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV12; typedef struct { TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; dword materialIndex; float spawnFreq; float stretchDist; float texScale; dword visBoneIndex; } ModelStreakV12; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV12; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV12 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV12 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV12; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV12 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV12 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV12 model TPTR_END; TPTR_START ModelPropertyDataV12 properties TPTR_END; TPTR_START ModelCloudDataV12 cloudData TPTR_END; TPTR_START ModelStreakDataV12 streakData TPTR_END; } ModelFileDataV12; /* Version: 11, ReferencedFunction: 0x140D0CF80 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV11; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV11; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV11 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV11 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV11; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV11; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV11; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV11 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV11; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV11 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV11; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV11; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV11 Skeleton TPTR_END; ModelTransformDataV11 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV11 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; } ModelModelDataV11; typedef struct { qword token; float value; } ModelFloatPropertyDataV11; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV11 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV11; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV11; typedef struct { byte curveType; TSTRUCT_ARRAY_PTR_START float2 keys TSTRUCT_ARRAY_PTR_END; } ModelParticleCurveV11; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV11; typedef struct { float2 acceleration[4]; float2 accelerationDistRange; float2 accelerationDistSpeed; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; float colorFalloff; float drag; TPTR_START ModelParticleCurveV11 opacityCurve TPTR_END; dword opacityCurvePreset; dword flags; TPTR_START ModelParticleFlipbookV11 flipbook TPTR_END; float2 lifetime; float2 rotationChange; float rotationDrag; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; TPTR_START ModelParticleCurveV11 scaleCurve TPTR_END; dword scaleCurvePreset; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; float2 spawnWindEmit; float2 spawnWindSpeed; float4 texCoordRect; dword visBoneIndex; } ModelParticleEmitterV11; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV11; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV11 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV11 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV11 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV11; typedef struct { TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; dword materialIndex; float spawnFreq; float stretchDist; float texScale; dword visBoneIndex; } ModelStreakV11; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV11; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV11 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV11 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV11; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV11 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV11 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV11 model TPTR_END; TPTR_START ModelPropertyDataV11 properties TPTR_END; TPTR_START ModelCloudDataV11 cloudData TPTR_END; TPTR_START ModelStreakDataV11 streakData TPTR_END; } ModelFileDataV11; /* Version: 10 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV10; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV10; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV10 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV10 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV10; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV10; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV10; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV10 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV10; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV10 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV10; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV10; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV10 Skeleton TPTR_END; ModelTransformDataV10 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV10 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; } ModelModelDataV10; typedef struct { qword token; float value; } ModelFloatPropertyDataV10; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV10 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV10; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV10; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START ModelParticleFlipbookV10 flipbook TSTRUCT_ARRAY_PTR_END; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; byte opacityCurveType; TSTRUCT_ARRAY_PTR_START float2 opacityKeys TSTRUCT_ARRAY_PTR_END; byte scaleCurveType; TSTRUCT_ARRAY_PTR_START float2 scaleKeys TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV10; typedef struct { float2 acceleration[4]; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; dword flags; float2 lifetime; float2 rotationChange; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; dword visBoneIndex; } ModelParticleEmitterV10; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV10; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV10 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV10 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV10 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV10; typedef struct { TSTRUCT_ARRAY_PTR_START dword anchorIndices TSTRUCT_ARRAY_PTR_END; qword bone; dword flags; dword materialIndex; float spawnFreq; float stretchDist; float texScale; dword visBoneIndex; } ModelStreakV10; typedef struct { qword bone; dword color; float falloff; float lifetime; } ModelStreakAnchorV10; typedef struct { TSTRUCT_ARRAY_PTR_START ModelStreakV10 streaks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnchorV10 anchors TSTRUCT_ARRAY_PTR_END; } ModelStreakDataV10; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV10 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV10 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV10 model TPTR_END; TPTR_START ModelPropertyDataV10 properties TPTR_END; TPTR_START ModelCloudDataV10 cloudData TPTR_END; TPTR_START ModelStreakDataV10 streakData TPTR_END; } ModelFileDataV10; /* Version: 9 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV9; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV9; typedef struct { filename filename; dword materialFlags; dword sortOrder; byte texCoordCount; TSTRUCT_ARRAY_PTR_START ModelTextureDataV9 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV9 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV9; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV9; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV9; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV9 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV9; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV9 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV9; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV9; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV9 Skeleton TPTR_END; ModelTransformDataV9 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV9 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; } ModelModelDataV9; typedef struct { qword token; float value; } ModelFloatPropertyDataV9; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV9 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV9; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV9; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START ModelParticleFlipbookV9 flipbook TSTRUCT_ARRAY_PTR_END; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; byte opacityCurveType; TSTRUCT_ARRAY_PTR_START float2 opacityKeys TSTRUCT_ARRAY_PTR_END; byte scaleCurveType; TSTRUCT_ARRAY_PTR_START float2 scaleKeys TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV9; typedef struct { float2 acceleration[4]; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; dword flags; float2 lifetime; float2 rotationChange; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; dword visBoneIndex; } ModelParticleEmitterV9; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV9; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV9 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV9 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV9 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV9; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV9 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV9 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV9 model TPTR_END; TPTR_START ModelPropertyDataV9 properties TPTR_END; TPTR_START ModelCloudDataV9 cloudData TPTR_END; } ModelFileDataV9; /* Version: 8, ReferencedFunction: 0x140D108D0 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; byte uvAnimId; byte uvPSInputIndex; } ModelTextureDataV8; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV8; typedef struct { filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV8 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV8 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV8; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV8; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV8; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV8 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV8; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV8 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV8; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV8; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV8 Skeleton TPTR_END; ModelTransformDataV8 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV8 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; } ModelModelDataV8; typedef struct { qword token; float value; } ModelFloatPropertyDataV8; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV8 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV8; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV8; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START ModelParticleFlipbookV8 flipbook TSTRUCT_ARRAY_PTR_END; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; byte opacityCurveType; TSTRUCT_ARRAY_PTR_START float2 opacityKeys TSTRUCT_ARRAY_PTR_END; byte scaleCurveType; TSTRUCT_ARRAY_PTR_START float2 scaleKeys TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV8; typedef struct { float2 acceleration[4]; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; dword flags; float2 lifetime; float2 rotationChange; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; dword visBoneIndex; } ModelParticleEmitterV8; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV8; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV8 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV8 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV8 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV8; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV8 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV8 meshes TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV8 model TPTR_END; TPTR_START ModelPropertyDataV8 properties TPTR_END; TPTR_START ModelCloudDataV8 cloudData TPTR_END; } ModelFileDataV8; /* Version: 7 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; } ModelTextureDataV7; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV7; typedef struct { filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV7 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV7 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV7; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV7; typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV7; typedef struct { qword token; PackGrannyAnimationTypeV0 animation; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV7 visTrackData TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV7; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV7; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV7; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV7 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV7; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV7 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV7; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV7; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV7 Skeleton TPTR_END; ModelTransformDataV7 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV7 MeshBindings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; } ModelModelDataV7; typedef struct { qword token; float value; } ModelFloatPropertyDataV7; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV7 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV7; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionMeshV7; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; byte surface; } ModelCollisionCloudV7; typedef struct { float4 transform[3]; byte surface; } ModelCollisionCubeV7; typedef struct { float radius; float3 position; byte surface; } ModelCollisionSphereV7; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } ModelCollisionSurfaceV7; typedef struct { TSTRUCT_ARRAY_PTR_START ModelCollisionMeshV7 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCloudV7 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCubeV7 cubes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSphereV7 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSurfaceV7 surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionDataV7; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV7; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START ModelParticleFlipbookV7 flipbook TSTRUCT_ARRAY_PTR_END; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; byte opacityCurveType; TSTRUCT_ARRAY_PTR_START float2 opacityKeys TSTRUCT_ARRAY_PTR_END; byte scaleCurveType; TSTRUCT_ARRAY_PTR_START float2 scaleKeys TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV7; typedef struct { float2 acceleration[4]; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; dword flags; float2 lifetime; float2 rotationChange; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; dword visBoneIndex; } ModelParticleEmitterV7; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV7; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV7 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV7 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV7 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV7; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV7 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV7 meshes TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV7 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword animationFallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV7 animationImports TSTRUCT_ARRAY_PTR_END; TPTR_START ModelModelDataV7 model TPTR_END; TPTR_START ModelPropertyDataV7 properties TPTR_END; TPTR_START ModelCollisionDataV7 collisionData TPTR_END; TPTR_START ModelCloudDataV7 cloudData TPTR_END; } ModelFileDataV7; /* Version: 6, ReferencedFunction: 0x140D0FEE0 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; } ModelTextureDataV6; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV6; typedef struct { filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV6 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV6 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV6; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START dword visBoneIndices TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV6; typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV6; typedef struct { qword token; PackGrannyAnimationTypeV0 animation; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV6 visTrackData TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV6; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV6; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV6; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV6 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV6; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV6 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV6; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV6; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV6 Skeleton TPTR_END; ModelTransformDataV6 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV6 MeshBindings TSTRUCT_ARRAY_PTR_END; } ModelModelDataV6; typedef struct { qword token; float value; } ModelFloatPropertyDataV6; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV6 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV6; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionMeshV6; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; byte surface; } ModelCollisionCloudV6; typedef struct { float4 transform[3]; byte surface; } ModelCollisionCubeV6; typedef struct { float radius; float3 position; byte surface; } ModelCollisionSphereV6; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } ModelCollisionSurfaceV6; typedef struct { TSTRUCT_ARRAY_PTR_START ModelCollisionMeshV6 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCloudV6 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCubeV6 cubes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSphereV6 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSurfaceV6 surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionDataV6; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV6; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START ModelParticleFlipbookV6 flipbook TSTRUCT_ARRAY_PTR_END; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; byte opacityCurveType; TSTRUCT_ARRAY_PTR_START float2 opacityKeys TSTRUCT_ARRAY_PTR_END; byte scaleCurveType; TSTRUCT_ARRAY_PTR_START float2 scaleKeys TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV6; typedef struct { float2 acceleration[4]; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; dword flags; float2 lifetime; float2 rotationChange; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; dword visBoneIndex; } ModelParticleEmitterV6; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; dword visBoneIndex; } ModelParticleObstacleV6; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV6 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV6 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV6 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV6; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV6 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV6 meshes TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV6 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword animationFallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV6 animationImports TSTRUCT_ARRAY_PTR_END; TPTR_START ModelModelDataV6 model TPTR_END; TPTR_START ModelPropertyDataV6 properties TPTR_END; TPTR_START ModelCollisionDataV6 collisionData TPTR_END; TPTR_START ModelCloudDataV6 cloudData TPTR_END; } ModelFileDataV6; /* Version: 5 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; } ModelTextureDataV5; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV5; typedef struct { filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV5 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV5 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV5; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { PackGrannyMeshType mesh; dword flags; TSTRUCT_ARRAY_PTR_START qword visTokens TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV5; typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV5; typedef struct { qword token; PackGrannyAnimationTypeV0 animation; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV5 visTrackData TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV5; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV5; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV5 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV5; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV5 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV5; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV5; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV5 Skeleton TPTR_END; ModelTransformDataV5 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV5 MeshBindings TSTRUCT_ARRAY_PTR_END; } ModelModelDataV5; typedef struct { qword token; float value; } ModelFloatPropertyDataV5; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV5 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV5; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionMeshV5; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; byte surface; } ModelCollisionCloudV5; typedef struct { float4 transform[3]; byte surface; } ModelCollisionCubeV5; typedef struct { float radius; float3 position; byte surface; } ModelCollisionSphereV5; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } ModelCollisionSurfaceV5; typedef struct { TSTRUCT_ARRAY_PTR_START ModelCollisionMeshV5 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCloudV5 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCubeV5 cubes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSphereV5 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSurfaceV5 surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionDataV5; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV5; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START ModelParticleFlipbookV5 flipbook TSTRUCT_ARRAY_PTR_END; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; byte opacityCurveType; TSTRUCT_ARRAY_PTR_START float2 opacityKeys TSTRUCT_ARRAY_PTR_END; byte scaleCurveType; TSTRUCT_ARRAY_PTR_START float2 scaleKeys TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV5; typedef struct { float2 acceleration[4]; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; dword flags; float2 lifetime; float2 rotationChange; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; } ModelParticleEmitterV5; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelParticleObstacleV5; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV5 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV5 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV5 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV5; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV5 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV5 meshes TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV5 animations TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV5 model TPTR_END; TPTR_START ModelPropertyDataV5 properties TPTR_END; TPTR_START ModelCollisionDataV5 collisionData TPTR_END; TPTR_START ModelCloudDataV5 cloudData TPTR_END; } ModelFileDataV5; /* Version: 4 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; } ModelTextureDataV4; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV4; typedef struct { filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV4 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV4 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV4; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { PackGrannyMeshType mesh; TSTRUCT_ARRAY_PTR_START qword visTokens TSTRUCT_ARRAY_PTR_END; } ModelMeshDataV4; typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV4; typedef struct { qword token; PackGrannyAnimationTypeV0 animation; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV4 visTrackData TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV4; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV4; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV4 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV4; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV4 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV4; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV4; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV4 Skeleton TPTR_END; ModelTransformDataV4 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV4 MeshBindings TSTRUCT_ARRAY_PTR_END; } ModelModelDataV4; typedef struct { qword token; float value; } ModelFloatPropertyDataV4; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV4 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV4; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionMeshV4; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; byte surface; } ModelCollisionCloudV4; typedef struct { float4 transform[3]; byte surface; } ModelCollisionCubeV4; typedef struct { float radius; float3 position; byte surface; } ModelCollisionSphereV4; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } ModelCollisionSurfaceV4; typedef struct { TSTRUCT_ARRAY_PTR_START ModelCollisionMeshV4 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCloudV4 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCubeV4 cubes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSphereV4 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSurfaceV4 surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionDataV4; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV4; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleFlipbookV4 flipbook TSTRUCT_ARRAY_PTR_END; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; byte opacityCurveType; TSTRUCT_ARRAY_PTR_START float2 opacityKeys TSTRUCT_ARRAY_PTR_END; byte scaleCurveType; TSTRUCT_ARRAY_PTR_START float2 scaleKeys TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV4; typedef struct { float2 acceleration[4]; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; dword flags; float2 lifetime; float2 rotationChange; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; } ModelParticleEmitterV4; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelParticleObstacleV4; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV4 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV4 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV4 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV4; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV4 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV4 meshes TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV4 animations TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV4 model TPTR_END; TPTR_START ModelPropertyDataV4 properties TPTR_END; TPTR_START ModelCollisionDataV4 collisionData TPTR_END; TPTR_START ModelCloudDataV4 cloudData TPTR_END; } ModelFileDataV4; /* Version: 3 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; } ModelTextureDataV3; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV3; typedef struct { filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV3 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV3 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV3; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { PackGrannyMeshType mesh; } ModelMeshDataV3; typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword token; PackGrannyAnimationTypeV0 animation; } ModelAnimationDataV3; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV3; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV3 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV3; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV3 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV3; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV3; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV3 Skeleton TPTR_END; ModelTransformDataV3 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV3 MeshBindings TSTRUCT_ARRAY_PTR_END; } ModelModelDataV3; typedef struct { qword token; float value; } ModelFloatPropertyDataV3; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV3 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV3; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionMeshV3; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; byte surface; } ModelCollisionCloudV3; typedef struct { float4 transform[3]; byte surface; } ModelCollisionCubeV3; typedef struct { float radius; float3 position; byte surface; } ModelCollisionSphereV3; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } ModelCollisionSurfaceV3; typedef struct { TSTRUCT_ARRAY_PTR_START ModelCollisionMeshV3 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCloudV3 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCubeV3 cubes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSphereV3 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSurfaceV3 surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionDataV3; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV3; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleFlipbookV3 flipbook TSTRUCT_ARRAY_PTR_END; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; byte opacityCurveType; TSTRUCT_ARRAY_PTR_START float2 opacityKeys TSTRUCT_ARRAY_PTR_END; byte scaleCurveType; TSTRUCT_ARRAY_PTR_START float2 scaleKeys TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV3; typedef struct { float2 acceleration[4]; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; dword flags; float2 lifetime; float2 rotationChange; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; } ModelParticleEmitterV3; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelParticleObstacleV3; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV3 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV3 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV3 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV3; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV3 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV3 meshes TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV3 animations TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV3 model TPTR_END; TPTR_START ModelPropertyDataV3 properties TPTR_END; TPTR_START ModelCollisionDataV3 collisionData TPTR_END; TPTR_START ModelCloudDataV3 cloudData TPTR_END; } ModelFileDataV3; /* Version: 2 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; } ModelTextureDataV2; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV2; typedef struct { filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV2 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV2 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV2; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { PackGrannyMeshType mesh; } ModelMeshDataV2; typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword token; PackGrannyAnimationTypeV0 animation; } ModelAnimationDataV2; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV2; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV2 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV2; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV2 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV2; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV2; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV2 Skeleton TPTR_END; ModelTransformDataV2 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV2 MeshBindings TSTRUCT_ARRAY_PTR_END; } ModelModelDataV2; typedef struct { qword token; float value; } ModelFloatPropertyDataV2; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV2 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV2; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionMeshV2; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; byte surface; } ModelCollisionCloudV2; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } ModelCollisionSurfaceV2; typedef struct { TSTRUCT_ARRAY_PTR_START ModelCollisionMeshV2 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCloudV2 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSurfaceV2 surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionDataV2; typedef struct { byte columns; byte count; byte flags; dword fps; byte rows; byte start; } ModelParticleFlipbookV2; typedef struct { float3 acceleration; qword bone; float drag; TSTRUCT_ARRAY_PTR_START dword emitterIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleFlipbookV2 flipbook TSTRUCT_ARRAY_PTR_END; dword materialIndex; TSTRUCT_ARRAY_PTR_START dword obstacleIndices TSTRUCT_ARRAY_PTR_END; byte opacityCurveType; TSTRUCT_ARRAY_PTR_START float2 opacityKeys TSTRUCT_ARRAY_PTR_END; byte scaleCurveType; TSTRUCT_ARRAY_PTR_START float2 scaleKeys TSTRUCT_ARRAY_PTR_END; } ModelParticleCloudV2; typedef struct { float2 acceleration[4]; qword bone; float4 colorBegin; float4 colorEnd; float2 colorPeriod; dword flags; float2 lifetime; float2 rotationChange; float2 rotationInitial; float2 scaleChange[2]; float2 scaleInitial[2]; float2 velocity[4]; float2 velocityDistRange; float2 velocityDistSpeed; float2 spawnGroupSize; float spawnPeriod; float spawnProbability; float2 spawnRadius; byte spawnShape; } ModelParticleEmitterV2; typedef struct { qword bone; float dragCoef; dword flags; float3 geoData; float gravityCoef; byte response; byte type; } ModelParticleObstacleV2; typedef struct { TSTRUCT_ARRAY_PTR_START ModelParticleCloudV2 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleEmitterV2 emitters TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelParticleObstacleV2 obstacles TSTRUCT_ARRAY_PTR_END; } ModelCloudDataV2; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV2 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV2 meshes TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV2 animations TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV2 model TPTR_END; TPTR_START ModelPropertyDataV2 properties TPTR_END; TPTR_START ModelCollisionDataV2 collisionData TPTR_END; TPTR_START ModelCloudDataV2 cloudData TPTR_END; } ModelFileDataV2; /* Version: 1 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; } ModelTextureDataV1; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV1; typedef struct { filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV1 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV1 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { PackGrannyMeshType mesh; } ModelMeshDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword token; PackGrannyAnimationTypeV0 animation; } ModelAnimationDataV1; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV1; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV1 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV1; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV1 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV1; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV1; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV1 Skeleton TPTR_END; ModelTransformDataV1 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV1 MeshBindings TSTRUCT_ARRAY_PTR_END; } ModelModelDataV1; typedef struct { qword token; float value; } ModelFloatPropertyDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV1 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV1; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } ModelChunkCollisionMeshV1; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; byte surface; } ModelChunkCollisionCloudV1; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } ModelChunkCollisionSurfaceV1; typedef struct { TSTRUCT_ARRAY_PTR_START ModelChunkCollisionMeshV1 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelChunkCollisionCloudV1 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelChunkCollisionSurfaceV1 surfaces TSTRUCT_ARRAY_PTR_END; } ModelChunkCollisionDataV1; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV1 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV1 meshes TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV1 animations TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV1 model TPTR_END; TPTR_START ModelPropertyDataV1 properties TPTR_END; TPTR_START ModelChunkCollisionDataV1 collisionData TPTR_END; } ModelFileDataV1; /* Version: 0 */ typedef struct { filename filename; dword textureFlags; qword token; qword blitId; } ModelTextureDataV0; typedef struct { dword name; float4 value; dword constantFlags; } ModelConstantDataV0; typedef struct { filename filename; dword materialFlags; dword sortOrder; TSTRUCT_ARRAY_PTR_START ModelTextureDataV0 textures TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelConstantDataV0 constants TSTRUCT_ARRAY_PTR_END; } ModelMaterialDataV0; typedef struct { TSTRUCT_ARRAY_PTR_START byte mesh TSTRUCT_ARRAY_PTR_END; } PackGrannyMeshType; typedef struct { PackGrannyMeshType mesh; } ModelMeshDataV0; typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword token; PackGrannyAnimationTypeV0 animation; } ModelAnimationDataV0; typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformDataV0; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformDataV0 LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneDataV0; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneDataV0 Bones TSTRUCT_ARRAY_PTR_END; dword LODType; } ModelSkeletonDataV0; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingDataV0; typedef struct { char_ptr Name; TPTR_START ModelSkeletonDataV0 Skeleton TPTR_END; ModelTransformDataV0 InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingDataV0 MeshBindings TSTRUCT_ARRAY_PTR_END; } ModelModelDataV0; typedef struct { qword token; float value; } ModelFloatPropertyDataV0; typedef struct { TSTRUCT_ARRAY_PTR_START qword boolTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelFloatPropertyDataV0 floatValues TSTRUCT_ARRAY_PTR_END; } ModelPropertyDataV0; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMaterialDataV0 materials TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV0 meshes TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV0 animations TSTRUCT_PTR_ARRAY_PTR_END; TPTR_START ModelModelDataV0 model TPTR_END; TPTR_START ModelPropertyDataV0 properties TPTR_END; } ModelFileDataV0; /* =============================================== * Chunk: ANIM, versions: 26, strucTab: 0x141DCD3C0 * =============================================== */ /* Version: 25, ReferencedFunction: 0x140D0AA50 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword pointers TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV1; typedef struct { PackGrannyAnimationTypeV1 data; filename fileFull; } ModelAnimationLodV25; typedef struct { qword boneToken; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV33; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV25; typedef struct { dword uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV25 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV25; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV25 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV25; typedef struct { dword materialId; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV25; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV25 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV25; typedef struct { qword id; dword type; float time; qword val; filename strVal; } ModelAnimPropertyDataV25; typedef struct { qword linkToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTokenMapAnimV25; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV25 bcTrackData TSTRUCT_ARRAY_PTR_END; } ModelBoneConstraintAnimV25; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV25 anchorTrackData TSTRUCT_ARRAY_PTR_END; } ModelAnchorAnimV25; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelAnchorAnimV25 anchorAnim TSTRUCT_ARRAY_PTR_END; } ModelStreakAnimV25; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV25 lightningTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightningAnimV25; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV25 windTrackData TSTRUCT_ARRAY_PTR_END; } ModelWindAnimationV25; typedef struct { qword token; PackGrannyAnimationTypeV1 data; TPTR_START ModelAnimationLodV25 animLod TPTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV33 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV25 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV25 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV25 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV25 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV25 properties TSTRUCT_ARRAY_PTR_END; float3 center; float radius; TSTRUCT_ARRAY_PTR_START ModelTokenMapAnimV25 tokenMapAnims TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintAnimV25 bcAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnimV25 streakAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningAnimV25 lightningAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelWindAnimationV25 windAnimData TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV33; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV25; typedef struct { qword name; float duration; } ModelAnimationImportSequenceV25; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START ModelAnimationImportSequenceV25 sequences TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV33; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV33 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV25 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV33 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV25; typedef struct { TPTR_START ModelFileAnimationBankV25 bank TPTR_END; PackGrannyAnimationTypeV1 anim; } ModelFileAnimationV25; /* Version: 24, ReferencedFunction: 0x140D0A7C0 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { PackGrannyAnimationTypeV0 data; filename fileFull; } ModelAnimationLodV24; typedef struct { qword boneToken; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV32; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV24; typedef struct { dword uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV24 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV24; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV24 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV24; typedef struct { dword materialId; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV24; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV24 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV24; typedef struct { qword id; dword type; float time; qword val; filename strVal; } ModelAnimPropertyDataV24; typedef struct { qword linkToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTokenMapAnimV24; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV24 bcTrackData TSTRUCT_ARRAY_PTR_END; } ModelBoneConstraintAnimV24; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV24 anchorTrackData TSTRUCT_ARRAY_PTR_END; } ModelAnchorAnimV24; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelAnchorAnimV24 anchorAnim TSTRUCT_ARRAY_PTR_END; } ModelStreakAnimV24; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV24 lightningTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightningAnimV24; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV24 windTrackData TSTRUCT_ARRAY_PTR_END; } ModelWindAnimationV24; typedef struct { qword token; PackGrannyAnimationTypeV0 data; TPTR_START ModelAnimationLodV24 animLod TPTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV32 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV24 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV24 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV24 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV24 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV24 properties TSTRUCT_ARRAY_PTR_END; float3 center; float radius; TSTRUCT_ARRAY_PTR_START ModelTokenMapAnimV24 tokenMapAnims TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintAnimV24 bcAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnimV24 streakAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningAnimV24 lightningAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelWindAnimationV24 windAnimData TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV32; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV24; typedef struct { qword name; float duration; } ModelAnimationImportSequenceV24; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START ModelAnimationImportSequenceV24 sequences TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV32; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV32 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV24 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV32 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV24; typedef struct { TPTR_START ModelFileAnimationBankV24 bank TPTR_END; PackGrannyAnimationTypeV0 anim; } ModelFileAnimationV24; /* Version: 23, ReferencedFunction: 0x140D0A580 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword boneToken; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV31; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV23; typedef struct { dword uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV23 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV23; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV23 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV23; typedef struct { dword materialId; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV23; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV23 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV23; typedef struct { qword id; dword type; float time; qword val; filename strVal; } ModelAnimPropertyDataV23; typedef struct { qword linkToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTokenMapAnimV23; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV23 bcTrackData TSTRUCT_ARRAY_PTR_END; } ModelBoneConstraintAnimV23; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV23 anchorTrackData TSTRUCT_ARRAY_PTR_END; } ModelAnchorAnimV23; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelAnchorAnimV23 anchorAnim TSTRUCT_ARRAY_PTR_END; } ModelStreakAnimV23; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV23 lightningTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightningAnimV23; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV23 windTrackData TSTRUCT_ARRAY_PTR_END; } ModelWindAnimationV23; typedef struct { qword token; PackGrannyAnimationTypeV0 data; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV31 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV23 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV23 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV23 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV23 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV23 properties TSTRUCT_ARRAY_PTR_END; float3 center; float radius; TSTRUCT_ARRAY_PTR_START ModelTokenMapAnimV23 tokenMapAnims TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintAnimV23 bcAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnimV23 streakAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningAnimV23 lightningAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelWindAnimationV23 windAnimData TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV31; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV23; typedef struct { qword name; float duration; } ModelAnimationImportSequenceV23; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START ModelAnimationImportSequenceV23 sequences TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV31; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV31 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV23 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV31 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV23; /* Version: 22 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword boneToken; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV30; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV22; typedef struct { dword uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV22 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV22; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV22 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV22; typedef struct { dword materialId; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV22; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV22 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV22; typedef struct { qword id; dword type; float time; qword val; filename strVal; } ModelAnimPropertyDataV22; typedef struct { qword linkToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTokenMapAnimV22; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV22 bcTrackData TSTRUCT_ARRAY_PTR_END; } ModelBoneConstraintAnimV22; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV22 anchorTrackData TSTRUCT_ARRAY_PTR_END; } ModelAnchorAnimV22; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelAnchorAnimV22 anchorAnim TSTRUCT_ARRAY_PTR_END; } ModelStreakAnimV22; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV22 lightningTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightningAnimV22; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV22 windTrackData TSTRUCT_ARRAY_PTR_END; } ModelWindAnimationV22; typedef struct { qword token; PackGrannyAnimationTypeV0 data; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV30 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV22 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV22 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV22 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV22 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV22 properties TSTRUCT_ARRAY_PTR_END; float3 center; float radius; TSTRUCT_ARRAY_PTR_START ModelTokenMapAnimV22 tokenMapAnims TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintAnimV22 bcAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnimV22 streakAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningAnimV22 lightningAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelWindAnimationV22 windAnimData TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV30; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV22; typedef struct { qword name; float duration; } ModelAnimationImportSequenceV22; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START ModelAnimationImportSequenceV22 sequences TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV30; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV30 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV22 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV30 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV22; /* Version: 21 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword boneToken; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV29; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV21; typedef struct { dword uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV21 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV21; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV21 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV21; typedef struct { dword materialId; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV21; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV21 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV21; typedef struct { qword id; dword type; float time; qword val; filename strVal; } ModelAnimPropertyDataV21; typedef struct { qword linkToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTokenMapAnimV21; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV21 bcTrackData TSTRUCT_ARRAY_PTR_END; } ModelBoneConstraintAnimV21; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV21 anchorTrackData TSTRUCT_ARRAY_PTR_END; } ModelAnchorAnimV21; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelAnchorAnimV21 anchorAnim TSTRUCT_ARRAY_PTR_END; } ModelStreakAnimV21; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV21 lightningTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightningAnimV21; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV21 windTrackData TSTRUCT_ARRAY_PTR_END; } ModelWindAnimationV21; typedef struct { qword token; PackGrannyAnimationTypeV0 data; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV29 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV21 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV21 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV21 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV21 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV21 properties TSTRUCT_ARRAY_PTR_END; float3 center; float radius; TSTRUCT_ARRAY_PTR_START ModelTokenMapAnimV21 tokenMapAnims TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintAnimV21 bcAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnimV21 streakAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningAnimV21 lightningAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelWindAnimationV21 windAnimData TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV29; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV21; typedef struct { qword name; float duration; } ModelAnimationImportSequenceV21; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START ModelAnimationImportSequenceV21 sequences TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV29; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV29 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV21 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV29 imports TSTRUCT_ARRAY_PTR_END; filename modelReference; } ModelFileAnimationBankV21; /* Version: 20 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword boneToken; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV28; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV20; typedef struct { dword uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV20 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV20; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV20 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV20; typedef struct { dword materialId; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV20; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV20 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV20; typedef struct { qword id; dword type; float time; qword val; filename strVal; } ModelAnimPropertyDataV20; typedef struct { qword linkToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTokenMapAnimV20; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV20 bcTrackData TSTRUCT_ARRAY_PTR_END; } ModelBoneConstraintAnimV20; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV20 anchorTrackData TSTRUCT_ARRAY_PTR_END; } ModelAnchorAnimV20; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelAnchorAnimV20 anchorAnim TSTRUCT_ARRAY_PTR_END; } ModelStreakAnimV20; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV20 lightningTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightningAnimV20; typedef struct { qword token; PackGrannyAnimationTypeV0 data; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV28 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV20 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV20 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV20 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV20 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV20 properties TSTRUCT_ARRAY_PTR_END; float3 center; float radius; TSTRUCT_ARRAY_PTR_START ModelTokenMapAnimV20 tokenMapAnims TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintAnimV20 bcAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnimV20 streakAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightningAnimV20 lightningAnim TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV28; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV20; typedef struct { qword name; float duration; } ModelAnimationImportSequenceV20; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START ModelAnimationImportSequenceV20 sequences TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV28; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV28 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV20 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV28 imports TSTRUCT_ARRAY_PTR_END; filename modelReference; } ModelFileAnimationBankV20; /* Version: 19 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword boneToken; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV27; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV19; typedef struct { dword uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV19 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV19; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV19 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV19; typedef struct { dword materialId; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV19; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV19 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV19; typedef struct { qword id; dword type; float time; qword val; filename strVal; } ModelAnimPropertyDataV19; typedef struct { qword linkToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTokenMapAnimV19; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV19 bcTrackData TSTRUCT_ARRAY_PTR_END; } ModelBoneConstraintAnimV19; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV19 anchorTrackData TSTRUCT_ARRAY_PTR_END; } ModelAnchorAnimV19; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelAnchorAnimV19 anchorAnim TSTRUCT_ARRAY_PTR_END; } ModelStreakAnimV19; typedef struct { qword token; PackGrannyAnimationTypeV0 data; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV27 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV19 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV19 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV19 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV19 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV19 properties TSTRUCT_ARRAY_PTR_END; float3 center; float radius; TSTRUCT_ARRAY_PTR_START ModelTokenMapAnimV19 tokenMapAnims TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintAnimV19 bcAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnimV19 streakAnim TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV27; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV19; typedef struct { qword name; float duration; } ModelAnimationImportSequenceV19; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START ModelAnimationImportSequenceV19 sequences TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV27; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV27 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV19 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV27 imports TSTRUCT_ARRAY_PTR_END; filename modelReference; } ModelFileAnimationBankV19; /* Version: 18, ReferencedFunction: 0x140D0A4B0 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword boneToken; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV26; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV18; typedef struct { dword uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV18 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV18; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV18 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV18; typedef struct { dword materialId; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV18; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV18 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV18; typedef struct { qword id; dword type; float time; qword val; filename strVal; } ModelAnimPropertyDataV18; typedef struct { qword linkToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTokenMapAnimV18; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV18 bcTrackData TSTRUCT_ARRAY_PTR_END; } ModelBoneConstraintAnimV18; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV18 anchorTrackData TSTRUCT_ARRAY_PTR_END; } ModelAnchorAnimV18; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelAnchorAnimV18 anchorAnim TSTRUCT_ARRAY_PTR_END; } ModelStreakAnimV18; typedef struct { qword token; PackGrannyAnimationTypeV0 data; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV26 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV18 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV18 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV18 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV18 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV18 properties TSTRUCT_ARRAY_PTR_END; float3 center; float radius; TSTRUCT_ARRAY_PTR_START ModelTokenMapAnimV18 tokenMapAnims TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintAnimV18 bcAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnimV18 streakAnim TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV26; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV18; typedef struct { qword name; float duration; } ModelAnimationImportSequenceV18; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START ModelAnimationImportSequenceV18 sequences TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV26; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV26 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV18 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV26 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV18; /* Version: 17, ReferencedFunction: 0x140D09F50 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword boneToken; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV25; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV17; typedef struct { dword uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV17 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV17; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV17 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV17; typedef struct { dword matIndex; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV17; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV17 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV17; typedef struct { qword id; dword type; float time; qword val; filename strVal; } ModelAnimPropertyDataV17; typedef struct { qword linkToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTokenMapAnimV17; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV17 bcTrackData TSTRUCT_ARRAY_PTR_END; } ModelBoneConstraintAnimV17; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV17 anchorTrackData TSTRUCT_ARRAY_PTR_END; } ModelAnchorAnimV17; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelAnchorAnimV17 anchorAnim TSTRUCT_ARRAY_PTR_END; } ModelStreakAnimV17; typedef struct { qword token; PackGrannyAnimationTypeV0 data; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV25 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV17 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV17 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV17 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV17 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV17 properties TSTRUCT_ARRAY_PTR_END; float3 center; float radius; TSTRUCT_ARRAY_PTR_START ModelTokenMapAnimV17 tokenMapAnims TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintAnimV17 bcAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnimV17 streakAnim TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV25; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV17; typedef struct { qword name; float duration; } ModelAnimationImportSequenceV17; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START ModelAnimationImportSequenceV17 sequences TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV25; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV25 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV17 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV25 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV17; /* Version: 16 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword boneToken; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV24; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV16; typedef struct { dword uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV16 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV16; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV16 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV16; typedef struct { dword matIndex; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV16; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV16 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV16; typedef struct { qword id; dword type; float time; qword val; filename strVal; } ModelAnimPropertyDataV16; typedef struct { qword linkToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTokenMapAnimV16; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV16 bcTrackData TSTRUCT_ARRAY_PTR_END; } ModelBoneConstraintAnimV16; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV16 anchorTrackData TSTRUCT_ARRAY_PTR_END; } ModelAnchorAnimV16; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelAnchorAnimV16 anchorAnim TSTRUCT_ARRAY_PTR_END; } ModelStreakAnimV16; typedef struct { qword token; PackGrannyAnimationTypeV0 data; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV24 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV16 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV16 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV16 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV16 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV16 properties TSTRUCT_ARRAY_PTR_END; float3 center; float radius; TSTRUCT_ARRAY_PTR_START ModelTokenMapAnimV16 tokenMapAnims TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintAnimV16 bcAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelStreakAnimV16 streakAnim TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV24; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV16; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV24; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV24 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV16 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV24 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV16; /* Version: 15 */ typedef struct { qword boneToken; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV23; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV15; typedef struct { dword uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV15 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV15; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV15 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV15; typedef struct { dword matIndex; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV15; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV15 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV15; typedef struct { qword id; dword type; float time; qword val; filename strVal; } ModelAnimPropertyDataV15; typedef struct { qword linkToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTokenMapAnimV15; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV15 bcTrackData TSTRUCT_ARRAY_PTR_END; } ModelBoneConstraintAnimV15; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV23 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV15 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV15 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV15 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV15 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV15 properties TSTRUCT_ARRAY_PTR_END; float3 center; float radius; TSTRUCT_ARRAY_PTR_START ModelTokenMapAnimV15 tokenMapAnims TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintAnimV15 bcAnim TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV23; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV15; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV23; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV23 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV15 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV23 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV15; /* Version: 14, ReferencedFunction: 0x140D09C80 */ typedef struct { qword boneToken; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV22; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV14; typedef struct { dword uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV14 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV14; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV14 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV14; typedef struct { dword matIndex; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV14; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV14 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV14; typedef struct { qword id; dword type; float time; qword val; filename strVal; } ModelAnimPropertyDataV14; typedef struct { qword linkToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTokenMapAnimV14; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV22 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV14 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV14 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV14 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV14 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV14 properties TSTRUCT_ARRAY_PTR_END; float3 center; float radius; TSTRUCT_ARRAY_PTR_START ModelTokenMapAnimV14 tokenMapAnims TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV22; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV14; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV22; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV22 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV14 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV22 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV14; /* Version: 13 */ typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV21; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV13; typedef struct { dword uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV13 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV13; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV13 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV13; typedef struct { dword matIndex; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV13; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV13 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV13; typedef struct { qword id; dword type; float time; qword val; filename strVal; } ModelAnimPropertyDataV13; typedef struct { qword linkToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTokenMapAnimV13; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV21 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV13 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV13 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV13 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV13 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV13 properties TSTRUCT_ARRAY_PTR_END; float3 center; float radius; TSTRUCT_ARRAY_PTR_START ModelTokenMapAnimV13 tokenMapAnims TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV21; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV13; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV21; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV21 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV13 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV21 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV13; /* Version: 12, ReferencedFunction: 0x140D09BA0 */ typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV20; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV12; typedef struct { dword uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV12 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV12; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV12 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV12; typedef struct { dword matIndex; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV12; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV12 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV12; typedef struct { qword id; dword type; qword val; filename strVal; } ModelAnimPropertyDataV12; typedef struct { qword linkToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTokenMapAnimV12; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV20 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV12 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV12 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV12 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV12 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV12 properties TSTRUCT_ARRAY_PTR_END; float3 center; float radius; TSTRUCT_ARRAY_PTR_START ModelTokenMapAnimV12 tokenMapAnims TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV20; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV12; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV20; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV20 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV12 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV20 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV12; /* Version: 11 */ typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV19; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV11; typedef struct { byte uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV11 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV11; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV11 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV11; typedef struct { dword matIndex; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV11; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV11 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV11; typedef struct { qword id; dword type; qword val; filename strVal; } ModelAnimPropertyDataV11; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV19 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV11 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV11 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV11 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV11 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV11 properties TSTRUCT_ARRAY_PTR_END; float3 center; float radius; } ModelAnimationDataV19; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV11; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV19; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV19 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV11 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV19 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV11; /* Version: 10 */ typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV18; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV10; typedef struct { byte uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV10 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV10; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV10 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV10; typedef struct { dword matIndex; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV10; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV10 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV10; typedef struct { qword id; dword type; qword val; filename strVal; } ModelAnimPropertyDataV10; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV18 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV10 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV10 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV10 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV10 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; TSTRUCT_ARRAY_PTR_START ModelAnimPropertyDataV10 properties TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV18; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV10; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV18; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV18 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV10 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV18 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV10; /* Version: 9 */ typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV17; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelTrackTypeDataV9; typedef struct { byte uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV9 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV9; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV9 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV9; typedef struct { dword matIndex; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; float4 initialValue; } ModelMatConstAnimV9; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV9 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV9; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV17 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV9 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV9 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV9 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV9 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; } ModelAnimationDataV17; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV9; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV17; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV17 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV9 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV17 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV9; /* Version: 8 */ typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV16; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; } ModelTrackTypeDataV8; typedef struct { byte uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV8 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV8; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV8 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV8; typedef struct { dword matIndex; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; } ModelMatConstAnimV8; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV8 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV8; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV16 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV8 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV8 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV8 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV8 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; dword variantCount; dword variantIndices[3]; } ModelAnimationDataV16; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV8; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV16; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV16 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV8 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV16 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV8; /* Version: 7 */ typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV15; typedef struct { byte type; dword trackGroupIndex; dword vectorTrackIndex; } ModelTrackTypeDataV7; typedef struct { byte uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV7 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV7; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV7 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV7; typedef struct { dword matIndex; dword constToken; dword trackGroupIndex; dword vectorTrackIndex; } ModelMatConstAnimV7; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV7 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV7; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV15 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV7 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV7 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV7 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV7 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; } ModelAnimationDataV15; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV7; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV15; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV15 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV7 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV15 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV7; /* Version: 6 */ typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV14; typedef struct { byte type; dword vectorTrackIndex; } ModelTrackTypeDataV6; typedef struct { byte uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV6 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV6; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV6 cloudTrackData TSTRUCT_ARRAY_PTR_END; } ModelCloudAnimV6; typedef struct { dword matIndex; dword constToken; dword vectorTrackIndex; } ModelMatConstAnimV6; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV6 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV6; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV14 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV6 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCloudAnimV6 cloudAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMatConstAnimV6 matConstAnim TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV6 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; } ModelAnimationDataV14; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV6; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV14; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV14 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV6 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV14 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV6; /* Version: 5 */ typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV13; typedef struct { byte type; dword vectorTrackIndex; } ModelTrackTypeDataV5; typedef struct { byte uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV5 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV5; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV5 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV5; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV13 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV5 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV5 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; } ModelAnimationDataV13; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV5; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV13; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV13 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV5 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV13 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV5; /* Version: 4 */ typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV12; typedef struct { byte type; dword vectorTrackIndex; } ModelTrackTypeDataV4; typedef struct { byte uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV4 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV4; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV4 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV4; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV12 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV4 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV4 lightAnimData TSTRUCT_ARRAY_PTR_END; dword isAdditive; } ModelAnimationDataV12; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV4; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV12; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV12 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV4 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV12 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV4; /* Version: 3 */ typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV11; typedef struct { byte type; dword vectorTrackIndex; } ModelTrackTypeDataV3; typedef struct { byte uvAnimId; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV3 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV3; typedef struct { qword bone; TSTRUCT_ARRAY_PTR_START ModelTrackTypeDataV3 lightTrackData TSTRUCT_ARRAY_PTR_END; } ModelLightAnimationV3; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV11 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV3 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelLightAnimationV3 lightAnimData TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV11; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV3; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV11; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV11 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV3 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV11 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV3; /* Version: 2 */ typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV10; typedef struct { byte type; dword vectorTrackIndex; } ModelUVTransformV2; typedef struct { byte uvAnimId; TSTRUCT_ARRAY_PTR_START ModelUVTransformV2 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV2; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV10 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV2 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word morphTrackGroups TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV10; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV2; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV10; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV10 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV2 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV10 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationBankV2; /* Version: 1 */ typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV9; typedef struct { byte type; dword vectorTrackIndex; } ModelUVTransformV1; typedef struct { byte uvAnimId; TSTRUCT_ARRAY_PTR_START ModelUVTransformV1 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV1; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV9 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV1 uvAnimData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float triggerTimes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword triggerTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV9; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV1; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV9; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV9 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV1 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV9 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationV1; /* Version: 0 */ typedef struct { dword boneIndex; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; } ModelVisTrackDataV8; typedef struct { byte type; dword vectorTrackIndex; } ModelUVTransformV0; typedef struct { byte uvAnimId; TSTRUCT_ARRAY_PTR_START ModelUVTransformV0 uvTransformData TSTRUCT_ARRAY_PTR_END; } ModelUVAnimationV0; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; float moveSpeed; TSTRUCT_ARRAY_PTR_START ModelVisTrackDataV8 visTrackData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelUVAnimationV0 uvAnimData TSTRUCT_ARRAY_PTR_END; } ModelAnimationDataV8; typedef struct { qword token; qword start; qword loop; qword end; } ModelCompoundAnimationDataV0; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword sequenceTokens TSTRUCT_ARRAY_PTR_END; } ModelAnimationImportDataV8; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelAnimationDataV8 animations TSTRUCT_PTR_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCompoundAnimationDataV0 compoundAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword fallbacks TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelAnimationImportDataV8 imports TSTRUCT_ARRAY_PTR_END; } ModelFileAnimationV0; /* =============================================== * Chunk: COLL, versions: 5, strucTab: 0x141DCD630 * =============================================== */ /* Version: 4 */ typedef struct { float time; float3 position; float4 orientation; } ModelCollisionKeyFrameV10; typedef struct { TSTRUCT_ARRAY_PTR_START dword shapeIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionKeyFrameV10 keyFrames TSTRUCT_ARRAY_PTR_END; } ModelCollisionAnimatedObjectV10; typedef struct { qword animation; TSTRUCT_ARRAY_PTR_START ModelCollisionAnimatedObjectV10 objects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 targetPoints TSTRUCT_ARRAY_PTR_END; } ModelCollisionAnimationV10; typedef struct { TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 navSeedPoints TSTRUCT_ARRAY_PTR_END; } ModelCollisionMeshV10; typedef struct { float3 dimensions; float3 position; float4 rotation; byte surface; } ModelCollisionBoxV10; typedef struct { float radius; float3 position; byte surface; } ModelCollisionSphereV10; typedef struct { float3 p0; float3 p1; float radius; byte surface; } ModelCollisionCapsuleV10; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } ModelCollisionSurfaceV10; typedef struct { TSTRUCT_ARRAY_PTR_START ModelCollisionAnimationV10 animations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionMeshV10 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionBoxV10 boxes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSphereV10 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCapsuleV10 capsules TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSurfaceV10 surfaces TSTRUCT_ARRAY_PTR_END; } ModelFileCollisionV10; /* Version: 3, ReferencedFunction: 0x140D0AC90 */ typedef struct { float time; float3 position; float4 orientation; } ModelCollisionKeyFrameV9; typedef struct { TSTRUCT_ARRAY_PTR_START dword shapeIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionKeyFrameV9 keyFrames TSTRUCT_ARRAY_PTR_END; } ModelCollisionAnimatedObjectV9; typedef struct { qword animation; TSTRUCT_ARRAY_PTR_START ModelCollisionAnimatedObjectV9 objects TSTRUCT_ARRAY_PTR_END; } ModelCollisionAnimationV9; typedef struct { TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionMeshV9; typedef struct { float3 dimensions; float3 position; float4 rotation; byte surface; } ModelCollisionBoxV9; typedef struct { float radius; float3 position; byte surface; } ModelCollisionSphereV9; typedef struct { float3 p0; float3 p1; float radius; byte surface; } ModelCollisionCapsuleV9; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } ModelCollisionSurfaceV9; typedef struct { TSTRUCT_ARRAY_PTR_START ModelCollisionAnimationV9 animations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionMeshV9 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionBoxV9 boxes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSphereV9 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCapsuleV9 capsules TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSurfaceV9 surfaces TSTRUCT_ARRAY_PTR_END; } ModelFileCollisionV9; /* Version: 2 */ typedef struct { TSTRUCT_ARRAY_PTR_START qword animationSequences TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionMeshV8; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; byte surface; } ModelCollisionCloudV8; typedef struct { float4 transform[3]; byte surface; } ModelCollisionCubeV8; typedef struct { float radius; float3 position; byte surface; } ModelCollisionSphereV8; typedef struct { float3 p0; float3 p1; float radius; byte surface; } ModelCollisionCapsuleV8; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } ModelCollisionSurfaceV8; typedef struct { TSTRUCT_ARRAY_PTR_START ModelCollisionMeshV8 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCloudV8 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCubeV8 cubes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSphereV8 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCapsuleV8 capsules TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSurfaceV8 surfaces TSTRUCT_ARRAY_PTR_END; } ModelFileCollisionV8; /* Version: 1 */ typedef struct { TSTRUCT_ARRAY_PTR_START qword animationSequences TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionMeshV1; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; byte surface; } ModelCollisionCloudV1; typedef struct { float4 transform[3]; byte surface; } ModelCollisionCubeV1; typedef struct { float radius; float3 position; byte surface; } ModelCollisionSphereV1; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } ModelCollisionSurfaceV1; typedef struct { TSTRUCT_ARRAY_PTR_START ModelCollisionMeshV1 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCloudV1 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCubeV1 cubes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSphereV1 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSurfaceV1 surfaces TSTRUCT_ARRAY_PTR_END; } ModelFileCollisionV1; /* Version: 0 */ typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } ModelCollisionMeshV0; typedef struct { qword animationSequence; TSTRUCT_ARRAY_PTR_START float3 points TSTRUCT_ARRAY_PTR_END; byte surface; } ModelCollisionCloudV0; typedef struct { float4 transform[3]; byte surface; } ModelCollisionCubeV0; typedef struct { float radius; float3 position; byte surface; } ModelCollisionSphereV0; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } ModelCollisionSurfaceV0; typedef struct { TSTRUCT_ARRAY_PTR_START ModelCollisionMeshV0 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCloudV0 clouds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionCubeV0 cubes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSphereV0 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelCollisionSurfaceV0 surfaces TSTRUCT_ARRAY_PTR_END; } ModelFileCollisionV0; /* =============================================== * Chunk: GR2S, versions: 5, strucTab: 0x141DCD6B0 * =============================================== */ /* Version: 4, ReferencedFunction: 0x140D0C450 */ typedef struct { wchar_ptr filename; dword flags; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; } ModelGr2DataV4; typedef struct { TSTRUCT_ARRAY_PTR_START ModelGr2DataV4 gr2Data TSTRUCT_ARRAY_PTR_END; } ModelFileGr2sV4; /* Version: 3, ReferencedFunction: 0x140D0BF80 */ typedef struct { wchar_ptr filename; dword flags; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; } ModelGr2DataV3; typedef struct { TSTRUCT_ARRAY_PTR_START ModelGr2DataV3 gr2Data TSTRUCT_ARRAY_PTR_END; } ModelFileGr2sV3; /* Version: 2, ReferencedFunction: 0x140D0B900 */ typedef struct { wchar_ptr filename; dword flags; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; } ModelGr2DataV2; typedef struct { TSTRUCT_ARRAY_PTR_START ModelGr2DataV2 gr2Data TSTRUCT_ARRAY_PTR_END; } ModelFileGr2sV2; /* Version: 1 */ typedef struct { wchar_ptr filename; dword flags; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; } ModelGr2DataV1; typedef struct { TSTRUCT_ARRAY_PTR_START ModelGr2DataV1 gr2Data TSTRUCT_ARRAY_PTR_END; } ModelFileGr2sV1; /* Version: 0 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; } ModelGr2DataV0; typedef struct { TSTRUCT_ARRAY_PTR_START ModelGr2DataV0 gr2Data TSTRUCT_ARRAY_PTR_END; } ModelFileGr2sV0; /* =============================================== * Chunk: TOOL, versions: 17, strucTab: 0x141DCD730 * =============================================== */ /* Version: 16, ReferencedFunction: 0x140D0CC80 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV16; typedef struct { qword blitId; fileref filename; } ModelToolBlitTextureV16; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr streakNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr anchorNames TSTRUCT_ARRAY_PTR_END; } ModelToolStreakV16; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr systemNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr boltNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr nodeNames TSTRUCT_ARRAY_PTR_END; } ModelToolLightningV16; typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword pointers TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV1; typedef struct { qword name; wchar_ptr filename; PackGrannyAnimationTypeV1 data; } ModelToolAnimationV16; typedef struct { qword animToken; wchar_ptr cmpGroup; wchar_ptr cmpType; } ModelSequenceCompressionInfoV16; typedef struct { qword modelType; TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV16 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolBlitTextureV16 blitTextures TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolStreakV16 streakData TPTR_END; TPTR_START ModelToolLightningV16 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START qword permutationTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelToolAnimationV16 highLodAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSequenceCompressionInfoV16 compressionInfos TSTRUCT_ARRAY_PTR_END; char_ptr region; } ModelFileToolV16; /* Version: 15 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV15; typedef struct { qword blitId; fileref filename; } ModelToolBlitTextureV15; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr streakNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr anchorNames TSTRUCT_ARRAY_PTR_END; } ModelToolStreakV15; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr systemNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr boltNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr nodeNames TSTRUCT_ARRAY_PTR_END; } ModelToolLightningV15; typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword name; wchar_ptr filename; PackGrannyAnimationTypeV0 data; } ModelToolAnimationV15; typedef struct { qword animToken; wchar_ptr cmpGroup; wchar_ptr cmpType; } ModelSequenceCompressionInfoV15; typedef struct { qword modelType; TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV15 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolBlitTextureV15 blitTextures TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolStreakV15 streakData TPTR_END; TPTR_START ModelToolLightningV15 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START qword permutationTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelToolAnimationV15 highLodAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSequenceCompressionInfoV15 compressionInfos TSTRUCT_ARRAY_PTR_END; char_ptr region; } ModelFileToolV15; /* Version: 14 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV14; typedef struct { qword blitId; fileref filename; } ModelToolBlitTextureV14; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr streakNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr anchorNames TSTRUCT_ARRAY_PTR_END; } ModelToolStreakV14; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr systemNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr boltNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr nodeNames TSTRUCT_ARRAY_PTR_END; } ModelToolLightningV14; typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword name; wchar_ptr filename; PackGrannyAnimationTypeV0 data; } ModelToolAnimationV14; typedef struct { qword animToken; wchar_ptr cmpGroup; wchar_ptr cmpType; } ModelSequenceCompressionInfoV14; typedef struct { qword modelType; TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV14 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolBlitTextureV14 blitTextures TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolStreakV14 streakData TPTR_END; TPTR_START ModelToolLightningV14 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START qword permutationTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelToolAnimationV14 highLodAnimations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelSequenceCompressionInfoV14 compressionInfos TSTRUCT_ARRAY_PTR_END; } ModelFileToolV14; /* Version: 13 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV13; typedef struct { qword blitId; fileref filename; } ModelToolBlitTextureV13; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr streakNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr anchorNames TSTRUCT_ARRAY_PTR_END; } ModelToolStreakV13; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr systemNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr boltNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr nodeNames TSTRUCT_ARRAY_PTR_END; } ModelToolLightningV13; typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword name; wchar_ptr filename; PackGrannyAnimationTypeV0 data; } ModelToolAnimationV13; typedef struct { qword modelType; TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV13 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolBlitTextureV13 blitTextures TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolStreakV13 streakData TPTR_END; TPTR_START ModelToolLightningV13 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START qword permutationTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelToolAnimationV13 highLodAnimations TSTRUCT_ARRAY_PTR_END; } ModelFileToolV13; /* Version: 12 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV12; typedef struct { qword blitId; fileref filename; } ModelToolBlitTextureV12; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr streakNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr anchorNames TSTRUCT_ARRAY_PTR_END; } ModelToolStreakV12; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr systemNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr boltNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr nodeNames TSTRUCT_ARRAY_PTR_END; } ModelToolLightningV12; typedef struct { TSTRUCT_ARRAY_PTR_START byte animation TSTRUCT_ARRAY_PTR_END; } PackGrannyAnimationTypeV0; typedef struct { qword name; wchar_ptr filename; PackGrannyAnimationTypeV0 data; } ModelToolAnimationV12; typedef struct { qword modelType; TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV12 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolBlitTextureV12 blitTextures TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolStreakV12 streakData TPTR_END; TPTR_START ModelToolLightningV12 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START qword permutationTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelToolAnimationV12 highLodAnimations TSTRUCT_ARRAY_PTR_END; } ModelFileToolV12; /* Version: 11, ReferencedFunction: 0x140D0CC70 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV11; typedef struct { qword blitId; fileref filename; } ModelToolBlitTextureV11; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr streakNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr anchorNames TSTRUCT_ARRAY_PTR_END; } ModelToolStreakV11; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr systemNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr boltNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr nodeNames TSTRUCT_ARRAY_PTR_END; } ModelToolLightningV11; typedef struct { qword modelType; TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV11 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolBlitTextureV11 blitTextures TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolStreakV11 streakData TPTR_END; TPTR_START ModelToolLightningV11 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START qword permutationTokens TSTRUCT_ARRAY_PTR_END; } ModelFileToolV11; /* Version: 10, ReferencedFunction: 0x140D0CE20 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV10; typedef struct { qword blitId; filename filename; } ModelToolBlitTextureV10; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr streakNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr anchorNames TSTRUCT_ARRAY_PTR_END; } ModelToolStreakV10; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr systemNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr boltNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr nodeNames TSTRUCT_ARRAY_PTR_END; } ModelToolLightningV10; typedef struct { qword modelType; TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV10 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolBlitTextureV10 blitTextures TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolStreakV10 streakData TPTR_END; TPTR_START ModelToolLightningV10 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START qword permutationTokens TSTRUCT_ARRAY_PTR_END; } ModelFileToolV10; /* Version: 9 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV9; typedef struct { qword blitId; filename filename; } ModelToolBlitTextureV9; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr streakNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr anchorNames TSTRUCT_ARRAY_PTR_END; } ModelToolStreakV9; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr systemNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr boltNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr nodeNames TSTRUCT_ARRAY_PTR_END; } ModelToolLightningV9; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelToolPropertyDataV9; typedef struct { qword modelType; TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV9 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolBlitTextureV9 blitTextures TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolStreakV9 streakData TPTR_END; TPTR_START ModelToolLightningV9 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START qword permutationTokens TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelToolPropertyDataV9 properties TSTRUCT_ARRAY_PTR_END; } ModelFileToolV9; /* Version: 8 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV8; typedef struct { qword blitId; filename filename; } ModelToolBlitTextureV8; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr streakNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr anchorNames TSTRUCT_ARRAY_PTR_END; } ModelToolStreakV8; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr systemNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr boltNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr nodeNames TSTRUCT_ARRAY_PTR_END; } ModelToolLightningV8; typedef struct { qword modelType; TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV8 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolBlitTextureV8 blitTextures TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolStreakV8 streakData TPTR_END; TPTR_START ModelToolLightningV8 lightningData TPTR_END; TSTRUCT_ARRAY_PTR_START qword permutationTokens TSTRUCT_ARRAY_PTR_END; } ModelFileToolV8; /* Version: 7 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV7; typedef struct { qword blitId; filename filename; } ModelToolBlitTextureV7; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr streakNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr anchorNames TSTRUCT_ARRAY_PTR_END; } ModelToolStreakV7; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr systemNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr boltNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr nodeNames TSTRUCT_ARRAY_PTR_END; } ModelToolLightningV7; typedef struct { qword modelType; TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV7 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolBlitTextureV7 blitTextures TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolStreakV7 streakData TPTR_END; TPTR_START ModelToolLightningV7 lightningData TPTR_END; } ModelFileToolV7; /* Version: 6, ReferencedFunction: 0x140D0CDC0 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV6; typedef struct { qword blitId; filename filename; } ModelToolBlitTextureV6; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr streakNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr anchorNames TSTRUCT_ARRAY_PTR_END; } ModelToolStreakV6; typedef struct { qword modelType; TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV6 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolBlitTextureV6 blitTextures TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolStreakV6 streakData TPTR_END; } ModelFileToolV6; /* Version: 5, ReferencedFunction: 0x140D0CD90 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV5; typedef struct { qword sequence; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 values TSTRUCT_ARRAY_PTR_END; } ModelToolMotionV5; typedef struct { qword blitId; filename filename; } ModelToolBlitTextureV5; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr streakNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr anchorNames TSTRUCT_ARRAY_PTR_END; } ModelToolStreakV5; typedef struct { qword modelType; TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV5 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolMotionV5 motions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelToolBlitTextureV5 blitTextures TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolStreakV5 streakData TPTR_END; } ModelFileToolV5; /* Version: 4 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV4; typedef struct { qword sequence; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 values TSTRUCT_ARRAY_PTR_END; } ModelToolMotionV4; typedef struct { qword blitId; filename filename; } ModelToolBlitTextureV4; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr streakNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr anchorNames TSTRUCT_ARRAY_PTR_END; } ModelToolStreakV4; typedef struct { qword modelType; TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV4 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolMotionV4 motions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelToolBlitTextureV4 blitTextures TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolStreakV4 streakData TPTR_END; } ModelFileToolV4; /* Version: 3 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV3; typedef struct { qword sequence; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 values TSTRUCT_ARRAY_PTR_END; } ModelToolMotionV3; typedef struct { qword blitId; filename filename; } ModelToolBlitTextureV3; typedef struct { qword modelType; TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV3 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolMotionV3 motions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelToolBlitTextureV3 blitTextures TSTRUCT_ARRAY_PTR_END; } ModelFileToolV3; /* Version: 2 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV2; typedef struct { qword sequence; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 values TSTRUCT_ARRAY_PTR_END; } ModelToolMotionV2; typedef struct { qword blitId; filename filename; } ModelToolBlitTextureV2; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV2 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolMotionV2 motions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelToolBlitTextureV2 blitTextures TSTRUCT_ARRAY_PTR_END; } ModelFileToolV2; /* Version: 1 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV1; typedef struct { qword sequence; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 values TSTRUCT_ARRAY_PTR_END; } ModelToolMotionV1; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV1 cloudData TPTR_END; TSTRUCT_ARRAY_PTR_START ModelToolMotionV1 motions TSTRUCT_ARRAY_PTR_END; } ModelFileToolV1; /* Version: 0 */ typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr cloudNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr emitterNames TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START char_ptr obstacleNames TSTRUCT_ARRAY_PTR_END; } ModelToolCloudV0; typedef struct { TSTRUCT_ARRAY_PTR_START char_ptr materialNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelToolCloudV0 cloudData TPTR_END; } ModelFileToolV0; /* =============================================== * Chunk: ROOT, versions: 2, strucTab: 0x141DCD8C8 * =============================================== */ /* Version: 1, ReferencedFunction: 0x140D0C9B0 */ typedef struct { qword sequence; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 posValues TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float4 quatValues TSTRUCT_ARRAY_PTR_END; } ModelRootMotionV1; typedef struct { TSTRUCT_ARRAY_PTR_START ModelRootMotionV1 rootMotions TSTRUCT_ARRAY_PTR_END; } ModelFileRootMotionV1; /* Version: 0 */ typedef struct { qword sequence; TSTRUCT_ARRAY_PTR_START float keys TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 values TSTRUCT_ARRAY_PTR_END; } ModelRootMotionV0; typedef struct { TSTRUCT_ARRAY_PTR_START ModelRootMotionV0 rootMotions TSTRUCT_ARRAY_PTR_END; } ModelFileRootMotionV0; /* =============================================== * Chunk: GAME, versions: 1, strucTab: 0x141DCD8F8 * =============================================== */ /* Version: 0 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte gameData TSTRUCT_ARRAY_PTR_END; } ModelFileGame; /* =============================================== * Chunk: ICON, versions: 1, strucTab: 0x141DCD910 * =============================================== */ /* Version: 0 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte jpgData TSTRUCT_ARRAY_PTR_END; } ModelFileIcon; /* =============================================== * Chunk: SKEL, versions: 2, strucTab: 0x141DCD928 * =============================================== */ /* Version: 1, ReferencedFunction: 0x140D0CA00 */ typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformData; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformData LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneData; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneData Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelGrannySkeletonV1; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingData; typedef struct { char_ptr Name; TPTR_START ModelGrannySkeletonV1 Skeleton TPTR_END; ModelTransformData InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingData MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelGrannyModelV1; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV63; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV63 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV63; typedef struct { TSTRUCT_ARRAY_PTR_START byte mirrorSpec TSTRUCT_ARRAY_PTR_END; } PackGrannyMirrorSpecType; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType data; qword token; } ModelTrackMaskV63; typedef struct { TPTR_START ModelGrannyModelV1 grannyModel TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV63 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; PackGrannyMirrorSpecType mirrorSpec; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV63 trackMasks TSTRUCT_ARRAY_PTR_END; } ModelSkeletonDataV63; typedef struct { TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV63 boneConstraints TSTRUCT_ARRAY_PTR_END; } ModelSkeletonOverridesV1; typedef struct { TPTR_START ModelSkeletonDataV63 skeletonData TPTR_END; filename fileReference; TPTR_START ModelSkeletonOverridesV1 overrides TPTR_END; } ModelFileSkeletonV1; /* Version: 0 */ typedef struct { dword Flags; float3 Position; float4 Orientation; float3 ScaleShear[3]; } ModelTransformData; typedef struct { char_ptr Name; dword ParentIndex; ModelTransformData LocalTransform; float4 InverseWorld4x4[4]; float LODError; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelBoneData; typedef struct { char_ptr Name; TSTRUCT_ARRAY_PTR_START ModelBoneData Bones TSTRUCT_ARRAY_PTR_END; dword LODType; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelGrannySkeletonV0; typedef struct { TPTR_START byte Mesh TPTR_END; } ModelMeshBindingData; typedef struct { char_ptr Name; TPTR_START ModelGrannySkeletonV0 Skeleton TPTR_END; ModelTransformData InitialPlacement; TSTRUCT_ARRAY_PTR_START ModelMeshBindingData MeshBindings TSTRUCT_ARRAY_PTR_END; TPTR_START byte ExtendedData.Type TPTR_END; TPTR_START byte ExtendedData.Object TPTR_END; } ModelGrannyModelV0; typedef struct { float angle; float azimuth; float2 distance; qword token; } ModelBoneConstraintLinkV62; typedef struct { qword token; word flags; float twistOffset; float animBlend; float drag; float ellipseRatio; float gravity; float collisionRadius; float wind; float2 angle; float angleStrength; byte angleType; float2 distanceInner; float distanceInnerStrength; byte distanceInnerType; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintLinkV62 links TSTRUCT_ARRAY_PTR_END; float2 distanceOuter; float distanceOuterStrength; byte distanceOuterType; float2 twist; float twistStrength; byte twistType; } ModelBoneConstraintV62; typedef struct { qword boneLeft; qword boneRight; } ModelBoneSymmetryV62; typedef struct { TSTRUCT_ARRAY_PTR_START byte trackMask TSTRUCT_ARRAY_PTR_END; } PackGrannyTrackMaskType; typedef struct { PackGrannyTrackMaskType data; qword token; } ModelTrackMaskV62; typedef struct { TPTR_START ModelGrannyModelV0 grannyModel TPTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneConstraintV62 boneConstraints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword boneFlags TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelBoneSymmetryV62 boneSymmetries TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword emitterBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelTrackMaskV62 trackMasks TSTRUCT_ARRAY_PTR_END; } ModelSkeletonDataV62; typedef struct { TPTR_START ModelSkeletonDataV62 skeletonData TPTR_END; filename fileReference; } ModelFileSkeletonV0; /* =============================================== * Chunk: PRPS, versions: 1, strucTab: 0x141DCD958 * =============================================== */ /* Version: 0 */ typedef struct { qword name; qword parentBone; float3 translation; } ModelFixedOffsetData; typedef struct { qword id; dword type; dword mergeIndex; float time; qword val; filename strVal; } ModelPropertyData; typedef struct { TSTRUCT_ARRAY_PTR_START ModelFixedOffsetData fixedOffsetData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelPropertyData properties TSTRUCT_ARRAY_PTR_END; } ModelFileProperties; /* =============================================== * Chunk: GEOM, versions: 2, strucTab: 0x141DCD970 * =============================================== */ /* Version: 1, ReferencedFunction: 0x140D0B560 */ typedef struct { word index; float3 vector; } ModelMeshMorphVertV66; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV66 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV66 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV66; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { dword vertexCount; PackVertexType mesh; } ModelMeshVertexDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshIndexDataV1; typedef struct { ModelMeshVertexDataV1 verts; ModelMeshIndexDataV1 indices; TSTRUCT_ARRAY_PTR_START ModelMeshIndexDataV1 lods TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword transforms TSTRUCT_ARRAY_PTR_END; } ModelMeshGeometryV1; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV66 morphTargets TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; TSTRUCT_ARRAY_PTR_START qword boneBindings TSTRUCT_ARRAY_PTR_END; TPTR_START ModelMeshGeometryV1 geometry TPTR_END; } ModelMeshDataV66; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV66 meshes TSTRUCT_PTR_ARRAY_PTR_END; } ModelFileGeometryV1; /* Version: 0 */ typedef struct { word index; float3 vector; } ModelMeshMorphVertV65; typedef struct { TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV65 positions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ModelMeshMorphVertV65 normals TSTRUCT_ARRAY_PTR_END; qword mesh; } ModelMeshMorphTargetV65; typedef struct { float3 center; float3 boxExtent; float sphereRadius; } GrBoundData; typedef struct { dword fvf; TSTRUCT_ARRAY_PTR_START byte vertices TSTRUCT_ARRAY_PTR_END; } PackVertexType; typedef struct { dword vertexCount; PackVertexType mesh; } ModelMeshVertexDataV0; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; } ModelMeshIndexDataV0; typedef struct { ModelMeshVertexDataV0 verts; ModelMeshIndexDataV0 indices; TSTRUCT_ARRAY_PTR_START ModelMeshIndexDataV0 lods TSTRUCT_ARRAY_PTR_END; } ModelMeshGeometryV0; typedef struct { qword visBone; TSTRUCT_ARRAY_PTR_START ModelMeshMorphTargetV65 morphTargets TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START dword seamVertIndices TSTRUCT_ARRAY_PTR_END; qword meshName; float3 minBound; float3 maxBound; TSTRUCT_ARRAY_PTR_START GrBoundData bounds TSTRUCT_ARRAY_PTR_END; dword materialIndex; char_ptr materialName; TSTRUCT_ARRAY_PTR_START char_ptr boneNames TSTRUCT_ARRAY_PTR_END; TPTR_START ModelMeshGeometryV0 geometry TPTR_END; } ModelMeshDataV65; typedef struct { TSTRUCT_PTR_ARRAY_PTR_START ModelMeshDataV65 meshes TSTRUCT_PTR_ARRAY_PTR_END; } ModelFileGeometryV0; /* =============================================== * Chunk: EXPA, versions: 4, strucTab: 0x141DCD9A0 * =============================================== */ /* Version: 3 */ typedef struct { qword bone; qword shape; dword flags; } ModelFileSnapPointV3; typedef struct { float curl; float vortexSize; dword curlQuality; dword curlFlags; float fieldScale; } ModelExpansionEmitterV3; typedef struct { TSTRUCT_ARRAY_PTR_START ModelFileSnapPointV3 snapPoints TSTRUCT_ARRAY_PTR_END; float snapPointPriority; TSTRUCT_ARRAY_PTR_START ModelExpansionEmitterV3 emitters TSTRUCT_ARRAY_PTR_END; } ModelFileExpansionV3; /* Version: 2 */ typedef struct { qword bone; qword shape; } ModelFileSnapPointV2; typedef struct { float curl; float vortexSize; dword curlQuality; dword curlFlags; float fieldScale; } ModelExpansionEmitterV2; typedef struct { TSTRUCT_ARRAY_PTR_START ModelFileSnapPointV2 snapPoints TSTRUCT_ARRAY_PTR_END; float snapPointPriority; TSTRUCT_ARRAY_PTR_START ModelExpansionEmitterV2 emitters TSTRUCT_ARRAY_PTR_END; } ModelFileExpansionV2; /* Version: 1 */ typedef struct { qword bone; } ModelFileSnapPointV1; typedef struct { float curl; float vortexSize; dword curlQuality; dword curlFlags; float fieldScale; } ModelExpansionEmitterV1; typedef struct { TSTRUCT_ARRAY_PTR_START ModelFileSnapPointV1 snapPoints TSTRUCT_ARRAY_PTR_END; float snapPointPriority; TSTRUCT_ARRAY_PTR_START ModelExpansionEmitterV1 emitters TSTRUCT_ARRAY_PTR_END; } ModelFileExpansionV1; /* Version: 0 */ typedef struct { qword bone; } ModelFileSnapPointV0; typedef struct { float curl; float vortexSize; } ModelExpansionEmitterV0; typedef struct { TSTRUCT_ARRAY_PTR_START ModelFileSnapPointV0 snapPoints TSTRUCT_ARRAY_PTR_END; float snapPointPriority; TSTRUCT_ARRAY_PTR_START ModelExpansionEmitterV0 emitters TSTRUCT_ARRAY_PTR_END; } ModelFileExpansionV0; /* =============================================== * Chunk: PHYS, versions: 9, strucTab: 0x141EF8040 * =============================================== */ /* Version: 8 */ typedef struct { float3 dimensions; float3 position; float4 rotation; } SceneBoxShapeV8; typedef struct { float3 center; float radius; } SceneSphereShapeV8; typedef struct { float3 p0; float3 p1; float radius; } SceneCapsuleShapeV8; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } SceneMeshShapeV8; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } SceneSurfaceV8; typedef struct { TSTRUCT_ARRAY_PTR_START SceneBoxShapeV8 boxes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneSphereShapeV8 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneCapsuleShapeV8 capsules TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneMeshShapeV8 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneSurfaceV8 surfaces TSTRUCT_ARRAY_PTR_END; } SceneFilePhysicsV8; /* Version: 7 */ typedef struct { float3 dimensions; float3 position; float4 rotation; } SceneBoxShapeV7; typedef struct { float3 center; float radius; } SceneSphereShapeV7; typedef struct { float3 p0; float3 p1; float radius; } SceneCapsuleShapeV7; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; } SceneMeshShapeV7; typedef struct { TSTRUCT_ARRAY_PTR_START SceneBoxShapeV7 boxes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneSphereShapeV7 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneCapsuleShapeV7 capsules TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneMeshShapeV7 meshes TSTRUCT_ARRAY_PTR_END; } SceneFilePhysicsV7; /* Version: 6 */ typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } SceneShapeSurfaceV6; typedef struct { byte surface; float3 dimensions; float3 position; float4 rotation; } SceneBoxShapeV6; typedef struct { byte surface; float3 center; float radius; } SceneSphereShapeV6; typedef struct { byte surface; float3 p0; float3 p1; float radius; } SceneCapsuleShapeV6; typedef struct { TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; } SceneMeshShapeV6; typedef struct { dword shapeIndex; } SceneCollisionShapeV6; typedef struct { dword shapeIndex; dword flags; } SceneTriggerShapeV6; typedef struct { dword shapeIndex; } SceneNamedShapeV6; typedef struct { TSTRUCT_ARRAY_PTR_START SceneShapeSurfaceV6 surfaces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneBoxShapeV6 boxes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneSphereShapeV6 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneCapsuleShapeV6 capsules TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneMeshShapeV6 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneCollisionShapeV6 collisionShapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneTriggerShapeV6 triggerShapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneNamedShapeV6 namedShapes TSTRUCT_ARRAY_PTR_END; } SceneFilePhysicsV6; /* Version: 5 */ typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } SceneShapeSurfaceV5; typedef struct { byte surface; float3 dimensions; float3 position; float4 rotation; } SceneBoxShapeV5; typedef struct { byte surface; float3 center; float radius; } SceneSphereShapeV5; typedef struct { TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; } SceneMeshShapeV5; typedef struct { dword shapeIndex; } SceneCollisionShapeV5; typedef struct { dword shapeIndex; dword flags; } SceneTriggerShapeV5; typedef struct { dword shapeIndex; } SceneNamedShapeV5; typedef struct { TSTRUCT_ARRAY_PTR_START SceneShapeSurfaceV5 surfaces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneBoxShapeV5 boxes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneSphereShapeV5 spheres TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneMeshShapeV5 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneCollisionShapeV5 collisionShapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneTriggerShapeV5 triggerShapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneNamedShapeV5 namedShapes TSTRUCT_ARRAY_PTR_END; } SceneFilePhysicsV5; /* Version: 4 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } SceneShapeV4; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } SceneShapeSurfaceV4; typedef struct { dword shapeIndex; } SceneCollisionShapeV4; typedef struct { dword shapeIndex; dword flags; } SceneTriggerShapeV4; typedef struct { dword shapeIndex; } SceneNamedShapeV4; typedef struct { TSTRUCT_ARRAY_PTR_START byte shapeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneShapeV4 shapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneShapeSurfaceV4 surfaces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneCollisionShapeV4 collisionShapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneTriggerShapeV4 triggerShapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneNamedShapeV4 namedShapes TSTRUCT_ARRAY_PTR_END; } SceneFilePhysicsV4; /* Version: 3 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } SceneShapeV3; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } SceneShapeSurfaceV3; typedef struct { dword shapeIndex; } SceneCollisionShapeV3; typedef struct { dword shapeIndex; dword flags; } SceneTriggerShapeV3; typedef struct { dword shapeIndex; } SceneNamedShapeV3; typedef struct { TSTRUCT_ARRAY_PTR_START float4 pathData TSTRUCT_ARRAY_PTR_END; } ScenePathPhysicsV3; typedef struct { TSTRUCT_ARRAY_PTR_START byte shapeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneShapeV3 shapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneShapeSurfaceV3 surfaces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneCollisionShapeV3 collisionShapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneTriggerShapeV3 triggerShapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneNamedShapeV3 namedShapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePathPhysicsV3 paths TSTRUCT_ARRAY_PTR_END; } SceneFilePhysicsV3; /* Version: 2 */ typedef struct { dword shapeOffset; } SceneShapeV2; typedef struct { dword shapeIndex; } SceneCollisionShapeV2; typedef struct { dword shapeIndex; } SceneQueryShapeV2; typedef struct { dword shapeIndex; } SceneNamedShapeV2; typedef struct { TSTRUCT_ARRAY_PTR_START float4 pathData TSTRUCT_ARRAY_PTR_END; } ScenePathPhysicsV2; typedef struct { TSTRUCT_ARRAY_PTR_START byte shapeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneShapeV2 shapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneCollisionShapeV2 collisionShapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneQueryShapeV2 queryShapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneNamedShapeV2 namedShapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePathPhysicsV2 paths TSTRUCT_ARRAY_PTR_END; } SceneFilePhysicsV2; /* Version: 1 */ typedef struct { dword shapeOffset; } SceneShapeV1; typedef struct { dword shapeIndex; } SceneCollisionShapeV1; typedef struct { dword shapeIndex; } SceneNamedShapeV1; typedef struct { TSTRUCT_ARRAY_PTR_START float4 pathData TSTRUCT_ARRAY_PTR_END; } ScenePathPhysicsV1; typedef struct { TSTRUCT_ARRAY_PTR_START byte shapeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneShapeV1 shapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneCollisionShapeV1 collisionShapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneNamedShapeV1 namedShapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePathPhysicsV1 paths TSTRUCT_ARRAY_PTR_END; } SceneFilePhysicsV1; /* Version: 0 */ typedef struct { dword shapeOffset; } SceneShapeV0; typedef struct { dword shapeIndex; } SceneCollisionShapeV0; typedef struct { dword shapeIndex; } SceneNamedShapeV0; typedef struct { TSTRUCT_ARRAY_PTR_START byte shapeData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneShapeV0 shapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneCollisionShapeV0 collisionShapes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneNamedShapeV0 namedShapes TSTRUCT_ARRAY_PTR_END; } SceneFilePhysicsV0; /* =============================================== * Chunk: ANIM, versions: 3, strucTab: 0x141EF8120 * =============================================== */ /* Version: 2 */ typedef struct { float time; float3 position; float4 rotation; } SceneKeyframeV2; typedef struct { TSTRUCT_ARRAY_PTR_START SceneKeyframeV2 keys TSTRUCT_ARRAY_PTR_END; } SceneMotionV2; typedef struct { qword name; SceneMotionV2 motion; } SceneActionPointV2; typedef struct { qword name; float time; } SceneAnimationEventV2; typedef struct { qword name; SceneMotionV2 motion; TSTRUCT_ARRAY_PTR_START SceneActionPointV2 actionPoints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneAnimationEventV2 events TSTRUCT_ARRAY_PTR_END; } SceneAnimationV2; typedef struct { qword name; float3 translation; float4 rotation; } SceneTransformV2; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START SceneTransformV2 transforms TSTRUCT_ARRAY_PTR_END; } ScenePoseV2; typedef struct { qword name; } SceneImportSequenceV2; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START SceneImportSequenceV2 animNames TSTRUCT_ARRAY_PTR_END; dword flags; } SceneAnimationImportV2; typedef struct { TSTRUCT_ARRAY_PTR_START SceneAnimationV2 animations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePoseV2 poses TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneAnimationImportV2 imports TSTRUCT_ARRAY_PTR_END; } SceneFileAnimationV2; /* Version: 1 */ typedef struct { float time; float3 position; float4 rotation; } SceneKeyframeV1; typedef struct { TSTRUCT_ARRAY_PTR_START SceneKeyframeV1 keys TSTRUCT_ARRAY_PTR_END; } SceneMotionV1; typedef struct { qword name; SceneMotionV1 motion; } SceneActionPointV1; typedef struct { qword name; float time; } SceneAnimationEventV1; typedef struct { qword name; SceneMotionV1 motion; TSTRUCT_ARRAY_PTR_START SceneActionPointV1 actionPoints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneAnimationEventV1 events TSTRUCT_ARRAY_PTR_END; } SceneAnimationV1; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword animNames TSTRUCT_ARRAY_PTR_END; } SceneAnimationImportV1; typedef struct { TSTRUCT_ARRAY_PTR_START SceneAnimationV1 animations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneAnimationImportV1 imports TSTRUCT_ARRAY_PTR_END; } SceneFileAnimationV1; /* Version: 0 */ typedef struct { float time; float3 position; float4 rotation; } SceneKeyframeV0; typedef struct { TSTRUCT_ARRAY_PTR_START SceneKeyframeV0 keys TSTRUCT_ARRAY_PTR_END; } SceneMotionV0; typedef struct { qword name; SceneMotionV0 motion; } SceneActionPointV0; typedef struct { qword name; SceneMotionV0 motion; TSTRUCT_ARRAY_PTR_START SceneActionPointV0 actionPoints TSTRUCT_ARRAY_PTR_END; } SceneAnimationV0; typedef struct { filename filename; TSTRUCT_ARRAY_PTR_START qword animNames TSTRUCT_ARRAY_PTR_END; } SceneAnimationImportV0; typedef struct { TSTRUCT_ARRAY_PTR_START SceneAnimationV0 animations TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneAnimationImportV0 imports TSTRUCT_ARRAY_PTR_END; } SceneFileAnimationV0; /* =============================================== * Chunk: GAME, versions: 7, strucTab: 0x141EF8170 * =============================================== */ /* Version: 6 */ typedef struct { float3 position; float4 rotation; dword flags; float smoothing; byte singlesided; } ScenePathNodeV6; typedef struct { TSTRUCT_ARRAY_PTR_START qword properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePathNodeV6 points TSTRUCT_ARRAY_PTR_END; byte closed; } ScenePathV6; typedef struct { dword indices[2]; TSTRUCT_ARRAY_PTR_START dword triangles TSTRUCT_ARRAY_PTR_END; } SceneEdgeV6; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneEdgeV6 edges TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte surfaces TSTRUCT_ARRAY_PTR_END; } SceneGameMeshV6; typedef struct { TSTRUCT_ARRAY_PTR_START qword tokens TSTRUCT_ARRAY_PTR_END; } SceneGameSurfaceV6; typedef struct { TSTRUCT_ARRAY_PTR_START ScenePathV6 paths TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameMeshV6 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameSurfaceV6 surfaces TSTRUCT_ARRAY_PTR_END; } SceneFileGameV6; /* Version: 5 */ typedef struct { float3 position; float4 rotation; float radius; dword flags; float smoothing; byte singlesided; } ScenePathNodeV5; typedef struct { TSTRUCT_ARRAY_PTR_START qword properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePathNodeV5 points TSTRUCT_ARRAY_PTR_END; byte closed; } ScenePathV5; typedef struct { dword indices[2]; TSTRUCT_ARRAY_PTR_START dword triangles TSTRUCT_ARRAY_PTR_END; } SceneEdgeV5; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneEdgeV5 edges TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword surfaceFlags TSTRUCT_ARRAY_PTR_END; } SceneGameMeshV5; typedef struct { TSTRUCT_ARRAY_PTR_START ScenePathV5 paths TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameMeshV5 meshes TSTRUCT_ARRAY_PTR_END; } SceneFileGameV5; /* Version: 4 */ typedef struct { float3 position; float4 rotation; float radius; dword flags; float smoothing; byte singlesided; } ScenePathNodeV4; typedef struct { TSTRUCT_ARRAY_PTR_START qword properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePathNodeV4 points TSTRUCT_ARRAY_PTR_END; byte closed; } ScenePathV4; typedef struct { dword indices[2]; TSTRUCT_ARRAY_PTR_START dword triangles TSTRUCT_ARRAY_PTR_END; } SceneEdgeV4; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneEdgeV4 edges TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword surfaceFlags TSTRUCT_ARRAY_PTR_END; } SceneGameMeshV4; typedef struct { float3 position; float4 rotation; float radius; dword flags; float smoothing; } SceneGrabNodeV4; typedef struct { TSTRUCT_ARRAY_PTR_START ScenePathV4 paths TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameMeshV4 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGrabNodeV4 grabPoints TSTRUCT_ARRAY_PTR_END; } SceneFileGameV4; /* Version: 3 */ typedef struct { float3 position; float4 rotation; float radius; dword flags; float smoothing; } ScenePathNodeV3; typedef struct { TSTRUCT_ARRAY_PTR_START qword properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePathNodeV3 points TSTRUCT_ARRAY_PTR_END; byte closed; } ScenePathV3; typedef struct { dword indices[2]; TSTRUCT_ARRAY_PTR_START dword triangles TSTRUCT_ARRAY_PTR_END; } SceneEdgeV3; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneEdgeV3 edges TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword surfaceFlags TSTRUCT_ARRAY_PTR_END; } SceneGameMeshV3; typedef struct { float3 position; float4 rotation; float radius; dword flags; float smoothing; } SceneGrabNodeV3; typedef struct { TSTRUCT_ARRAY_PTR_START ScenePathV3 paths TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameMeshV3 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGrabNodeV3 grabPoints TSTRUCT_ARRAY_PTR_END; } SceneFileGameV3; /* Version: 2 */ typedef struct { float3 position; float4 rotation; float radius; dword flags; float smoothing; } ScenePathNodeV2; typedef struct { TSTRUCT_ARRAY_PTR_START qword properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePathNodeV2 points TSTRUCT_ARRAY_PTR_END; byte closed; } ScenePathV2; typedef struct { dword indices[2]; TSTRUCT_ARRAY_PTR_START dword triangles TSTRUCT_ARRAY_PTR_END; } SceneEdgeV2; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneEdgeV2 edges TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; } SceneGameMeshV2; typedef struct { float3 position; float4 rotation; float radius; dword flags; float smoothing; } SceneGrabNodeV2; typedef struct { TSTRUCT_ARRAY_PTR_START ScenePathV2 paths TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameMeshV2 meshes TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGrabNodeV2 grabPoints TSTRUCT_ARRAY_PTR_END; } SceneFileGameV2; /* Version: 1 */ typedef struct { float3 position; float4 rotation; float radius; dword flags; float smoothing; } ScenePathNodeV1; typedef struct { TSTRUCT_ARRAY_PTR_START qword properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePathNodeV1 points TSTRUCT_ARRAY_PTR_END; byte closed; } ScenePathV1; typedef struct { dword indices[2]; TSTRUCT_ARRAY_PTR_START dword triangles TSTRUCT_ARRAY_PTR_END; } SceneEdgeV1; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneEdgeV1 edges TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; } SceneGameMeshV1; typedef struct { TSTRUCT_ARRAY_PTR_START ScenePathV1 paths TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameMeshV1 meshes TSTRUCT_ARRAY_PTR_END; } SceneFileGameV1; /* Version: 0 */ typedef struct { float3 position; float4 rotation; float radius; dword flags; } ScenePathNodeV0; typedef struct { TSTRUCT_ARRAY_PTR_START qword properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ScenePathNodeV0 points TSTRUCT_ARRAY_PTR_END; byte closed; } ScenePathV0; typedef struct { dword indices[2]; TSTRUCT_ARRAY_PTR_START dword triangles TSTRUCT_ARRAY_PTR_END; } SceneEdgeV0; typedef struct { TSTRUCT_ARRAY_PTR_START word indices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START float3 vertices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneEdgeV0 edges TSTRUCT_ARRAY_PTR_END; float4 moppInfo; TSTRUCT_ARRAY_PTR_START byte moppBytes TSTRUCT_ARRAY_PTR_END; } SceneGameMeshV0; typedef struct { TSTRUCT_ARRAY_PTR_START ScenePathV0 paths TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneGameMeshV0 meshes TSTRUCT_ARRAY_PTR_END; } SceneFileGameV0; /* =============================================== * Chunk: SKEL, versions: 4, strucTab: 0x141EF8220 * =============================================== */ /* Version: 3 */ typedef struct { float3 vertexA; float3 vertexB; float radius; float mass; qword name; } SceneBoneV3; typedef struct { dword bones[2]; float3 pivots[2]; float3 twists[2]; float3 planes[2]; float coneLimit; float planeMin; float planeMax; float twistMin; float twistMax; } SceneJointV3; typedef struct { dword bones[2]; float3 pivots[2]; float3 hinges[2]; float3 normals[2]; float limitMin; float limitMax; } SceneHingeJointV3; typedef struct { TSTRUCT_ARRAY_PTR_START SceneBoneV3 bones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneJointV3 joints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneHingeJointV3 hingeJoints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword ragdollToModel TSTRUCT_ARRAY_PTR_END; } SceneFileSkeletonV3; /* Version: 2 */ typedef struct { float3 vertexA; float3 vertexB; float radius; float mass; } SceneBoneV2; typedef struct { dword bones[2]; float3 pivots[2]; float3 twists[2]; float3 planes[2]; float coneLimit; float planeMin; float planeMax; float twistMin; float twistMax; } SceneJointV2; typedef struct { dword bones[2]; float3 pivots[2]; float3 hinges[2]; float3 normals[2]; float limitMin; float limitMax; } SceneHingeJointV2; typedef struct { TSTRUCT_ARRAY_PTR_START SceneBoneV2 bones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneJointV2 joints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneHingeJointV2 hingeJoints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword ragdollToModel TSTRUCT_ARRAY_PTR_END; } SceneFileSkeletonV2; /* Version: 1 */ typedef struct { float3 vertexA; float3 vertexB; float radius; float mass; } SceneBoneV1; typedef struct { dword bones[2]; float3 pivots[2]; float3 twists[2]; float3 planes[2]; float coneLimit; float planeMin; float planeMax; float twistMin; float twistMax; } SceneJointV1; typedef struct { dword bones[2]; float3 pivots[2]; float3 hinges[2]; float3 normals[2]; float limitMin; float limitMax; } SceneHingeJointV1; typedef struct { dword modelBoneIndex; dword sceneBoneIndex; float4 localPose[3]; } SceneUnmappedBoneV1; typedef struct { TSTRUCT_ARRAY_PTR_START SceneBoneV1 bones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneJointV1 joints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneHingeJointV1 hingeJoints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneUnmappedBoneV1 unmappedBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword ragdollToModel TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword modelToRagdoll TSTRUCT_ARRAY_PTR_END; } SceneFileSkeletonV1; /* Version: 0 */ typedef struct { float3 vertexA; float3 vertexB; float radius; float mass; } SceneBoneV0; typedef struct { dword bones[2]; float3 pivots[2]; float3 twists[2]; float3 planes[2]; float coneLimit; float planeMin; float planeMax; float twistMin; float twistMax; } SceneJointV0; typedef struct { dword modelBoneIndex; dword sceneBoneIndex; float4 localPose[3]; } SceneUnmappedBoneV0; typedef struct { TSTRUCT_ARRAY_PTR_START SceneBoneV0 bones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneJointV0 joints TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START SceneUnmappedBoneV0 unmappedBones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword ragdollToModel TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword modelToRagdoll TSTRUCT_ARRAY_PTR_END; } SceneFileSkeletonV0; /* =============================================== * Chunk: MFST, versions: 7, strucTab: 0x141EFE690 * =============================================== */ /* Version: 6 */ typedef struct { dword baseId; dword fileId; dword size; dword flags; } PackAssetManifestRecord; typedef struct { dword parentBaseId; dword streamBaseId; } PackAssetManifestStream; typedef struct { byte type; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; } PackAssetManifestProperty; typedef struct { dword baseId; dword properyIndex; } PackAssetManifestPropertyIndex; typedef struct { dword buildId; qword totalRecordSize; TSTRUCT_ARRAY_PTR_START PackAssetManifestRecord records TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetManifestStream streams TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetManifestProperty properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetManifestPropertyIndex propertyTable TSTRUCT_ARRAY_PTR_END; } PackAssetManifest; /* Version: 5 */ typedef struct { dword baseId; dword fileId; dword size; dword flags; } PackAssetManifestRecordV5; typedef struct { dword parentBaseId; dword streamBaseId; } PackAssetManifestStreamV5; typedef struct { byte type; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; } PackAssetManifestPropertyV5; typedef struct { dword baseId; dword properyIndex; } PackAssetManifestPropertyIndexV5; typedef struct { dword buildId; TSTRUCT_ARRAY_PTR_START PackAssetManifestRecordV5 records TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetManifestStreamV5 streams TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetManifestPropertyV5 properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetManifestPropertyIndexV5 propertyTable TSTRUCT_ARRAY_PTR_END; } PackAssetManifestV5; /* Version: 4 */ typedef struct { dword baseId; dword fileId; dword size; dword flags; } PackAssetManifestRecordV4; typedef struct { dword parentBaseId; dword streamBaseId; } PackAssetManifestStreamV4; typedef struct { dword baseId; dword fileId; dword flags; } PackAssetManifestOptionsV4; typedef struct { byte type; TSTRUCT_ARRAY_PTR_START byte data TSTRUCT_ARRAY_PTR_END; } PackAssetManifestPropertyV4; typedef struct { dword baseId; dword properyIndex; } PackAssetManifestPropertyIndexV4; typedef struct { dword buildId; TSTRUCT_ARRAY_PTR_START PackAssetManifestRecordV4 records TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetManifestStreamV4 streams TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetManifestOptionsV4 options TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetManifestPropertyV4 properties TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetManifestPropertyIndexV4 propertyTable TSTRUCT_ARRAY_PTR_END; } PackAssetManifestV4; /* Version: 3 */ typedef struct { dword baseId; dword fileId; dword size; } PackAssetManifestRecordV3; typedef struct { dword parentBaseId; dword streamBaseId; } PackAssetManifestStreamV3; typedef struct { dword baseId; dword fileId; dword flags; } PackAssetManifestOptionsV3; typedef struct { dword buildId; TSTRUCT_ARRAY_PTR_START PackAssetManifestRecordV3 records TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetManifestStreamV3 streams TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetManifestOptionsV3 options TSTRUCT_ARRAY_PTR_END; } PackAssetManifestV3; /* Version: 2 */ typedef struct { dword baseId; dword fileId; dword size; } PackAssetManifestRecordV2; typedef struct { dword parentBaseId; dword streamBaseId; } PackAssetManifestStreamV2; typedef struct { dword buildId; TSTRUCT_ARRAY_PTR_START PackAssetManifestRecordV2 records TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetManifestStreamV2 streams TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetManifestRecordV2 noDeltaRecords TSTRUCT_ARRAY_PTR_END; } PackAssetManifestV2; /* Version: 1 */ typedef struct { dword baseId; dword fileId; dword size; } PackAssetManifestRecordV1; typedef struct { dword parentBaseId; dword streamBaseId; } PackAssetManifestStreamV1; typedef struct { dword buildId; TSTRUCT_ARRAY_PTR_START PackAssetManifestRecordV1 records TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetManifestStreamV1 streams TSTRUCT_ARRAY_PTR_END; } PackAssetManifestV1; /* Version: 0 */ typedef struct { dword baseId; dword fileId; dword size; } PackAssetManifestRecordV0; typedef struct { dword buildId; TSTRUCT_ARRAY_PTR_START PackAssetManifestRecordV0 records TSTRUCT_ARRAY_PTR_END; } PackAssetManifestV0; /* =============================================== * Chunk: ARMF, versions: 2, strucTab: 0x141EFE748 * =============================================== */ /* Version: 1 */ typedef struct { dword baseId; dword fileId; dword size; dword flags; wchar_ptr name; } PackAssetManifestFile; typedef struct { dword baseId; dword fileId; dword size; dword fileType; } PackAssetExtraFile; typedef struct { dword buildId; TSTRUCT_ARRAY_PTR_START PackAssetManifestFile manifests TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAssetExtraFile extraFiles TSTRUCT_ARRAY_PTR_END; } PackAssetRootManifest; /* Version: 0 */ typedef struct { dword baseId; dword fileId; dword size; dword fileType; } PackAssetExtraFile; typedef struct { dword buildId; TSTRUCT_ARRAY_PTR_START PackAssetExtraFile extraFiles TSTRUCT_ARRAY_PTR_END; } PackAssetRootManifestV0; /* =============================================== * Chunk: TKAC, versions: 1, strucTab: 0x141F00120 * =============================================== */ /* Version: 0 */ typedef struct { dword assetType; dword assetId; qword key; } KeyEntry; typedef struct { TSTRUCT_ARRAY_PTR_START KeyEntry keyEntryArr TSTRUCT_ARRAY_PTR_END; } KeyTableData; /* =============================================== * Chunk: main, versions: 1, strucTab: 0x141F56FC0 * =============================================== */ /* Version: 0 */ typedef struct { float3 boundsMin; float3 boundsMax; filename chunkFilename; } CollideNavMeshChunkRef; typedef struct { float3 boundsMin; float3 boundsMax; dword2 chunkDims; TSTRUCT_ARRAY_PTR_START CollideNavMeshChunkRef chunkRefArray TSTRUCT_ARRAY_PTR_END; } CollideNavMesh; /* =============================================== * Chunk: main, versions: 1, strucTab: 0x141F56FE8 * =============================================== */ /* Version: 0 */ typedef struct { TSTRUCT_ARRAY_PTR_START byte navMeshData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte coarseGraphData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte queryMediatorMoppData TSTRUCT_ARRAY_PTR_END; } CollideNavMeshChunk; /* =============================================== * Chunk: main, versions: 2, strucTab: 0x141F57010 * =============================================== */ /* Version: 1 */ typedef struct { wchar_ptr modelFileStr; fileref modelFile; fileref collisionFile; TSTRUCT_ARRAY_PTR_START float scales TSTRUCT_ARRAY_PTR_END; } CollideModelManifestFile; typedef struct { TSTRUCT_ARRAY_PTR_START CollideModelManifestFile files TSTRUCT_ARRAY_PTR_END; } CollideModelManifest; /* Version: 0 */ typedef struct { fileref modelFile; fileref collisionFile; TSTRUCT_ARRAY_PTR_START float scales TSTRUCT_ARRAY_PTR_END; } CollideModelManifestFile; typedef struct { TSTRUCT_ARRAY_PTR_START CollideModelManifestFile files TSTRUCT_ARRAY_PTR_END; } CollideModelManifest; /* =============================================== * Chunk: comp, versions: 20, strucTab: 0x141F62130 * =============================================== */ /* Version: 19 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV20; typedef struct { qword name; byte flags; float max; float min; float3 rotate; float3 scale; float3 translate; } PackCompositeBoneScaleParamV20; typedef struct { qword name; float value; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleParamV20 Bone TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleRegionV20; typedef struct { qword name; float value; } PackCompositeMorphWeightV20; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleRegionV20 BodyRegion TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeMorphWeightV20 MorphWeight TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleV20; typedef struct { wchar_ptr fileName; } PackCompositeBoneScaleFileV20; typedef struct { qword name; byte type; byte flags; qword animRoleOverride; fileref meshBase; fileref meshOverlap; fileref maskDye1; fileref maskDye2; fileref maskDye3; fileref maskDye4; fileref maskCut; fileref textureBase; fileref textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; byte blitRectIndex; } PackCompositeFileDataV20; typedef struct { fileref chest; fileref face; fileref feet; fileref hands; fileref legs; fileref ears; } PackCompositeSkinPatternV20; typedef struct { qword chest; qword feet; qword hands; qword legs; } PackCompositeSkinStyleV20; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV20; typedef struct { qword nameToken; PackCompositeColorV20 color0; PackCompositeColorV20 color1; PackCompositeColorV20 color2; PackCompositeColorV20 color3; } PackCompositeVariantComponentV20; typedef struct { qword token; dword boneScaleIndex; TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV20 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV20 eyeColor; PackCompositeColorV20 hairColor; PackCompositeColorV20 hairColor2; PackCompositeColorV20 patternColor; PackCompositeColorV20 skinColor; dword skinIndex; dword skinStyle; } PackCompositeVariantV20; typedef struct { qword animRole; fileref filepath; } PackCompositeAnimOverrideV20; typedef struct { wchar_ptr name; qword nameToken; qword baseHeadToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV20 bodyBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleFileV20 bodyBoneScaleFiles TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; wchar_ptr eyeColorPalette; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV20 faceBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV20 fileData TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; fileref skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV20 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; wchar_ptr skinPatternPalette; TSTRUCT_ARRAY_PTR_START PackCompositeSkinStyleV20 skinStyles TSTRUCT_ARRAY_PTR_END; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV20 variants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeAnimOverrideV20 animOverrides TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV20; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV20 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV20 boneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV20 raceSexData TSTRUCT_ARRAY_PTR_END; word configVersion; } PackCompositeV20; /* Version: 18 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV18; typedef struct { qword name; byte flags; float max; float min; float3 rotate; float3 scale; float3 translate; } PackCompositeBoneScaleParamV18; typedef struct { qword name; float value; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleParamV18 Bone TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleRegionV18; typedef struct { qword name; float value; } PackCompositeMorphWeightV18; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleRegionV18 BodyRegion TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeMorphWeightV18 MorphWeight TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleV18; typedef struct { wchar_ptr fileName; } PackCompositeBoneScaleFileV18; typedef struct { qword name; byte type; byte flags; qword animRoleOverride; fileref meshBase; fileref meshOverlap; fileref maskDye1; fileref maskDye2; fileref maskDye3; fileref maskDye4; fileref maskCut; fileref textureBase; fileref textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; byte blitRectIndex; } PackCompositeFileDataV18; typedef struct { fileref chest; fileref face; fileref feet; fileref hands; fileref legs; fileref ears; } PackCompositeSkinPatternV18; typedef struct { qword chest; qword feet; qword hands; qword legs; } PackCompositeSkinStyleV18; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV18; typedef struct { qword nameToken; PackCompositeColorV18 color0; PackCompositeColorV18 color1; PackCompositeColorV18 color2; PackCompositeColorV18 color3; } PackCompositeVariantComponentV18; typedef struct { qword token; dword boneScaleIndex; TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV18 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV18 eyeColor; PackCompositeColorV18 hairColor; PackCompositeColorV18 hairColor2; PackCompositeColorV18 patternColor; PackCompositeColorV18 skinColor; dword skinIndex; } PackCompositeVariantV18; typedef struct { qword animRole; fileref filepath; } PackCompositeAnimOverrideV18; typedef struct { wchar_ptr name; qword nameToken; qword baseHeadToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV18 bodyBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleFileV18 bodyBoneScaleFiles TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; wchar_ptr eyeColorPalette; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV18 faceBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV18 fileData TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; fileref skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV18 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; wchar_ptr skinPatternPalette; TSTRUCT_ARRAY_PTR_START PackCompositeSkinStyleV18 skinStyles TSTRUCT_ARRAY_PTR_END; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV18 variants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeAnimOverrideV18 animOverrides TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV18; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV18 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV18 boneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV18 raceSexData TSTRUCT_ARRAY_PTR_END; word configVersion; } PackCompositeV18; /* Version: 17, ReferencedFunction: 0x140FB32E0 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV17; typedef struct { qword name; byte flags; float max; float min; float3 rotate; float3 scale; float3 translate; } PackCompositeBoneScaleParamV17; typedef struct { qword name; float value; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleParamV17 Bone TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleRegionV17; typedef struct { qword name; float value; } PackCompositeMorphWeightV17; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleRegionV17 BodyRegion TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeMorphWeightV17 MorphWeight TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleV17; typedef struct { wchar_ptr fileName; } PackCompositeBoneScaleFileV17; typedef struct { qword name; byte type; byte flags; fileref meshBase; fileref meshOverlap; fileref maskDye1; fileref maskDye2; fileref maskDye3; fileref maskDye4; fileref maskCut; fileref textureBase; fileref textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; byte blitRectIndex; } PackCompositeFileDataV17; typedef struct { fileref chest; fileref face; fileref feet; fileref hands; fileref legs; fileref ears; } PackCompositeSkinPatternV17; typedef struct { qword chest; qword feet; qword hands; qword legs; } PackCompositeSkinStyleV17; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV17; typedef struct { qword nameToken; PackCompositeColorV17 color0; PackCompositeColorV17 color1; PackCompositeColorV17 color2; PackCompositeColorV17 color3; } PackCompositeVariantComponentV17; typedef struct { qword token; dword boneScaleIndex; TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV17 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV17 eyeColor; PackCompositeColorV17 hairColor; PackCompositeColorV17 hairColor2; PackCompositeColorV17 patternColor; PackCompositeColorV17 skinColor; dword skinIndex; } PackCompositeVariantV17; typedef struct { qword animRole; fileref filepath; } PackCompositeAnimOverrideV17; typedef struct { wchar_ptr name; qword nameToken; qword baseHeadToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV17 bodyBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleFileV17 bodyBoneScaleFiles TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; wchar_ptr eyeColorPalette; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV17 faceBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV17 fileData TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; fileref skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV17 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; wchar_ptr skinPatternPalette; TSTRUCT_ARRAY_PTR_START PackCompositeSkinStyleV17 skinStyles TSTRUCT_ARRAY_PTR_END; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV17 variants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeAnimOverrideV17 animOverrides TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV17; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV17 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV17 boneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV17 raceSexData TSTRUCT_ARRAY_PTR_END; word configVersion; } PackCompositeV17; /* Version: 16, ReferencedFunction: 0x140FB2E60 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV16; typedef struct { qword name; byte flags; float max; float min; float3 rotate; float3 scale; float3 translate; } PackCompositeBoneScaleParamV16; typedef struct { qword name; float value; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleParamV16 Bone TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleRegionV16; typedef struct { qword name; float value; } PackCompositeMorphWeightV16; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleRegionV16 BodyRegion TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeMorphWeightV16 MorphWeight TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleV16; typedef struct { wchar_ptr fileName; } PackCompositeBoneScaleFileV16; typedef struct { qword name; byte type; byte flags; fileref meshBase; fileref meshOverlap; fileref maskDye1; fileref maskDye2; fileref maskDye3; fileref maskDye4; fileref maskCut; fileref textureBase; fileref textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; byte blitRectIndex; } PackCompositeFileDataV16; typedef struct { fileref chest; fileref face; fileref feet; fileref hands; fileref legs; fileref ears; } PackCompositeSkinPatternV16; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV16; typedef struct { qword nameToken; PackCompositeColorV16 color0; PackCompositeColorV16 color1; PackCompositeColorV16 color2; PackCompositeColorV16 color3; } PackCompositeVariantComponentV16; typedef struct { qword token; dword boneScaleIndex; TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV16 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV16 eyeColor; PackCompositeColorV16 hairColor; PackCompositeColorV16 hairColor2; PackCompositeColorV16 patternColor; PackCompositeColorV16 skinColor; dword skinIndex; } PackCompositeVariantV16; typedef struct { qword animRole; fileref filepath; } PackCompositeAnimOverrideV16; typedef struct { wchar_ptr name; qword nameToken; qword baseHeadToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV16 bodyBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleFileV16 bodyBoneScaleFiles TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; wchar_ptr eyeColorPalette; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV16 faceBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV16 fileData TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; fileref skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV16 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; wchar_ptr skinPatternPalette; byte skinStyleCount; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV16 variants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeAnimOverrideV16 animOverrides TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV16; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV16 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV16 boneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV16 raceSexData TSTRUCT_ARRAY_PTR_END; word configVersion; } PackCompositeV16; /* Version: 15 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV15; typedef struct { qword name; byte flags; float max; float min; float3 rotate; float3 scale; float3 translate; } PackCompositeBoneScaleParamV15; typedef struct { qword name; float value; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleParamV15 Bone TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleRegionV15; typedef struct { qword name; float value; } PackCompositeMorphWeightV15; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleRegionV15 BodyRegion TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeMorphWeightV15 MorphWeight TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleV15; typedef struct { wchar_ptr fileName; } PackCompositeBoneScaleFileV15; typedef struct { qword name; byte type; byte flags; filename meshBase; filename meshOverlap; filename maskDye1; filename maskDye2; filename maskDye3; filename maskDye4; filename maskCut; filename textureBase; filename textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; byte blitRectIndex; } PackCompositeFileDataV15; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; filename ears; } PackCompositeSkinPatternV15; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV15; typedef struct { qword nameToken; PackCompositeColorV15 color0; PackCompositeColorV15 color1; PackCompositeColorV15 color2; PackCompositeColorV15 color3; } PackCompositeVariantComponentV15; typedef struct { qword token; dword boneScaleIndex; TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV15 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV15 eyeColor; PackCompositeColorV15 hairColor; PackCompositeColorV15 hairColor2; PackCompositeColorV15 patternColor; PackCompositeColorV15 skinColor; dword skinIndex; } PackCompositeVariantV15; typedef struct { qword animRole; filename filepath; } PackCompositeAnimOverrideV15; typedef struct { wchar_ptr name; qword nameToken; qword baseHeadToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV15 bodyBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleFileV15 bodyBoneScaleFiles TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; wchar_ptr eyeColorPalette; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV15 faceBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV15 fileData TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV15 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; wchar_ptr skinPatternPalette; byte skinStyleCount; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV15 variants TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeAnimOverrideV15 animOverrides TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV15; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV15 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV15 boneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV15 raceSexData TSTRUCT_ARRAY_PTR_END; word configVersion; } PackCompositeV15; /* Version: 14 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV14; typedef struct { qword name; byte flags; float max; float min; float3 rotate; float3 scale; float3 translate; } PackCompositeBoneScaleParamV14; typedef struct { qword name; float value; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleParamV14 Bone TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleRegionV14; typedef struct { qword name; float value; } PackCompositeMorphWeightV14; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleRegionV14 BodyRegion TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeMorphWeightV14 MorphWeight TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleV14; typedef struct { wchar_ptr fileName; } PackCompositeBoneScaleFileV14; typedef struct { qword name; byte type; byte flags; filename meshBase; filename meshOverlap; filename maskDye1; filename maskDye2; filename maskDye3; filename maskDye4; filename maskCut; filename textureBase; filename textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; byte blitRectIndex; } PackCompositeFileDataV14; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; filename ears; } PackCompositeSkinPatternV14; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV14; typedef struct { qword nameToken; PackCompositeColorV14 color0; PackCompositeColorV14 color1; PackCompositeColorV14 color2; PackCompositeColorV14 color3; } PackCompositeVariantComponentV14; typedef struct { qword token; dword boneScaleIndex; TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV14 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV14 eyeColor; PackCompositeColorV14 hairColor; PackCompositeColorV14 hairColor2; PackCompositeColorV14 patternColor; PackCompositeColorV14 skinColor; dword skinIndex; } PackCompositeVariantV14; typedef struct { wchar_ptr name; qword nameToken; qword baseHeadToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV14 bodyBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleFileV14 bodyBoneScaleFiles TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; wchar_ptr eyeColorPalette; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV14 faceBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV14 fileData TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV14 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; wchar_ptr skinPatternPalette; byte skinStyleCount; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV14 variants TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV14; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV14 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV14 boneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV14 raceSexData TSTRUCT_ARRAY_PTR_END; word configVersion; } PackCompositeV14; /* Version: 13 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV13; typedef struct { qword name; byte flags; float max; float min; float3 rotate; float3 scale; float3 translate; } PackCompositeBoneScaleParamV13; typedef struct { qword name; float value; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleParamV13 Bone TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleRegionV13; typedef struct { float value; qword name; } PackCompositeMorphWeightV13; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleRegionV13 BodyRegion TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeMorphWeightV13 MorphWeight TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleV13; typedef struct { wchar_ptr fileName; } PackCompositeBoneScaleFileV13; typedef struct { qword name; byte type; byte flags; filename meshBase; filename meshOverlap; filename maskDye1; filename maskDye2; filename maskDye3; filename maskDye4; filename maskCut; filename textureBase; filename textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; byte blitRectIndex; } PackCompositeFileDataV13; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; filename ears; } PackCompositeSkinPatternV13; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV13; typedef struct { qword nameToken; PackCompositeColorV13 color0; PackCompositeColorV13 color1; PackCompositeColorV13 color2; PackCompositeColorV13 color3; } PackCompositeVariantComponentV13; typedef struct { qword token; dword boneScaleIndex; TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV13 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV13 hairColor; PackCompositeColorV13 hairColor2; PackCompositeColorV13 patternColor; PackCompositeColorV13 skinColor; dword skinIndex; } PackCompositeVariantV13; typedef struct { wchar_ptr name; qword nameToken; qword baseHeadToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV13 bodyBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleFileV13 bodyBoneScaleFiles TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV13 faceBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV13 fileData TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV13 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; wchar_ptr skinPatternPalette; byte skinStyleCount; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV13 variants TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV13; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV13 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV13 boneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV13 raceSexData TSTRUCT_ARRAY_PTR_END; word configVersion; } PackCompositeV13; /* Version: 12 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV12; typedef struct { qword name; byte flags; float max; float min; float3 rotate; float3 scale; float3 translate; } PackCompositeBoneScaleParamV12; typedef struct { qword name; float value; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleParamV12 Bone TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleRegionV12; typedef struct { float value; qword name; } PackCompositeMorphWeightV12; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleRegionV12 BodyRegion TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeMorphWeightV12 MorphWeight TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleV12; typedef struct { wchar_ptr fileName; } PackCompositeBoneScaleFileV12; typedef struct { qword name; dword type; filename meshBase; filename meshOverlap; filename maskDye1; filename maskDye2; filename maskDye3; filename maskDye4; filename maskCut; filename textureBase; filename textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; dword blitRectIndex; } PackCompositeFileDataV12; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; filename ears; } PackCompositeSkinPatternV12; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV12; typedef struct { qword nameToken; PackCompositeColorV12 color0; PackCompositeColorV12 color1; PackCompositeColorV12 color2; PackCompositeColorV12 color3; } PackCompositeVariantComponentV12; typedef struct { qword token; dword boneScaleIndex; TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV12 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV12 hairColor; PackCompositeColorV12 hairColor2; PackCompositeColorV12 patternColor; PackCompositeColorV12 skinColor; dword skinIndex; } PackCompositeVariantV12; typedef struct { wchar_ptr name; qword nameToken; qword baseHeadToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV12 bodyBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleFileV12 bodyBoneScaleFiles TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV12 faceBoneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV12 fileData TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV12 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; wchar_ptr skinPatternPalette; byte skinStyleCount; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV12 variants TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV12; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV12 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV12 boneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV12 raceSexData TSTRUCT_ARRAY_PTR_END; word configVersion; } PackCompositeV12; /* Version: 11, ReferencedFunction: 0x140FB2E00 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV11; typedef struct { qword name; byte flags; float max; float min; float3 rotate; float3 scale; float3 translate; } PackCompositeBoneScaleParamV11; typedef struct { float value; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleParamV11 Bone TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleRegionV11; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleRegionV11 BodyRegion TSTRUCT_ARRAY_PTR_END; } PackCompositeBoneScaleV11; typedef struct { qword name; dword type; filename meshBase; filename meshOverlap; filename maskDye1; filename maskDye2; filename maskDye3; filename maskDye4; filename maskCut; filename textureBase; filename textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; dword blitRectIndex; } PackCompositeFileDataV11; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; filename ears; } PackCompositeSkinPatternV11; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV11; typedef struct { qword nameToken; PackCompositeColorV11 color0; PackCompositeColorV11 color1; PackCompositeColorV11 color2; PackCompositeColorV11 color3; } PackCompositeVariantComponentV11; typedef struct { qword token; dword boneScaleIndex; TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV11 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV11 hairColor; PackCompositeColorV11 hairColor2; PackCompositeColorV11 patternColor; PackCompositeColorV11 skinColor; dword skinIndex; } PackCompositeVariantV11; typedef struct { wchar_ptr name; qword nameToken; qword baseHeadToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV11 fileData TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV11 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; wchar_ptr skinPatternPalette; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV11 variants TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV11; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV11 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBoneScaleV11 boneScales TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV11 raceSexData TSTRUCT_ARRAY_PTR_END; word configVersion; } PackCompositeV11; /* Version: 10 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV10; typedef struct { qword name; dword type; filename meshBase; filename meshOverlap; filename maskDye1; filename maskDye2; filename maskDye3; filename maskDye4; filename maskCut; filename textureBase; filename textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; dword blitRectIndex; } PackCompositeFileDataV10; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; filename ears; } PackCompositeSkinPatternV10; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV10; typedef struct { qword nameToken; PackCompositeColorV10 color0; PackCompositeColorV10 color1; PackCompositeColorV10 color2; PackCompositeColorV10 color3; } PackCompositeVariantComponentV10; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV10 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV10 hairColor; PackCompositeColorV10 hairColor2; PackCompositeColorV10 patternColor; PackCompositeColorV10 skinColor; dword skinIndex; } PackCompositeVariantV10; typedef struct { wchar_ptr name; qword nameToken; qword baseHeadToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV10 fileData TSTRUCT_ARRAY_PTR_END; dword flags; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV10 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; wchar_ptr skinPatternPalette; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV10 variants TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV10; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV10 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV10 raceSexData TSTRUCT_ARRAY_PTR_END; word configVersion; } PackCompositeV10; /* Version: 9 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV9; typedef struct { qword name; dword type; filename meshBase; filename meshOverlap; filename maskDye1; filename maskDye2; filename maskDye3; filename maskDye4; filename maskCut; filename textureBase; filename textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; dword blitRectIndex; } PackCompositeFileDataV9; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; filename ears; } PackCompositeSkinPatternV9; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV9; typedef struct { qword nameToken; PackCompositeColorV9 color0; PackCompositeColorV9 color1; PackCompositeColorV9 color2; PackCompositeColorV9 color3; } PackCompositeVariantComponentV9; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV9 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV9 hairColor; PackCompositeColorV9 hairColor2; PackCompositeColorV9 patternColor; PackCompositeColorV9 skinColor; dword skinIndex; } PackCompositeVariantV9; typedef struct { wchar_ptr name; qword nameToken; qword baseHeadToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV9 fileData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV9 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; wchar_ptr skinPatternPalette; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV9 variants TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV9; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV9 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV9 raceSexData TSTRUCT_ARRAY_PTR_END; word configVersion; } PackCompositeV9; /* Version: 8 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV8; typedef struct { qword name; dword type; filename meshBase; filename meshOverlap; filename maskDye1; filename maskDye2; filename maskDye3; filename maskDye4; filename maskCut; filename textureBase; filename textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; dword blitRectIndex; } PackCompositeFileDataV8; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; filename ears; } PackCompositeSkinPatternV8; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV8; typedef struct { qword nameToken; PackCompositeColorV8 color0; PackCompositeColorV8 color1; PackCompositeColorV8 color2; PackCompositeColorV8 color3; } PackCompositeVariantComponentV8; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV8 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV8 hairColor; PackCompositeColorV8 hairColor2; PackCompositeColorV8 patternColor; PackCompositeColorV8 skinColor; dword skinIndex; } PackCompositeVariantV8; typedef struct { wchar_ptr name; qword nameToken; qword baseHeadToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV8 fileData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV8 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; wchar_ptr skinPatternPalette; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV8 variants TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV8; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV8 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV8 raceSexData TSTRUCT_ARRAY_PTR_END; } PackCompositeV8; /* Version: 7 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV7; typedef struct { qword name; dword type; filename meshBase; filename meshOverlap; filename maskDye1; filename maskDye2; filename maskDye3; filename maskDye4; filename maskCut; filename textureBase; filename textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; dword blitRectIndex; } PackCompositeFileDataV7; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; filename ears; } PackCompositeSkinPatternV7; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV7; typedef struct { qword nameToken; PackCompositeColorV7 color0; PackCompositeColorV7 color1; PackCompositeColorV7 color2; PackCompositeColorV7 color3; } PackCompositeVariantComponentV7; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV7 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV7 hairColor; PackCompositeColorV7 hairColor2; PackCompositeColorV7 patternColor; PackCompositeColorV7 skinColor; dword skinIndex; } PackCompositeVariantV7; typedef struct { wchar_ptr name; qword nameToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV7 fileData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV7 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; wchar_ptr skinPatternPalette; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV7 variants TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV7; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV7 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV7 raceSexData TSTRUCT_ARRAY_PTR_END; } PackCompositeV7; /* Version: 6 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV6; typedef struct { qword name; dword type; filename meshBase; filename meshOverlap; filename maskDye1; filename maskDye2; filename maskDye3; filename maskDye4; filename maskCut; filename textureBase; filename textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; dword blitRectIndex; } PackCompositeFileDataV6; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; filename ears; } PackCompositeSkinPatternV6; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV6; typedef struct { qword nameToken; PackCompositeColorV6 color0; PackCompositeColorV6 color1; PackCompositeColorV6 color2; PackCompositeColorV6 color3; } PackCompositeVariantComponentV6; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV6 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV6 hairColor; PackCompositeColorV6 hairColor2; PackCompositeColorV6 patternColor; PackCompositeColorV6 skinColor; dword skinIndex; } PackCompositeVariantV6; typedef struct { wchar_ptr name; qword nameToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV6 fileData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV6 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV6 variants TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV6; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV6 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV6 raceSexData TSTRUCT_ARRAY_PTR_END; } PackCompositeV6; /* Version: 5 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV5; typedef struct { qword name; dword type; filename meshBase; filename meshOverlap; filename maskDye1; filename maskDye2; filename maskDye3; filename maskDye4; filename maskCut; filename textureBase; filename textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; dword blitRectIndex; } PackCompositeFileDataV5; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; } PackCompositeSkinPatternV5; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV5; typedef struct { qword nameToken; PackCompositeColorV5 color0; PackCompositeColorV5 color1; PackCompositeColorV5 color2; PackCompositeColorV5 color3; } PackCompositeVariantComponentV5; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV5 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV5 hairColor; PackCompositeColorV5 hairColor2; PackCompositeColorV5 patternColor; PackCompositeColorV5 skinColor; dword skinIndex; } PackCompositeVariantV5; typedef struct { wchar_ptr name; qword nameToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV5 fileData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV5 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV5 variants TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV5; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV5 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV5 raceSexData TSTRUCT_ARRAY_PTR_END; } PackCompositeV5; /* Version: 4 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START byte rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV4; typedef struct { qword name; dword type; filename meshBase; filename meshOverlap; filename maskDye1; filename maskDye2; filename maskDye3; filename maskDye4; filename maskCut; filename textureBase; filename textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; dword blitRectIndex; } PackCompositeFileDataV4; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; } PackCompositeSkinPatternV4; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV4; typedef struct { qword nameToken; PackCompositeColorV4 clothColor; PackCompositeColorV4 leatherColor; PackCompositeColorV4 metalColor; } PackCompositeVariantComponentV4; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV4 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV4 hairColor; PackCompositeColorV4 patternColor; PackCompositeColorV4 skinColor; dword skinIndex; } PackCompositeVariantV4; typedef struct { wchar_ptr name; qword nameToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV4 fileData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV4 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV4 variants TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV4; typedef struct { TSTRUCT_ARRAY_PTR_START dword armorColorIds TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV4 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV4 raceSexData TSTRUCT_ARRAY_PTR_END; } PackCompositeV4; /* Version: 3 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START dword rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV3; typedef struct { qword name; dword type; filename meshBase; filename meshOverlap; filename maskDye1; filename maskDye2; filename maskDye3; filename maskDye4; filename maskCut; filename textureBase; filename textureNormal; dword hideFlags; dword skinFlags; dword blitRectIndex; } PackCompositeFileDataV3; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; } PackCompositeSkinPatternV3; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV3; typedef struct { qword nameToken; PackCompositeColorV3 clothColor; PackCompositeColorV3 leatherColor; PackCompositeColorV3 metalColor; } PackCompositeVariantComponentV3; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV3 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV3 hairColor; PackCompositeColorV3 patternColor; PackCompositeColorV3 skinColor; dword skinIndex; } PackCompositeVariantV3; typedef struct { wchar_ptr name; qword nameToken; TSTRUCT_ARRAY_PTR_START qword beard TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV3 fileData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV3 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV3 variants TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV3; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV3 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV3 raceSexData TSTRUCT_ARRAY_PTR_END; } PackCompositeV3; /* Version: 2 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START dword rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV2; typedef struct { qword name; dword type; filename meshBase; filename meshOverlap; filename maskDye1; filename maskDye2; filename maskDye3; filename maskDye4; filename maskCut; filename textureBase; filename textureNormal; dword hideFlags; dword skinFlags; dword blitRectIndex; } PackCompositeFileDataV2; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; } PackCompositeSkinPatternV2; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV2; typedef struct { qword nameToken; PackCompositeColorV2 clothColor; PackCompositeColorV2 leatherColor; PackCompositeColorV2 metalColor; } PackCompositeVariantComponentV2; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV2 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV2 hairColor; PackCompositeColorV2 patternColor; PackCompositeColorV2 skinColor; dword skinIndex; } PackCompositeVariantV2; typedef struct { wchar_ptr name; qword nameToken; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV2 fileData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV2 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV2 variants TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV2; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV2 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV2 raceSexData TSTRUCT_ARRAY_PTR_END; } PackCompositeV2; /* Version: 1 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START dword rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV1; typedef struct { qword name; dword type; filename meshBase; filename meshOverlap; filename maskDye1; filename maskDye2; filename maskDye3; filename maskDye4; filename maskCut; filename textureBase; filename textureNormal; dword dyeFlags; dword hideFlags; dword skinFlags; dword blitRectIndex; } PackCompositeFileDataV1; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; } PackCompositeSkinPatternV1; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV1; typedef struct { qword nameToken; PackCompositeColorV1 clothColor; PackCompositeColorV1 leatherColor; PackCompositeColorV1 metalColor; } PackCompositeVariantComponentV1; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV1 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV1 hairColor; PackCompositeColorV1 patternColor; PackCompositeColorV1 skinColor; dword skinIndex; } PackCompositeVariantV1; typedef struct { wchar_ptr name; qword nameToken; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV1 fileData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; wchar_ptr hairColorPalette; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV1 skinPatterns TSTRUCT_ARRAY_PTR_END; wchar_ptr skinColorPalette; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV1 variants TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV1; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV1 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV1 raceSexData TSTRUCT_ARRAY_PTR_END; } PackCompositeV1; /* Version: 0 */ typedef struct { wchar_ptr name; dword2 size; TSTRUCT_ARRAY_PTR_START dword rectIndex TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START dword4 rectArray TSTRUCT_ARRAY_PTR_END; } PackCompositeBlitRectSetV0; typedef struct { qword name; dword type; filename meshBase; filename meshOverlap; filename maskClothSkin; filename maskLeather; filename maskMetal; filename maskGlow; filename textureBase; filename textureNormal; dword hideFlags; dword skinFlags; dword blitRectIndex; } PackCompositeFileDataV0; typedef struct { filename chest; filename face; filename feet; filename hands; filename legs; } PackCompositeSkinPatternV0; typedef struct { byte brightness; byte contrast; byte hue; byte saturation; byte lightness; } PackCompositeColorV0; typedef struct { qword nameToken; PackCompositeColorV0 clothColor; PackCompositeColorV0 leatherColor; PackCompositeColorV0 metalColor; } PackCompositeVariantComponentV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeVariantComponentV0 components TSTRUCT_ARRAY_PTR_END; PackCompositeColorV0 hairColor; PackCompositeColorV0 patternColor; PackCompositeColorV0 skinColor; dword skinIndex; } PackCompositeVariantV0; typedef struct { wchar_ptr name; qword nameToken; TSTRUCT_ARRAY_PTR_START qword ears TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword faces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeFileDataV0 fileData TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword hairStyles TSTRUCT_ARRAY_PTR_END; filename skeletonFile; TSTRUCT_ARRAY_PTR_START PackCompositeSkinPatternV0 skinPatterns TSTRUCT_ARRAY_PTR_END; dword type; qword variantRefRace; TSTRUCT_ARRAY_PTR_START PackCompositeVariantV0 variants TSTRUCT_ARRAY_PTR_END; } PackCompositeRaceDataV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackCompositeBlitRectSetV0 blitRects TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackCompositeRaceDataV0 raceSexData TSTRUCT_ARRAY_PTR_END; } PackCompositeV0; /* =============================================== * Chunk: Main, versions: 1, strucTab: 0x141F62700 * =============================================== */ /* Version: 0 */ typedef struct { dword guidOffset; dword uidOffset; dword dataIdOffset; dword nameOffset; byte trackReferences; } PackContentTypeInfo; typedef struct { wchar_ptr name; dword domain; dword parentIndex; } PackContentNamespace; typedef struct { dword type; dword offset; dword namespaceIndex; dword rootIndex; } PackContentIndexEntry; typedef struct { dword relocOffset; } PackContentLocalOffsetFixup; typedef struct { dword relocOffset; dword targetFileIndex; } PackContentExternalOffsetFixup; typedef struct { dword relocOffset; } PackContentFileIndexFixup; typedef struct { dword relocOffset; } PackContentStringIndexFixup; typedef struct { dword sourceOffset; dword targetFileIndex; dword targetOffset; } PackContentTrackedReference; typedef struct { dword flags; TSTRUCT_ARRAY_PTR_START PackContentTypeInfo typeInfos TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackContentNamespace namespaces TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START fileref fileRefs TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackContentIndexEntry indexEntries TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackContentLocalOffsetFixup localOffsets TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackContentExternalOffsetFixup externalOffsets TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackContentFileIndexFixup fileIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackContentStringIndexFixup stringIndices TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackContentTrackedReference trackedReferences TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START wchar_ptr strings TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START byte content TSTRUCT_ARRAY_PTR_END; } PackContent; /* =============================================== * Chunk: Main, versions: 1, strucTab: 0x141F62770 * =============================================== */ /* Version: 0 */ typedef struct { word mapId; byte mapType; } PackMapMetadataMap; typedef struct { TSTRUCT_ARRAY_PTR_START PackMapMetadataMap maps TSTRUCT_ARRAY_PTR_END; } PackMapMetadata; /* =============================================== * Chunk: anim, versions: 4, strucTab: 0x141F627A0 * =============================================== */ /* Version: 3 */ typedef struct { fileref ModelFile; float BlendIn; float BlendOut; dword IntroDuration; dword LoopDuration; dword OutroDuration; dword StartOffset; } PackEmoteTimingV3; typedef struct { qword Token; TSTRUCT_ARRAY_PTR_START PackEmoteTimingV3 Timing TSTRUCT_ARRAY_PTR_END; } PackEmoteAnimationV3; typedef struct { TSTRUCT_ARRAY_PTR_START PackEmoteAnimationV3 Animation TSTRUCT_ARRAY_PTR_END; } PackEmoteAnimationsV3; /* Version: 2, ReferencedFunction: 0x140FB33B0 */ typedef struct { fileref ModelFile; float BlendIn; float BlendOut; dword IntroDuration; dword LoopDuration; dword OutroDuration; } PackEmoteTimingV2; typedef struct { qword Token; TSTRUCT_ARRAY_PTR_START PackEmoteTimingV2 Timing TSTRUCT_ARRAY_PTR_END; } PackEmoteAnimationV2; typedef struct { TSTRUCT_ARRAY_PTR_START PackEmoteAnimationV2 Animation TSTRUCT_ARRAY_PTR_END; } PackEmoteAnimationsV2; /* Version: 1 */ typedef struct { fileref modelFileId; float blendInTime; float blendOutTime; dword duration; dword loopDuration; } PackEmoteTimingV1; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START PackEmoteTimingV1 timings TSTRUCT_ARRAY_PTR_END; } PackEmoteAnimationV1; typedef struct { TSTRUCT_ARRAY_PTR_START PackEmoteAnimationV1 animations TSTRUCT_ARRAY_PTR_END; } PackEmoteAnimationsV1; /* Version: 0 */ typedef struct { fileref modelFileId; float blendInTime; float blendOutTime; dword duration; } PackEmoteTimingV0; typedef struct { qword token; TSTRUCT_ARRAY_PTR_START PackEmoteTimingV0 timings TSTRUCT_ARRAY_PTR_END; } PackEmoteAnimationV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackEmoteAnimationV0 animations TSTRUCT_ARRAY_PTR_END; } PackEmoteAnimationsV0; /* =============================================== * Chunk: eula, versions: 1, strucTab: 0x141F62970 * =============================================== */ /* Version: 0 */ typedef struct { byte Language; wchar_ptr Text; } PackEulaLanguageV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackEulaLanguageV0 Language TSTRUCT_ARRAY_PTR_END; byte Version; } PackEulaV0; /* =============================================== * Chunk: mach, versions: 2, strucTab: 0x141F63600 * =============================================== */ /* Version: 1 */ typedef struct { Unknown0x1C actionData; } PackAnimMachineActionV1; typedef struct { TSTRUCT_ARRAY_PTR_START PackAnimMachineActionV1 actions TSTRUCT_ARRAY_PTR_END; } PackAnimMachineActionBlockV1; typedef struct { qword token; TPTR_START PackAnimMachineActionBlockV1 actionBlock TPTR_END; } PackAnimMachineActionVariantV1; typedef struct { TSTRUCT_ARRAY_PTR_START PackAnimMachineActionVariantV1 actionVariants TSTRUCT_ARRAY_PTR_END; } PackAnimMachineActionVariantBlockV1; typedef struct { qword token; TPTR_START PackAnimMachineActionBlockV1 actionBlock TPTR_END; } PackAnimMachineTransitionVariantV1; typedef struct { wchar_ptr name; wchar_ptr targetStateName; TPTR_START PackAnimMachineActionBlockV1 actionBlock TPTR_END; TSTRUCT_ARRAY_PTR_START PackAnimMachineTransitionVariantV1 variants TSTRUCT_ARRAY_PTR_END; } PackAnimMachineTransitionV1; typedef struct { qword token; TPTR_START PackAnimMachineActionBlockV1 actionBlock TPTR_END; TPTR_START PackAnimMachineActionVariantBlockV1 actionVariantBlock TPTR_END; TSTRUCT_ARRAY_PTR_START PackAnimMachineTransitionV1 transitions TSTRUCT_ARRAY_PTR_END; } PackAnimMachineStateVariantV1; typedef struct { wchar_ptr name; TPTR_START PackAnimMachineActionBlockV1 actionBlock TPTR_END; TPTR_START PackAnimMachineActionVariantBlockV1 actionVariantBlock TPTR_END; TSTRUCT_ARRAY_PTR_START PackAnimMachineTransitionV1 transitions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAnimMachineStateVariantV1 variants TSTRUCT_ARRAY_PTR_END; } PackAnimMachineStateV1; typedef struct { TSTRUCT_ARRAY_PTR_START PackAnimMachineStateV1 states TSTRUCT_ARRAY_PTR_END; } PackAnimMachineV1; typedef struct { fileref modelFileId; wchar_ptr modelFileRaw; dword machineIndex; byte16 listeners; } PackAnimModelV1; typedef struct { TSTRUCT_ARRAY_PTR_START PackAnimMachineV1 machines TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAnimModelV1 models TSTRUCT_ARRAY_PTR_END; } PackAnimMachinesV1; /* Version: 0 */ typedef struct { Unknown0x1C actionData; } PackAnimMachineActionV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackAnimMachineActionV0 actions TSTRUCT_ARRAY_PTR_END; } PackAnimMachineActionBlockV0; typedef struct { qword token; TPTR_START PackAnimMachineActionBlockV0 actionBlock TPTR_END; } PackAnimMachineActionVariantV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackAnimMachineActionVariantV0 actionVariants TSTRUCT_ARRAY_PTR_END; } PackAnimMachineActionVariantBlockV0; typedef struct { qword token; TPTR_START PackAnimMachineActionBlockV0 actionBlock TPTR_END; } PackAnimMachineTransitionVariantV0; typedef struct { wchar_ptr name; wchar_ptr targetStateName; TPTR_START PackAnimMachineActionBlockV0 actionBlock TPTR_END; TSTRUCT_ARRAY_PTR_START PackAnimMachineTransitionVariantV0 variants TSTRUCT_ARRAY_PTR_END; } PackAnimMachineTransitionV0; typedef struct { qword token; TPTR_START PackAnimMachineActionBlockV0 actionBlock TPTR_END; TPTR_START PackAnimMachineActionVariantBlockV0 actionVariantBlock TPTR_END; TSTRUCT_ARRAY_PTR_START PackAnimMachineTransitionV0 transitions TSTRUCT_ARRAY_PTR_END; } PackAnimMachineStateVariantV0; typedef struct { wchar_ptr name; TPTR_START PackAnimMachineActionBlockV0 actionBlock TPTR_END; TPTR_START PackAnimMachineActionVariantBlockV0 actionVariantBlock TPTR_END; TSTRUCT_ARRAY_PTR_START PackAnimMachineTransitionV0 transitions TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAnimMachineStateVariantV0 variants TSTRUCT_ARRAY_PTR_END; } PackAnimMachineStateV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackAnimMachineStateV0 states TSTRUCT_ARRAY_PTR_END; } PackAnimMachineV0; typedef struct { fileref modelFileId; wchar_ptr modelFileRaw; dword machineIndex; } PackAnimModelV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackAnimMachineV0 machines TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAnimModelV0 models TSTRUCT_ARRAY_PTR_END; } PackAnimMachinesV0; /* =============================================== * Chunk: fall, versions: 1, strucTab: 0x141F634A0 * =============================================== */ /* Version: 0 */ typedef struct { qword sourceAnim; TSTRUCT_ARRAY_PTR_START qword targetAnims TSTRUCT_ARRAY_PTR_END; } PackAnimFallbackV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackAnimFallbackV0 fallbacks TSTRUCT_ARRAY_PTR_END; } PackAnimFallbacksV0; /* =============================================== * Chunk: seqn, versions: 1, strucTab: 0x141F63480 * =============================================== */ /* Version: 0 */ typedef struct { word duration; byte endingChargeLevel; } PackAnimSequenceChargeStageV0; typedef struct { dword duration; } PackAnimSequenceStepActionV0; typedef struct { dword duration; float4 moveRotation; float4 facingRotation; float2 velocity; } PackAnimSequenceStepMoveV0; typedef struct { byte type; float animationSpeed; dword flags; TPTR_START PackAnimSequenceStepActionV0 action TPTR_END; TPTR_START PackAnimSequenceStepMoveV0 move TPTR_END; } PackAnimSequenceStepV0; typedef struct { byte trigger; dword time; dword flags; } PackAnimSequenceTriggerV0; typedef struct { qword token; dword flags; float blendInTime; float blendOutTime; TSTRUCT_ARRAY_PTR_START PackAnimSequenceChargeStageV0 chargeStages TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAnimSequenceStepV0 steps TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAnimSequenceTriggerV0 triggers TSTRUCT_ARRAY_PTR_END; } PackAnimSequenceDataV0; typedef struct { qword sequence; TSTRUCT_ARRAY_PTR_START PackAnimSequenceDataV0 animationData TSTRUCT_ARRAY_PTR_END; } PackAnimSequenceV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackAnimSequenceV0 sequences TSTRUCT_ARRAY_PTR_END; } PackAnimSequencesV0; /* =============================================== * Chunk: cnfg, versions: 1, strucTab: 0x141F636F0 * =============================================== */ /* Version: 0 */ typedef struct { qword boneToken; float clampAngle; float weight; float smoothingWeight; } PackAnimAimIKBoneV0; typedef struct { qword name; qword boneEye; qword boneSight; qword endEffector; float frustumHAngle; float frustumVAngle; float frustumLength; float targetVelocityConstraint; TSTRUCT_ARRAY_PTR_START PackAnimAimIKBoneV0 bones TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START qword targets TSTRUCT_ARRAY_PTR_END; byte flags; } PackAnimAimIKConfigV0; typedef struct { dword flags; float3 direction; } PackAnimIKRaycastTargetV0; typedef struct { qword name; float3 smoothWeight; float hyperExtensionStart; float hyperExtensionScale; TSTRUCT_ARRAY_PTR_START qword bones TSTRUCT_ARRAY_PTR_END; TPTR_START PackAnimIKRaycastTargetV0 targetRaycastInfo TPTR_END; byte targetMode; byte chainType; } PackAnimIKChainV0; typedef struct { qword name; TSTRUCT_ARRAY_PTR_START PackAnimIKChainV0 chains TSTRUCT_ARRAY_PTR_END; } PackAnimIKChainGroupV0; typedef struct { TSTRUCT_ARRAY_PTR_START PackAnimAimIKConfigV0 aimIKConfigs TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START PackAnimIKChainGroupV0 chainGroups TSTRUCT_ARRAY_PTR_END; } PackAnimConfigV0; /* =============================================== * Chunk: mfst, versions: 3, strucTab: 0x142068590 * =============================================== */ /* Version: 2, ReferencedFunction: 0x14154F850 */ typedef struct { byte16 mapGUID; dword token; float3 position; float radius; } ContentMapRedirector; typedef struct { filename filename; dword flags; dword type; qword permutation; } ContentMapModel; typedef struct { dword token; TSTRUCT_ARRAY_PTR_START ContentMapModel modelArray TSTRUCT_ARRAY_PTR_END; float3 position; float radius; } ContentMapStart; typedef struct { byte16 mapGUID; TSTRUCT_ARRAY_PTR_START ContentMapRedirector mapRedirectorArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ContentMapStart mapStartArray TSTRUCT_ARRAY_PTR_END; } ContentMap; typedef struct { TSTRUCT_ARRAY_PTR_START ContentMap mapArray TSTRUCT_ARRAY_PTR_END; } ContentPortalManifest; /* Version: 1 */ typedef struct { dword mapId; dword token; float3 position; float radius; } ContentMapRedirectorV1; typedef struct { filename filename; dword flags; dword type; qword permutation; } ContentMapModelV1; typedef struct { dword token; TSTRUCT_ARRAY_PTR_START ContentMapModelV1 modelArray TSTRUCT_ARRAY_PTR_END; float3 position; float radius; } ContentMapStartV1; typedef struct { dword mapId; TSTRUCT_ARRAY_PTR_START ContentMapRedirectorV1 mapRedirectorArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ContentMapStartV1 mapStartArray TSTRUCT_ARRAY_PTR_END; } ContentMapV1; typedef struct { TSTRUCT_ARRAY_PTR_START ContentMapV1 mapArray TSTRUCT_ARRAY_PTR_END; } ContentPortalManifestV1; /* Version: 0 */ typedef struct { dword mapId; dword token; float3 position; float radius; } ContentMapRedirectorV0; typedef struct { filename filename; dword flags; dword type; } ContentMapModelV0; typedef struct { dword token; TSTRUCT_ARRAY_PTR_START ContentMapModelV0 modelArray TSTRUCT_ARRAY_PTR_END; float3 position; float radius; } ContentMapStartV0; typedef struct { dword mapId; TSTRUCT_ARRAY_PTR_START ContentMapRedirectorV0 mapRedirectorArray TSTRUCT_ARRAY_PTR_END; TSTRUCT_ARRAY_PTR_START ContentMapStartV0 mapStartArray TSTRUCT_ARRAY_PTR_END; } ContentMapV0; typedef struct { TSTRUCT_ARRAY_PTR_START ContentMapV0 mapArray TSTRUCT_ARRAY_PTR_END; } ContentPortalManifestV0;