e725df9374
Hide compressed blocks from binrw output
2025-02-24 18:21:25 -05:00
2ce74d3177
Add TODO about none checks
2025-02-24 18:20:23 -05:00
be82857aba
Find the magical missing bytes at the end of Persistent.sav
...
Turns out there can be multiple compressed blocks in a single .sav file,
so now we read all of them.
2025-02-24 18:15:54 -05:00
153c8610c9
Check magic of compressed .sav files
2025-02-24 17:48:17 -05:00
8f55d00e24
Complete Persistent.sav parsing, fix up a ton of things
...
This is unfortunately one giant commit, but this now (partially) parses
Persistent.sav. There is still some structs and data left to parse, and
we're suspiciously missing 3KiB of data at the end. But... progress!
2025-02-24 00:30:16 -05:00
02269ecc68
Add roundtrip test for LocalProfile.sav
2025-02-23 17:04:26 -05:00
8713a48351
De-duplicate all the GUID structs, implement better debug display
...
This replaces several of the duplicate GUID-like structs, and throws
them into a struct that more closely resembles FGuid.
2025-02-23 16:14:44 -05:00
4eb1e7dd04
Remove old magic-based property enum
...
This is now replaced by the pre_assert and string-based version, which
is superior.
2025-02-23 16:03:08 -05:00
ef0f4adb6f
Replace manual string parsing/old property-magic system in Entry
2025-02-23 16:00:35 -05:00
fe2cb4e624
Remove NameProperty
...
This has the same memory layout as StringProperty, and we don't need to
duplicate the work.
2025-02-23 15:54:17 -05:00
f304304d19
Simplify string reading
...
A lot of them are just u32 length + byte string, and can be moved into
a common parsing function.
2025-02-23 15:25:50 -05:00
a4615b29ce
Remove leftover binrw debugging
2025-02-23 15:04:13 -05:00
e5b9e9150e
Remove currently unused EnumProperty
2025-02-23 15:03:32 -05:00
e92686e179
Clean up code, imports, and other misc tasks
2025-02-23 14:43:10 -05:00
9dd335f80e
Implement proper map parsing, fix array parsing
...
Finally finished and figured out how maps are handled. It didn't encode
the number of items, it's based on how many bytes you read. I also fixed
arrays so they're also correct, and we'll see if sets break.
2025-02-23 14:38:35 -05:00
aa26d2934f
Add initial files
2025-02-19 19:34:13 -05:00