Commit Graph

17 Commits

Author SHA1 Message Date
Lily Tsuru ee7504f5f7 jmmt: move make_c_string to util 2023-06-29 03:12:06 -04:00
Lily Tsuru 7e97ccaf48 jmrenamer: Add "unclear" mode
This will allow transparent switching between clear names and .DAT names.
2023-06-29 00:10:18 -04:00
Lily Tsuru 94823a21e3 chore(*): cargo fmt 2023-06-28 19:27:15 -04:00
Lily Tsuru 15d438f294 jmrenamer: rewrite to use package.toc
The package.toc file contains all the file names, except for itself (but we know it always so this isn't a problem).

Therefore, we don't need to store a hardcoded string table! Yay!
2023-06-28 19:25:18 -04:00
Lily Tsuru 11abf7668a jmmt: Textool now works
Most of the POC reader code was moved into jmmt crate
2023-06-28 00:54:06 -04:00
Lily Tsuru 69e82236c6 jmmt: add texture formats
This commit also adds a skeleton for a texture tool.
2023-06-26 05:56:27 -04:00
Lily Tsuru 094c14a799 jmrenamer: print if a renamed filename already exists 2023-06-25 18:41:09 -04:00
Lily Tsuru d5f00adc95 jmrenamer: move DAT/MET filename code to jmmt crate 2023-06-25 18:39:44 -04:00
Lily Tsuru 88375f5581 imhex: import newer package structures 2023-06-25 18:19:01 -04:00
Lily Tsuru c1d3cfaf04 jmmt_rs: Init
A skeleton `jmmt` crate with some stuff
has been created.

There is also a reimplementation of the jmmt_renamer tool.

More stuff will be reimplemented later.
2023-06-25 06:52:16 -04:00
Lily Tsuru 1398b8f816 Add HashTool
This is probably my last addition to the C++ version of this code,
at least if an Experimental ~~Rodeo~~ Rewrite doesn't end up panning
out.

This is a tool for generating the HashID values that the game uses.

Maybe later on I might try and see if I can write a multi-threaded
hash cracker, or better yet, a GPU powered one (no better way to
try and learn GPGPU then actually doing it!), but for now, this is
all you get.

Feel free to lavish in my argument parsing implementation. I just wanted
something simple and fairly easy to read, and this seems to work ok,
while still being platform-independent (no getopt, and I wouldn't need to
drag in additional code to reimplement getopt or such for Windows/Mac/...)
2023-06-07 23:04:33 -04:00
Lily Tsuru d244d5e3c2 Get a little metaprogrammy
Use FourCCObject template classes to provide magic type
2022-08-14 14:46:11 -05:00
Lily Tsuru e700c3432d Cleanup, add ImHex patterns
tool binaries now no longer have any linter warnings

add imhex patterns (for documentation's sake I guess)
2022-08-14 14:32:18 -05:00
Lily Tsuru dc6be07ec9 more cleanup
I am probably going to take a break from this project for at least a little while (probably a week or two, which despite github commit dates, has been about the time I've spent on this project), because even though I got through, I've been feeling really overworked (especially due to the fact I've been.. pressured? to say the least, to do this at a way quicker pace than I really wanted to.), and it's affecting my personal life (in a not-so-good way.).

This doesn't mean I'm completely dropping the project, if I were I'd be offering maintainership to someone else and/or moving/archiving the repository. Rather, I just need a breather.
2022-07-10 02:45:07 -05:00
Lily Tsuru 535f8c0571 Cleanup pak extractor a tiny bit more 2022-07-09 04:28:10 -05:00
Lily Tsuru 5dbf7db274 Fix pak extractor.
It now doesn't crash, and works with every pak file.
2022-07-08 17:34:31 -05:00
Lily Tsuru 0544a39dc3 Init version of jmmt_tools 2022-07-08 04:23:46 -05:00