Hacking Modding Yoshi's Woolly World

Awesomegameplayer

Member
Newcomer
Joined
Oct 10, 2023
Messages
13
Reaction score
8
Trophies
0
XP
107
Country
Canada

Asking For Help

Hey there, I was wondering what tools there are to mod Yoshi's Woolly World (primarily the Wii U version)? I'd be interesting in anything from simple audio and graphic hacks to replacing entire levels/worlds and plus adding new things into the game.

Tools and Programs

For those of you who might end up here also searching for a way to mod Yoshi's Woolly World, I'll provide some hopefully useful links to programs that can be used to mod the game:

Switch Toolbox - Allows you to view the files of most Wii U games. Some .gfa files will cause an error, but most can be opened.

Tangle - An up-to-date .gfa packer that can be used for multiple Good Feel games (large files can't be compressed though, or may take an incredible amount of time).

fleece - "A tool for parsing Good-Feel's BSON files."

Merino - A tool that allows you to edit both .mapbin and .bson files.

A big thanks to @swiftshine for Tangle, fleece, and Merino as these three tools can be used to modify a majority of Yoshi's Woolly World files!
 
Last edited by Awesomegameplayer,
Hey! I was wondering the same thing, but couldn't find much, other than a gfa packer that didn't run on my pc for some reason, switch toolbox, and some videos showcasing modded in levels. I've also started making a guide with all my findings and what some files are here.
 
Last edited by yoshi762,
Seems like somebody is ready to give this a go, though that AI-generated announcement video does not make it look too good: https://gamebanana.com/wips/97120
Post automatically merged:

The primary issue back then and still now seems to be that the files use BPE (byte-pair encoding) compression which is extremely inefficient if programmed poorly. All small texture mods are possible due to, well, the small file sizes but I've noticed that the 60MB level sizes are just too much for all the GFA packers to handle unfortunately.
 
Last edited by Awesomegameplayer,
  • Like
Reactions: FanNintendo
Thanks to @sackboygames, I've added Tangle to the list of tools, as it's a much more reliable .gfa packer that gives you the correct compression options and info for different Good Feel games. However, when I tested it out with a 60MB level it still seems to freeze due to the BPE compression method (which is necessary for YWW). The 3DS version may fare better, as it uses LZ10 compression which is much more efficient, but requires different tools to mod.
 
Hi everyone,

I’ve been experimenting with the internal files of Yoshi’s Woolly World (Wii U), inspired by the thread “Yoshi's Woolly World Wii U: Daisy + Boo + Isabelle amiibo cards/figure support!” by memoryman3 (https://gbatemp.net/threads/yoshis-...ibo-cards-figure-support.476259/#post-7427685), and we’ve hit a major roadblock because the .bson format used here appears to be a very unusual or custom variant that doesn’t behave like standard BSON.

  • YoshiList.bson
  • YoshiWoolColorList.bson
  • CUSTOMXXX_filelist.bson
By replacing existing Yoshi textures and repackaging the files using Tangle, I was able to load unused Pokémon base textures (Charizard, Pikachu, Jigglypuff, Lucario, Greninja, etc.) into the game successfully.

Pokemon Scrapped Yoshis.png


However, these Pokémon only have the main body texture. They do not include yarn ball or morph textures. Even so, the base texture works correctly in gameplay and the amiibo tent when mapped to existing slots.

My goal is not to replace current Yoshis.

I want to understand how to properly modify the .bson files in order to:

  • Expand the Yoshi slot table
  • Create new selectable entries
  • Add 3DS-exclusive amiibo patterns
  • Potentially restore unused Pokémon Yoshis properly
The issue is that these .bson files do not behave like standard BSON and appear to use a structured binary format.

So I’m mainly looking to know if anyone has any information about how these .bson files work.

Since I understand that most of the documentation here focuses on Tangle and Toolbox rather than deep structural modding, I’m mainly looking for any guidance or shared experience regarding:

  • What these .bson files actually are
  • Whether they follow a known format
  • If anyone has experimented with editing them before
Any technical guidance would be greatly appreciated.
 
I'd like to contribute to this conversation;

I did some research on Good-Feel's BSON format and I have a repo at (https://github.com/Swiftshine/gfbson-cpp). The documentation isn't necessarily complete (or really existent at all, since I haven't sat down and cleaned up documentation on the actual binary format itself), and there isn't really a way to edit them yet, but if anyone wanted to make a tool based on that, go for it. There's very rudimentary JSON exporting, as well.

Also, as for Tangle being unable to handle larger files: this is a limitation of the Byte Pair Encoding algorithm (Philip Gage's specifically) that the bpe_rs crate is based off of. I tried, but I wasn't able to compress these larger files with the original code, either. I haven't yet found a version of this that works for those yet, and since the games don't compress files, there's really no way of figuring out how Good-Feel tweaked that algorithm but to guess.
 
Last edited by swiftshine,
Hi everyone,

I’ve been experimenting with the internal files of Yoshi’s Woolly World (Wii U), inspired by the thread “Yoshi's Woolly World Wii U: Daisy + Boo + Isabelle amiibo cards/figure support!” by memoryman3 (https://gbatemp.net/threads/yoshis-...ibo-cards-figure-support.476259/#post-7427685), and we’ve hit a major roadblock because the .bson format used here appears to be a very unusual or custom variant that doesn’t behave like standard BSON.

  • YoshiList.bson
  • YoshiWoolColorList.bson
  • CUSTOMXXX_filelist.bson
By replacing existing Yoshi textures and repackaging the files using Tangle, I was able to load unused Pokémon base textures (Charizard, Pikachu, Jigglypuff, Lucario, Greninja, etc.) into the game successfully.

View attachment 561180

However, these Pokémon only have the main body texture. They do not include yarn ball or morph textures. Even so, the base texture works correctly in gameplay and the amiibo tent when mapped to existing slots.

My goal is not to replace current Yoshis.

I want to understand how to properly modify the .bson files in order to:

  • Expand the Yoshi slot table
  • Create new selectable entries
  • Add 3DS-exclusive amiibo patterns
  • Potentially restore unused Pokémon Yoshis properly
The issue is that these .bson files do not behave like standard BSON and appear to use a structured binary format.

So I’m mainly looking to know if anyone has any information about how these .bson files work.

Since I understand that most of the documentation here focuses on Tangle and Toolbox rather than deep structural modding, I’m mainly looking for any guidance or shared experience regarding:

  • What these .bson files actually are
  • Whether they follow a known format
  • If anyone has experimented with editing them before
Any technical guidance would be greatly appreciated.
Took me a bit, but I finally got around to writing a proper tool for this (https://github.com/Swiftshine/fleece).
 
  • Love
Reactions: Awesomegameplayer
Took me a bit, but I finally got around to writing a proper tool for this (https://github.com/Swiftshine/fleece).
I have finally added fleece to the tools list! I was able to successfully convert the BSON file to a JSON file, though I have not tried converting it back yet. I am curious of what happens if you modify the values though.
 
I'll pass on joining any teams, but if you want to document the behaviour of game objects, the README explains how to contribute to the database.
i tested it out its very confusing and took me a minuite to understand also im still figuring out which file goes to which level lol :D but otherwise its good maybe explain in readme how to work it or smth
 
Importing custom models is now possible. I plan to add a dedicated tool for this to Merino in the distant future, but until then, you can use Switch Toolbox and Tangle.

Important things to note:
- Some files won't open using the main branches of Switch Toolbox or Track Studio due to TC_R8_G8_B8_A8_SNorm not being supported in their BFRES format libraries. Until it gets added, adding that functionality and recompiling it yourself is required.
- The archives for level graphics must have their compression header offsets begin at a multiple of 0x2000, and the file alignment must be a multiple of 0x2000 as well. Using the latest version of Tangle (4.4 at the time of writing), you can use this command:
tangle archive folder file.gfa 3.1 bpe -o 0x2000 -a 0x2000
1781228231664.png
1781230224652.png
 

Site & Scene News

Popular threads in this forum