A Collection of File In/Out libraries for various formats
Previously referred to as "Hackio.IO"
Please be aware that the Hack.io libraries are indefinitely in a period of transitioning to .NET 8. I do not know when or if I will update every library.
The Hack.io libraries are easy-to-use, modular C# libraries that can be used in multiple projects. I made these with the intent of just using them so I wouldn't have to constantly repeat my code when doing projects. In the end, here they are, feel free to use them in your projects.
-
Hack.io
Hack.io is the base library used by all the other Hack.io libraries. -
Hack.io.BCK
Bone Animations for J3D Models (SMG/SMG2, SMS, Pikmin, etc.) -
Hack.io.BAS
Sound Links for BCK animations in J3D Models (SMG/SMG2, SMS, Pikmin, etc.) This library is required for Hack.io.BCK, as some games embed their BAS files into the bck directly instead of being separate. -
Hack.io.BMD (DEPRICATED)
Library for J3D Models (SMG/SMG2, SMS, Pikmin, etc.)
Heavily based on SuperBMD, but only does Read/Write to/from BMD/BDL. (no model importing and no model exporting) -
Hack.io.BTK
Texture Position Animations for J3D Models (SMG/SMG2, SMS, Pikmin, etc.) -
Hack.io.BRK
Colour Register Animations for J3D Models (SMG/SMG2, SMS, Pikmin, etc.) -
Hack.io.BTI
Library for the BTI image format. Supports all image formats and mipmaps -
Hack.io.BTP
Frame Animations for J3D Models (SMG/SMG2, SMS, etc.)
This would animate a material by swapping out texture indicies -
Hack.io.BVA
Mesh Visibility Animations for J3D Models (SMG/SMG2, etc.) -
Hack.io.BPK
Palette Animations for J3D Models (SMG/SMG2, etc.) -
Hack.io.BCSV
Comma Seperated Values (SMG/SMG2) -
Hack.io.RARC
Revolution (Wii) Archives. (SMG/SMG2, SMS)
THESE ARE NOT U8 FORMATTED ARCHIVES! -
Hack.IO.YAZ0
Library for Compressing/Decompressing data to/from YAZ0. Works with pretty much anything -
Hack.IO.YAY0
Library for Compressing/Decompressing data to/from YAY0. Works with pretty much anything
Download the Libraries you want and then reference them in your program's Assembly References.
Using statements will also be needed. The statements are identical to the library name.
Example:
using Hack.io.RARC;
For Library specific tutorials, please visit it's corresponding Wiki Page.
- Super Hackio - Main Programmer/Maintainer
- RenolY2 aka Yoshi2 - Code reference for Hack.io.BTK & Hack.io.BRK
- NoClip.website - Code reference for Hack.io.BCK, Hack.io.BTP, Hack.io.BVA & Hack.io.BPK
- tarsa129 - Code reference for Hack.io.BCK because NoClip wasn't enough
- Old SMG Researchers - File formats for Hack.io.CANM, Hack.io.BCSV & Hack.io.RARC
- Gericom - Quick YAZ0 Compression
- Daniel-McCarthy - YAY0 Compression