ROOM (File Format)
The ROOM format is used to store object layout data in Tropical Freeze.
This file format needs a lot of research Most of this format hasn't been researched yet. |
Format
RMHD
Type | Size | Description |
---|---|---|
Chunk Descriptor | 0x18 | RMHD chunk descriptor |
u16 | 2 | Unknown (Always 3?) |
PGRP
PGRP likely stands for Performance Group, a term referenced by a few objects.
Type | Size | Description |
---|---|---|
Chunk Descriptor | 0x18 | PGRP chunk descriptor |
u16 | 2 | Count |
For count:
Type | Size | Description |
---|---|---|
u32 | 4 | Name length |
string | - | Name (not zero-terminated) |
u128 | 0x10 | ID |
u8 | 1 | Unknown |
u16 | 2 | ID count (IC) |
u128 | 0x10 * IC | IDs |
LGEN
Type | Size | Description |
---|---|---|
Chunk Descriptor | 0x18 | LGEN chunk descriptor |
u16 | 2 | Count |
For count:
Type | Size | Description |
---|---|---|
u128 | 0x10 | ID |
u128 | 0x10 | ID |
COMP
Type | Size | Description |
---|---|---|
Chunk Descriptor | 0x18 | COMP chunk descriptor |
u32 | 4 | Object type |
u128 | 0x10 | Instance ID |
u32 | 4 | Instance name length |
string | - | Instance name (not zero-terminated) |
u16 | 2 | Connection count |
Each connection is structured as:
Offset | Type | Size | Description |
---|---|---|---|
0x0 | char[4] | 4 | State |
0x4 | char[4] | 4 | Message |
0x8 | u128 | 0x10 | Target Instance ID |
0x18 | u32 | 4 | Unknown |
Following is property data; size and contents vary by object type.
Component Types
ID | Component |
---|---|
0x749749F1 | GameObject |
0x4EC5FA3A | FakePlayerControls |
0x57153AA4 | StaticCollision |
0x41956904 | RenderWorld |
0xB4361E7B | ActorCollision |
0x2BE8BC19 | LightStatic |
0x9EE5541D | LightDynamic |
0xCD098F70 | Effect |
0x8FE0BFC9 | Relay |
0xA7DB53C1 | Counter |
0xADA85938 | SeaLion |
0xAAEBA313 | WarusKing |
0x05DD288E | Switch |
0x9E8A4940 | Timer |
0xD616EE8B | ControllerAction |
0xD898656D | Waypoint |
0xF0240D23 | PathControl |
0x4FE57689 | CameraHint |
0x97E65DDD | TouchableTrigger |
0x1A4117AB | Toucher |
0xC49D730E | TriggerLogic |
0xD47974E4 | FiniteStateMachine |
0x1349E5AC | CustomInterpolation |
0xC1F64515 | CameraTarget |
0xDE522669 | Generator |
0x1383F6D6 | GeneratorDeleter |
0x2C4F2D31 | SplineMotion |
0x1223437C | Creature |
0x21C57D2B | DynamicActorCollision |
0xDF31EC16 | Render |
0xAE921C3B | Player |
0x81A242A0 | DirectionalIrradianceMap |
0xBDE4AB05 | TakeDamage |
0x5453C979 | MasterSlave |
0x07E3137F | TraceObject |
0x046FAD23 | TimerSequence |
0x3175DF36 | ApplyDamage |
0x65E2349B | RelayRandom |
0xABBCFC6A | RelayConditional |
0xEA30E0B1 | SpawnPoint |
0x1FB9AF22 | ActorKeyframe |
0xCB6D9ACE | PlayerProxy |
0x6FB22081 | BarrelCannon |
0xF4567AD7 | RumbleEffect |
0x10EA9EC8 | ObjectFollow |
0x481EA5AF | Pickup |
0xBC9A60AE | CameraManager |
0xDB38B3FB | GroundPoundDetector |
0xBE82DEF3 | Projectile |
0x43C0D52A | ClingPathControl |
0xB85D6790 | ColorModifier |
0x021C14B0 | Explosion |
0x16702F15 | ReloadSetLoader |
0x660FC7C1 | Checkpoint |
0x8C2CCFAC | PlayerRespawn |
0xC0281AE7 | ImpulseDriver |
0xD4538C9B | Bouncer |
0x06E89BE7 | Health |
0xE0AFAF06 | PlayerActionHint |
0x1A90271D | Grabbable |
0x3C23783B | GrabThrow |
0x9373FEC0 | Respawn |
0xAF565E69 | SwingRope |
0xC7B43DA6 | ActorInteraction |
0xC9ED6454 | WindWaker |
0x78D8893A | CameraTargetPlayer |
0xA86E6401 | PoiObject |
0xFDD83489 | Sound |
0xCCAD4BD9 | PerformanceGroupController |
0x502506D6 | TouchSet |
0x88603CF7 | MineCartProxy |
0xE1E1C49C | WaterVolume |
0x6C5D597D | NearVisible |
0x3449A5DF | Swimmer |
0x591D8F55 | CharacterPrimitivesCollision |
0x90D8D3CE | RenderMethodResolver |
0xBD4CFA2F | TriggerForce |
0x3150D2F6 | FuseBomb |
0xAF3A06F2 | PathControlZipline |
0xD32870DF | PolarBear |
0x2131C235 | GroupSpawn |
0x2751EBF2 | AnimationGridController |
0x18B96D29 | TimerAnimationGridParamProvider |
0xB9F9F04C | ActionDetector |
0x343A47F7 | CameraShaker |
0x06159C2D | RespawnBalloon |
0x7E6063C8 | PlayerActor |
0x91F22DCF | Tippy |
0x89F426F2 | CinematicCameraShot |
0x1EB2749F | ConveyorModifier |
0x73AECD92 | FogVolume |
0x845E492A | Retronome |
0x23C5DFF4 | WaterRenderVolume |
0x55F80CCE | CinematicSkipHandler |
0xAB5C5D7B | BonusRoom |
0x3A3A6FAD | TireBounce |
0x9D25FE2D | BeatUpHandler |
0x9FC07D01 | Owl |
0xA42F7AB9 | GrabbableGenerator |
0xF34EDD1F | InventoryItem |
0x18C0AD0F | EndGame |
0xEBE92100 | RocketBarrelProxy |
0xB7ADA3EC | BurningBranch |
0x59AB515E | HotCoals |
0xE21D45CB | BarrelBalloon |
0x6302BBB3 | UVTransform |
0x5FEF037B | Baboon |
0x25899782 | MusicData |
0x1AC8C8FD | MusicStateController |
0x47A60DC3 | MusicSystemTransport |
0x5CF17BFE | AdapterManager |
0xCA08C6A4 | WaterRenderDecal |
0x7F6D1CBA | RelayAutoFire |
0x3DAAF68B | BaboonManager |
0xD745DC42 | GraphicalTransition |
0x0FA3899C | RetronomeDriver |
0x57E54B9D | EndLevel |
0x6780941E | SuperCombinedAbilityEmitter |
0xB8B6A22E | SuperCombinedAbilityResponder |
0x0AF8D63C | MapPlayer |
0x8CB5BF7D | MapPathControl |
0xEBE0DAEE | WaterCurrentVolume |
0xA7D1C922 | CausticVolume |
0x35D8F3F0 | PufferFish |
0xBA796FEF | Playlist |
0xC2F2282A | WindWakerImpulser |
0xE03DD39F | MapNode |
0x55AAB5F1 | RambiCrate |
0x24D9D323 | AudioEffect |
0xF7602744 | DSP |
0x160E9AF9 | RoomSettings |
0x5746A908 | DynamicActorControl |
0x59276E0E | HUDAnchor |
0xF442A668 | TimeKeyframe |
0xB6040870 | RelayProbabilityGameMode |
0xF3847DE3 | FlyingPickupEffect |
0x212BCDF5 | SimpleShadow |
0x655C5175 | AudioBusController |
0xF6751A5D | PlayerKeyframe |
0xC04DAF13 | BreathMonitor |
0x4C7B9FC8 | DirectionalIrradianceProbes |
0x0BE7FC29 | SurfaceControl |
0xB6EC1A51 | SimpleSound |
0xD2CAC9A5 | LightGroupProxy |
0xDFD2A23A | DialogPanel |
0xBCCB1B30 | MinecartPathManager |
0xD856F6B9 | Imposter |
0xBD040603 | LevelDarkener |
0xA72A9926 | RenderGroup |
0x3258FD44 | RenderToFlash |
0x3ABCFF68 | SkinSwap |
0xC532AD25 | ScreenCaptureToFlash |
0xB152AD59 | PlayerSound |
0xBFF963D2 | StreamedMovie |
0x7DCAF170 | BloomEffect |
0x1243C3E3 | ProjectedSimpleShadowReceiver |
0x5368FF52 | ShopData |
0xA04F0C68 | ShopInstance |
0x5B0C954B | UICameraSelector |
0x7CC0B7BF | Squawks |
0xB177FA02 | SquawksProxy |
0x4C53A836 | UnitController |
0x008E3AF5 | FlashTextureSwapper |
0xF5D80D1A | Extras |
0xBB449D71 | ExtrasType |
0xA98F9015 | ExtrasCategory |
0xEE0D6FD4 | DynamicLoadManager |
0xFDDB58A1 | MapManagerProxy |
0xA32E718F | Achievement |
0x62913993 | AudioBusMixer |
0xADCD416E | Credits |
0xA4E4FE1D | HUDFadeDetector |
0xAF9DEA76 | ProductionFrontEndProxy |