Skip to content

Releases: sk-zk/TruckLib

v0.1.2

18 Nov 16:01
Compare
Choose a tag to compare

This release supports map version 901.

TruckLib

+ Add new DLC guard values

Changes to included packages

TruckLib.Sii

* [sii+mat] Fix very large floats failing to parse
* [sii+mat] Allow floats with dot but no fractional digits, e.g. 3.
* [sii+mat] Allow space between name and indexer of array attribute name
* [sii+mat] Handle array attributes where the indexer is missing in the name of the first defined element
+ [sii] Add SiiFile.Decode for decoding 3nK/encrypted without parsing
+ [sii] Support nested @includes
+ [sii] Make closing brace of SiiNunit optional
* [mat] Allow comments in mat files

TruckLib.Models

* Ignore the material block size stated in the pmd header because there are files in the wild in which it is incorrect

TruckLib.HashFs

* Fix ExtractToFile, but really this time

v0.1.1

01 Nov 15:20
Compare
Choose a tag to compare

This release supports map version 901.

TruckLib

+ Maps and selections can now be loaded from a IFileSystem
+ Add ability to serialize a Selection
+ Add CenterOrigin method to Selection
* Fix multiple imports of a selection failing

Changes to included packages

TruckLib.Core

+ Add IFileSystem and DiskFileSystem

TruckLib.Sii

+ [sii+mat] Files can now be loaded from a IFileSystem
* [sii+mat] Fix files with byte order mark causing an exception
* [sii+mat] Allow hexadecimal ints with 0x prefix
* [sii+mat] Allow f suffix for floats
* [sii+mat] Ignore missing end quote of string attributes
* [sii+mat] Allow fixed-length arrays to exceed their stated length
* [sii+mat] Fix exception if there is no whitespace between the class name and the opening curly brace
+ [sii] Add ability to encode and decode the 3nK format
+ [sii] Add ability to decrypt encrypted SII files
+ [sii] Add ignoreMissingIncludes parameter to SiiFile methods as new overload
* [sii] Allow :: in unit class names
* [sii] Fix owner pointers starting with numbers getting parsed as floats
+ [mat] Reintroduce support for legacy materials
* [mat] Allow float4 type
* [mat] [breaking] Rename MatFile.Serialize(string path) to Save for consistency with SiiFile
* [mat] Fix serializer using the wrong tuple delimiters

TruckLib.Models

+ Models can now be loaded from byte[], a stream, or IFileSystem
+ Prefab descriptors can now be loaded from a stream or IFileSystem
* [breaking] Remove Model.Name property and require it as parameter for Model.Save instead

TruckLib.HashFs

+ Implement IFileSystem in IHashFsReader
* [v2] Fix compressed size of entries not getting read correctly if it is greater than 224-1 bytes
* [v2] Change type of PackedTobjDdsMetadata.Format to DxgiFormat
* Replace Ionic.Zlib dependency with built-in System.IO.Compression

v0.1.0

24 Oct 14:15
Compare
Choose a tag to compare

This release supports map version 901.

I've been procrastinating this for quite a while, but it's time to finally start properly versioning TruckLib and to make it available on NuGet.

For now, the version scheme will be 0.<map>.<minor>, where <map> is the supported map format version, starting with 1 for 901 and increasing by 1 for each new map format version.

The namespaces TruckLib.Sii, TruckLib.Models and TruckLib.HashFs are now separate packages which are versioned independently (because map format changes do not affect them). They are included as dependencies in the main package, but can also be used by themselves.