WWoollyToolsGFA WORKSHOP
Loading Rust engine…
YOSHI'S WOOLLY WORLD · MODDING WORKSPACE

Unravel your GFA archives.

Extract and rebuild game archives, convert supported audio assets, and inspect common Wii U formats.

FORMAT EXTRACTORS AND CONVERTERS

Woolly Tools

Tools for the formats used by Yoshi’s Woolly World and related Nintendo assets.

First-time setup The WebAssembly tools are starting. Reload the page if they remain unavailable.
▤
BULK GAME EXTRACTOR

Extract everything at once

Upload one archive, supported game file, or folder. Replit keeps the original folder paths and checks code → content → meta, extracting nested files in place. GFA and SARC/Yaz0 archives are unpacked, RPX/RPL becomes ELF and C++ output, BSON/MSBT become JSON, BFSEQ event data and MSBP project tables are exported, BFFNT sheets and metadata are extracted, GTX/BFLIM become PNG, and BFSAR/BARS/BFGRP audio libraries are expanded before supported audio becomes WAV or MP3. The result is one ZIP with the same directory structure.

No files selected

Files are uploaded to Replit and processed in temporary storage, then deleted after download or 30 minutes. Upload allowance: 16 GiB upload and 18 GiB temporary data. Image/audio conversions replace their source; BFLYT and BFLAN keep their originals and gain raw-section exports; BFSAR resolves named audio assets and recursively opens nested BFWAR wave archives before converting supported streams to WAV. MAPBIN is exported as editable structured JSON while its original stays in place. Unsupported or failed files stay unchanged and are listed in the report. BNTX is not decoded here; native audio loop metadata may not survive conversion. This does not convert a game executable into a playable web game.

⇢
RPX / RPL TO C++

Convert an RPX

Upload an RPX or RPL file. Replit decompresses it to ELF, translates supported PowerPC blocks to C++ files, and returns one ZIP. This converter is also included in “Extract everything.”

No RPX/RPL file selected

Generated C++ is translated source, not a playable game; unsupported blocks are reported in the ZIP.

↙
ARCHIVE TO FILES

Extract a GFA

Choose a .gfa archive. WoollyTools will unpack its files and bundle them into a ZIP download.

No archive selected
↗
FILES TO ARCHIVE

Create a GFA

Select a folder of extracted game files and rebuild it as a Good-Feel archive.

No folder selected
▤
BFRES TO FILES

Extract a BFRES

Extract indexed BFRES subfiles and convert FTEX textures to GTX/PNG. FMDL model payloads are exported raw; OBJ/glTF geometry conversion is not available yet.

No archive selected

Model data is exported raw; full 3D mesh reconstruction is not included.

▧
GTX TO PNG

Extract a GTX

Decode supported Wii U GTX texture formats and download the images as PNG files.

No texture selected

Uses the supplied GTX Extractor in your browser. First use downloads the Python runtime; your texture stays on your device.

▧
BFLIM TO PNG

Extract a BFLIM texture

Decode supported Wii U GX2 BFLIM formats to PNG in your browser. The file stays on your device and the original texture metadata is included in the ZIP.

No BFLIM file selected

Uses the included GTX Extractor GX2 decoder. Unsupported BFLIM encodings are reported; they are not converted to placeholder images.

▤
BFLYT LAYOUT SECTIONS

Split a BFLYT layout

Export the Wii U Cafe layout header and each top-level section as a raw file. JSON also extracts text-pane strings and summarizes pane names, visibility, transforms, and dimensions; this does not render or edit the layout.

No BFLYT file selected
◷
BFLAN ANIMATION SECTIONS

Split a BFLAN animation

Export the Wii U Cafe animation header and each top-level section as a raw file. JSON includes animation names, frame ranges, groups, textures, pane/tag summaries, and supported track keyframes. This does not preview or edit animations.

No BFLAN file selected
⌖
MAPBIN LEVEL EDITOR

Edit a MAPBIN file

Open and edit the complete level tree as structured JSON, then rebuild a MAPBIN file in your browser. All ten node types and versioned fields are supported; the source file stays on your device.

No MAPBIN file selected
♫
BARS SOUND ARCHIVE

Extract a BARS library

Extract named AMTA metadata and embedded Wii U audio assets. Supported waves and streams continue through to WAV; unknown payloads are kept as raw data and reported.

No BARS file selected
♫
BFGRP AUDIO GROUP

Extract a BFGRP group

Read the BFGRP INFO references and FILE payloads, then recursively convert supported embedded audio. The original archive and unrecognized payloads are retained.

No BFGRP file selected
▤
SARC / SZS / YAZ0

Extract a compressed archive

Extract SARC files directly and decode Yaz0-compressed SZS/SARC archives. Nested supported game files continue through the recursive extractor.

No SARC/SZS file selected
♫
BFSEQ SOUND SEQUENCE

Extract BFSEQ sequence data

Extract the bounded DATA event stream and any LABL section. This is sequence code, not rendered audio; producing WAV requires its sound bank and a compatible synthesizer.

No BFSEQ file selected
文
MSBP MESSAGE PROJECT

Extract an MSBP project

Export project sections, CTI1 strings, and SLB1 label groups as JSON and raw section files. MSBP is project metadata; dialogue text is stored in MSBT.

No MSBP project selected
♫
BFSAR SOUND ARCHIVE

Extract a BFSAR audio library

In one run, read the INFO references and FILE pool, extract named audio assets, open nested BFWAR wave archives, and convert supported BFWAV tracks to WAV. The original archive stays in the ZIP.

No BFSAR file selected

BFSAR uploads are processed in temporary Replit storage. BFWAV and supported stream files are converted to WAV in the same run. Sequence/label files such as .bfseq, .seq, and .labl are data, not standalone audio; rendering them requires matching sound banks and wave samples. Unsupported audio containers are kept and listed in the report.

♫
BFWAR WAVE ARCHIVE

Extract a BFWAR library

Unpack the wave table and embedded BFWAV/BCWAV files. Supported Wii U waves are converted to WAV in the same run; the archive and a wave manifest are included in the output ZIP.

No BFWAR file selected
⌘
BSON TO JSON

Convert BSON to JSON

Decode a Good-Feel BSON file in your browser with the Rust/WASM engine, then download the JSON result. The file stays on your device.

No BSON file selected
文
MSBT TO JSON

Extract message text

Read labeled MSBT messages and export text, message IDs, sections, and raw bytes for tagged entries as JSON. Also included in “Extract everything.” Limit: 128 MiB.

No MSBT file selected
Aa
BFFNT FONT DATA

Extract a BFFNT font

Export font metrics and character maps as JSON, keep each original texture sheet, and decode supported Wii U font-sheet formats to PNG. Also included in “Extract everything.”

No font file selected
♫
GAME AUDIO CONVERTER

Convert game audio

Batch-convert supported Nintendo game audio and common audio files to WAV, FLAC, MP3, or OGG. BFWAV is decoded with vgmstream; conversion runs on Replit and returns a ZIP.

No audio files selected

Uploads are temporary (512 MiB per file, 2 GiB total). Originals are not included in this ZIP. Loop markers and format-specific metadata may not carry over.

♫
BFWAV TO WAV

Convert a BFWAV file

Decode a Wii U Cafe BFWAV sound file with vgmstream and download the PCM audio as WAV. Also included in “Extract everything.”

No BFWAV file selected
Local processing

Standalone GFA, BSON, MSBT, BFFNT, BFRES, GTX, BFLIM, BFLYT, and BFLAN tools run in your browser. SARC/SZS, BFSAR, BFWAR, BARS, BFGRP, BFSEQ, MSBP, RPX, and bulk extraction upload files to Replit for temporary processing.

Rust-powered

Uses the gfarch Rust library that powers Tangle's GFA handling.

Made for modding

Start with extraction and repacking. More Yoshi-specific editors can come later.