- Joined
- Aug 20, 2020
- Messages
- 19
- Trophies
- 0
- Age
- 17
- Location
- Space
- Website
- ninjacheetah.dev
- XP
- 328
- Country
<Imagine a really cool logo right here>
(It's a command line tool so it doesn't get one)
WiiPy
By NinjaCheetah
GitHub
Latest Release
Going hand-in-hand with my previous release, NUSGet, which you can read about here, if you haven't already seen it, I'd like to officially release another libWiiPy based program, WiiPy!(It's a command line tool so it doesn't get one)
WiiPy
By NinjaCheetah
GitHub
Latest Release
What is WiiPy?
WiiPy is a command line tool designed to allow you to use all of libWiiPy's functionality in a convenient fashion. It's always based off of libWiiPy's main branch, so it'll always offer the latest features as soon as they've been deemed fit for merging into main.
These features include:
- Packing and unpacking WAD files
- Packing and unpacking U8 archives
- Downloading titles from the NUS via their Title ID (and optionally their version)
- Decompressing ASH files (and eventually compressing, when that's ready in libWiiPy!)
While WiiPy is a Python program, it's compiled for macOS, Windows, and Linux via Nutika, meaning you can get a native executable with no dependencies required for your platform. All of these builds can be found on the releases page, linked at the top of this post, and also attached to every GitHub Actions run, as binaries are automatically built on every commit.
A note about ASH files:
WiiPy is the first tool available with support for both standard ASH files (these are the ones you'll find in the Wii Menu, and Animal Crossing: City Folk), as well as the other variant found in My Pokémon Ranch, thanks to the valiant efforts of @Garhoogin, who wrote some shiny new C code for ASH file decompression, and in the process discovered that the only difference between these two types is the width of the distance tree leaves. You can find the C code he wrote on GitHub, and both his code any my Python port of it, which you can find as part of libWiiPy support specifying the symbol and distance tree leaf widths. In simple terms, both of these tools use essentially the same code, just C flavored and Python flavored, and both allow for decompressing any type of ASH files.
As with NUSGet, questions and bug reports are very welcome, both here in this thread, and on the GitHub issues page. Happy WiiPying!