Construct type definitions for Mercury Engine
Format | Samus Returns (Read) | Samus Returns (Write) | Dread (Read) | Dread (Write) | Purpose |
---|---|---|---|---|---|
BAPD | Missing | Missing | ✓ | ✓ | Audio Preset (positional audio data) |
BCCAM | ✗ | ✗ | ✗ | ✗ | Camera Animation (used exclusively for cutscene takes) |
BCLGT | ✗ | ✗ | Missing | Missing | Lighting (?) |
BCMDL | ✗ | ✗ | ✓ | ✗ | 3D Models |
BCPTL | ✗ | ✗ | ✗ | ✗ | Particle Effect |
BCSKLA | ✓ | ✓ | ✓ | ✓ | Skeleton Animation |
BCTEX | ✗ | ✗ | ✓ | ✗ | Texture File |
BCURV | Missing | Missing | ✗ | ✗ | CURV (?) |
BCUT | ✗ | ✗ | Missing | Missing | Related to cutscene files |
BCWAV | ✗ | ✗ | Missing | Missing | Cafe/Citra Wave (common AAL audio format) |
BFGRP | Missing | Missing | ✗ | ✗ | Sound WaveGroup (common AAL audio format) |
BFONT | ✗ | ✗ | ✗ | ✗ | Font File |
BFSAR | Missing | Missing | ✗ | ✗ | FSAR (?) |
BFSTM | Missing | Missing | ✗ | ✗ | Common Switch audio format |
BGSNDS | Missing | Missing | ✓ | ✓ | BackGround Sounds (?) |
BLDEF | Missing | Missing | ✓ | ✓ | Actor Lighting Definition |
BLSND | ✓ | ✓ | ✓ | ✓ | Sounds (?) |
BLUT | Missing | Missing | ✓ | ✓ | LookUp Table (used for ADAM animation) |
BMBLS | Missing | Missing | ✓ | ✓ | Blend Space |
BMDEFS | ✓ | ✓ | ✓ | ✓ | Music Track Definitions & Properties |
BMMAP | Missing | Missing | ✓ | ✓ | MiniMap |
BMMDEF | Missing | Missing | ✓ | ✓ | MiniMap Definitions (?) |
BMSAD | ✓ | ✓ | ✓ | ✓ | Actor Definitions |
BMSAS | Missing | Missing | ✓ | ✓ | Action Sets |
BMSAT | ✗ | ✗ | ✓ | ✓ | Animation Tree |
BMSBK | ✓ | ✓ | Missing | Missing | Blocks, per Scenario |
BMSCC | ✓ | ✓ | ✓ | ✓ | Collision Cameras |
BMSCD | ✓ | ✓ | ✓ | ✓ | Collision Data / Geometry |
BMSCP | Missing | Missing | ✓ | ✓ | GUI Composition |
BMSCU | ✗ | ✗ | ✓ | ✓ | Cutscene Files |
BMSEM | ✓ | ✓ | Missing | Missing | Environment Music |
BMSES | ✓ | ✓ | Missing | Missing | Environment Sound |
BMSEV | ✗ | ✗ | Missing | Missing | Environment Visuals (fx) |
BMSLD | ✓ | ✓ | Missing | Missing | Samus Returns scenario entity data |
BMSLGROUP | Missing | Missing | ✓ | ✓ | SmartLink Group |
BMSLINK | Missing | Missing | ✓ | ✓ | SmartLink (actor-specific navmesh paths) |
BMSMD | ✓ | ✓ | Missing | Missing | Menu Data (?) |
BMSMSD | ✓ | ✓ | Missing | Missing | Map Screen Data (?) |
BMSNAV | ✓ | ✓ | ✓ | ✓ | Navigation Meshes |
BMSND | ✗ | ✗ | Missing | Missing | Sound (?) |
BMSSA | ✗ | ✗ | Missing | Missing | SSA (?) |
BMSSD | ✓ | ✓ | ✓ | ✓ | Scene Data (scene blocks, objects, msr lighting) |
BMSSH | Missing | Missing | ✓ | ✓ | GUI Shape |
BMSSK | Missing | Missing | ✓ | ✓ | GUI Skin |
BMSSS | Missing | Missing | ✓ | ✓ | GUI SpriteSheet |
BMSSTOC | Missing | Missing | ✗ | ✗ | Sound Table of Contents (links BFSAR sfx to BFGRP files) |
BMTRE | ✗ | ✗ | ✓ | ✓ | Behavior Tree; entitity AI) |
BMTUN | ✓ | ✓ | Missing | Missing | Tunables; exposed variables |
BNVIB | Missing | Missing | ✓ | ✓ | Vibration Data |
BPSI | ✓ | ✓ | ✓ | ✓ | PackSet; dev leftovers |
BPTDAT | Missing | Missing | ✓ | ✓ | PlayThrough Data |
BPTDEF | Missing | Missing | ✓ | ✓ | PlayThrough Def |
BREM | Missing | Missing | ✓ | ✓ | Environmental Music Presets |
BRES | Missing | Missing | ✓ | ✓ | Environmental Sound Presets |
BREV | Missing | Missing | ✓ | ✓ | Environmental Visual Presets |
BRFLD | Missing | Missing | ✓ | ✓ | Dread Scenario Entity Data |
BRSA | Missing | Missing | ✓ | ✓ | SubArea Setups |
BRSPD | Missing | Missing | ✓ | ✓ | Shot Audio Presets |
BSHDAT | ✗ | ✗ | ✗ | ✗ | Shader Data |
BSMAT | Missing | Missing | ✓ | ✓ | Mesh Material |
BTUNDA | Missing | Missing | ✓ | ✓ | Tunable Data |
BUCT | ✓ | ✓ | ✓ | ✓ | Font Glyph Data (?) |
INI | Missing | Missing | ✓ | ✓ | Standard INI |
LC | ✓ | ✓ | ✓ | ✓ | Lua Bytecode |
PKG | ✓ | ✓ | ✓ | ✓ | Packaged Files |
TOC | ✓ | ✓ | ✓ | ✓ | Table of Contents |
TXT | ✓ | ✓ | ✓ | ✓ | UTF-16 Text File (?) |
WEBM | Missing | Missing | ✗ | ✗ | Standard WEBM |
# TODO
Metroid Dread uses the following annotations in text to change color:
Code | Color | |
---|---|---|
{c0} | White | (Default) |
{c1} | Yellow | |
{c2} | Red | |
{c3} | Pink | |
{c4} | Green | |
{c5} | Blue | |
{c6} | UI Active | (Light blue) |
{c7} | UI Inactive | (Dim blue) |
For running the full test suite, the following environment variables must be set.
Variable | Purpose |
---|---|
SAMUS_RETURNS_PATH | Path to a Samus Returns extracted RomFS |
DREAD_1_0_0_PATH | Path to a Metroid Dread v1.0.0 extracted RomFS |
DREAD_2_1_0_PATH | Path to a Metroid Dread v2.1.0 extracted RomFS |
If any of these variables are not set, the associated tests are skipped.
export SAMUS_RETURNS_PATH=D:/RomFS/Samus Returns
python -m pytest