172952af9b
Add PAP module
2024-04-29 20:57:15 -04:00
4fbd2cb668
Add PHYB module
2024-04-29 20:52:25 -04:00
05ccc566e9
Add SCHD module
2024-04-29 20:49:24 -04:00
e588a9bbc9
Add TMB and SKP modules
2024-04-29 20:26:13 -04:00
8a1430378e
Add IWC module
2024-04-29 20:19:04 -04:00
5924da0991
Add HWC module
2024-04-29 20:14:19 -04:00
6dec9ba5a5
Add SCD module
2024-04-29 20:11:32 -04:00
bb2effcd70
Add ULD module
2024-04-29 20:06:34 -04:00
d5b3b8a468
Run cargo fmt
2024-04-20 13:18:03 -04:00
b4fe74cf7d
Add a new module to extract strings from executables
2024-04-18 22:53:53 -04:00
5574e75325
Add support for reading dictionary files
...
This is the format used for such things as the vulgar word list. Credit
goes to Jim Kirisame who developed an existing tool to read this format!
2024-04-18 22:09:26 -04:00
da774529da
Remove overcomplicated internal race macro to a big match statement
...
There's really no reason to use macros for this, let's rewrite it in a
big match statement.
2024-04-16 21:14:59 -04:00
f067b653b1
Add common functions for converting bool back and forth from u8/16
...
Sort of unnecessary, but these are also tested.
2024-04-16 21:03:26 -04:00
256b3f9305
Add basic support for LGB and TERA files
...
This is for the Novus map editor, although TERA is much more complete
than LGB right now.
2024-02-02 14:20:53 -05:00
fd43401eae
Protect model file i/o, decls behind visual_data feature
2024-01-31 16:33:53 -05:00
3721644340
Separate vertex declaration/element code into its own file
...
This is around 100 LoC by itself, so it's nice to separate that
2023-12-13 17:23:56 -05:00
fadf811505
Move the model file operations to their own file
...
It helps declutter the already huge model file a bit.
2023-12-12 22:13:15 -05:00
609284ce8f
Improve FIIN documentation
2023-12-02 20:28:28 -05:00
7a75c170cc
Make a semantic difference between owned and non-owned byte data
2023-10-13 16:16:04 -04:00
07582775cd
Add support for reading binary SKLB and PBD
...
This removes the dependency of the Havok SDK or getting the decompiled
skeleton files from TexTools or some other place. Code courtesy of
FFXIVTools. The other two ways of reading skeletons (SKEL and Packfile)
are removed which gets rid of two dependencies.
2023-10-13 14:55:27 -04:00
7cbe2fe853
Add homepage blurb
2023-09-24 15:40:38 -04:00
cece5936e8
Hide some unnessecary symbols from the doc
2023-09-22 18:34:24 -04:00
80f80ac0f5
Improve common module docs
2023-09-22 18:15:23 -04:00
2ce18ec66a
Add the missing documentation for CharDat, rename struct too
2023-09-22 18:13:20 -04:00
5edc411bd7
Better the imperfect config file documentation, rename struct
2023-09-22 18:05:29 -04:00
c41f17a126
Improve the lackluster BootData documentation
2023-09-22 17:56:33 -04:00
1343bcdca6
Expand Blowfish documentation, add example to doc
2023-09-22 17:52:31 -04:00
dccc4e3586
Add support for reading shader packages and it's bytecode
2023-09-22 16:36:12 -04:00
2000b978b3
Ensure compliance with REUSE, add to CI
2023-08-06 08:25:04 -04:00
3eec5764a2
Add support for reading/writing CFG files
2023-08-02 16:26:56 -04:00
59fc7d9786
Expose version
2023-07-30 10:28:32 -04:00
bd104fbae0
Add support for loading character .dat files
2023-07-08 15:29:00 -04:00
2b95630c2b
Begin support for CMP files
2023-07-06 17:34:14 -04:00
6da9057d1e
Allow cutting out a large amount of dependencies
...
Before this change, if you wanted to include physis you had to include
a bunch of dependencies you didn't need. For example, a launcher would
have to pull in texpresso which is completely useless. By default,
the features from before (excluding game_install) are included.
Also this creates a game_install feature for eventual Windows builds,
where unshield is not supported.
2022-10-25 13:53:24 -04:00
827e971035
Vendor in sha1_smol
...
Removes another crate dependency, and it's only used in one place in the
code. Will eventually pick up the TODO and cut more bits off when
I get around to it.
2022-10-25 13:00:10 -04:00
7aa306da99
Replace crc crate with simpler implementation
...
The package is kept as a dev-dependency to prevent regressions though!
2022-10-25 13:00:10 -04:00
85bcfa5db6
WOW missed another one!
2022-09-15 17:02:30 -04:00
1923b626a9
Fix some module descriptions missing from docs
2022-09-15 17:00:27 -04:00
d9e79e563a
Reformat code
2022-08-16 11:52:07 -04:00
01717456d1
Add material file parsing
2022-08-11 15:40:14 -04:00
7292ad930a
Add Texture structure, begin reading header
2022-08-09 19:31:32 -04:00
42ec97d70c
Add chat log parser
2022-08-07 16:19:04 -04:00
5b7cf1d6a3
Add support for reading the file info format
...
I revisited this format, and discovered a lot of stuff I did wrong the
first time around when writing libxiv. Now that's fixed!
2022-08-06 20:38:15 -04:00
6f12fec62f
Make sqpack module public again, as I forgot it's used for benchmarks.
2022-08-06 18:06:06 -04:00
aeed62fb4c
Implement MDL parsing
...
The actual vertex output is untested, but the headers parse fine it
seems. A lot of this is ported straight from C++, so more refactoring
is expected.
2022-07-28 14:11:02 -04:00
c36c4b7470
Document more public APIs in preparation for docs release
2022-07-27 21:41:05 -04:00
be9c850fc1
Remove some warnings
2022-07-27 21:21:50 -04:00
ca4962c876
Add EXH and EXD parsers
2022-07-21 19:58:58 -04:00
e8183b3af6
Add game installation functionality
2022-07-20 19:07:36 -04:00
389c3fe00b
Add initial files
2022-07-19 19:29:41 -04:00