Skip to content

Releases: Norbyte/lslib

Release v1.15.0

11 Oct 10:09
Compare
Choose a tag to compare
  • Added support for Baldur's Gate 3

Release v1.14.2

26 Apr 10:32
Compare
Choose a tag to compare
  • Add Osiris Extender support to story compiler
  • Allow setting package priority during compression
  • GR2: Compatibility support for files reporting as UInt8 (thx @thunderysteak )
  • Improve validation of ExtraProperties in stat checker
  • Fix field values on the UI randomly being reverted
  • Fix cli error when no filter expression is specified
  • Fix handling of package compression flags in cli
  • Fix for a null exception when not using regex
  • Fix package load order when checking for compilable resources

Release v1.14.1

30 Sep 18:14
Compare
Choose a tag to compare
  • GR2: Fix incorrect rotation interpolation that caused 360° flips in animations
  • GR2: Use a small default OBB; this prevents phyics issues in D:OS like the inability to stack items
  • GR2: Fix missing scale/shear keyframes during curve cleanup
  • GR2: Disable animation key removal by default; D:OS doesn't support transform tracks with missing knot values
  • GR2: Fix conform option for meshes with no bone bindings
  • GR2: Fix some minor GR2 format differences
  • Fix handling of empty variable remap indices
  • Add support for older story versions

Release v1.14.0

30 Jul 19:40
Compare
Choose a tag to compare

Important Changes:

  • Add savegame dump feature; this allows exporting loaded mods, story databases, behavior globals and per-item/per-character behavior variables
  • Fix glitches in animations exported to GR2

Less Important Changes:

  • General: Added functionality to syntax check & validate stat .txt files (Stats/Generated/Data/*.txt)
  • GR2: Disable animation key removal by default; D:OS doesn't support transform tracks with missing knot values
  • GR2: Fix incorrect quaternion dot product computation that caused abrupt 360° rotations in animations
  • GR2: Fix missing scale/shear keyframes; this could cause runaway interpolated scale values during animation

Release v1.13.0

07 Jun 18:26
Compare
Choose a tag to compare
  • Removed useless exporter options
  • Allow importing animations without a skeleton
  • Remove leftover debug code
  • Allow selecting objects to export
  • Improve handling of multiple D:OS 2 model flags
  • Added a command line option for ignoring bad UVs (mainly for testing)
  • Fix for models not being exported if they lack meshes
  • Temp/hacky fix for animation track -> skeleton name mismatch (Dummy_Foot vs Dummy_Foot_01)
  • Apply parent node transforms to armature when importing from Collada
  • Fixed loading of models with over 32767 vertices

Release v1.12.4

07 Jun 18:21
Compare
Choose a tag to compare

General:

  • Last used exporter UI settings will now be loaded upon restart
  • Fix unserialization of empty (0 region) LSF files
  • Add extract file and list package cli commands
  • Package extraction/compression will not take an exclusive file lock anymore

Compiler:

  • Properly dispose packaged files during compilation
  • Use a package blacklist instead of a whitelist to maintain support for future updates
  • Create mod entry when loading metadata; previously mods without story files would not be recognized as loaded dependencies
  • Use a dynamic number of propagation passes (perforance optimization)

GR2:

  • Added model x-flip command-line argument
  • Make skeleton y-up transforms optional
  • Automatically determine input/output file type based on filename (CLI)
  • Normalize bone weights on Collada import; previously weights had to be normalized before Collada export
  • Use alternate GR2 signature for D:OS 2

Release v1.12.3

07 Jun 18:13
Compare
Choose a tag to compare

General:

  • Add support for pathnames longer than 248 characters
  • Emit unresolved object warnings for untyped UUIDs; previously these objects would not be reported
  • Throw compiler error on unknown variable types
  • Use proper type names in compiler error messages instead of internal names

GR2 Exporter:

  • Only allow at most 127 bound bones (this is the maximum that D:OS 2 supports)
  • Allow specifying model type in DAE extra technique instead of passing it as an exporter parameter / entering it manually via the GUI
  • Improved support for D:OS LSMv1 vertex attributes
  • Fix UserDefinedProperties export of cloth models
  • Add support for MeshProxy export
  • Detect and report vertices with overlapping UVs that cause incorrect tangent calculations

v1.12.2

07 Jun 18:05
Compare
Choose a tag to compare

New Features in v1.12.2:

  • Cloth model export
    • A color channel must be exported to the DAE file for all meshes that should have cloth-like behavior
    • When exporting to GR2, the "Cloth" setting should be selected in "Extra Properties"
  • MeshProxy model export
    • No additional settings are needed during DAE export
    • When exporting to GR2, the "MeshProxy" setting should be selected in "Extra Properties"
  • Full support for reading/writing LSM files; the new format reduces GR2/LSM file size by up to ~50%
  • Support for multiple UV and color sets

Important changes:

  • [!!!] Fix batch export settings: Previously the batch export feature ignored GR2 export settings; as a result the generated files used a different GR2 version and vertex format
  • Fix QTangent serialization; this caused models exported for D:OS 2 to have incorrect shading because of bad normals/tangents. (Affects versions v1.12.0 and v1.12.1)

Misc fixes:

  • Fix import of Collada files where normals/tangents/binormals have a separate input offset. Previously normals were not imported from these files
  • Duplicate vertices are now merged automatically on export; while this caused no visual artifacts, it somewhat degraded rendering performance and made vertex editing inconvenient
  • Fix LSMv1 metadata serialization; cloth and rigid meshes are now properly recognized by the editor
  • Fix export of color values from D:OS 2 GR2 files
  • Fix export of 1-frame animation tracks
  • Fix language-dependent animation track sorting. If certain characters were sorted differently in the user's language, GR2 export resulted in a broken animation.