* *Add top level CMakeLists.txt, to make it easier to use both independently and from within other projects
* Add a unit_test target, to attach all unit tests to
* * Fix unit tests for windows
* Silence cmake warning regarding missing top project
* update .gitignore for vscode
---------
Co-authored-by: BobSmun <6492115+BobSmun@users.noreply.github.com>
* Added: BZip3 Compression
* Fixed: Bound the SmallBlock data by parent's size
* Improved: Now uses the name 'Chunk' for block wrappers, such that the name 'block' matches with what the BZ3 API does
* Improved: Import rather than Include std::mem
* Added: Missing 'description' field in pragma
* repo-wide: trim trailing spaces
Note: This doesn't touch the .tbl files in encodings/ since they include
meaningful trailing spaces (`20= `)
* patterns: clean up duplicate semicolons
* ELF: add header magic check
* glTF: use type::Magic for magic value
* glTF: check that the file size in the header matches
* xgstexture: fix generics syntax for magic value
* JPEG: define hex enum with 0x00 instead of 0X00
* CI: update deprecated actions
---------
Co-authored-by: Nik <werwolv98@gmail.com>
* patterns: Added pattern for Blender project files
* patterns/blend: Added pattern file and test data
* patterns/blend: Fix the thumbnail bugs by passing the source data by reference
* patterns/blend: Added ZSTD support and test data
* Add Minecraft LCE save format
* Add files to the pattern
took forever lol cuz weird syntax
* NBT parsing n stuff
* Minecraft Xbox 360 Edition saves, read description
TU033 is a pre-release version, which has a slightly different file format that I documented myself [here](https://github.com/Team-Lodestone/Documentation/blob/main/LCE/Pre-Release%20Save%20Format.md)
TU5 is a release version which uses the same file format used all the way up to latest TU (aka the last version released)
All of these saves have been decompressed from XMemCompress (iirc modified LZX)
Chunk data however is still compressed, because it's not meant to be uncompressed in the scope of reading the save.
https://github.com/Team-Lodestone/Documentation/blob/main/LCE/LCE%20File%20Versions.md
* Support Pre-Release files, JANKY file type detection, min and cur version.
* fix top comment
* LCE saves to readme
* Create gltf.hexpat
Added glTF binary file pattern.
* Add a test file for the glTF pattern.
* Renamed the test file to fit the pattern file name.
* Fixed typo in documentation.
* patterns/hinf_luas: Added pattern for reading HavokScript 5.1 Bytecode from Halo Infinite
* Parses Header and Structures of the parent tag
* Reads Bytecode types and arguments
* Reads Constants and Debug Info
* Reads Referenced Tags in the File
* readme: fix relative link
* patterns/hinf_bitmap: Added pattern for parsing Halo Infinite bitmap files
* Parses the header of all Halo Infinite files which includes related "dependencies", datablocks, structure references
* Read bitmap sequence data, including bitmap index, complete index, sprite info
* Find the width/height and DDS Format of the raw texture, which can then be parsed into usable DDS textures
* Locates raw DDS block info
* Nulled out the DDS section of the bitmap
* Added pattern file for Apple’s binary property list format (bplist)
* renamed some stuff and improved error messages
* added error handling for object size special case (0x0F)
* Working on new Version
* Needs testing
* Updated CrashLvl script to support version 0.94c
* Update README.md
* Added TestData and author to script
* Delete tests/patterns/test_data/CrashLvl.hexpat.bin