Skip to content

ThisKwasior/KwasTools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KwasTools

Library (kwaslib) and tools for video game modding.

kwaslib is a C library inspired by Gnulib, in a way of being easy to incorporate into your own projects - entire library can be compiled as-is without needing to set any environmental variables/defines or external dependencies.

Requirements

Must-have:

Optional:

  • Git (project doesn't use any external dependencies, downloading a zip is fine)

Building

I write mostly on Windows and compile with GCC from MinGW-w64.
Tested on Windows (x86/x64 GCC/Clang) and Linux (ARM/x86/x64 GCC/Clang).
This project does not support Visual Studio compilers.

Windows

$ git clone https://github.com/ThisKwasior/KwasTools
$ cd KwasTools
$ mkdir build && cd build
$ cmake .. -G"MinGW Makefiles"
$ mingw32-make -j 8

Linux/MSYS2

$ git clone https://github.com/ThisKwasior/KwasTools
$ cd KwasTools
$ mkdir build && cd build
$ cmake ..
$ make -j 8

After compiling, CMake script will output binaries and libraries in the ./bin directory in the root of the repo.

Software

Hedgehog Engine

Program Description Supported formats
he_anim_tool Hedgehog Engine *-anim converter Reading/writing:
- uv-anim
- cam-anim
- vis-anim
- morph-anim
- pt-anim
- mat-anim
- lit-anim

CRIWARE

Program Description Supported formats
cri_utf_tool CRI UTF parser to and from XML.
Will parse structures from VLDATA (UTF, AWB and ACB commands).
Reading/writing:
- ACB
- ACF
- AAX
- Any @UTF table i forgot to mention
cri_afs_tool CRI AFS packer/unpacker to and from XML.
If metadata section is not present, it will detect and add extensions to known file formats (AFS, AHX, ADX)
Reading/writing:
- AFS
cri_awb_tool CRI AWB packer/unpacker to and from XML.
Will detect and add extensions to known file formats (HCA, ADX, BCWAV)
Reading/writing:
- AWB
CRI Scramble Key Python script and HTML+JS page to compute ACB key for encoding HCA/ADX files.
Found in scripts directory.
Also hosted on my site.

NW4R

Program Description Supported formats
nw4r_misc_to_he_xml Wii NW4R converter to Hedgehog Engine XML supported by he_anim_tool Reading/writing:
- SCN0 -> cam-anim
- SRT0 -> uv-anim

Platinum Games

Program Description Supported formats
platinum_dat_tool Unpacker/packer with experimental support for Big Endian archives (X360/PS3/WiiU) Reading/writing:
- DAT
- DTT
- EFF
platinum_wtb_tool Unpacker/packer with WIP X360/PS3 texture conversion to PNG Reading/writing:
- WTB
- WTA+WTP

Addons

io_kwastools

WIP addon for Blender 3.0/4.0 (currently not usable as of 06/06/2025).

Features:

  • cam-anim import and export
  • uv-anim import and export
  • Camera setup creation for cam-anim (searchable with F3)
  • UV Animator creation for uv-anim (searchable with F3, to use in material->Shift+A->Group)

Special Thanks

  • ik-01 for multiple contributions, both in code and knowledge, in Hedgehog Engine formats.
  • ecksdii for extensive testing and end-user feedback.
  • Ashrindy for contributions and help with Hedgehog Engine -anim formats.
  • Adam Gąsior for giving feedback on my code whenever I ask.
  • Skyth for help with Hedgehog Engine related issues and insight.
  • Mario Tainaka for help with CRI Middleware related issues and insight.
  • Sewer56 for help with CRI Middleware related issues and insight.
  • Metal Gear Rising Revengeance modding community for feedback and bug reports.
  • And anyone else I forgot to mention!

Acknowledgements

  • vgmstream - Learned about the CRI @UTF file format from their extensive implementation.
  • VGAudio - HCA format specifics.
  • Xenia - Untiling code for Xbox 360 textures. Copyright (c) 2015, Ben Vanik. All rights reserved.
  • RPCS3 - Texture swizzling code for GTF textures. Licensed under GNU GPL-2.0 license.

About

Library and tools for video game modding

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors