Yaz0: Difference between revisions

1,026 bytes added ,  4 years ago
bactorpack, beventpack -> actor pack, event pack
imported>Leoetlino
No edit summary
imported>Leoetlino
(bactorpack, beventpack -> actor pack, event pack)
 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{stub}}
<onlyinclude>'''Yaz0''' is a [[wikipedia:Data compression|data compression]] algorithm used in many Nintendo games.</onlyinclude>
<onlyinclude>
 
'''Yaz0''' is a compression algorithm used in many Nintendo games.
== Structure ==
</onlyinclude>
=== Header ===
All values in the header are big endian even on Switch.
 
{|class="wikitable"
! Offset !! Type !! Description
|-
| 0x0 || char[4] || Magic ("Yaz0")
|-
| 0x4 || u32 || Uncompressed data size
|-
| 0x8 || u32 || Data alignment (archive must be loaded into a N-byte aligned buffer)
|-
| 0xc || u32 || Unused
|}
 
=== Algorithm ===
The algorithm is documented on the [[mk8:YAZ0 (File Format)|MK8 wiki]]. 
 
== Usage in ''Breath of the Wild'' ==
Yaz0 is the only compression algorithm that is used in ''Breath of the Wild''. Many resources, such as [[actor pack]]s and [[BYML]]s, are compressed. However, content files that are inside of archives that have already been compressed (such as [[ActorParam]] files) are typically uncompressed.
 
Extensions that start with an <code>s</code> indicate that the file is compressed using the Yaz0 format. ''For consistency reasons and to reduce visual noise, {{SITENAME}} chooses to omit the prefix when referring to file extensions.''


== Tools ==
== Tools ==
Anonymous user