Skip to content

TotkMods/Research

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TOTK Research

File research for Tears of the Kingdom


.zs (Compression)

Files can be decompressed with Totk.ZStd Tool

Dictionaries found in romfs/Pack/ZsDic.pack.zs

.aamp

Parameter files (same as BotW)

Relatively rare and mostly exist under other extensions (also found embedded in Phive files)

Extensions:

  • .baglblm - Binary agl Bloom
    • Stores bloom data
  • .baglccr -
  • .baglclwd -
  • .baglcube -
  • .bagldof -
  • .baglenv - Binary agl Environment
  • .baglenvset - Binary agl Environment Setting
  • .baglfila -
  • .bagllmap -
  • .baglmf -
    • Stores filter data
  • .baglshpp -
  • .baglsky - Binary agl Sky (???)
  • .bgapkginfo -
  • .bgapkglist -
  • .bgenv -
  • .bglght -
  • .bgmsconf -
  • .bgsdw -
  • .bphhb - Binary Phive Helper Bone
    • Stores helper bone data
  • .bptcl - Binary Particle
  • .bptclconf - Binary Particle Configuration

.ainb

AI Node Binary

Node-based AI and logic format

Files themselves serve as nodes in larger file trees (.root.ainb vs .module.ainb)

Documentation here

Python library available here: https://github.com/dt-12345/ainb

.asb

Animation Sequence Binary

Node-based animation sequence format

Format Notes

.baatarc

Binary Audio Attenuation Archive

.baev

Binary Animation Event

Format for storing data about animation events

.bagst

Binary Audio Group Settings

.bars

Binary Audio Resource

Audio resource archive (unknown changes from BotW)

.bcul

Binary Culling

Stores area culling data

.beco

Binary Ecosystem

Stores per-coordinate data

ZeldaMods Article

.belnk

Binary ELink2

XLink2 file format for ELink2 (similar to the XLink2 Thunder format from Splatoon 3)

Shadow's XLink2 Library Recreation

.bfarc

Binary Font Archive

SARC font archive

.bfcpx

Font format

.bfevfl

Binary Café Event Flow

Event flow and event timeline format (minor changes from BotW, PR pending for EVFL library, fixed in BFEV Library (C#))

.bflan

Binary Café Layout Animation

Layout animation format

.bfres

Binary Café Resource

Archive format for animations, textures, and models

BFRES v10

.bfsha

Binary Café Shader

.bgyml

Binary Generated YAML (???)

BYML v7, several new node types added

.bhtmp

Binary Height Map

Height related data. Explanation on structure here.

.bkres

Bake Resource (???)

SARC archive with one (?) BYML file inside of it, stores bake info

.blal

Binary Looped Asset List

Stores hashes of looped audio assets

Python Library from BotW

.blarc

Binary Layout Archive

SARC layout archive

.blwp

Stores forest and tree data, multipe types exist under the same extension (shared 8 byte header)

BLWP Header

Offset Type Value
0x00 u16 Unknown
0x02 u16 Unknown
0x04 u32 Section 1 Entry Count

.bnsh

Binary NX Shader

.bntx

Binary NX Texture

Texture archive (unknown changes from Botw 1.6.0)

.bnvib

Binary Vibration

HD Rumble data format

SwitchBrew Documentation

.bofx

Binary Occlusion FX

BFRES archive for occlusion effects

.bphcl

Binary Phive Cloth

Phive cloth physics format (Phive is a library that extends Havok)

.bphnm

Binary Phive Nav Mesh

Phive NavMesh format (Phive is a library that extends Havok)

.bphsc

Binary Phive Static Compound

Phive format for static compounds (Phive is a library that extends Havok)

.bphsh

Binary Phive Shape

Phive format for rigid bodies (Shapes) (Phive is a library that extends Havok)

.bslnk

Binary SLink2

XLink2 file format for SLink2 (similar to the XLink2 Thunder format from Splatoon 3)

Shadow's XLink2 Library Recreation

.bstar

Stores strings (purpose unknown, found in romfs/Preload)

Offset Type Value
0x00 char[4] Magic ("STAR")
0x04 u32 Version
0x08 u32 Entry Count
0x0c u32[] Array of entries

.bushvt

Some type of shader format

.bwav

Binary WAV

Audio resource format

Documentation

Most bwav files seem to play fine in foobar2000 (with the vgmStream plugin), however some files (notably in the Voice/Resource/XXcc/EventFlowMsg folders) fail to play. The headers of these files appear to have an incorrect sample count.

Unable to open item for playback (Unsupported format or corrupted file):
"F:\Games\Totk\Voice\Resource\USen\EventFlowMsg\Dm_BZ_0007_Stream\Dm_BZ_0007_Text_002_b.bwav"

.byaml

Binary YAML

See .byml

.byml

Binary YAML

BYML v4 or v7 (.esetb.byml is v5 and contains an embedded .ptcl file)

ZeldaMods Article

ZeldaMods EPD Wiki Article

v7 Node Types (courtesy of Watertoon)

Note: v7 root nodes can be 0x20, 0x21, 0xC0, or 0xC1 (warning: this breaks a lot of BYML tools)

enum class ByamlDataType : u8 {
    HashArrayU32_1           = 0x20,
    HashArrayU32_2           = 0x21,
    ...
    HashArrayU32_16          = 0x2f,
    HashArrayWithRemapU32_1  = 0x30,
    HashArrayWithRemapU32_2  = 0x31,
    ...
    HashArrayWithRemapU32_16 = 0x3f,
    StringIndex              = 0xa0,
    BinaryData               = 0xa1,
    BinaryDataWithAlignment  = 0xa2,
    Array                    = 0xc0,
    Dictionary               = 0xc1,
    KeyTable                 = 0xc2,
    DictionaryWithRemap      = 0xc4,
    RelocatedKeyTable        = 0xc5,
    MonoTypedArray           = 0xc8,
    Bool                     = 0xd0,
    S32                      = 0xd1,
    F32                      = 0xd2,
    U32                      = 0xd3,
    S64                      = 0xd4,
    U64                      = 0xd5,
    F64                      = 0xd6,
    Null                     = 0xff,
};

.cai

Combined Actor Info

Stores position and rotation data for Autobuild constructions

.totkab also exists which is the same format but with an additional header

Graphical CAI Editor

.chunk

Cave chunked mesh info

.crbin

Cave-related info

.cutinfo

Cutscene Info

.dpi

Destructible Piece Info

.extm

Material data

.figi

Figure Info

Tarrey Town monster figure data

.genvb

Game Environment Binary (???)

SARC archive for environmental effects

.genvres

Game Environment Resource (???)

BFRES archive for environmental effects

.gsh

GX2 Shader

Shader format

.glsl

OpenGL Shading Language (???)

Shader format

Documentation

.hght

Height

Height map format (no noted changes from BotW)

Documentation

.jpg

Digital image format

.mate

Material

Material data format (no noted changes since BotW)

Documentation

.mc

MeshCodec

MCPK

MeshCodec, an archive/compression format wrapped around the model fles (bfres v10)

Can be decompressed using an interop script for TotK, written by Watertoon: https://gamebanana.com/tools/13236

.msbt

Message Studio Binary Text

Stores text data and localization info

Documentation and Functions

C++ implementation

.pack

SARC archives, no noted changes from BotW

.png

I don't think I need to explain this one

.ptcl

Particle

Stores particle effects data, only found embedded in .esetb.byml files

.quad

...

.raw

Only used by one file (arrow.raw)

.rsizetable

Resource Size Table

Updated RSTB table (RESTBL), spec can be found in Totk.Analyze/src/Formats/RESTBL.cs

.sarc

Standard Archive (???)

SARC archives (see .pack)

.sav

Save

Save data file format

Save Game Editor

.sharcb

Shader Archive Binary

Shader archive format

Documentation

.skybin

Sky Binary

.ta

Terrain Archive (???)

SARC archive for terrain data

.tscb

Terrain Scene Binary

Documentation here

.txt

I think you can manage this one

.txtg

Tex To Go

TexToGo texture format. C# implementation by KillzXGaming in Switch ToolBox

.vsts

Volume Stats

Exists in three variants: volume stats (magic = VSTS), grass stats (magic = GSTS), and cave stats (magic = CSTS)

.wbr

Weapon Blur

Weapon blur file format

.webm

Pre-rendered cutscenes (compressed)

About

File research for Tears of the Kingdom

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •