2
0
mirror of https://github.com/Laupetin/OpenAssetTools.git synced 2026-06-26 10:58:04 +00:00
Commit Graph

3271 Commits

Author SHA1 Message Date
Jan 255c424aac fix: t6 modman textures (#849)
* feat: dynamically decompress bc5 textures for modman

* chore: restructure image format class

* chore: keep dds file conversions

* chore: convert all kinds of webgl unsupported formats

* chore: add decompressors for remaining formats

* chore: always set full alpha if available on bc4 and bc5 decompression
2026-06-22 07:02:35 +02:00
Jan 087ce0c208 feat: unlinker auto paths (#848)
* chore: extract shared search paths code from modman

* feat: automatically detect search paths for game directories

* chore: adjust log levels for loading and unload search paths

* fix: move iwd to obj common
2026-06-20 20:35:47 +02:00
Jan b4477ac1a9 refactor: accuracy graph subassets (#847)
* refactor: use subassets to load accuracy graphs for iw4,iw5,t5,t6

* fix: not dumping anim names for t5 weapons and t6 attachment unique

* refactor: dump accuracy graphs like a subasset

* refactor: use shared method for accuracy graph filenames
2026-06-20 17:16:37 +02:00
Jan b5acacf680 fix: weapon anims indirect assets (#846)
* fix: t6 attachment unique not considering xanims indirect references

* fix: consider t5 weapon anims indirect references to anim assets
2026-06-20 15:15:32 +02:00
Jan c84e3076f1 feat: t6 flametables (#845)
* feat: add flametable loading and dumping for T6

* chore: add additional validation logic of game for t6 weapon loading
2026-06-20 11:50:43 +00:00
Paging Red 5b11848f4d feat: T5 weapon dumping & loading (#792)
* Update docs.

* Add weapon constants.

* Register asset dumper.

* Add fields and strings for weapon parsing.

* Add gdt and raw weapon loader.

* Add weapon dumper.

* Clang format.

* Update T5 strings.

* Fix forgotten rename.

* Clang format.

* fix: add missing t5 weapon fields

* chore: properly sort,format and check size of t5 weapon enum strings

* chore: remove unused functions

* chore: add t5 weapon checks and defaults

* format enum strings

* chore: make FlameTable struct use pascal case name

* feat: dump and load flametable

* fix: make loaded weapons match vanilla data

---------

Co-authored-by: njohnson <gitea.nicholasjohnson.info>
Co-authored-by: Jan Laupetin <jan@laupetin.net>
2026-06-20 13:03:36 +02:00
dependabot[bot] e5683c3bbd chore(deps): bump the modman-dependencies group in /src/ModManUi with 9 updates (#840)
* chore(deps): bump the modman-dependencies group

Bumps the modman-dependencies group in /src/ModManUi with 9 updates:

| Package | From | To |
| --- | --- | --- |
| [vue](https://github.com/vuejs/core) | `3.5.35` | `3.5.38` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.9.2` | `25.9.3` |
| [@vitest/eslint-plugin](https://github.com/vitest-dev/eslint-plugin-vitest) | `1.6.19` | `1.6.20` |
| [eslint](https://github.com/eslint/eslint) | `10.4.1` | `10.5.0` |
| [npm-run-all2](https://github.com/bcomnes/npm-run-all2) | `9.0.1` | `9.0.2` |
| [sass](https://github.com/sass/dart-sass) | `1.100.0` | `1.101.0` |
| [vite-plugin-vue-devtools](https://github.com/vuejs/devtools/tree/HEAD/packages/vite) | `8.1.2` | `8.1.3` |
| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.8` | `4.1.9` |
| [vue-tsc](https://github.com/vuejs/language-tools/tree/HEAD/packages/tsc) | `3.3.4` | `3.3.5` |


Updates `vue` from 3.5.35 to 3.5.38
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/compare/v3.5.35...v3.5.38)

Updates `@types/node` from 25.9.2 to 25.9.3
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `@vitest/eslint-plugin` from 1.6.19 to 1.6.20
- [Release notes](https://github.com/vitest-dev/eslint-plugin-vitest/releases)
- [Commits](https://github.com/vitest-dev/eslint-plugin-vitest/compare/v1.6.19...v1.6.20)

Updates `eslint` from 10.4.1 to 10.5.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](https://github.com/eslint/eslint/compare/v10.4.1...v10.5.0)

Updates `npm-run-all2` from 9.0.1 to 9.0.2
- [Release notes](https://github.com/bcomnes/npm-run-all2/releases)
- [Changelog](https://github.com/bcomnes/npm-run-all2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bcomnes/npm-run-all2/compare/v9.0.1...v9.0.2)

Updates `sass` from 1.100.0 to 1.101.0
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.100.0...1.101.0)

Updates `vite-plugin-vue-devtools` from 8.1.2 to 8.1.3
- [Release notes](https://github.com/vuejs/devtools/releases)
- [Commits](https://github.com/vuejs/devtools/commits/v8.1.3/packages/vite)

Updates `vitest` from 4.1.8 to 4.1.9
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Changelog](https://github.com/vitest-dev/vitest/blob/main/docs/releases.md)
- [Commits](https://github.com/vitest-dev/vitest/commits/v4.1.9/packages/vitest)

Updates `vue-tsc` from 3.3.4 to 3.3.5
- [Release notes](https://github.com/vuejs/language-tools/releases)
- [Changelog](https://github.com/vuejs/language-tools/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/language-tools/commits/v3.3.5/packages/tsc)

---
updated-dependencies:
- dependency-name: vue
  dependency-version: 3.5.38
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: "@types/node"
  dependency-version: 25.9.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: "@vitest/eslint-plugin"
  dependency-version: 1.6.20
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: eslint
  dependency-version: 10.5.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: modman-dependencies
- dependency-name: npm-run-all2
  dependency-version: 9.0.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: sass
  dependency-version: 1.101.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: modman-dependencies
- dependency-name: vite-plugin-vue-devtools
  dependency-version: 8.1.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: vitest
  dependency-version: 4.1.9
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: vue-tsc
  dependency-version: 3.3.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore: update package lock

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jan Laupetin <jan@laupetin.net>
2026-06-20 08:14:26 +00:00
dependabot[bot] 3382d17f31 chore(deps): bump actions/checkout from 6 to 6.0.3 (#839)
Bumps [actions/checkout](https://github.com/actions/checkout) from 6 to 6.0.3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v6...v6.0.3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-20 08:48:57 +02:00
dependabot[bot] 808ee30dd9 chore(deps): bump thirdparty/catch2 from 6ee0826 to bcfb10e (#838)
Bumps [thirdparty/catch2](https://github.com/catchorg/Catch2) from `6ee0826` to `bcfb10e`.
- [Release notes](https://github.com/catchorg/Catch2/releases)
- [Commits](https://github.com/catchorg/Catch2/compare/6ee0826dcae55ed1e06b2c5701981221e979e1e6...bcfb10e498df3e2ed8f814b3e4b689b9a85608ab)

---
updated-dependencies:
- dependency-name: thirdparty/catch2
  dependency-version: bcfb10e498df3e2ed8f814b3e4b689b9a85608ab
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-20 08:48:37 +02:00
dependabot[bot] 37a37b6019 chore(deps): bump thirdparty/eigen from f7a1c99 to 7bd9869 (#837)
Bumps [thirdparty/eigen](https://gitlab.com/libeigen/eigen) from `f7a1c99` to `7bd9869`.
- [Release notes](https://gitlab.com/libeigen/eigen/tags)
- [Commits](https://gitlab.com/libeigen/eigen/compare/f7a1c99acb6d9cd25c60f2fd709b5594e3dfd5c6...7bd98698c58e4f0d2f30c3fa8fc5adf6ec185df4)

---
updated-dependencies:
- dependency-name: thirdparty/eigen
  dependency-version: 7bd98698c58e4f0d2f30c3fa8fc5adf6ec185df4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-20 08:48:17 +02:00
dependabot[bot] 87d322e4f1 chore(deps): bump thirdparty/json from e4bdf1b to a5f8e23 (#836)
Bumps [thirdparty/json](https://github.com/nlohmann/json) from `e4bdf1b` to `a5f8e23`.
- [Release notes](https://github.com/nlohmann/json/releases)
- [Commits](https://github.com/nlohmann/json/compare/e4bdf1be72353316b8e209111aa4d946e2aefc19...a5f8e230ac5afc2506dfbebdb8fff8ef555228de)

---
updated-dependencies:
- dependency-name: thirdparty/json
  dependency-version: a5f8e230ac5afc2506dfbebdb8fff8ef555228de
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-20 08:47:56 +02:00
Jan 85aa7417c4 feat: xmodel preview in ModMan (#835)
* chore: upgrade webwindowed for dynamic assets

* chore: make enums in ModMan lowercase

* chore: add missing platform wiiu in ModMan

* fix: register asset handler on all windows

* chore: properly localize game and platform

* chore: render example cube as xmodel preview

* chore: allow origin * in debug

* feat: show preview of xmodels with ModMan

* feat: show images in xmodel preview

* feat: auto load search paths in ModMan

* chore: load objcontainer of loaded zones in ModMan

* chore: add iw4x specific recognized zone dirs

* chore: show when models are loading

* fix: make sure webwindowed handles window and app destruction in correct order

* chore: track and properly free threejs resources

* chore: add skybox for 3d preview

* chore: add small border radius to preview

* fix: linting

* fix: linux compilation

* chore: update package lock
2026-06-18 18:52:52 +02:00
Jan 4fd164ee33 refactor: use webwindowed-api package (#833) v0.29.1 2026-06-16 13:17:08 +02:00
Ash 040826b1f3 Add dumping support for PS3, Wii U and Xenon server fast files (#826)
Co-authored-by: hindercanrun <109132519+meowica@users.noreply.github.com>
2026-06-16 10:45:03 +02:00
Jan 8dba13f913 refactor: use new webwindowed api (#831)
* chore: update webview with new api

* chore: update modman to use new webview api

* chore: use title handler plugin from webview lib

* chore: use favicon plugin from webview lib

* chore: use vite-plugin-cpp-header from webview repo

* chore: use asset handler from webview lib

* chore: make webview utility

* chore: rename webview to webwindowed

* chore: Rename code usages to webwindowed
2026-06-16 09:50:34 +02:00
Jan b2aa4749c1 fix: no support for gltf using vec3 for vertex colors (#832)
* fix: gltf loder not supporting vec3 for color info

* fix: collision tree creator accessing invalid index via array accessor
2026-06-15 19:58:40 +02:00
Ash 19cb9db3d7 docs: adjust xanim support for iw4,iw5,t5,t6
Co-authored-by: hindercanrun <109132519+meowica@users.noreply.github.com>
2026-06-13 07:26:02 +02:00
dependabot[bot] 5ccae486fe chore(deps-dev): bump the modman-dependencies group (#830)
Bumps the modman-dependencies group in /src/ModManUi with 6 updates:

| Package | From | To |
| --- | --- | --- |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.9.1` | `25.9.2` |
| [@vue/eslint-config-typescript](https://github.com/vuejs/eslint-config-typescript) | `14.7.0` | `14.8.0` |
| [@vue/test-utils](https://github.com/vuejs/test-utils) | `2.4.10` | `2.4.11` |
| [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) | `10.9.1` | `10.9.2` |
| [prettier](https://github.com/prettier/prettier) | `3.8.3` | `3.8.4` |
| [vue-tsc](https://github.com/vuejs/language-tools/tree/HEAD/packages/tsc) | `3.3.3` | `3.3.4` |


Updates `@types/node` from 25.9.1 to 25.9.2
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `@vue/eslint-config-typescript` from 14.7.0 to 14.8.0
- [Release notes](https://github.com/vuejs/eslint-config-typescript/releases)
- [Commits](https://github.com/vuejs/eslint-config-typescript/compare/v14.7.0...v14.8.0)

Updates `@vue/test-utils` from 2.4.10 to 2.4.11
- [Release notes](https://github.com/vuejs/test-utils/releases)
- [Commits](https://github.com/vuejs/test-utils/compare/v2.4.10...v2.4.11)

Updates `eslint-plugin-vue` from 10.9.1 to 10.9.2
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Changelog](https://github.com/vuejs/eslint-plugin-vue/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v10.9.1...v10.9.2)

Updates `prettier` from 3.8.3 to 3.8.4
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.8.3...3.8.4)

Updates `vue-tsc` from 3.3.3 to 3.3.4
- [Release notes](https://github.com/vuejs/language-tools/releases)
- [Changelog](https://github.com/vuejs/language-tools/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/language-tools/commits/v3.3.4/packages/tsc)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 25.9.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: "@vue/eslint-config-typescript"
  dependency-version: 14.8.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: modman-dependencies
- dependency-name: "@vue/test-utils"
  dependency-version: 2.4.11
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: eslint-plugin-vue
  dependency-version: 10.9.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: prettier
  dependency-version: 3.8.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: vue-tsc
  dependency-version: 3.3.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-13 07:09:21 +02:00
dependabot[bot] 4e622e3ebb chore(deps): bump thirdparty/eigen from dbf8cb6 to f7a1c99 (#829)
Bumps [thirdparty/eigen](https://gitlab.com/libeigen/eigen) from `dbf8cb6` to `f7a1c99`.
- [Release notes](https://gitlab.com/libeigen/eigen/tags)
- [Commits](https://gitlab.com/libeigen/eigen/compare/dbf8cb6151f3c654096bad91c05543e5b6f03db5...f7a1c99acb6d9cd25c60f2fd709b5594e3dfd5c6)

---
updated-dependencies:
- dependency-name: thirdparty/eigen
  dependency-version: f7a1c99acb6d9cd25c60f2fd709b5594e3dfd5c6
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-13 07:08:58 +02:00
dependabot[bot] c88df30ac3 chore(deps): bump thirdparty/json from d10879b to e4bdf1b (#828)
Bumps [thirdparty/json](https://github.com/nlohmann/json) from `d10879b` to `e4bdf1b`.
- [Release notes](https://github.com/nlohmann/json/releases)
- [Commits](https://github.com/nlohmann/json/compare/d10879bca8f0aa790105446075a9525b34a3f718...e4bdf1be72353316b8e209111aa4d946e2aefc19)

---
updated-dependencies:
- dependency-name: thirdparty/json
  dependency-version: e4bdf1be72353316b8e209111aa4d946e2aefc19
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-13 07:08:27 +02:00
mo 44d6710991 feat: initial T4 support (#807)
* feat: initial T4 support

* chore: adjust t4 symbols a bit for accuracy

* chore: add PackIndex asset to T4

* chore: remove unused AssetXModelPieces

* chore: add default and global asset pools loader for T4

* chore: use separate defines for T4 in ImageDumper

* chore: remove unnecessary namespaces in gfximage_actions

* chore: small things

* chore: fix T4 PhysPreset type

* chore: use proper XQuat2 type for T4 xanims

* chore: fix errors on T4 types

* chore: use iw3 like struct for XModelStreamInfo

* docs: add basic docs for T4

* chore: add basic ObjCompiler setup for T4

* chore: adjust loaded sound definition

* chore: make sure t4 material has the correct alignment

* chore: make sure t4 uses similar names for assets as other games

* fix: asset references should not be reusable

* chore: add content writer for t4

* feat: add t4 localize loader

* chore: reorder game ids to be alphabetically ordered

---------

Co-authored-by: Jan Laupetin <jan@laupetin.net>
v0.29.0
2026-06-07 14:06:33 +02:00
Jan 04628fc52c fix: normalizing asset names trims whitespace (#825) 2026-06-07 11:31:33 +00:00
Jan ab7d8f5670 fix: various wrong alignment values (#823)
* fix: alignment mistakes on various games

* chore: reduce overhead of zcg definition with members fields

* fix: make sure Material alloc alignment is 4
2026-06-07 01:14:37 +00:00
Jan 036b27568c fix: t6 must use two separate structs for quat indices (#824)
Otherwise arraysize cannot be adjusted from appropriate parent struct
2026-06-07 00:37:16 +00:00
Jan 0d0f928267 feat: add binary xanim support for remaining games (#818)
* refactor: use generic loader for iw3 xanims

* refactor: use generic dumper for iw3 xanims

* chore: use templating on XAnimDumper

* chore: use templating on XAnimLoader

* feat: dump xanims for T5

* feat: load binary t5 xanims

* feat: load and dump t6 xanims

* feat: load and dump iw4,iw5 xanims

* chore: make sure iw3 and t5 notify about unsupported delta3D

* chore: also use CommonVec3U8 and CommonVec3U16 for non delta trans track
2026-06-06 14:47:51 +00:00
dependabot[bot] e8d84c6d4d chore(deps): bump the modman-dependencies group (#821)
Bumps the modman-dependencies group in /src/ModManUi with 7 updates:

| Package | From | To |
| --- | --- | --- |
| [vue](https://github.com/vuejs/core) | `3.5.34` | `3.5.35` |
| [vue-router](https://github.com/vuejs/router) | `5.0.7` | `5.1.0` |
| [@vitest/eslint-plugin](https://github.com/vitest-dev/eslint-plugin-vitest) | `1.6.18` | `1.6.19` |
| [eslint](https://github.com/eslint/eslint) | `10.4.0` | `10.4.1` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `8.0.14` | `8.0.16` |
| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.7` | `4.1.8` |
| [vue-tsc](https://github.com/vuejs/language-tools/tree/HEAD/packages/tsc) | `3.3.2` | `3.3.3` |

Updates `vue` from 3.5.34 to 3.5.35
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/compare/v3.5.34...v3.5.35)

Updates `vue-router` from 5.0.7 to 5.1.0
- [Release notes](https://github.com/vuejs/router/releases)
- [Commits](https://github.com/vuejs/router/compare/v5.0.7...v5.1.0)

Updates `@vitest/eslint-plugin` from 1.6.18 to 1.6.19
- [Release notes](https://github.com/vitest-dev/eslint-plugin-vitest/releases)
- [Commits](https://github.com/vitest-dev/eslint-plugin-vitest/compare/v1.6.18...v1.6.19)

Updates `eslint` from 10.4.0 to 10.4.1
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](https://github.com/eslint/eslint/compare/v10.4.0...v10.4.1)

Updates `vite` from 8.0.14 to 8.0.16
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v8.0.16/packages/vite)

Updates `vitest` from 4.1.7 to 4.1.8
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Changelog](https://github.com/vitest-dev/vitest/blob/main/docs/releases.md)
- [Commits](https://github.com/vitest-dev/vitest/commits/v4.1.8/packages/vitest)

Updates `vue-tsc` from 3.3.2 to 3.3.3
- [Release notes](https://github.com/vuejs/language-tools/releases)
- [Changelog](https://github.com/vuejs/language-tools/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/language-tools/commits/v3.3.3/packages/tsc)

---
updated-dependencies:
- dependency-name: vue
  dependency-version: 3.5.35
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: vue-router
  dependency-version: 5.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: modman-dependencies
- dependency-name: "@vitest/eslint-plugin"
  dependency-version: 1.6.19
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: eslint
  dependency-version: 10.4.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: vite
  dependency-version: 8.0.16
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: vitest
  dependency-version: 4.1.8
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: vue-tsc
  dependency-version: 3.3.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-06 11:31:47 +00:00
dependabot[bot] 7ef92d9c2e chore(deps): bump thirdparty/lz4 from 1b0fc69 to 0774d05 (#820)
Bumps [thirdparty/lz4](https://github.com/lz4/lz4) from `1b0fc69` to `0774d05`.
- [Release notes](https://github.com/lz4/lz4/releases)
- [Commits](https://github.com/lz4/lz4/compare/1b0fc692949cf474eb0d89db5f0dfa3698e9aa56...0774d05537f9762f838f7ab541b7765f1a729cb5)

---
updated-dependencies:
- dependency-name: thirdparty/lz4
  dependency-version: 0774d05537f9762f838f7ab541b7765f1a729cb5
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-06 08:28:46 +02:00
dependabot[bot] 4866f3a738 chore(deps): bump thirdparty/eigen from fc0f148 to dbf8cb6 (#819)
Bumps [thirdparty/eigen](https://gitlab.com/libeigen/eigen) from `fc0f148` to `dbf8cb6`.
- [Release notes](https://gitlab.com/libeigen/eigen/tags)
- [Commits](https://gitlab.com/libeigen/eigen/compare/fc0f148ab491bf36378c5d527d8f6669ccf21b07...dbf8cb6151f3c654096bad91c05543e5b6f03db5)

---
updated-dependencies:
- dependency-name: thirdparty/eigen
  dependency-version: dbf8cb6151f3c654096bad91c05543e5b6f03db5
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-06 08:28:02 +02:00
mo 0c22dddd0e feat: IW3 xanim dumping/loading in CoD4 Mod Tools raw binary format (#768)
* feat: IW3 dump xanim to cod4 mod tools compatible binary

* chore: add XAnimPartType enum to game headers

* chore: use XAnimPartType in XAnimDumperIW3

* chore: extract xanim filename into XAnimCommon

* chore: prefer emplace_back over push_back

* chore: small code style improvements

* chore: use proper unsigned types for XAnimParts structs

* chore: use better understandable calculations for bitfields

* chore: use game names for parts

* chore: rename method to WriteNoteTracks

* chore: adds comments and improve clearity of what the game does

* chore: extract stream writing methods into StreamUtils

* chore: use vec3 for XAnimPartTransFrames mins and size

* chore: properly differ between XQuat and XQuat2 structs

* chore: use constants for xanim flags

* chore: use optional for delta track quats and trans

* chore: split delta track writing methods into quat and trans

* chore: add assertion for bDelta

* chore: simplify quat frame encoding indexing

* chore: simplify float to int bit casting

* chore: do not throw exception on failing to reconstruct bone tracks

* feat: add xanim loader for iw3

* fix: make sure to sort quats and trans like the game

* chore: prevent empty dumped files on bad xanim data

* chore: ensure no exception on zero frames in xanim notifies

* test: add system test for iw3 xanims

---------

Co-authored-by: Jan Laupetin <jan@laupetin.net>
2026-06-01 22:52:49 +02:00
dependabot[bot] f7be1ac9c1 chore(deps-dev): bump the modman-dependencies group (#817)
Bumps the modman-dependencies group in /src/ModManUi with 3 updates: [@vitest/eslint-plugin](https://github.com/vitest-dev/eslint-plugin-vitest), [npm-run-all2](https://github.com/bcomnes/npm-run-all2) and [vue-tsc](https://github.com/vuejs/language-tools/tree/HEAD/packages/tsc).


Updates `@vitest/eslint-plugin` from 1.6.17 to 1.6.18
- [Release notes](https://github.com/vitest-dev/eslint-plugin-vitest/releases)
- [Commits](https://github.com/vitest-dev/eslint-plugin-vitest/compare/v1.6.17...v1.6.18)

Updates `npm-run-all2` from 9.0.0 to 9.0.1
- [Release notes](https://github.com/bcomnes/npm-run-all2/releases)
- [Changelog](https://github.com/bcomnes/npm-run-all2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bcomnes/npm-run-all2/compare/v9.0.0...v9.0.1)

Updates `vue-tsc` from 3.3.1 to 3.3.2
- [Release notes](https://github.com/vuejs/language-tools/releases)
- [Changelog](https://github.com/vuejs/language-tools/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/language-tools/commits/v3.3.2/packages/tsc)

---
updated-dependencies:
- dependency-name: "@vitest/eslint-plugin"
  dependency-version: 1.6.18
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: npm-run-all2
  dependency-version: 9.0.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
- dependency-name: vue-tsc
  dependency-version: 3.3.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: modman-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-30 09:08:44 +02:00
dependabot[bot] ac9e691342 chore(deps): bump thirdparty/json from d96329f to d10879b (#816)
Bumps [thirdparty/json](https://github.com/nlohmann/json) from `d96329f` to `d10879b`.
- [Release notes](https://github.com/nlohmann/json/releases)
- [Commits](https://github.com/nlohmann/json/compare/d96329f8d6dee5da67c5ebd861acab25445d0ddb...d10879bca8f0aa790105446075a9525b34a3f718)

---
updated-dependencies:
- dependency-name: thirdparty/json
  dependency-version: d10879bca8f0aa790105446075a9525b34a3f718
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-30 09:08:26 +02:00
dependabot[bot] 45bd610e6f chore(deps): bump thirdparty/eigen from 039764e to fc0f148 (#815)
Bumps [thirdparty/eigen](https://gitlab.com/libeigen/eigen) from `039764e` to `fc0f148`.
- [Release notes](https://gitlab.com/libeigen/eigen/tags)
- [Commits](https://gitlab.com/libeigen/eigen/compare/039764e20a1fe0b8a5c86abaa5de427ed4efe642...fc0f148ab491bf36378c5d527d8f6669ccf21b07)

---
updated-dependencies:
- dependency-name: thirdparty/eigen
  dependency-version: fc0f148ab491bf36378c5d527d8f6669ccf21b07
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-30 09:08:07 +02:00
Jan b6cebe2c67 chore: linting in separate ci step (#814)
* chore: lint ModMan UI in CI

* chore: do not lint in build step anymore

* chore: also do linting on main
2026-05-25 22:18:23 +00:00
Jan 414ff2f8d9 chore: move package json to root (#813)
* chore: move package json to root folder

* chore: also lint prettier codestyle

* chore: configure ModManUi files to use lf eof

* chore: update npm versions

* chore: update README of ModMan

* chore: adjust ci to use package json of root folder
2026-05-25 23:41:21 +02:00
Jan 98a0d2f185 Merge pull request #790 from Laupetin/feature/xmodel-collision-tree
feat: xmodel collision tree
v0.28.0
2026-05-24 12:10:44 +02:00
Jan Laupetin e1ec018f09 chore: modernize collision tree code 2026-05-24 11:38:21 +02:00
Jan Laupetin a81548e300 fix: account for possible zero items when building aabb trees 2026-05-24 11:13:55 +02:00
Jan Laupetin 64d518405d feat: calculate full collision tree for xmodels 2026-05-24 11:13:55 +02:00
Jan Laupetin 5cf0ce37c1 feat: calculate model collision tree with leafs 2026-05-24 11:13:55 +02:00
Jan Laupetin a128fbeb5e chore: imitate game xmodel behaviour in always having even tri count 2026-05-24 11:13:54 +02:00
Jan Laupetin 8a791816ed chore: set XSurface deformed property when applicable 2026-05-24 11:13:54 +02:00
Jan 40e5a9de97 Merge pull request #811 from Laupetin/dependabot/submodules/thirdparty/eigen-039764e
chore(deps): bump thirdparty/eigen from `48d1f4a` to `039764e`
2026-05-23 07:20:50 +02:00
Jan d6f3fc3b3d Merge pull request #809 from Laupetin/dependabot/submodules/thirdparty/libtomcrypt-a68fa19
chore(deps): bump thirdparty/libtomcrypt from `8b5af49` to `a68fa19`
2026-05-23 07:20:33 +02:00
Jan 61eb725d55 Merge pull request #810 from Laupetin/dependabot/submodules/thirdparty/json-d96329f
chore(deps): bump thirdparty/json from `f0bf4c7` to `d96329f`
2026-05-23 07:20:16 +02:00
dependabot[bot] 15b2ee2f19 chore(deps): bump thirdparty/eigen from 48d1f4a to 039764e
Bumps [thirdparty/eigen](https://gitlab.com/libeigen/eigen) from `48d1f4a` to `039764e`.
- [Release notes](https://gitlab.com/libeigen/eigen/tags)
- [Commits](https://gitlab.com/libeigen/eigen/compare/48d1f4a7e213d8dd44ad7b5a75e6075addd02d30...039764e20a1fe0b8a5c86abaa5de427ed4efe642)

---
updated-dependencies:
- dependency-name: thirdparty/eigen
  dependency-version: '039764e20a1fe0b8a5c86abaa5de427ed4efe642'
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-22 22:14:17 +00:00
dependabot[bot] fcab1b7bac chore(deps): bump thirdparty/json from f0bf4c7 to d96329f
Bumps [thirdparty/json](https://github.com/nlohmann/json) from `f0bf4c7` to `d96329f`.
- [Release notes](https://github.com/nlohmann/json/releases)
- [Commits](https://github.com/nlohmann/json/compare/f0bf4c731a53aab29ebde0234385b9e63bf70dcd...d96329f8d6dee5da67c5ebd861acab25445d0ddb)

---
updated-dependencies:
- dependency-name: thirdparty/json
  dependency-version: d96329f8d6dee5da67c5ebd861acab25445d0ddb
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-22 22:14:11 +00:00
dependabot[bot] fdd803446b chore(deps): bump thirdparty/libtomcrypt from 8b5af49 to a68fa19
Bumps [thirdparty/libtomcrypt](https://github.com/libtom/libtomcrypt) from `8b5af49` to `a68fa19`.
- [Release notes](https://github.com/libtom/libtomcrypt/releases)
- [Commits](https://github.com/libtom/libtomcrypt/compare/8b5af49b944955a1ca235a4d06a477a87be6d258...a68fa19bc2b532f66a6f18ca457daec53054a312)

---
updated-dependencies:
- dependency-name: thirdparty/libtomcrypt
  dependency-version: a68fa19bc2b532f66a6f18ca457daec53054a312
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-22 22:14:06 +00:00
Jan 1cadd7e398 Merge pull request #806 from Laupetin/fix/image-iwi-dumping
fix: invalid formats when dumping images as iwi
2026-05-18 18:51:10 +02:00
Jan Laupetin e6aa66e0f0 chore: use templating for image dumper 2026-05-17 12:07:02 +02:00
Jan Laupetin 18dec9d2f2 fix: add missing iwi formats to iwi writers 2026-05-17 11:15:25 +02:00