Releases: Laupetin/OpenAssetTools
v0.29.0
What's Changed
Features
- feat: IW3 xanim dumping/loading in CoD4 Mod Tools raw binary format by @michaeloliverx in #768
- feat: add binary xanim support for remaining games by @Laupetin in #818
- feat: initial T4 support by @michaeloliverx in #807
Fixes
- fix: t6 must use two separate structs for quat indices by @Laupetin in #824
- fix: various wrong alignment values by @Laupetin in #823
- fix: normalizing asset names trims whitespace by @Laupetin in #825
Other
- chore: move package json to root by @Laupetin in #813
- chore: linting in separate ci step by @Laupetin in #814
Full Changelog: v0.28.0...v0.29.0
v0.28.0
What's Changed
- feat: iw3 techsets by @Laupetin in #712
- feat: t5 techset compiling by @Laupetin in #713
- feat: more detailed logs about what is being loaded by @Laupetin in #714
- feat: add techset dumping and loading for iw5 by @Laupetin in #716
- chore: add unit tests for techset dumping and compilation for all remaining games by @Laupetin in #722
- refactor: use std::expected instead of custom implementation by @Laupetin in #731
- chore: set npm min-release-age by @Laupetin in #726
- fix: bad image external loading condition for t6 by @Laupetin in #740
- fix: ordered json extensions by @Laupetin in #746
- chore: configure 3 days cooldown for dependabot by @Laupetin in #747
- docs: update vs version in README from 2022 to 2026 by @Laupetin in #748
- chore: update npm dependencies by @Laupetin in #751
- Add IW3 PhysPreset dump logic by @pagingred in #744
- fix: IW3 ensure
XModel::surfsis set in loader by @michaeloliverx in #761 - Fix doc to show IW3 PhysPreset dumping is supported by @pagingred in #762
- fix: remove deprecated '>type,type' zone definition from examples by @michaeloliverx in #777
- feat: add asset source description to loading logs by @michaeloliverx in #759
- fix: xmodel glTF dumps dropping
COLOR_0vertex attributes by @michaeloliverx in #760 - refactor(zcg): use wordsize instead of architecture by @michaeloliverx in #769
- fix: incomplete iw3 part classification by @Laupetin in #780
- feat: phys presets dumping and loading for IW3, IW5, T5 by @pagingred in #753
- Add IW3 & IW5 SndCurve Dumping & Loading Logic by @pagingred in #766
- refactor: adjust asset type names for light def by @Laupetin in #787
- fix: omitting default armature causes problems by @Laupetin in #781
- fix: iw4 physpreset clamping by @Laupetin in #788
- fix: xmodels with more than one root bone are not linkable by @Laupetin in #752
- fix: being able to generate solution without git submodules on windows by @Laupetin in #791
- feat: ipak dumping without ff by @Laupetin in #797
- fix(unlinker): respect
--minimal-zoneCLI arg by @michaeloliverx in #801 - feat: add lightdef dumping and loading for all games by @pagingred in #778
- fix: invalid formats when dumping images as iwi by @Laupetin in #806
- feat: xmodel collision tree by @Laupetin in #790
New Contributors
- @pagingred made their first contribution in #744
Full Changelog: v0.27.0...v0.28.0
v0.27.0
What's Changed
- feat: image feature parity for games by @Laupetin in #641
- refactor: zcg template asset marker by @Laupetin in #642
- feat: dump t5 techsets and techniques by @Laupetin in #649
- feat: x64 zone writing by @Laupetin in #648
- Allow game parameter to be set in ImageConverter by @meowica in #657
- chore: upgrade premake to 5.0.0-beta8 by @Laupetin in #664
- chore: update gcc to 14 by @Laupetin in #665
- ci: add clang compilation by @Laupetin in #666
- refactor: game asset type names by @Laupetin in #672
- refactor: introduce subasset loading by @Laupetin in #674
- chore: use VS2026 when compiling on Windows by @Laupetin in #673
- chore: streamline game hashing functions by @Laupetin in #691
- chore: update package lock by @Laupetin in #699
- feat: t6 techset and technique loading by @Laupetin in #692
- chore: do not write templated output if up to date by @Laupetin in #700
- refactor: remove old c++ version class utils macros by @Laupetin in #701
- fix: do not spam zcg executions when building on linux by @Laupetin in #702
- feat: techsets for iw4 by @Laupetin in #707
- fix: iw4 map dirty rebuild by @Laupetin in #711
New Contributors
- @meowica made their first contribution in #657
Full Changelog: v0.26.1...v0.27.0
v0.26.1
What's Changed
- fix(parser): macros only parse parameters if define specified them by @Laupetin in #638
- fix: use ZoneCode in all projects that may include its headers by @Laupetin in #639
- fix: do not try to add indirect asset references without name by @Laupetin in #640
Full Changelog: v0.26.0...v0.26.1
v0.26.0
What's Changed
- chore: compile modman on linux x86 by @Laupetin in #590
- fix: only show console color when supported by @Laupetin in #597
- feat: dump iw3 xbox unsigned fastfile data by @michaeloliverx in #611
- feat: dump iw3 xbox signed fastfile data by @michaeloliverx in #614
- Update ModMan lock and update npm security config by @Laupetin in #615
- feat: dump techsets for t6 by @Laupetin in #612
- fix: always writing rigid models as animated by @Laupetin in #617
- fix: fix wrong asset name for iw4 clipmap asset by @Laupetin in #618
- chore: fix compilation error on linux for techniqueset debug mode by @Laupetin in #620
- feat: dump iw4 xbox fastfile data by @michaeloliverx in #616
- feat: dump iw4 alpha 482 xbox fastfile data by @michaeloliverx in #625
- fix: asset references in global assets by @Laupetin in #619
- docs: update supported asset types by @Laupetin in #628
New Contributors
- @michaeloliverx made their first contribution in #611
Full Changelog: v0.25.0...v0.26.0
v0.25.0
What's Changed
- chore: make version be added via premake option by @Laupetin in #516
- refactor: centralized logging and console color by @Laupetin in #517
- chore: add initial technical demonstration for ModMan by @Laupetin in #533
- feat: add modman to the build-test ci by @Laupetin in #535
- feat: dialog binds for ModMan by @Laupetin in #534
- feat: modman unlinking by @Laupetin in #540
- feat: modman progressbar by @Laupetin in #541
- feat: add icon for modman by @Laupetin in #542
- feat: modman zone details by @Laupetin in #559
- feat: modman icon and title by @Laupetin in #568
- feat: include user files in iwd by @Laupetin in #583
- feat: add additional dds fourCC values for bc4 and bc5 by @Laupetin in #584
Full Changelog: v0.24.1...v0.25.0
v0.24.1
v0.24.0
Changes to XModel bone rotations
Previously exported GLTF/GLB files used wrong formulas to calculate bone rotations.
This resulted in bones of models that were using non-zero values for rotations to be wrong.
While OAT did correct this error again when loading GLTF/GLB files, importing any model that was not dumped by OAT resulted in strange results ingame.
To correct for this, the rotation formulas were corrected and the current xmodel version (the _version key of xmodel .json files) was increased to 2.
Any gltf/glb model loaded from an xmodel .json with version 1 will still apply the old behaviour for backwards compatibility.
When dumping xmodels, only version 2 results will be created however.
I hope this fixes some problems that were previously experienced by modders trying to create custom models.
What's Changed
- feat: T6 FontIcon json by @Laupetin in #478
- refactor: streamlining of loader and dumper layout, namespaces by @Laupetin in #488
- refactor: only refer to game id in zone by @Laupetin in #507
- feat: dump t6 xbox fastfile data by @Laupetin in #500
- fix: linux version by @Laupetin in #514
- fix: bad gltf math by @Laupetin in #493
Full Changelog: v0.23.0...v0.24.0
v0.23.0
v0.22.0
Details
Materials
Material dumping and loading is now supported for all supported games (IW3,IW4,IW5,T5,T6)!
It uses a json based format like it previously did for T6 and IW5 already.
The format is currently heavily based on the internal structure of the compiled materials and is not yet as fully featured as the official modding tools material compilation pipeline.
All materials (including the ones that already existed previously) now include a $schema key, which enables auto-completion and validation for material json files in a lot of IDEs including for example VSCode (without installing any addon).
x64 Support
Unlinker has been updated to support dumping fastfiles of x86 games when compiled as x64.
This does not provide any benefit yet, it is however a big stepping stone for further support and moving OAT to x64 entirely.
What's Changed
- refactor: load iw4 x86 fastfiles in x64 environment by @Laupetin in #445
- fix: x86 ff loading broken due to x64 updates by @Laupetin in #458
- refactor: x64 loading for remaining games by @Laupetin in #459
- refactor: add templated material json loading for iw4 by @Laupetin in #460
- feat: add templated json material loading/dumping for IW3 and T5 by @Laupetin in #464
Full Changelog: v0.21.2...v0.22.0