ASB: Difference between revisions
m Correct exb pointer field type in header |
m Correct file header |
||
| Line 1: | Line 1: | ||
'''ASB''' ('''A'''nimation '''S'''equence '''B'''inary) is a file format used to store animation sequences for actors in recent Nintendo EPD games such as ''The Legend of Zelda: Tears of the Kingdom'' and ''Nintendo Switch Sports''. This article is primarily aimed at the version that appears in ''Tears of the Kingdom'' and ''Mario vs Donkey Kong'' (v0x0417). Other ASB versions include 0x304 (''Ring Fit Adventure''), 0x3FB (''Labo Toy-Con 04'' and ''Game Builder Garage''), 0x407 (''Animal Crossing: New Horizons''), 0x40F (''Nintendo Switch Sports''), 0x410 (''Splatoon 3''), 0x418 (''Super Mario Bros. Wonder''), and 0x41A (''Nintendo Switch Online: Playtest Program''). ASB files can be found in the AS folder of the romfs as well as the AS folder of certain pack files. | '''ASB''' ('''A'''nimation '''S'''equence '''B'''inary) is a file format used to store animation sequences for actors in recent Nintendo EPD games such as ''The Legend of Zelda: Tears of the Kingdom'' and ''Nintendo Switch Sports''. This article is primarily aimed at the version that appears in ''Tears of the Kingdom'' and ''Mario vs Donkey Kong'' (v0x0417). Other ASB versions include 0x304 (''Ring Fit Adventure''), 0x3FB (''Labo Toy-Con 04'' and ''Game Builder Garage''), 0x407 (''Animal Crossing: New Horizons''), 0x40F (''Nintendo Switch Sports''), 0x410 (''Splatoon 3''), 0x418 (''Super Mario Bros. Wonder''), and 0x41A/0x41B (''Nintendo Switch Online: Playtest Program''). ASB files can be found in the AS folder of the romfs as well as the AS folder of certain pack files. | ||
== File Structure == | == File Structure == | ||
| Line 227: | Line 227: | ||
|0x4 | |0x4 | ||
|AsbString | |AsbString | ||
|Name | |Name | ||
|- | |- | ||
|0xc | |0xc | ||
| Line 285: | Line 285: | ||
|- | |- | ||
|0x38 | |0x38 | ||
|0x4 | |||
|AsbPtr<AsbArray<Enum Relocation>> | |||
|Enum Relocation Array | |||
|- | |||
|0x3c | |||
|0x4 | |||
|AsbPtr<AsbArray<State>> | |||
|State Array | |||
|- | |||
|0x40 | |||
|0x4 | |0x4 | ||
|u32 | |u32 | ||
|Float Property Ex Count | |Float Property Ex Count | ||
|- | |- | ||
| | |0x44 | ||
|0x4 | |0x4 | ||
|AsbPtr<Float Property Ex[Float Property Ex Count]> | |AsbPtr<Float Property Ex[Float Property Ex Count]> | ||
|Float Property Ex Array | |Float Property Ex Array | ||
|- | |- | ||
| | |0x48 | ||
|0x4 | |0x4 | ||
|u32 | |u32 | ||
|Bone Blend Count | |Bone Blend Count | ||
|- | |- | ||
| | |0x4c | ||
|0x4 | |0x4 | ||
|AsbPtr<Bone Blend[Bone Blend Count]> | |AsbPtr<Bone Blend[Bone Blend Count]> | ||
|Bone Blend Array | |Bone Blend Array | ||
|- | |- | ||
| | |0x50 | ||
|0x4 | |0x4 | ||
|u32 | |u32 | ||
|Partial Skeleton Count | |Partial Skeleton Count | ||
|- | |- | ||
| | |0x54 | ||
|0x4 | |0x4 | ||
|AsbPtr<Partial Skeleton[Partial Skeleton Count]> | |AsbPtr<Partial Skeleton[Partial Skeleton Count]> | ||
|Partial Skeleton Array | |Partial Skeleton Array | ||
|- | |- | ||
| | |0x58 | ||
|0x4 | |0x4 | ||
|u32 | |u32 | ||
|String Pool Size | |String Pool Size | ||
|- | |- | ||
| | |0x5c | ||
|0x4 | |0x4 | ||
|AsbPtr<Transition Array> | |AsbPtr<Transition Array> | ||
|Transition Array | |Transition Array | ||
|- | |- | ||
| | |0x60 | ||
|0x4 | |0x4 | ||
|AsbPtr<AsbArray<u32>> | |AsbPtr<AsbArray<u32>> | ||
|Transition Partial Skeleton Array | |Transition Partial Skeleton Array | ||
|- | |- | ||
| | |0x64 | ||
|0x4 | |0x4 | ||
|AsbPtr<AsbArray<AsbString>> | |AsbPtr<AsbArray<AsbString>> | ||
|Tag Array | |Tag Array | ||
|- | |- | ||
| | |0x68 | ||
|0x4 | |0x4 | ||
|AsbPtr<AsbArray<External Action>> | |AsbPtr<AsbArray<External Action>> | ||
|External Action Array | |External Action Array | ||
|- | |- | ||
| | |0x6c | ||
|0x4 | |0x4 | ||
|AsbPtr<Exb> | |AsbPtr<Exb> | ||
|Exb | |Exb | ||
|- | |- | ||
| | |0x70 | ||
|0x4 | |0x4 | ||
|u32 | |u32 | ||
|Transition Group Array | |Transition Group Array | ||
|- | |- | ||
| | |0x78 | ||
|0x4 | |0x4 | ||
|AsbPtr<AsbArray<Material Blend>> | |AsbPtr<AsbArray<Material Blend>> | ||
| Line 1,695: | Line 1,705: | ||
|0x8 | |0x8 | ||
|Property<float> | |Property<float> | ||
| | |Selector Weight 0 | ||
|- | |- | ||
|0x8 | |0x8 | ||
|0x8 | |0x8 | ||
|Property<float> | |Property<float> | ||
| | |Selector Weight 1 | ||
|- | |- | ||
|0x10 | |0x10 | ||