Map unit
This article is a stub. You can help ZeldaMods (Breath of the Wild) by expanding it. Complete the contents section, the link system, mention static vs dynamic (and possibly other things) (For a list of non-stub pages, see Project:Pages.) |
Contents
LocationPosX
LocationPosZ
LocationSize
Objs
Array of object structures. Must be sorted by HashId[1] because the placement subsystem performs binary searches on the object array in various cases[2].
Rails
Array of rail structures. Can only appear in group 0 maps (Static); this section is completely ignored for non-static map units.
Link system
Map objects can be linked to other objects (up to 255 in a single generation group[3]). These links allow implementing custom logic and callbacks (for example, DeadUp signals the destination object when the source object dies).
Definitions
| ID | Name | Description | Official description |
|---|---|---|---|
| 4 | -AxisX | - | マイナスX軸シグナル |
| 5 | -AxisY | - | マイナスY軸シグナル |
| 6 | -AxisZ | - | マイナスZ軸シグナル |
| 24 | AreaCol | - | エリア(センサ)指定 |
| 1 | AxisX | - | X軸シグナル |
| 2 | AxisY | - | Y軸シグナル |
| 3 | AxisZ | - | Z軸シグナル |
| 37 | BAndSCs | - | ボール&ソケットCS |
| 38 | BAndSLimitAngYCs | - | Y角速度制限付ボール&ソケットCS |
| 0 | BasicSig | - | 基本シグナル |
| 9 | BasicSigOnOnly | - | オンのみ基本シグナル |
| 14 | ChangeAtnSig | - | アテンション変更時シグナル |
| 39 | CogWheelCs | - | 歯車CS |
| 21 | CopyWaitRevival | Use the destination object's revival flag | 配置自動セーブ継承 |
| 15 | Create | - | 生成 |
| 11 | DeadUp | - | 死んだらオン |
| 16 | Delete | - | 削除 |
| 29 | DemoMember | - | デモ参加 |
| 32 | FixedCs | - | 固定CS |
| 26 | ForSale | - | 売り物 |
| 19 | ForbidAttention | - | アテンションタイプ変更 |
| 18 | Freeze | - | 凍結 |
| 7 | GimmickSuccess | - | ネタ成功シグナル |
| 33 | HingeCs | - | ヒンジCS |
| 12 | LifeZero | - | ライフ0 |
| 34 | LimitHingeCs | - | 制限付ヒンジCS |
| 27 | ModelBind | - | モデルバインド |
| 17 | MtxCopyCreate | - | 位置継承生成 |
| 22 | OffWaitRevival | - | 配置自動セーブオフ |
| 30 | PhysSystemGroup | - | 物理システムグループ |
| 28 | PlacementLOD | - | 配置LOD |
| 36 | PulleyCs | - | 滑車CS |
| 40 | RackAndPinionCs | - | ラック&ピニオンCS |
| 23 | Recreate | - | 再生成 |
| 41 | Reference | - | 参照 |
| 10 | Remains | - | 遺物シグナル |
| 25 | SensorBind | - | センサバインド |
| 35 | SliderCs | - | スライダーCS |
| 13 | Stable | - | 安定 |
| 31 | StackLink | - | スタック |
| 20 | SyncLink | Put the destination object and any object that is linked to it into the same generation group | 生成グループ |
| 8 | VelocityControl | - | 速度制御シグナル |
File formats
Map unit binary
In Breath of the Wild, map units are stored in a binary format and given the mubin (Map Unit Binary) file extension. All map object IDs are replaced with CRC32 hashes as a space optimisation. BYML is used as the serialisation format.
Source map unit
Source map units have muunt[4] as their file extension and use strings for map object IDs such as F-5_challenge.muunt/obj760 instead of CRC32 hashes of the IDs in map unit binaries.
- ↑ Technically, sorting is only required for Dynamic (non-group 0) map units. However, not sorting causes the game to fall back to a slower linear search.
- ↑ 0x7101256E14
- ↑ "一つの生成グループに 255 以上のアクタが指定されています。テストで無ければプログラマに相談"
- ↑ The executable has remnants of functions that can load map units with the following path:
Map/Project/%s/Data/%s/%s.muunt(in what appears to be development code)