EvilEngine/SHRP: Difference between revisions

From Heavy Iron Modding
Content added Content deleted
(new movie shrapnel type info)
No edit summary
Line 30: Line 30:
* Type 2 (shrapnel)
* Type 2 (shrapnel)
* Type 3 (particle) (BFBB) - 0x1D4
* Type 3 (particle) (BFBB) - 0x1D4
* Type 3 (particle) (Movie) - 0x1F8
* Type 3 (particle) (Movie) - 0x1E0
* Type 4 (projectile) (BFBB) - 0x90
* Type 4 (projectile) (BFBB) - 0x90
* Type 4 (projectile) (Movie) - 0x110
* Type 4 (projectile) (Movie) - 0x110
Line 37: Line 37:
* Type 6 (sound) (BFBB) - 0x4C
* Type 6 (sound) (BFBB) - 0x4C
* Type 6 (sound) (Movie) - 0x44
* Type 6 (sound) (Movie) - 0x44
* Type 7 (shockwave)
* Type 7 (shockwave)
* Type 8 (explosion) (Movie) - 0x48
* Type 8 (explosion) (Movie) - 0x48
* Type 9 (distortion) - 0x5C
* Type 9 (distortion) - 0x5C
* Type 10 (fire) - 0x5C


The entries have the following structure:
The entries have the following structure:
Line 50: Line 51:
| 0x04 || [[AssetID]] || UnknownID
| 0x04 || [[AssetID]] || UnknownID
|-
|-
| 0x08 || int || parentID1
| 0x08 || int || '''parentID1'''
|-
|-
| 0x0C || int || parentID2
| 0x0C || int || '''parentID2'''
|-
|-
| 0x10 || float || lifetime
| 0x10 || float || '''lifetime'''
|-
|-
| 0x14 || float || delay
| 0x14 || float || '''delay'''
|}
|}


Line 63: Line 64:
! Offset !! Type !! Description
! Offset !! Type !! Description
|-
|-
| 0x18 || int || Unknown
| 0x18 || zFragLocType || '''type'''
|-
|-
| 0x1C || int || Unknown
| 0x1C || int || '''index'''
|-
|-
| 0x20 || float || Unknown
| 0x20 || [[Vector3]] || '''Offset'''
|-
| 0x24 || float || Unknown
|-
| 0x28 || float || Unknown
|-
|-
| 0x2C || byte[0x10] || Padding? (all bytes are 0xCD)
| 0x2C || byte[0x10] || Padding? (all bytes are 0xCD)
|-
|-
| 0x3C || int || Unknown
| 0x3C || zFragLocType || '''type2'''
|-
|-
| 0x40 || int || Unknown
| 0x40 || int || '''index2'''
|-
|-
| 0x44 || int || Unknown
| 0x44 || [[Vector3]] || '''Offset2'''
|-
|-
| 0x50 || byte[0x144] || Padding? (all bytes are 0xCD)
| 0x48 || float || Unknown
|-
| 0x194 || short || Unknown
|-
|-
| 0x4C || float || Unknown
| 0x198 || short || Unknown
|-
|-
| 0x50 || byte[0x17C] || Padding? (all bytes are 0xCD)
| 0x19C || byte[0x30] || Padding? (all bytes are 0xCD)
|-
|-
| 0x1CC || [[AssetID]] || [[PARE]]
| 0x1CC || [[AssetID]] || [[PARE]]
Line 99: Line 98:
! colspan="3" | Type 3
! colspan="3" | Type 3
|-
|-
| 0x18 || zFragLocType || type
| 0x18 || zFragLocType || '''type'''
|-
|-
| 0x1C || int || UnknownID
| 0x1C || int || '''index'''
|-
|-
| 0x20 || [[Vector3]] || Offset
| 0x20 || [[Vector3]] || '''Offset'''
|-
|-
| 0x2C || byte[0x10] || Padding? (all bytes are 0xCD)
| 0x2C || byte[0x10] || Padding? (all bytes are 0xCD)
|-
|-
| 0x3C || float || rand_radius
| 0x3C || float || '''rand_radius'''
|-
|-
| 0x40 || zFragLocType || type2
| 0x40 || zFragLocType || '''type2'''
|-
|-
| 0x44 || int || UnknownID2
| 0x44 || int || '''index2'''
|-
|-
| 0x48 || [[Vector3]] || Offset2
| 0x48 || [[Vector3]] || '''Offset2'''
|-
|-
| 0x54 || byte[0x10] || Padding? (all bytes are 0xCD)
| 0x54 || byte[0x10] || Padding? (all bytes are 0xCD)
|-
|-
| 0x58 || float || rand_radius2
| 0x58 || float || '''rand_radius2'''
|-
|-
| 0x5C || byte[0x138] || Padding? (all bytes are 0xCD)
| 0x5C || byte[0x138] || Padding? (all bytes are 0xCD)
Line 127: Line 126:
| 0x198 || byte[0x48] || Padding? (all bytes are 0xCD)
| 0x198 || byte[0x48] || Padding? (all bytes are 0xCD)
|-
|-
| 0x1E0 || byte || emit
| 0x1E0 || byte || Unknown
|-
|-
| 0x1E1 || byte[3] || padding
| 0x1E1 || byte[3] || padding?
|-
|-
| 0x1E4 || [[Asset ID]] || PARE_AssetID
| 0x1E4 || [[Asset ID]] || [[PARE]]
|-
|-
| 0x1E8 || int || null
| 0x1E8 || int || null
Line 143: Line 142:
| 0x18 || [[AssetID]] || [[MODL]]
| 0x18 || [[AssetID]] || [[MODL]]
|-
|-
| 0x1C || int || Unknown
| 0x1C || RpAtomic || '''modelFile'''
|-
|-
| 0x20 || int || Unknown
| 0x20 || zFragLocType || '''type'''
|-
|-
| 0x24 || int || Unknown
| 0x24 || int || '''index'''
|-
|-
| 0x28 || float || '''Offset X''' - Offset the Shrapnel spawns at
| 0x28 || float || '''Offset X''' - Offset the Shrapnel spawns at
Line 157: Line 156:
| 0x34 || byte[0x34] || Padding? (all bytes are 0xCD)
| 0x34 || byte[0x34] || Padding? (all bytes are 0xCD)
|-
|-
| 0x68 || float || Unknown
| 0x68 || float || '''bounce'''
|-
|-
| 0x6C || int || Unknown
| 0x6C || int || '''maxbounces'''
|-
|-
| 0x70 || int || Unknown
| 0x70 || int || '''flags'''
|-
|-
| 0x74 || [[AssetID]] || Unknown
| 0x74 || [[AssetID]] || [[SHRP]] - Child shrapnel ID
|-
|-
| 0x78 || float || Unknown
| 0x78 || [[AssetID]] || [[SHRP]] - Child shrapnel2 ID
|-
|-
| 0x7C || float || Scale?
| 0x7C || float || '''minScale'''
|-
|-
| 0x80 || float || Scale also?
| 0x80 || float || '''maxScale'''
|-
|-
| 0x84 || float || Unknown
| 0x84 || [[AssetID]] || [[CRV]]
|-
|-
| 0x88 || float || Unknown
| 0x88 || [[AssetID]] || [[CRV]]
|-
|-
| 0x8C || float || '''Gravity'''
| 0x8C || float || '''Gravity'''
Line 185: Line 184:
| 0x18 || [[AssetID]] || [[MODL]]
| 0x18 || [[AssetID]] || [[MODL]]
|-
|-
| 0x1C || RpAtomic* || modelFile
| 0x1C || RpAtomic* || '''modelFile'''
|-
|-
| 0x20 || zFragLocType || type
| 0x20 || zFragLocType || '''type'''
|-
|-
| 0x24 || int || UnknownID
| 0x24 || int || '''index'''
|-
|-
| 0x28 || float || '''Offset X''' - Offset the Shrapnel spawns at
| 0x28 || float || '''Offset X''' - Offset the Shrapnel spawns at
Line 199: Line 198:
| 0x34 || byte[0x10] || Padding? (all bytes are 0xCD)
| 0x34 || byte[0x10] || Padding? (all bytes are 0xCD)
|-
|-
| 0x44 || float || rand_radius
| 0x44 || float || '''rand_radius'''
|-
|-
| 0x48 || zFragLocType || type2
| 0x48 || zFragLocType || '''type2'''
|-
|-
| 0x4C || int || UnknownID2
| 0x4C || int || '''index2'''
|-
|-
| 0x50 || [[Vector3]] || Offset2
| 0x50 || [[Vector3]] || '''Offset2'''
|-
|-
| 0x5C || byte[0x3C] || Padding? (all bytes are 0xCD)
| 0x5C || byte[0x3C] || Padding? (all bytes are 0xCD)
|-
|-
| 0x98 || zFragLocType || type3
| 0x98 || zFragLocType || '''type3'''
|-
|-
| 0x9C || int || UnknownID3
| 0x9C || int || '''index3'''
|-
|-
| 0xA8 || [[Vector3]] || Offset3
| 0xA8 || [[Vector3]] || '''Offset3'''
|-
|-
| 0xAC || byte[0x3C] || Padding? (all bytes are 0xCD)
| 0xAC || byte[0x3C] || Padding? (all bytes are 0xCD)
|-
|-
| 0xE8 || float || Bounce
| 0xE8 || float || '''Bounce'''
|-
|-
| 0xEC || int || maxBounces
| 0xEC || int || '''maxBounces'''
|-
|-
| 0xF0 || int || Flags
| 0xF0 || int || '''Flags'''
|-
|-
| 0xF4 || [[SHRP]] || Shrapnel_AssetID, launches another shrapnel when shrapnel model disappears
| 0xF4 || [[AssetID]] || [[SHRP]] - Child shrapnel ID
|-
|-
| 0xF8 || [[SHRP]] || Shrapnel_AssetID
| 0xF8 || [[AssetID]] || [[SHRP]] - Child shrapnel2 ID
|-
|-
| 0xFC || float || minScale
| 0xFC || float || '''minScale'''
|-
|-
| 0x100 || float || maxScale
| 0x100 || float || '''maxScale'''
|-
|-
| 0x104 || int || scaleCurveID
| 0x104 || [[AssetID]] || [[CRV]]
|-
|-
| 0x108 || [[CRV]] || scaleCurve
| 0x108 || [[AssetID]] || [[CRV]]
|-
|-
| 0x10C || float || Gravity
| 0x10C || float || '''Gravity'''
|}
|}


Line 243: Line 242:
! Offset !! Type !! Description
! Offset !! Type !! Description
|-
|-
| 0x18 || int || Unknown
| 0x18 || zFragLocType || '''type'''
|-
|-
| 0x1C || int || Unknown
| 0x1C || int || '''index'''
|-
|-
| 0x20 || float || Unknown
| 0x20 || [[Vector3]] || '''Offset'''
|-
| 0x24 || int || Unknown
|-
| 0x28 || int || Unknown
|-
|-
| 0x2C || byte[0x10] || Padding? (all bytes are 0xCD)
| 0x2C || byte[0x10] || Padding? (all bytes are 0xCD)
|-
|-
| 0x3C || int || Unknown
| 0x3C || zFragLocType || '''type2'''
|-
|-
| 0x40 || int || Unknown
| 0x40 || int || '''index2'''
|-
|-
| 0x44 || float || Unknown
| 0x44 || [[Vector3]] || '''Offset2'''
|-
|-
| 0x50 || byte[0x10] || Padding? (all bytes are 0xCD)
| 0x48 || int || Unknown
|-
|-
| 0x4C || int || Unknown
| 0x60 || int || '''startParentID''' (all bytes are 0xCD?)
|-
|-
| 0x50 || byte[0x18] || Padding? (all bytes are 0xCD)
| 0x64 || int || '''endParentID''' (all bytes are 0xCD?)
|}
|}


Line 273: Line 268:
! Offset !! Type !! Description
! Offset !! Type !! Description
|-
|-
| 0x18 || zFragLocType || type
| 0x18 || zFragLocType || '''type'''
|-
|-
| 0x1C || int || UnknownID
| 0x1C || int || '''index'''
|-
|-
| 0x20 || [[Vector3]] || Offset
| 0x20 || [[Vector3]] || '''Offset'''
|-
|-
| 0x2C || byte[0x10] || Padding? (all bytes are 0xCD)
| 0x2C || byte[0x10] || Padding? (all bytes are 0xCD)
|-
|-
| 0x3C || float || rand_radius
| 0x3C || float || '''rand_radius'''
|-
|-
| 0x40 || zFragLocType || type2
| 0x40 || zFragLocType || '''type2'''
|-
|-
| 0x44 || int || UnknownID
| 0x44 || int || '''index2'''
|-
|-
| 0x48 || [[Vector3]] || Offset2
| 0x48 || [[Vector3]] || '''Offset2'''
|-
|-
| 0x54 || float[4] || Padding? (all bytes are 0xCD)
| 0x54 || byte[0x10] || Padding? (all bytes are 0xCD)
|-
|-
| 0x64 || float || rand_radius2
| 0x64 || float || '''rand_radius2'''
|-
|-
| 0x68 || float || startParentID (all bytes are 0xCD?)
| 0x68 || int || '''startParentID''' (all bytes are 0xCD?)
|-
|-
| 0x6C || float || endParentID (all bytes are 0xCD?)
| 0x6C || int || '''endParentID''' (all bytes are 0xCD?)
|}
|}


Line 305: Line 300:
| 0x18 || [[AssetID]] || [[SND]]/[[SNDS]]
| 0x18 || [[AssetID]] || [[SND]]/[[SNDS]]
|-
|-
| 0x1C || int || Unknown
| 0x1C || zFragLocType || '''type'''
|-
|-
| 0x20 || int || Unknown
| 0x20 || int || '''index'''
|-
|-
| 0x24 || int || Unknown
| 0x24 || [[Vector3]] || '''Offset'''
|-
| 0x28 || int || Unknown
|-
| 0x2C || int || Unknown
|-
|-
| 0x30 || byte[0x10] || Padding? (all bytes are 0xCD)
| 0x30 || byte[0x10] || Padding? (all bytes are 0xCD)
|-
|-
| 0x40 || float || Unknown
| 0x40 || float || '''volume'''
|-
|-
| 0x44 || float || Unknown
| 0x44 || float || '''innerRadius'''
|-
|-
| 0x48 || float || Unknown
| 0x48 || float || '''outerRadius'''
|}
|}


Line 331: Line 322:
| 0x18 || [[AssetID]] || [[SND]]/[[SNDS]]
| 0x18 || [[AssetID]] || [[SND]]/[[SNDS]]
|-
|-
| 0x1C || zFragLocType || type
| 0x1C || zFragLocType || '''type'''
|-
|-
| 0x20 || int || UnknownID
| 0x20 || int || '''index'''
|-
|-
| 0x24 || [[Vector3]] || Offset
| 0x24 || [[Vector3]] || '''Offset'''
|-
|-
| 0x30 || float[4] || Padding? (all bytes are 0xCD)
| 0x30 || byte[0x10] || Padding? (all bytes are 0xCD)
|-
|-
| 0x40 || float || rand_radius
| 0x40 || float || '''rand_radius'''
|}

=== Type 7 ===

{| class="wikitable"
! Offset !! Type !! Description
|-
| 0x18 || [[AssetID]] || [[MODL]]
|-
| 0x1C || float || '''birthRadius'''
|-
| 0x20 || float || '''deathRadius'''
|-
| 0x24 || float || '''birthVelocity'''
|-
| 0x28 || float || '''deathVelocity'''
|-
| 0x2C || float || '''birthSpin'''
|-
| 0x30 || float || '''deathSpin'''
|-
| 0x34 || [Color] || '''birthColor'''
|-
| 0x44 || [Color] || '''deathColor'''
|}
|}


Line 349: Line 364:
| 0x18 || [[AssetID]] || Unknown
| 0x18 || [[AssetID]] || Unknown
|-
|-
| 0x1C || zFragLocType || type
| 0x1C || zFragLocType || '''type'''
|-
|-
| 0x20 || int || UnknownID
| 0x20 || int || '''index'''
|-
|-
| 0x24 || [[Vector3]] || Offset
| 0x24 || [[Vector3]] || '''Offset'''
|-
|-
| 0x30 || float[4] || Padding? (all bytes are 0xCD)
| 0x30 || float[4] || Padding? (all bytes are 0xCD)
|-
|-
| 0x40 || float || rand_radius
| 0x40 || float || '''rand_radius'''
|-
|-
| 0x44 || int || flags
| 0x44 || int || '''flags'''
|}
|}


Line 369: Line 384:
| 0x18 || [[AssetID]] || Unknown
| 0x18 || [[AssetID]] || Unknown
|-
|-
| 0x1C || zFragLocType || type
| 0x1C || zFragLocType || '''type'''
|-
|-
| 0x20 || int || UnknownID
| 0x20 || int || '''index'''
|-
|-
| 0x2C || [[Vector3]] || Offset
| 0x2C || [[Vector3]] || '''Offset'''
|-
|-
| 0x30 || float[4] || Padding? (all bytes are 0xCD)
| 0x30 || float[4] || Padding? (all bytes are 0xCD)
|-
|-
| 0x40 || float || rand_radius
| 0x40 || float || '''rand_radius'''
|-
| 0x44 || int || '''flags'''
|-
| 0x48 || float || '''radius'''
|-
| 0x4C || float || '''duration'''
|-
| 0x50 || float || '''intensity'''
|-
| 0x54 || float || '''freq'''
|-
| 0x58 || float || '''repeat_delay'''
|}

=== Type 10 ===

{| class="wikitable"
! Offset !! Type !! Description
|-
| 0x18 || zFragLocType || '''type'''
|-
| 0x1C || int || '''index'''
|-
| 0x20 || [[Vector3]] || '''Offset'''
|-
| 0x2C || float[4] || Padding? (all bytes are 0xCD)
|-
| 0x3C || float || '''rand_radius'''
|-
| 0x40 || int || '''flags'''
|-
|-
| 0x44 || int || flags
| 0x44 || float || '''radius'''
|-
|-
| 0x48 || float || radius
| 0x48 || float || '''scale'''
|-
|-
| 0x4C || float || duration
| 0x4C || float || '''fuel'''
|-
|-
| 0x50 || float || intensity
| 0x50 || float || '''heat'''
|-
|-
| 0x54 || float || freq
| 0x54 || float || '''damage'''
|-
|-
| 0x58 || float || repeat_delay
| 0x58 || float || '''knockback'''
|}
|}



Revision as of 04:06, 27 June 2022

SHRP
Shrapnel
TypeBinary
Games usedBattle for Bikini Bottom

The SpongeBob SquarePants Movie
The Incredibles
Rise of the Underminer

Ratatouille Prototype
Source codezShrapnel.h

This asset defines data for shrapnel.

Format

The asset data starts with a 0xC byte header:

Offset Type Description
0x00 int Amount of SHRP entries
0x04 AssetID This asset
0x08 int Unknown, always 0

After that, there's an array of shrapnel entries, as defined in the header. Each entry is of variable size:

  • Type 1 (group)
  • Type 2 (shrapnel)
  • Type 3 (particle) (BFBB) - 0x1D4
  • Type 3 (particle) (Movie) - 0x1E0
  • Type 4 (projectile) (BFBB) - 0x90
  • Type 4 (projectile) (Movie) - 0x110
  • Type 5 (lightning) (BFBB) - 0x68
  • Type 5 (lightning) (Movie) - 0x70
  • Type 6 (sound) (BFBB) - 0x4C
  • Type 6 (sound) (Movie) - 0x44
  • Type 7 (shockwave)
  • Type 8 (explosion) (Movie) - 0x48
  • Type 9 (distortion) - 0x5C
  • Type 10 (fire) - 0x5C

The entries have the following structure:

Offset Type Description
0x00 int Type
0x04 AssetID UnknownID
0x08 int parentID1
0x0C int parentID2
0x10 float lifetime
0x14 float delay

Type 3 (BFBB)

Offset Type Description
0x18 zFragLocType type
0x1C int index
0x20 Vector3 Offset
0x2C byte[0x10] Padding? (all bytes are 0xCD)
0x3C zFragLocType type2
0x40 int index2
0x44 Vector3 Offset2
0x50 byte[0x144] Padding? (all bytes are 0xCD)
0x194 short Unknown
0x198 short Unknown
0x19C byte[0x30] Padding? (all bytes are 0xCD)
0x1CC AssetID PARE
0x1D0 int Unknown

Type 3 (Movie)

Offset Type Description
Type 3
0x18 zFragLocType type
0x1C int index
0x20 Vector3 Offset
0x2C byte[0x10] Padding? (all bytes are 0xCD)
0x3C float rand_radius
0x40 zFragLocType type2
0x44 int index2
0x48 Vector3 Offset2
0x54 byte[0x10] Padding? (all bytes are 0xCD)
0x58 float rand_radius2
0x5C byte[0x138] Padding? (all bytes are 0xCD)
0x194 short Unknown
0x196 short Unknown
0x198 byte[0x48] Padding? (all bytes are 0xCD)
0x1E0 byte Unknown
0x1E1 byte[3] padding?
0x1E4 Asset ID PARE
0x1E8 int null

Type 4 (BFBB)

Offset Type Description
0x18 AssetID MODL
0x1C RpAtomic modelFile
0x20 zFragLocType type
0x24 int index
0x28 float Offset X - Offset the Shrapnel spawns at
0x2C float Offset Y
0x30 float Offset Z
0x34 byte[0x34] Padding? (all bytes are 0xCD)
0x68 float bounce
0x6C int maxbounces
0x70 int flags
0x74 AssetID SHRP - Child shrapnel ID
0x78 AssetID SHRP - Child shrapnel2 ID
0x7C float minScale
0x80 float maxScale
0x84 AssetID CRV
0x88 AssetID CRV
0x8C float Gravity

Type 4 (Movie)

Offset Type Description
0x18 AssetID MODL
0x1C RpAtomic* modelFile
0x20 zFragLocType type
0x24 int index
0x28 float Offset X - Offset the Shrapnel spawns at
0x2C float Offset Y
0x30 float Offset Z
0x34 byte[0x10] Padding? (all bytes are 0xCD)
0x44 float rand_radius
0x48 zFragLocType type2
0x4C int index2
0x50 Vector3 Offset2
0x5C byte[0x3C] Padding? (all bytes are 0xCD)
0x98 zFragLocType type3
0x9C int index3
0xA8 Vector3 Offset3
0xAC byte[0x3C] Padding? (all bytes are 0xCD)
0xE8 float Bounce
0xEC int maxBounces
0xF0 int Flags
0xF4 AssetID SHRP - Child shrapnel ID
0xF8 AssetID SHRP - Child shrapnel2 ID
0xFC float minScale
0x100 float maxScale
0x104 AssetID CRV
0x108 AssetID CRV
0x10C float Gravity

Type 5 (BFBB)

Offset Type Description
0x18 zFragLocType type
0x1C int index
0x20 Vector3 Offset
0x2C byte[0x10] Padding? (all bytes are 0xCD)
0x3C zFragLocType type2
0x40 int index2
0x44 Vector3 Offset2
0x50 byte[0x10] Padding? (all bytes are 0xCD)
0x60 int startParentID (all bytes are 0xCD?)
0x64 int endParentID (all bytes are 0xCD?)

Type 5 (Movie)

Offset Type Description
0x18 zFragLocType type
0x1C int index
0x20 Vector3 Offset
0x2C byte[0x10] Padding? (all bytes are 0xCD)
0x3C float rand_radius
0x40 zFragLocType type2
0x44 int index2
0x48 Vector3 Offset2
0x54 byte[0x10] Padding? (all bytes are 0xCD)
0x64 float rand_radius2
0x68 int startParentID (all bytes are 0xCD?)
0x6C int endParentID (all bytes are 0xCD?)

Type 6 (BFBB)

Offset Type Description
0x18 AssetID SND/SNDS
0x1C zFragLocType type
0x20 int index
0x24 Vector3 Offset
0x30 byte[0x10] Padding? (all bytes are 0xCD)
0x40 float volume
0x44 float innerRadius
0x48 float outerRadius

Type 6 (Movie)

Offset Type Description
0x18 AssetID SND/SNDS
0x1C zFragLocType type
0x20 int index
0x24 Vector3 Offset
0x30 byte[0x10] Padding? (all bytes are 0xCD)
0x40 float rand_radius

Type 7

Offset Type Description
0x18 AssetID MODL
0x1C float birthRadius
0x20 float deathRadius
0x24 float birthVelocity
0x28 float deathVelocity
0x2C float birthSpin
0x30 float deathSpin
0x34 [Color] birthColor
0x44 [Color] deathColor

Type 8

Offset Type Description
0x18 AssetID Unknown
0x1C zFragLocType type
0x20 int index
0x24 Vector3 Offset
0x30 float[4] Padding? (all bytes are 0xCD)
0x40 float rand_radius
0x44 int flags

Type 9

Offset Type Description
0x18 AssetID Unknown
0x1C zFragLocType type
0x20 int index
0x2C Vector3 Offset
0x30 float[4] Padding? (all bytes are 0xCD)
0x40 float rand_radius
0x44 int flags
0x48 float radius
0x4C float duration
0x50 float intensity
0x54 float freq
0x58 float repeat_delay

Type 10

Offset Type Description
0x18 zFragLocType type
0x1C int index
0x20 Vector3 Offset
0x2C float[4] Padding? (all bytes are 0xCD)
0x3C float rand_radius
0x40 int flags
0x44 float radius
0x48 float scale
0x4C float fuel
0x50 float heat
0x54 float damage
0x58 float knockback