Keyboard shortcuts

Press โ† or โ†’ to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

GIZ Files

GIZ files are a proprietary format used in TTGames LEGO video games to store interactable elements of a level such as levers, studs, and more.

This format is not officially documented by TTGames. The current understanding comes from community research.

๐Ÿ“ฆ Overview

  • File extension: .giz
  • Category: Level
  • Used for: Non-AI interactable elements in levels
  • Official name: Gizmo

๐ŸŽฎ Usage in games

The file format was introduced in Nu2 Engine.

๐Ÿ› ๏ธ Working with GIZ files

Some sections of the GIZ file can be edited in BrickBench, but you can always use a Hex Editor as well.

Common workflow:

N/A

๐Ÿ”ง Known tools

The following tools are commonly used with GIZ files:

โš ๏ธ Notes & limitations

  • GIZ is a proprietary format
  • The internal structure is not fully documented for all games
  • Some variations may exist between different games or engine versions

๐Ÿงฉ Structure

The structure may vary between engine versions:

TCS GIZ Structure

Type Legend

TypeDescription
int32-bit signed integer
float32-bit float
str88-bit length-prefixed string
str1616-bit length-prefixed string
str3232-bit length-prefixed string
๐Ÿ”’strnFixed-length string (n = byte length)
short16-bit signed integer
ushort16-bit unsigned integer
byte8-bit unsigned integer
boolBoolean
vec33-component float vector
enumEnumerated value
arrayArray of objects
_[]Array of _
?Special/Other type

Overall

/
โ”œโ”€โ”€ [int]    Magic               โ€” Always 1 (0x01 00 00 00).
โ”œโ”€โ”€ [array]  Sections            โ€” Section types listed below.
โ”‚       โ”œโ”€โ”€ [str32]  Section Name
โ”‚       โ””โ”€โ”€ [int]    Section Length  โ€” Length of the section in bytes.
โ””โ”€โ”€ [int]    End of File         โ€” Always 0 (0x00 00 00 00).

Special Objects

Special objects are used in multiple gizmo sections and are loaded through the same function. Linking to special objects or other parts can be done without the special objects loading function, but the function is usually used when linking to multiple special objects.

Throughout the rest of the gizmo section documentation, the special object loading will be written out completely for each section despite the repetition.

/
โ”œโ”€โ”€ [byte]   Special Object Version
โ”œโ”€โ”€ [byte]   Special Object Count
โ””โ”€โ”€ [array]  Special Objects
        โ”œโ”€โ”€ [str8]   Special Object Name
        โ”œโ”€โ”€ [float]  Unknown
        โ”œโ”€โ”€ [float]  Animation Time
        โ”œโ”€โ”€ [int]    Unknown              (Special Object Version >= 2)
        โ””โ”€โ”€ [?]      Additional Loading  โ€” When loading special objects, code for loading additional
                                           data can be passed and thus for some special objects
                                           loading there may be an extra property.

GizObstacle Section

GizObstacles are primarily invisible triggers of sorts. For example, in 1-2 when you jump on top of the stone pillars, you enter a GizObstacle trigger that causes the pillar to fall.

/
โ”œโ”€โ”€ [byte]   Version              โ€” This is always at least 10 in Vanilla.
โ”œโ”€โ”€ [short]  GizObstacle Count
โ””โ”€โ”€ [array]  GizObstacles
        โ”œโ”€โ”€ [๐Ÿ”’str16]  Name
        โ”œโ”€โ”€ [vec3]   Position
        โ”œโ”€โ”€ [vec3]   Unknown              (Version >= 2)
        โ”œโ”€โ”€ [float]  Unknown
        โ”œโ”€โ”€ [float]  Unknown
        โ”œโ”€โ”€ [vec3]   Unknown              (Version >= 3)
        โ”œโ”€โ”€ [short]  Unknown              (Version >= 3)
        โ”œโ”€โ”€ [int]    Unknown
        โ”œโ”€โ”€ [int]    Unknown              (Version >= 12)
        โ”œโ”€โ”€ [short]  Unknown              (Version == 6)
        โ”œโ”€โ”€ [byte]   Unknown              (Version == 6)
        โ”œโ”€โ”€ [byte]   Unknown
        โ”œโ”€โ”€ [byte]   Unknown
        โ”œโ”€โ”€ [byte]   Unknown              (Version >= 7)
        โ”œโ”€โ”€ [byte]   Special Object Version
        โ”œโ”€โ”€ [byte]   Special Object Count
        โ”œโ”€โ”€ [array]  Special Objects
        โ”‚       โ”œโ”€โ”€ [str8]   Special Object Name
        โ”‚       โ”œโ”€โ”€ [float]  Unknown
        โ”‚       โ”œโ”€โ”€ [float]  Animation Time
        โ”‚       โ”œโ”€โ”€ [int]    Unknown      (Special Object Version >= 2)
        โ”‚       โ””โ”€โ”€ [short]  Unknown      (Version >= 8)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 4)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 5)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 8)
        โ”œโ”€โ”€ [short]  Unknown              (Version == 9)
        โ”œโ”€โ”€ [str8]   Unknown              (Version >= 10)
        โ”œโ”€โ”€ [short]  Unknown              (Version >= 9)
        โ”œโ”€โ”€ [short]  Unknown              (Version >= 9)
        โ”œโ”€โ”€ [short]  Unknown              (Version >= 9)
        โ”œโ”€โ”€ [vec3]   Unknown              (Version >= 9)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 11)
        โ”œโ”€โ”€ [str8]   Unknown              (Version >= 13)
        โ””โ”€โ”€ [str8]   Unknown              (Version >= 14)

GizBuildit Section

GizBuildit is the buildable attribute applied to special objects.

/
โ”œโ”€โ”€ [byte]   Version
โ”œโ”€โ”€ [short]  Buildit Count
โ””โ”€โ”€ [array]  Buildits
        โ”œโ”€โ”€ [๐Ÿ”’str16]  Name
        โ”œโ”€โ”€ [vec3]   Position
        โ”œโ”€โ”€ [byte]   Special Object Version
        โ”œโ”€โ”€ [byte]   Special Object Count
        โ”œโ”€โ”€ [array]  Special Objects
        โ”‚       โ”œโ”€โ”€ [str8]   Special Object Name
        โ”‚       โ”œโ”€โ”€ [float]  Unknown 1
        โ”‚       โ”œโ”€โ”€ [float]  Animation Time
        โ”‚       โ””โ”€โ”€ [int]    Unknown 2            (Special Object Version >= 2)
        โ”œโ”€โ”€ [float]  Jump Intensity
        โ”œโ”€โ”€ [float]  Unknown 1                    (Version <= 6)
        โ”œโ”€โ”€ [ushort] Minimum Studs Value?
        โ”œโ”€โ”€ [ushort] Maximum Studs Value?         โ€” Or random variance?
        โ”œโ”€โ”€ [byte]   Unknown 2
        โ”œโ”€โ”€ [byte]   Unknown 3
        โ”œโ”€โ”€ [float]  Unknown 4                    (Version >= 6)
        โ”œโ”€โ”€ [short]  Unknown 5                    (Version == 7)
        โ”œโ”€โ”€ [str8]   Unknown 6                    (Version >= 8)
        โ”œโ”€โ”€ [short]  Studs Pitch                  (Version >= 7)
        โ”œโ”€โ”€ [short]  Studs Yaw                    (Version >= 7)
        โ”œโ”€โ”€ [vec3]   Studs Spawn Position          (Version >= 7)
        โ”œโ”€โ”€ [float]  Studs Speed                  (Version >= 9)
        โ”œโ”€โ”€ [short]  Unknown 7                    (Version >= 4)
        โ”œโ”€โ”€ [short]  Unknown 8                    (Version >= 5)
        โ””โ”€โ”€ [str8]   Unknown 9                    (Version >= 5)

GizForce Section

GizForce is the forceable attribute applied to special objects.

/
โ”œโ”€โ”€ [byte]   Version              โ€” This is always at least 8 in Vanilla, but mostly 16.
โ”œโ”€โ”€ [short]  Force Count
โ””โ”€โ”€ [array]  Forces
        โ”œโ”€โ”€ [๐Ÿ”’str16]  Name
        โ”œโ”€โ”€ [vec3]   Position
        โ”œโ”€โ”€ [vec3]   Unknown              (Version == 1)
        โ”œโ”€โ”€ [float]  Reset Time
        โ”œโ”€โ”€ [float]  Shake Time           (Version >= 8)
        โ”œโ”€โ”€ [float]  Range
        โ”œโ”€โ”€ [vec3]   Unknown              (Version == 1)
        โ”œโ”€โ”€ [short]  Unknown              (Version == 1)
        โ”œโ”€โ”€ [int]    Interaction Options  โ€” Needs further research/experimentation.
        โ”‚       โ”œโ”€โ”€ Dark Side
        โ”‚       โ””โ”€โ”€ Reset
        โ”œโ”€โ”€ [bool]   Togglable
        โ”œโ”€โ”€ [byte]   Unknown              (Version >= 11)
        โ”œโ”€โ”€ [byte]   Unknown
        โ”œโ”€โ”€ [byte]   Unknown              (Version == 1)
        โ”œโ”€โ”€ [byte]   Special Object Version
        โ”œโ”€โ”€ [byte]   Special Object Count
        โ”œโ”€โ”€ [array]  Special Objects
        โ”‚       โ”œโ”€โ”€ [str8]   Special Object Name
        โ”‚       โ”œโ”€โ”€ [float]  Unknown
        โ”‚       โ”œโ”€โ”€ [float]  Animation Time
        โ”‚       โ”œโ”€โ”€ [int]    Unknown      (Special Object Version >= 2)
        โ”‚       โ””โ”€โ”€ [short]  Unknown      (Version >= 9)
        โ”œโ”€โ”€ [float]  Force Speed
        โ”œโ”€โ”€ [float]  Reset Speed
        โ”œโ”€โ”€ [float]  Auto Force?          (Version >= 6)
        โ”œโ”€โ”€ [float]  Effect Scale         (Version >= 7)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 3)  โ€” Related to animation?
        โ”œโ”€โ”€ [short]  Unknown              (Version == 4)
        โ”œโ”€โ”€ [str8]   blowup               (Version >= 5)
        โ”œโ”€โ”€ [ushort] Minimum Studs Value? (Version >= 4)
        โ”œโ”€โ”€ [ushort] Maximum Studs Value? (Version >= 4)
        โ”œโ”€โ”€ [short]  Studs Angle          (Version >= 4)
        โ”œโ”€โ”€ [vec3]   Studs Position       (Version >= 4)
        โ”œโ”€โ”€ [float]  Studs Speed          (Version >= 10)
        โ”œโ”€โ”€ [str8]   Process Sound        (Version >= 15)
        โ”œโ”€โ”€ [str8]   Complete Sound       (Version >= 15)
        โ””โ”€โ”€ [str8]   Reset Sound          (Version >= 15)

Blowup Section

/
โ”œโ”€โ”€ [int]    Version                      โ€” This is always at least 21 in Vanilla.
โ”œโ”€โ”€ [int]    blowup (Effect) Count        (Version >= 2)
โ”œโ”€โ”€ [int]    blowup (Property) Count
โ”œโ”€โ”€ [array]  blowups (Effects)            (Version >= 2)
โ”‚       โ”œโ”€โ”€ [str8]   Special Object?
โ”‚       โ”œโ”€โ”€ [str8]   Name?
โ”‚       โ”œโ”€โ”€ [str8]   .par Reference?      (Version >= 17)
โ”‚       โ”œโ”€โ”€ [str8]   .par Reference?      (Version >= 17)
โ”‚       โ”œโ”€โ”€ [str8]   .ptl Reference?      (Version >= 4)
โ”‚       โ”œโ”€โ”€ [str8]   .ptl Reference?      (Version >= 4)
โ”‚       โ”œโ”€โ”€ [str8]   .ptl Reference?      (Version >= 4)
โ”‚       โ”œโ”€โ”€ [str8]   _ Reference          (Version >= 26)
โ”‚       โ”œโ”€โ”€ [str8]   _ Reference          (Version >= 26)
โ”‚       โ”œโ”€โ”€ [str8]   _ Reference          (Version >= 27)
โ”‚       โ”œโ”€โ”€ [str8]   _ Reference          (Version >= 27)
โ”‚       โ”œโ”€โ”€ [int]    Unknown
โ”‚       โ”œโ”€โ”€ [int]    Unknown              (Version >= 7)  โ€” Potentially stud related.
โ”‚       โ”œโ”€โ”€ [byte]   Unknown              (Version >= 7)
โ”‚       โ”œโ”€โ”€ [float]  Unknown              (Version >= 8)
โ”‚       โ”œโ”€โ”€ [str8]   Blowup Decal         (Version >= 9)
โ”‚       โ”œโ”€โ”€ [float]  Unknown              (Version >= 14)
โ”‚       โ”œโ”€โ”€ [float]  Unknown              (Version >= 14)
โ”‚       โ”œโ”€โ”€ [byte]   Unknown              (Version >= 15)
โ”‚       โ”œโ”€โ”€ [byte]   Unknown              (Version >= 15)
โ”‚       โ”œโ”€โ”€ [bool]   Next Data?           (Version >= 16)
โ”‚       โ”œโ”€โ”€ [vec3]   Unknown              (Next Data != 0)
โ”‚       โ”œโ”€โ”€ [float]  Unknown              (Next Data != 0)
โ”‚       โ”œโ”€โ”€ [float]  Unknown              (Next Data != 0)
โ”‚       โ”œโ”€โ”€ [float]  Unknown              (Next Data != 0)
โ”‚       โ”œโ”€โ”€ [float]  Unknown              (Next Data != 0)
โ”‚       โ”œโ”€โ”€ [float]  Unknown              (Next Data != 0)
โ”‚       โ”œโ”€โ”€ [short]  Unknown              (Next Data != 0)
โ”‚       โ”œโ”€โ”€ [byte]   Unknown              (Next Data != 0)
โ”‚       โ”œโ”€โ”€ [byte]   Unknown              (Next Data != 0)
โ”‚       โ”œโ”€โ”€ [str8]   Blouwp Emit Object   (Version >= 18)
โ”‚       โ”œโ”€โ”€ [str8]   Blouwp Emit Object   (Version >= 22)
โ”‚       โ”œโ”€โ”€ [str8]   Blouwp Emit Object   (Version >= 22)
โ”‚       โ”œโ”€โ”€ [str8]   Blouwp Emit Object   (Version >= 22)
โ”‚       โ”œโ”€โ”€ [byte]   Unknown              (Version >= 18)
โ”‚       โ”œโ”€โ”€ [float]  Unknown              (Version >= 18)
โ”‚       โ”œโ”€โ”€ [float]  Unknown              (Version >= 18)
โ”‚       โ”œโ”€โ”€ [str8]   Blowup Shadow        (Version >= 19)
โ”‚       โ”œโ”€โ”€ [str8]   Blowup Swap          (Version >= 20)
โ”‚       โ”œโ”€โ”€ [float]  Unknown              (Version >= 23)
โ”‚       โ””โ”€โ”€ [float]  Unknown              (Version >= 24)
โ””โ”€โ”€ [array]  blowups (Properties)
        โ”œโ”€โ”€ [str8]   blowup (Effect)?
        โ”œโ”€โ”€ [str8]   Name?                (Version >= 2)
        โ”œโ”€โ”€ [vec3]   Position
        โ”œโ”€โ”€ [short]  Unknown
        โ”œโ”€โ”€ [short]  Unknown
        โ”œโ”€โ”€ [short]  Unknown
        โ”œโ”€โ”€ [short]  Unknown 1a           (Version >= 2 && Version <= 19)
        โ”œโ”€โ”€ [int]    Unknown 1a           (Version >= 20)
        โ”œโ”€โ”€ [int]    Unknown 1b           (Version == 28)
        โ”œโ”€โ”€ [int]    Unknown              (Version >= 30)
        โ”œโ”€โ”€ [int]    Unknown              (Version >= 2)
        โ”œโ”€โ”€ [byte]   Unknown              (Version >= 2)
        โ”œโ”€โ”€ [byte]   Unknown              (Version >= 2)
        โ”œโ”€โ”€ [byte]   Unknown              (Version >= 4)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 6)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 8)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 8)
        โ”œโ”€โ”€ [short]  Unknown              (Version >= 9)
        โ”œโ”€โ”€ [short]  Unknown              (Version >= 9)
        โ”œโ”€โ”€ [short]  Unknown              (Version >= 9)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 9)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 9)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 9)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 10)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 11)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 11)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 11)
        โ”œโ”€โ”€ [byte]   Unknown              (Version >= 12)
        โ”œโ”€โ”€ [short]  Unknown              (Version >= 13)
        โ”œโ”€โ”€ [short]  Unknown              (Version >= 13)
        โ”œโ”€โ”€ [short]  Unknown              (Version >= 19)
        โ”œโ”€โ”€ [short]  Unknown              (Version >= 19)
        โ”œโ”€โ”€ [short]  Unknown              (Version >= 19)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 19)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 19)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 19)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 19)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 21)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 23)
        โ””โ”€โ”€ [float]  Unknown              (Version >= 31)

GizmoPickup Section

/
โ”œโ”€โ”€ [int]    Version
โ”œโ”€โ”€ [int]    Pickup Count          โ€” Length of the Pickups array.
โ”œโ”€โ”€ [int]    Pickup Version?       (Version >= 3)  โ€” Not entirely understood.
โ”œโ”€โ”€ [float]  Draw Distance         (Version >= 5)  โ€” Distance from camera pickups must be in to load.
โ”œโ”€โ”€ [float]  Scale                 (Version >= 5)  โ€” Scale of the pickups. Applies consistently
โ”‚                                                    through the whole area despite being per-file.
โ””โ”€โ”€ [array]  Pickups
        โ”œโ”€โ”€ [๐Ÿ”’str8]   Pickup Name
        โ”œโ”€โ”€ [vec3]   Pickup Position
        โ”œโ”€โ”€ [enum]   Pickup Type
        โ”‚       โ”œโ”€โ”€ default,s  โ€” Silver Stud
        โ”‚       โ”œโ”€โ”€ g          โ€” Gold Stud
        โ”‚       โ”œโ”€โ”€ b          โ€” Blue Stud
        โ”‚       โ”œโ”€โ”€ p          โ€” Purple Stud
        โ”‚       โ”œโ”€โ”€ m          โ€” Minikit
        โ”‚       โ”œโ”€โ”€ u          โ€” Powerup
        โ”‚       โ”œโ”€โ”€ h          โ€” Heart
        โ”‚       โ”œโ”€โ”€ r          โ€” Red Brick
        โ”‚       โ”œโ”€โ”€ c          โ€” Challenge Minikit
        โ”‚       โ””โ”€โ”€ t          โ€” Torpedo
        โ”œโ”€โ”€ [enum]   Spawn Type    (Version >= 2)  โ€” Not entirely researched/experimented with.
        โ”‚       โ”œโ”€โ”€ default,0  โ€” Normal
        โ”‚       โ”œโ”€โ”€ 2          โ€” Triggered
        โ”‚       โ””โ”€โ”€ 6          โ€” Auto-Collect
        โ””โ”€โ”€ [byte]   Spawn Group   (Version >= 4)  โ€” Pickups of the same spawn group all spawn when
                                                     one is triggered. Never utilized in Vanilla.

Lever Section

/
โ”œโ”€โ”€ [int]    Version               โ€” This is always 6 in Vanilla.
โ”œโ”€โ”€ [int]    Lever Count
โ””โ”€โ”€ [array]  Levers
        โ”œโ”€โ”€ [๐Ÿ”’str16]  Name
        โ”œโ”€โ”€ [vec3]   Position
        โ”œโ”€โ”€ [short]  Angle
        โ”œโ”€โ”€ [enum]   Handle Color
        โ”‚       โ”œโ”€โ”€ default  โ€” None
        โ”‚       โ”œโ”€โ”€ r        โ€” Red
        โ”‚       โ”œโ”€โ”€ o        โ€” Orange
        โ”‚       โ”œโ”€โ”€ y        โ€” Yellow
        โ”‚       โ”œโ”€โ”€ l        โ€” Lime
        โ”‚       โ”œโ”€โ”€ g        โ€” Green
        โ”‚       โ”œโ”€โ”€ u        โ€” Light Blue
        โ”‚       โ”œโ”€โ”€ b        โ€” Blue
        โ”‚       โ”œโ”€โ”€ p        โ€” Purple
        โ”‚       โ””โ”€โ”€ w        โ€” Brown
        โ”œโ”€โ”€ [bool]   Multiple Pulls    (Version >= 2)
        โ”œโ”€โ”€ [float]  Pull Time         (Version >= 3)
        โ”œโ”€โ”€ [bool]   Invisible         (Version >= 4)
        โ”œโ”€โ”€ [vec3]   Target Position   (Version >= 5)
        โ”œโ”€โ”€ [float]  Target Size       (Version >= 5)
        โ””โ”€โ”€ [bool]   Target Invisible  (Version >= 6)

Spinner Section

Spinner is the green and red gizmo that you push to spin.

/
โ”œโ”€โ”€ [int]    Version               โ€” This is essentially always 9 in Vanilla.
โ”œโ”€โ”€ [int]    Spinner Count
โ””โ”€โ”€ [array]  Spinners
        โ”œโ”€โ”€ [str8]   Name
        โ”œโ”€โ”€ [vec3]   Position
        โ”œโ”€โ”€ [short]  Angle
        โ”œโ”€โ”€ [str8]   Spinner Special Object
        โ”œโ”€โ”€ [byte]   Unknown Count?
        โ”œโ”€โ”€ [byte]   Flap Count            (Version >= 2)
        โ”œโ”€โ”€ [int]    Unknown               (Flap Count != 0 && Version >= 3)
        โ”œโ”€โ”€ [float]  Unknown               (Flap Count != 0 && Version >= 3)
        โ”œโ”€โ”€ [float]  Unknown 1             (Flap Count != 0 && Version >= 4)
        โ”œโ”€โ”€ [byte]   Unknown               (Unknown 1 != 0 && Version >= 6)
        โ”œโ”€โ”€ *Format for Version <= 4 excluded here
        โ”œโ”€โ”€ [byte]   Special Object Version
        โ”œโ”€โ”€ [byte]   Special Object Count
        โ”œโ”€โ”€ [array]  Special Objects
        โ”‚       โ”œโ”€โ”€ [str8]   Special Object Name
        โ”‚       โ”œโ”€โ”€ [float]  Unknown 1
        โ”‚       โ”œโ”€โ”€ [float]  Animation Time
        โ”‚       โ””โ”€โ”€ [int]    Unknown 2     (Special Object Version >= 2)
        โ”œโ”€โ”€ *Format for Version <= 6 excluded here
        โ”œโ”€โ”€ [float[]] Unknown              (Version >= 7)  โ€” Length of Unknown Count.
        โ”œโ”€โ”€ [float]  Unknown               (Version >= 8)
        โ””โ”€โ”€ [float]  Unknown               (Version >= 8)

MiniCut Section

MiniCuts are short cutscenes that occur in the middle of levels.

/
โ”œโ”€โ”€ [int]    Version               โ€” This is always 1 in Vanilla. Changing this value in TCS does nothing.
โ”œโ”€โ”€ [int]    MiniCut Count
โ””โ”€โ”€ [array]  MiniCuts
        โ”œโ”€โ”€ [str8]   Name
        โ”œโ”€โ”€ [float]  Unknown
        โ”œโ”€โ”€ [float]  Unknown
        โ”œโ”€โ”€ [float]  Unknown
        โ”œโ”€โ”€ [float]  Unknown
        โ”œโ”€โ”€ [float]  Unknown
        โ”œโ”€โ”€ [byte]   MiniCuts Parts Count
        โ””โ”€โ”€ [array]  MiniCuts Parts
                โ”œโ”€โ”€ [str8]   MiniCuts Part Name
                โ”œโ”€โ”€ [float]  Unknown
                โ”œโ”€โ”€ [float]  Unknown
                โ”œโ”€โ”€ [float]  Unknown
                โ”œโ”€โ”€ [float]  Unknown
                โ”œโ”€โ”€ [short]  Unknown
                โ”œโ”€โ”€ [short]  Unknown
                โ”œโ”€โ”€ [short]  Unknown
                โ”œโ”€โ”€ [float]  Unknown
                โ””โ”€โ”€ [float]  Unknown

Tube Section

Tubes are the areas that blow/fan/float your character upwards. They are also used in the podsprint level.

/
โ”œโ”€โ”€ [int]    Version               โ€” This is always 2 in Vanilla.
โ”œโ”€โ”€ [int]    Tube Count
โ””โ”€โ”€ [array]  Tubes
        โ”œโ”€โ”€ [๐Ÿ”’str16]  Name
        โ”œโ”€โ”€ [vec3]   Position      โ€” This is at the bottom of the tube.
        โ”œโ”€โ”€ [float]  Height
        โ”œโ”€โ”€ [float]  Radius
        โ”œโ”€โ”€ [bool]   Magnetic      (Version >= 2)
        โ””โ”€โ”€ [str8]   Special Object (Version >= 3)  โ€” Not present in TCS.

ZipUp Section

ZipUps are the red targets and grapples that blaster characters can swing and zip between.

/
โ”œโ”€โ”€ [int]    Version               โ€” This is always at least 2 in Vanilla, but mostly 4.
โ”œโ”€โ”€ [int]    ZipUp Count
โ””โ”€โ”€ [array]  ZipUps
        โ”œโ”€โ”€ [๐Ÿ”’str16]  Name
        โ”œโ”€โ”€ [vec3]   Start
        โ”œโ”€โ”€ [vec3]   Axis
        โ”œโ”€โ”€ [vec3]   End
        โ”œโ”€โ”€ [short]  Unknown 1
        โ”œโ”€โ”€ [short]  Unknown 2
        โ”œโ”€โ”€ [bool]   Swing
        โ”œโ”€โ”€ [bool]   Unknown 3
        โ”œโ”€โ”€ [bool]   Two Way
        โ”œโ”€โ”€ [bool]   Invisible         (Version >= 2)
        โ”œโ”€โ”€ [bool]   Unknown 4         (Version >= 3)
        โ””โ”€โ”€ [bool]   Target(s) Invisible? (Version >= 4)

GizTurret Section

GizTurrets are the turrets that donโ€™t move but shoot at the player, such as in vehicle levels or on Kamino.

/
โ”œโ”€โ”€ [byte]   Version
โ”œโ”€โ”€ [short]  GizTurret Count
โ””โ”€โ”€ [array]  GizTurrets
        โ”œโ”€โ”€ [๐Ÿ”’str16]  Name
        โ”œโ”€โ”€ [byte]   Special Object Version
        โ”œโ”€โ”€ [byte]   Special Object Count
        โ”œโ”€โ”€ [array]  Special Objects
        โ”‚       โ”œโ”€โ”€ [str8]   Special Object Name
        โ”‚       โ”œโ”€โ”€ [float]  Unknown
        โ”‚       โ”œโ”€โ”€ [float]  Animation Time
        โ”‚       โ”œโ”€โ”€ [int]    Unknown      (Special Object Version >= 2)
        โ”‚       โ””โ”€โ”€ [short]  Unknown      (Version >= 3)  โ€” TCS loading code for this is a bit odd.
        โ”œโ”€โ”€ [vec3]   Unknown
        โ”œโ”€โ”€ [vec3]   Unknown
        โ”œโ”€โ”€ [vec3]   Unknown
        โ”œโ”€โ”€ [vec3]   Unknown
        โ”œโ”€โ”€ [int]    Unknown
        โ”œโ”€โ”€ [int]    Unknown
        โ”œโ”€โ”€ [int]    Unknown
        โ”œโ”€โ”€ [int]    Unknown
        โ”œโ”€โ”€ [int]    Unknown
        โ”œโ”€โ”€ [int]    Unknown
        โ”œโ”€โ”€ [int]    Unknown              (Version >= 2)
        โ”œโ”€โ”€ [byte]   Unknown Count
        โ”œโ”€โ”€ [vec3[]] Unknown              โ€” Length of Unknown Count.
        โ”œโ”€โ”€ [float]  Unknown
        โ”œโ”€โ”€ [float]  Unknown
        โ”œโ”€โ”€ [float]  Unknown              โ€” This is always 0 in Vanilla.
        โ”œโ”€โ”€ [float]  Unknown
        โ”œโ”€โ”€ [float]  Unknown
        โ”œโ”€โ”€ [float]  Unknown
        โ”œโ”€โ”€ [short]  Unknown
        โ”œโ”€โ”€ [short]  Unknown
        โ”œโ”€โ”€ [short]  Unknown
        โ”œโ”€โ”€ [vec3]   Unknown
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 6)
        โ”œโ”€โ”€ [byte]   Unknown
        โ”œโ”€โ”€ [byte]   Unknown              (Version >= 4)
        โ”œโ”€โ”€ [short]  Unknown              (Version >= 4)
        โ”œโ”€โ”€ [str8]   Blaster Material?
        โ”œโ”€โ”€ [str8]   Part?
        โ”œโ”€โ”€ [str8]   Part?
        โ”œโ”€โ”€ [str8]   Part?                (Version >= 7)
        โ”œโ”€โ”€ [str8]   Blowup?
        โ””โ”€โ”€ [short]  Unknown

BombGenerator Section

BombGenerators are the generators that spawn bombs for the player in vehicle levels.

/
โ”œโ”€โ”€ [byte]   Version               โ€” This is always 1 in Vanilla.
โ”œโ”€โ”€ [short]  BombGenerator Count
โ””โ”€โ”€ [array]  BombGenerators
        โ”œโ”€โ”€ [๐Ÿ”’str16]  Name
        โ”œโ”€โ”€ [vec3]   Position
        โ”œโ”€โ”€ [int]    Unknown
        โ”œโ”€โ”€ [byte]   Special Object Version
        โ”œโ”€โ”€ [byte]   Special Object Count
        โ””โ”€โ”€ [array]  Special Objects
                โ”œโ”€โ”€ [str8]   Special Object Name
                โ”œโ”€โ”€ [float]  Unknown
                โ”œโ”€โ”€ [float]  Animation Time?
                โ””โ”€โ”€ [int]    Unknown      (Special Object Version >= 2)

Panel Section

/
โ”œโ”€โ”€ [int]    Version               โ€” This is always at least 5 in Vanilla, but mostly 8.
โ”œโ”€โ”€ [int]    Panel Count
โ””โ”€โ”€ [array]  Panels
        โ”œโ”€โ”€ [str32]  Name
        โ”œโ”€โ”€ [vec3]   Position
        โ”œโ”€โ”€ [short]  Angle
        โ”œโ”€โ”€ [enum]   Type
        โ”‚       โ”œโ”€โ”€ default,0  โ€” Astromech Droid
        โ”‚       โ”œโ”€โ”€ 1          โ€” Protocol Droid
        โ”‚       โ”œโ”€โ”€ 2          โ€” Bounty Hunter
        โ”‚       โ””โ”€โ”€ 3          โ€” Stormtrooper
        โ”œโ”€โ”€ [bool]   Invisible             (Version >= 3)
        โ”œโ”€โ”€ [vec3]   Target Offset         (Version >= 4)
        โ”œโ”€โ”€ [float]  Target Size           (Version >= 4)
        โ”œโ”€โ”€ [bool]   Target Invisible      (Version >= 5)
        โ”œโ”€โ”€ [bool]   Alternative Face      (Version >= 6)  โ€” Only applies to Astromech and Protocol Droid types.
        โ”œโ”€โ”€ [bool]   Alternative Body      (Version >= 6)  โ€” Only applies to Astromech and Protocol Droid types.
        โ”‚                                                    Protocol Droid uses the same alternative body as
        โ”‚                                                    Astromech, and thus looks incorrect.
        โ”œโ”€โ”€ [bool]   Unknown 2             (Version >= 7)
        โ””โ”€โ”€ [bool]   Unknown 3             (Version >= 8)  โ€” Almost always false, except for panel3
                                                             in deathstarrescue_a.

HatMachine Section

HatMachines are the machines that give your character a hat when the lever is pulled.

/
โ”œโ”€โ”€ [int]    Version               โ€” This is always 5 in Vanilla.
โ”œโ”€โ”€ [int]    HatMachine Count
โ””โ”€โ”€ [array]  HatMachines
        โ”œโ”€โ”€ [str32]  Name
        โ”œโ”€โ”€ [vec3]   Position
        โ”œโ”€โ”€ [short]  Angle
        โ”œโ”€โ”€ [enum]   Type
        โ”‚       โ”œโ”€โ”€ 0          โ€” Random
        โ”‚       โ”œโ”€โ”€ 1          โ€” Leia
        โ”‚       โ”œโ”€โ”€ 2          โ€” Fedora
        โ”‚       โ”œโ”€โ”€ 3          โ€” Top Hat
        โ”‚       โ”œโ”€โ”€ 4          โ€” Baseball Cap
        โ”‚       โ”œโ”€โ”€ default,5  โ€” Stormtrooper
        โ”‚       โ”œโ”€โ”€ 6          โ€” Bounty Hunter
        โ”‚       โ””โ”€โ”€ 7          โ€” Droid Panel
        โ”œโ”€โ”€ [enum]   Lever Handle Color    (Version >= 3)
        โ”‚       โ”œโ”€โ”€ default  โ€” None
        โ”‚       โ”œโ”€โ”€ r        โ€” Red
        โ”‚       โ”œโ”€โ”€ o        โ€” Orange
        โ”‚       โ”œโ”€โ”€ y        โ€” Yellow
        โ”‚       โ”œโ”€โ”€ l        โ€” Lime
        โ”‚       โ”œโ”€โ”€ g        โ€” Green
        โ”‚       โ”œโ”€โ”€ u        โ€” Light Blue
        โ”‚       โ”œโ”€โ”€ b        โ€” Blue
        โ”‚       โ”œโ”€โ”€ p        โ€” Purple
        โ”‚       โ””โ”€โ”€ w        โ€” Brown
        โ”œโ”€โ”€ [vec3]   Target Position       (Version >= 4)
        โ”œโ”€โ”€ [float]  Target Size           (Version >= 4)
        โ””โ”€โ”€ [bool]   Target Invisible      (Version >= 5)

PushBlocks Section

PushBlocks are the blocks that can be pushed and slid across the tiled floors. Some unknown values may be related to allowing the PushBlock to be pushed after being pushed to a target location.

/
โ”œโ”€โ”€ [int]    Version
โ”œโ”€โ”€ [int]    PushBlocks Count
โ””โ”€โ”€ [array]  PushBlocks
        โ”œโ”€โ”€ [str8]   Name                  โ€” This (likely) links to a special object.
        โ”œโ”€โ”€ [float]  Snap Range
        โ”œโ”€โ”€ [bool]   Push Location?        โ€” Whether this is where you are meant to push an object to/on.
        โ”œโ”€โ”€ [bool]   Unknown 1             โ€” This is always 0 in Vanilla.
        โ”œโ”€โ”€ [bool]   Lock Z                โ€” Prevents the PushBlock from being pushed on the Z axis.
        โ”œโ”€โ”€ [bool]   Lock X                โ€” Prevents the PushBlock from being pushed on the X axis.
        โ”œโ”€โ”€ [bool]   Unknown 2             (Version >= 4)
        โ”œโ”€โ”€ [bool]   Unknown 3             (Version >= 4)
        โ”œโ”€โ”€ [bool]   Unknown 4             (Version >= 5)  โ€” This is always 0 in Vanilla.
        โ”œโ”€โ”€ [bool]   No Slipperiness       (Version >= 5)  โ€” Prevents the PushBlock from slipping entirely.
        โ”œโ”€โ”€ [byte]   PushBlock Link Object Count (Version >= 3)
        โ””โ”€โ”€ [str8[]] PushBlock Link Objects (Version >= 3)  โ€” These may be special objects.

Torp Machine Section

Torp Machines are the machines that you collect torpedoes from by flying over in vehicle levels.

/
โ”œโ”€โ”€ [int]    Version               โ€” This is essentially always 3 in Vanilla.
โ”œโ”€โ”€ [int]    Torp Machine Count
โ”œโ”€โ”€ [float]  Scale                 (Version >= 3)
โ””โ”€โ”€ [array]  Torp Machines
        โ”œโ”€โ”€ [str32]  Name
        โ”œโ”€โ”€ [vec3]   Position
        โ”œโ”€โ”€ [short]  Angle
        โ””โ”€โ”€ [byte]   Red Outline   (Version >= 2)  โ€” Normal black color when 0, red color otherwise.

ShadowEditor Section

Unknown.

/
โ”œโ”€โ”€ [byte]   Version
โ”œโ”€โ”€ [byte]   ShadowEdit Count
โ””โ”€โ”€ [array]  ShadowEdits
        โ”œโ”€โ”€ [vec3]   Position?
        โ”œโ”€โ”€ [float]  Unknown
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 2)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 2)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 3)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 3)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 4)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 5)  โ€” This is always 0 in Vanilla.
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 5)  โ€” This is always 0 in Vanilla.
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 6)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 6)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 6)
        โ”œโ”€โ”€ [float]  Unknown              (Version >= 7)
        โ””โ”€โ”€ [int]    Unknown              (Version >= 8)  โ€” This is always 0, 1, or 2 in Vanilla.

Copyright ยฉ 2025 โ€ข Created with โค๏ธ by TTModding community.