Matt Nadareski
a7a622e118
Revert incorrect assumption
2026-03-26 23:14:38 -04:00
Matt Nadareski
225922e5bc
TypeHelper comment and formatting cleanup
2026-03-26 23:10:06 -04:00
Matt Nadareski
465ece5ea3
Fix namespace mixup
2026-03-26 23:07:12 -04:00
Matt Nadareski
8de1fbc52f
Reduce enum overhead in metadata
2026-03-26 22:51:14 -04:00
Matt Nadareski
29620c0c4f
Metadata code cleanup
2026-03-26 20:40:49 -04:00
Matt Nadareski
3a3b20df11
Reduce repeated lookups and reads
2026-03-26 16:52:07 -04:00
Matt Nadareski
85aefc8d90
Move required extension
2026-03-26 15:16:12 -04:00
Matt Nadareski
52ad2ff89c
Move required extension
2026-03-26 15:15:59 -04:00
Matt Nadareski
8356fc5970
Thin out ModelBackedItem wrapper class
2026-03-26 13:52:00 -04:00
HeroponRikiBestest
e61aec89ea
Use correct section size for matroschka package extraction ( #71 )
...
Not sure how it took this long for me to encounter an issue.
2026-03-26 13:40:21 -04:00
Matt Nadareski
363ffee738
AttributeHelper code was only ever used in converters
2026-03-26 11:30:40 -04:00
Matt Nadareski
ce2ddf1636
Simplify SabreTools.Metadata base namespace
2026-03-26 11:27:29 -04:00
Matt Nadareski
dd29c8245a
Slight simplification to GetDepotPath
2026-03-26 11:23:30 -04:00
Matt Nadareski
fdee2103ad
Rename GetAttribute to GetMappingAttribute to be more accurate
2026-03-26 11:17:43 -04:00
Matt Nadareski
b72fcfc60b
Fill in a couple READMEs
2026-03-26 10:58:14 -04:00
Matt Nadareski
3f6e5c2383
Migrate these internal extensions to real extensions
2026-03-26 09:34:19 -04:00
Matt Nadareski
2ae3291a30
BSP and VBSP should not share lump types
2026-03-26 09:29:32 -04:00
Matt Nadareski
c216129b37
Be more explicit about support
2026-03-26 09:05:58 -04:00
Deterous
2fdc2407dd
Extract blank directories from ISO9660 filesystem ( #70 )
2026-03-25 09:04:14 -04:00
Matt Nadareski
5205fac739
Add non-published packages to publish scripts
2026-03-24 21:20:11 -04:00
Matt Nadareski
8a51f5d8ab
Wire through already-added CRC-16 and CRC-64
2026-03-24 21:19:09 -04:00
Matt Nadareski
9c7993f8f1
Run tests and fix the rest
2026-03-24 19:42:36 -04:00
Matt Nadareski
8f49e190d8
Fix everything
2026-03-24 19:17:25 -04:00
Matt Nadareski
e11a08b587
Port metadata functionality from ST
2026-03-24 18:03:01 -04:00
Matt Nadareski
5f0fdcfd8d
Update to IO 2.0.0
2026-03-24 18:02:49 -04:00
Matt Nadareski
1053ff7f23
Add ConditionalHashEquals tests
2026-03-22 20:26:28 -04:00
Matt Nadareski
de6a08539a
Wrong filename
2026-03-22 20:22:22 -04:00
Matt Nadareski
219392e3a0
Port DictionaryBase extensions from ST
...
Notably, this is missing the equality checking because ST introduces a new type called "ModelBackedItem", which is specifically a type backed by a DictionaryBase item, with extensions. It is very similar to a Wrapper, but has different common utility. If there is a way to migrate that here, then the equality methods can come here as well.
2026-03-22 20:22:04 -04:00
Matt Nadareski
2ade7495c7
This will be public anyway
2026-03-22 02:44:12 -04:00
Matt Nadareski
1acd448838
Make validation methods public
2026-03-22 02:05:43 -04:00
Matt Nadareski
a8ed7a38f8
Fix issue with 3DS key assignment
2026-03-22 01:58:11 -04:00
Matt Nadareski
5208fc3e33
Add removal comment
2026-03-22 01:53:40 -04:00
Matt Nadareski
3dfbd23867
Pass in fixed crypto key flag as bool
2026-03-22 01:52:26 -04:00
Matt Nadareski
994a366770
Put initial value generators in common region
2026-03-22 01:35:36 -04:00
Matt Nadareski
d1b061fac5
Port 3DS decrypt/encrypt in a functional manner
2026-03-22 01:34:36 -04:00
Matt Nadareski
6e73c93c89
Port PartitionKeys class from NDecrypt
2026-03-22 01:10:39 -04:00
Matt Nadareski
5544ab0b8a
Add majority of data extensions tests, fix minor issues
2026-03-21 20:09:10 -04:00
Matt Nadareski
8bec2087eb
Add removal note
2026-03-21 17:55:14 -04:00
Matt Nadareski
50e27f926d
Use separate libraries as references in executables
2026-03-21 16:41:09 -04:00
Matt Nadareski
ecc88316bd
Nicer readme linking
2026-03-21 16:34:52 -04:00
Matt Nadareski
7689c6dd07
Libraries
...
This change looks dramatic, but it's just separating out the already-split namespaces into separate top-level folders. In theory, every single one could be built into their own Nuget package. `SabreTools.Serialization` still builds the normal Nuget package that is used by all other projects and includes all namespaces.
2026-03-21 16:26:56 -04:00
Matt Nadareski
bec0aeb04c
Another size read mismatch in IRD
2026-03-20 22:09:07 -04:00
Matt Nadareski
2f8ee5545e
IRD game title is UTF-8
2026-03-20 22:07:35 -04:00
Matt Nadareski
015ad062ac
Prefix sizes were being read incorrectly for IRD parsing
2026-03-20 22:01:13 -04:00
Matt Nadareski
ae6608e2a7
Allow GCF checksum header to have dummy0 value of 0 ( fixes #69 )
2026-03-19 16:18:24 -04:00
Matt Nadareski
ca78898e93
Move wrapper factory file after namespace change
2026-03-18 22:17:07 -04:00
Matt Nadareski
a6ee92da32
Fix build
2026-03-18 17:27:06 -04:00
Matt Nadareski
b2eb0b5e67
Extensions classes should be named as such
2026-03-18 17:15:03 -04:00
Matt Nadareski
685fadbfdf
Move wrapper utility classes into Wrappers namespace
2026-03-18 16:55:48 -04:00
Matt Nadareski
638934e6b0
Attributes should live in the Models namespace where it's used
2026-03-18 16:49:14 -04:00