1
Fork 0
mirror of https://github.com/redstrate/Physis.git synced 2025-04-22 12:47:45 +00:00
Commit graph

511 commits

Author SHA1 Message Date
f83b2013fa Support WebAssembly 2024-11-01 16:50:37 -04:00
6e6124a278 Fix even more Clippy and other compiler warnings 2024-09-13 21:47:02 -04:00
e1a9be2756 Test for size_on_disk in patchlist 2024-08-22 20:52:18 -04:00
979b8df45d Add PatchList parsing from Kawari
This was originally from my Kawari project, but this belongs in here, so
we can share it between Kawari and Astra.
2024-08-22 20:38:50 -04:00
7b8c4c9c5f Add tests for the string file operations, fix nul terminator handling
Since this recently had a hand in patch regression, let's start adding
some basic tests for this function.

I realized the writing functions did not take into account the nul
terminator, which is not correct and has been fixed.
2024-07-18 14:17:24 -04:00
66034b6e8d Patch fixing redux: Trim trailing null characters
This fixes broken file operations
2024-07-18 14:08:10 -04:00
4d23bf9f08 Fix path calculation in SqpkFileOperationData, again
This should make retail patches work correctly
2024-07-18 13:57:12 -04:00
d8fae2f822 The frontier URL formats need to be switched around
Otherwise, it will always pick up the old version
2024-06-29 20:03:59 -04:00
2a429c45c9 Meh, fix typo in README 2024-06-29 15:25:11 -04:00
267b880886 Mark Dawntrail as mostly compatible 2024-06-29 15:23:56 -04:00
f52a4b68fc Fix adding multiple files in the same patch, add tests for this
Also fixes patching_test, and makes file paths written in ZiPatches
relative to it's base directory.
2024-06-29 13:25:24 -04:00
657005ad53 Begin writing ZiPatch unit tests
Right now it's only the usual invalid data test we have elsewhere, but
this lays the groundwork to add more!
2024-06-29 12:53:37 -04:00
4357e382ab Move ZiPatch functions under its own struct
For code organization reasons
2024-06-29 12:47:00 -04:00
36d09195fa Mention more NOPs when reading ZiPatch 2024-06-29 12:43:55 -04:00
6869e98f9d Implement removing files in ZiPatch 2024-06-29 12:43:20 -04:00
528b7789b7 Mention WIP ZiPatch writing support in README 2024-06-29 12:40:15 -04:00
c443b17d9e Support writing new files in ZiPatch
This implements parts of the AddFile operation for ZiPatch, which can
now create patches that add files. Note that ZiPatches created with
this will be abnormally huge since compression is not implemented yet.
2024-06-29 12:39:24 -04:00
9fde5472d8 Add write_data_block_patch to write patch data blocks
It's only writing uncompressed blocks at the moment, though.
2024-06-29 12:37:54 -04:00
ee5a484730 Implement BinWrite for BlockHeader 2024-06-29 12:37:14 -04:00
30ed0180ce Implement write_string, add get_string_len helper function 2024-06-29 12:36:54 -04:00
119fefc8c9 Start laying the groundwork for create_patch to create new ZiPatch files 2024-06-29 11:18:49 -04:00
51105859e5 Begin converting all existing patch structs to writable forms
This isn't complete yet of course, for future work.
2024-06-29 11:15:19 -04:00
bee7c9e3c9 Only set up SSH key on main branch 2024-06-29 10:23:42 -04:00
22c5c71f42 Fix displayed version of physis in README 2024-06-29 10:05:01 -04:00
c90a46186f Don't probe system dependencies on Windows
This should help unbreak the Astra build on Windows.
2024-06-29 09:55:08 -04:00
9e831047fc Run CI on all branches 2024-06-29 13:46:44 +00:00
237dd27bd2 Fix mtrl unwrap due to accidental commit 2024-06-29 09:33:48 -04:00
ec04c13fbd Silence more dead code warnings
This is intentional, for various reasons between binrw limitations and
code that isn't used directly in Physis.
2024-06-29 09:33:23 -04:00
444ec6e593 Bump binrw, texture2ddecoder 2024-06-28 06:16:20 -04:00
a53a7e728c Remove accidental main.rs commit, add to .gitignore 2024-06-28 06:12:30 -04:00
2e6b4d3264 Fix compilation of integration tests without the patch_testing feature 2024-06-28 06:10:50 -04:00
c4e409c04a Fix some warnings 2024-06-28 06:10:37 -04:00
926e7e2c78 Add another unknown new-from-Dawntrail texture usage magic
Saw in bg/ffxiv/fst_f1/fld/f1f3/material/f1f3_w1_mizu4a.mtrl, which is
some water material.
2024-06-28 06:06:23 -04:00
c41c160338 Fix oversight with u32 offsets used in index files API
This breaks on Dawntrail's gigantic files, but this also breaks API...
2024-06-28 05:53:42 -04:00
acb5c6a7a3 Bump version to 0.4.0 now that 0.3.0 is released 2024-06-27 23:02:54 -04:00
70fa4dc62f Bring back usage of system-deps 2024-06-27 20:40:34 -04:00
2bcbc27e53 Revert "Explicitly link to unshield library for now"
This reverts commit b7e5f914d5.
2024-06-27 20:34:46 -04:00
6bf79500b2 Revert "Try to yeet that build.rs"
This reverts commit 6700d1f3ac.
2024-06-27 20:34:40 -04:00
e507c247a1 Fix patching for Dawntrail
It was overflowing some u32, which are now u64 to prevent this from
happening.
2024-06-27 20:29:48 -04:00
2da8b9141d Improve patch test output, print errors when XIVQuickLauncher fails
After a frustrating fight match with .NET, this is useful to see why it
failed to launch and whatnot. It only prints out when the process fails
though, to prevent spam.
2024-06-27 17:29:38 -04:00
cc566bb0cc Move patch testing to its own file
Because It's so freaking big!!
2024-06-27 16:52:22 -04:00
e8e4e35cd1 Explain what environment variables are needed in test panics
It helps me to re-learn what I need here :)
2024-06-27 16:51:24 -04:00
b7e5f914d5 Explicitly link to unshield library for now
I don't think this is the right solution, but I need to unbreak some
builds now.
2024-06-27 16:51:03 -04:00
39d7a5b703 Prevent overflow when loading high resolution textures in certain code paths
With the release of Dawntrail, these are now being hit - for example loading the
expansion logo in Astra. These are now converted to usize everywhere so it
prevents this from happening.
2024-06-26 23:45:50 -04:00
6700d1f3ac Try to yeet that build.rs 2024-05-26 08:59:53 -04:00
c1dd406be4 Oops, these paths are not supposed to be absolute 2024-05-26 07:56:20 -04:00
0c105ab089 Fix my stupid programming, we need to use into_iter() 2024-05-26 07:49:55 -04:00
3d8ea7c858 Check if the user and game directories are valid 2024-05-26 07:48:41 -04:00
b87f54f924 Add functions to find existing game/user directories on disk
Not tested yet but this is something we have needed for a while
2024-05-26 07:29:40 -04:00
0509edfcfd Fix another typo in README 2024-05-25 23:52:54 -04:00