<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.wexosmk.xyz/index.php?action=history&amp;feed=atom&amp;title=BRLAN_%28File_Format%29</id>
	<title>BRLAN (File Format) - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.wexosmk.xyz/index.php?action=history&amp;feed=atom&amp;title=BRLAN_%28File_Format%29"/>
	<link rel="alternate" type="text/html" href="https://wiki.wexosmk.xyz/index.php?title=BRLAN_(File_Format)&amp;action=history"/>
	<updated>2026-05-06T17:00:46Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.41.1</generator>
	<entry>
		<id>https://wiki.wexosmk.xyz/index.php?title=BRLAN_(File_Format)&amp;diff=143&amp;oldid=prev</id>
		<title>Wexos: Imported from avsys wiki</title>
		<link rel="alternate" type="text/html" href="https://wiki.wexosmk.xyz/index.php?title=BRLAN_(File_Format)&amp;diff=143&amp;oldid=prev"/>
		<updated>2024-05-01T17:18:55Z</updated>

		<summary type="html">&lt;p&gt;Imported from avsys wiki&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;BRLAN&amp;#039;&amp;#039;&amp;#039; files (&amp;#039;&amp;#039;&amp;#039;B&amp;#039;&amp;#039;&amp;#039;inary &amp;#039;&amp;#039;&amp;#039;R&amp;#039;&amp;#039;&amp;#039;evolution &amp;#039;&amp;#039;&amp;#039;L&amp;#039;&amp;#039;&amp;#039;ayout &amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;nimatio&amp;#039;&amp;#039;&amp;#039;N&amp;#039;&amp;#039;&amp;#039;) are used to produce layout animations. Along with [[BRCTR (File Format)|BRCTR]] and [[BRLYT (File Format)|BRLYT]] files, it&amp;#039;s part of the [[Filesystem/Scene/UI|UI]] from [[Mario Kart Wii]]. BRLAN files are always into the &amp;#039;&amp;#039;&amp;#039;anim&amp;#039;&amp;#039;&amp;#039; folders.&lt;br /&gt;
&lt;br /&gt;
== Header ==&lt;br /&gt;
The file starts with a header that is 0x10 bytes long:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || Char[4] || &amp;#039;&amp;#039;&amp;#039;File magic&amp;#039;&amp;#039;&amp;#039;. Always &amp;#039;&amp;#039;RLAN&amp;#039;&amp;#039; in ASCII.&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || UInt16 || {{BOM}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x06 || UInt16 || &amp;#039;&amp;#039;&amp;#039;Version number&amp;#039;&amp;#039;&amp;#039; of the file format.&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || UInt32 || Length of the file in bytes.&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || UInt16 || Length of this header in bytes.&lt;br /&gt;
|-&lt;br /&gt;
| 0x0E || UInt16 || Number of sections.&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || colspan=2 {{Unknown|End of file header}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== pat1 ==&lt;br /&gt;
After the header comes the &amp;#039;&amp;#039;&amp;#039;pat1&amp;#039;&amp;#039;&amp;#039; section. The section is pretty unknown.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || Char[4] || &amp;#039;&amp;#039;&amp;#039;Section magic&amp;#039;&amp;#039;&amp;#039;. Always &amp;#039;&amp;#039;pat1&amp;#039;&amp;#039; in ASCII.&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || UInt32 || &amp;#039;&amp;#039;&amp;#039;S&amp;#039;&amp;#039;&amp;#039; = Size of this section.&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || UInt16 || {{Unknown-left|&amp;#039;&amp;#039;&amp;#039;Unknown&amp;#039;&amp;#039;&amp;#039;.}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x0A || Int16 || Negated number of frames.&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || UInt32 || &amp;#039;&amp;#039;&amp;#039;O1&amp;#039;&amp;#039;&amp;#039; = Offset to &amp;#039;&amp;#039;&amp;#039;string 1&amp;#039;&amp;#039;&amp;#039; relative to the start of this section.&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || UInt32 || &amp;#039;&amp;#039;&amp;#039;O2&amp;#039;&amp;#039;&amp;#039; = Offset to &amp;#039;&amp;#039;&amp;#039;string 2&amp;#039;&amp;#039;&amp;#039; relative to the start of this section. Sometimes no string is stored and then this values refers to the end of the section.&lt;br /&gt;
|-&lt;br /&gt;
| 0x14 || Int16 || Negated number of total frames.&lt;br /&gt;
|-&lt;br /&gt;
| 0x16 || UInt16 || {{Unknown-left|&amp;#039;&amp;#039;&amp;#039;Unknown&amp;#039;&amp;#039;&amp;#039;.}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x18 || Byte || &amp;#039;&amp;#039;isDescendingBind&amp;#039;&amp;#039;.&lt;br /&gt;
|-&lt;br /&gt;
| 0x19 || Byte || {{Unknown-left|&amp;#039;&amp;#039;&amp;#039;Unknown&amp;#039;&amp;#039;&amp;#039;.}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A || UInt16 || {{Unknown-left|&amp;#039;&amp;#039;&amp;#039;Unknown&amp;#039;&amp;#039;&amp;#039;.}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;O1&amp;#039;&amp;#039;&amp;#039; || StringNT || Unknown-left|&amp;#039;&amp;#039;&amp;#039;String 1&amp;#039;&amp;#039;&amp;#039;. This is the name of this animation used by [[BRCTR]].&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;O2&amp;#039;&amp;#039;&amp;#039; || StringNT || {{Unknown-left|&amp;#039;&amp;#039;&amp;#039;String 2&amp;#039;&amp;#039;&amp;#039;. Unknown usage. Often nothing.}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;S&amp;#039;&amp;#039;&amp;#039; || colspan=2 {{Unknown|End of section}}&lt;br /&gt;
|}&lt;br /&gt;
There may be padding (00) stored after the pat1 section to align next section.&lt;br /&gt;
&lt;br /&gt;
== pai1 ==&lt;br /&gt;
After the pat1 section comes the &amp;#039;&amp;#039;&amp;#039;pai1&amp;#039;&amp;#039;&amp;#039; section:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || Char[4] || &amp;#039;&amp;#039;&amp;#039;Section magic&amp;#039;&amp;#039;&amp;#039;. Always &amp;#039;&amp;#039;pai1&amp;#039;&amp;#039; in ASCII.&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || UInt32 || &amp;#039;&amp;#039;&amp;#039;Size of this section&amp;#039;&amp;#039;&amp;#039; including all the animation entries.&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || UInt16 || Number of frames.&lt;br /&gt;
|-&lt;br /&gt;
| 0x0A || Byte || {{Unknown-left|Flags.}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x0B || Byte || {{Unknown-left|&amp;#039;&amp;#039;&amp;#039;Unknown&amp;#039;&amp;#039;&amp;#039;.}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || UInt16 || &amp;#039;&amp;#039;&amp;#039;T&amp;#039;&amp;#039;&amp;#039; = Number of &amp;#039;&amp;#039;&amp;#039;[[TPL]] filenames&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|-&lt;br /&gt;
| 0x0E || UInt16 || &amp;#039;&amp;#039;&amp;#039;N&amp;#039;&amp;#039;&amp;#039; = Number of &amp;#039;&amp;#039;&amp;#039;[[#Animation|animations]]&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || UInt32 || &amp;#039;&amp;#039;&amp;#039;O&amp;#039;&amp;#039;&amp;#039; = Offset to the &amp;#039;&amp;#039;&amp;#039;offset array&amp;#039;&amp;#039;&amp;#039; which points to the animations. Relative to the start of this section.&lt;br /&gt;
|-&lt;br /&gt;
| 0x14 || UInt32[&amp;#039;&amp;#039;&amp;#039;T&amp;#039;&amp;#039;&amp;#039;] || Offsets to &amp;#039;&amp;#039;&amp;#039;null-terminated strings&amp;#039;&amp;#039;&amp;#039; which store the [[TPL]] filenames. Relative to the start of this array.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;O&amp;#039;&amp;#039;&amp;#039; || UInt32[&amp;#039;&amp;#039;&amp;#039;N&amp;#039;&amp;#039;&amp;#039;] || Offsets to &amp;#039;&amp;#039;&amp;#039;[[#Animation|animation sections]]&amp;#039;&amp;#039;&amp;#039;. Relative to the start of this section. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Animation ==&lt;br /&gt;
An animation starts with the following structure:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || String || &amp;#039;&amp;#039;&amp;#039;Name&amp;#039;&amp;#039;&amp;#039; of this animation. The length is always 0x14. Unused bytes are set to 00.&lt;br /&gt;
|-&lt;br /&gt;
| 0x14 || Byte || &amp;#039;&amp;#039;&amp;#039;N&amp;#039;&amp;#039;&amp;#039; = Number of &amp;#039;&amp;#039;&amp;#039;[[#Animation Tag|animation tags]]&amp;#039;&amp;#039;&amp;#039; in this animation.&lt;br /&gt;
|-&lt;br /&gt;
| 0x15 || Byte || Defines what the &amp;#039;&amp;#039;&amp;#039;animation is animating&amp;#039;&amp;#039;&amp;#039;. 0 = pane, 1 = material.&lt;br /&gt;
|-&lt;br /&gt;
| 0x16 || UInt16 || {{Unknown-left|&amp;#039;&amp;#039;&amp;#039;Unknown&amp;#039;&amp;#039;&amp;#039;.}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x18 || UInt32[&amp;#039;&amp;#039;&amp;#039;N&amp;#039;&amp;#039;&amp;#039;] || Offsets to the &amp;#039;&amp;#039;&amp;#039;[[#Animation Tag|animation tags]]&amp;#039;&amp;#039;&amp;#039;. Relative to the start of this section.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Animation Tag ===&lt;br /&gt;
The animation tag section sets the type of the animation.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || String || [[#Animation Types|Animation &amp;#039;&amp;#039;&amp;#039;type&amp;#039;&amp;#039;&amp;#039;]].&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || Byte || &amp;#039;&amp;#039;&amp;#039;N&amp;#039;&amp;#039;&amp;#039; = Number of &amp;#039;&amp;#039;&amp;#039;[[#Animation Entry|animation entries]]&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|-&lt;br /&gt;
| 0x05 || Byte[3] || {{Unknown-left|Padding?}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || UInt32[&amp;#039;&amp;#039;&amp;#039;N&amp;#039;&amp;#039;&amp;#039;] || Offsets to the &amp;#039;&amp;#039;&amp;#039;[[#Animation Entry|animation entries]]&amp;#039;&amp;#039;&amp;#039;. Relative to the start of this section.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Animation Types ===&lt;br /&gt;
These are the 6 different animation types found in BRLAN files:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| align=center | RLPA || &amp;#039;&amp;#039;&amp;#039;R&amp;#039;&amp;#039;&amp;#039;evolution &amp;#039;&amp;#039;&amp;#039;L&amp;#039;&amp;#039;&amp;#039;ayout &amp;#039;&amp;#039;&amp;#039;PA&amp;#039;&amp;#039;&amp;#039;ne SRT (Scale/Rotate/Translate) animation.&lt;br /&gt;
|-&lt;br /&gt;
| align=center | RLTS || &amp;#039;&amp;#039;&amp;#039;R&amp;#039;&amp;#039;&amp;#039;evolution &amp;#039;&amp;#039;&amp;#039;L&amp;#039;&amp;#039;&amp;#039;ayout &amp;#039;&amp;#039;&amp;#039;T&amp;#039;&amp;#039;&amp;#039;exture &amp;#039;&amp;#039;&amp;#039;S&amp;#039;&amp;#039;&amp;#039;RT animation.&lt;br /&gt;
|-&lt;br /&gt;
| align=center | RLVI || &amp;#039;&amp;#039;&amp;#039;R&amp;#039;&amp;#039;&amp;#039;evolution &amp;#039;&amp;#039;&amp;#039;L&amp;#039;&amp;#039;&amp;#039;ayout &amp;#039;&amp;#039;&amp;#039;VI&amp;#039;&amp;#039;&amp;#039;sibility animation.&lt;br /&gt;
|-&lt;br /&gt;
| align=center | RLVC || &amp;#039;&amp;#039;&amp;#039;R&amp;#039;&amp;#039;&amp;#039;evolution &amp;#039;&amp;#039;&amp;#039;L&amp;#039;&amp;#039;&amp;#039;ayout &amp;#039;&amp;#039;&amp;#039;V&amp;#039;&amp;#039;&amp;#039;ertex &amp;#039;&amp;#039;&amp;#039;C&amp;#039;&amp;#039;&amp;#039;olor animation.&lt;br /&gt;
|-&lt;br /&gt;
| align=center | RLMC || &amp;#039;&amp;#039;&amp;#039;R&amp;#039;&amp;#039;&amp;#039;evolution &amp;#039;&amp;#039;&amp;#039;L&amp;#039;&amp;#039;&amp;#039;ayout &amp;#039;&amp;#039;&amp;#039;M&amp;#039;&amp;#039;&amp;#039;aterial &amp;#039;&amp;#039;&amp;#039;C&amp;#039;&amp;#039;&amp;#039;olor animation.&lt;br /&gt;
|-&lt;br /&gt;
| align=center | RLTP || &amp;#039;&amp;#039;&amp;#039;R&amp;#039;&amp;#039;&amp;#039;evolution &amp;#039;&amp;#039;&amp;#039;L&amp;#039;&amp;#039;&amp;#039;ayout &amp;#039;&amp;#039;&amp;#039;T&amp;#039;&amp;#039;&amp;#039;exture &amp;#039;&amp;#039;&amp;#039;P&amp;#039;&amp;#039;&amp;#039;attern animation.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Animation Entry ===&lt;br /&gt;
An animation entry stores the key frames and some settings for the animation.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || Byte || {{Unknown-left|Index.}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x01 || Byte || &amp;#039;&amp;#039;&amp;#039;Target&amp;#039;&amp;#039;&amp;#039;. Sets the target of the animation. Different for different types. See [[BRLAN (File Format)/Targets|this page]] for more info.&lt;br /&gt;
|-&lt;br /&gt;
| 0x02 || Byte || &amp;#039;&amp;#039;&amp;#039;Key frame type&amp;#039;&amp;#039;&amp;#039;. Only types 1 and 2 are known.&lt;br /&gt;
|-&lt;br /&gt;
| 0x03 || Byte || {{Unknown-left|&amp;#039;&amp;#039;&amp;#039;Unknown&amp;#039;&amp;#039;&amp;#039;.}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || UInt16 || Number of &amp;#039;&amp;#039;&amp;#039;[[#Key Frame|key frames]]&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
|-&lt;br /&gt;
| 0x06 || UInt16 || {{Unknown-left|&amp;#039;&amp;#039;&amp;#039;Unknown&amp;#039;&amp;#039;&amp;#039;.}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || UInt32 || Offset to the first &amp;#039;&amp;#039;&amp;#039;[[#Key Frame|key frames]]&amp;#039;&amp;#039;&amp;#039;, relative to the start of this section. Always 0x0C.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Key Frame ====&lt;br /&gt;
The key frames contains the actual animations. The type of the key frame is set by the [[#Animation Entry|animation entry]]. Currently only two types have been seen, 1 and 2. &lt;br /&gt;
&lt;br /&gt;
; Type 1&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || Float || &amp;#039;&amp;#039;&amp;#039;Frame index&amp;#039;&amp;#039;&amp;#039;. Can be negative.&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || UInt16 || Value.&lt;br /&gt;
|-&lt;br /&gt;
| 0x06 || UInt16 || Padding.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
; Type 2&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || Float || &amp;#039;&amp;#039;&amp;#039;Frame index&amp;#039;&amp;#039;&amp;#039;. Can be negative.&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || Float || Value.&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || Float || Blend.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Tools ==&lt;br /&gt;
The following tools can handle BRLAN files:&lt;br /&gt;
* [http://wiibrew.org/wiki/Benzin Benzin], by [http://wiibrew.org/wiki/User:SquidMan SquidMan], [http://wiibrew.org/wiki/User:Comex comex], [http://wiibrew.org/wiki/User:Megazig megazig] and [http://wiibrew.org/wiki/User:Yossi Yossi] (converts BRLAN to XML and viceversa)&lt;br /&gt;
* [[Wexos&amp;#039;s Toolbox]], by [[Wexos]]&lt;br /&gt;
* [[Wii Layout Editor]], by [[Gericom]] (only plays animation, not editable)&lt;br /&gt;
&lt;br /&gt;
[[Category:Wii File Formats]]&lt;/div&gt;</summary>
		<author><name>Wexos</name></author>
	</entry>
</feed>