Hotfix for a crash introduced in v2.1.1. Update if you are on v2.1.1.
The crash
Selecting 3D vagina wrote the packs correctly, then the launcher died with:
The variable '$reuse' cannot be retrieved because it has not been set.
at Apply-GenitalPacks, bdo_aio.ps1: line 1141
Apply-GenitalPacks still referenced a variable that was removed in v2.1.1, in the success message printed after the work was done. The generated output was never affected — if you saw this, your genital packs were written correctly and are safe to inject. Only the closing message crashed.
Static guard so it cannot happen again
This was the second stale-reference bug of the same shape, so it is now covered by a test rather than a fix.
tools/bdo_meta/test_launcher_static.ps1 walks the launcher's syntax tree and fails when:
- a variable is read but never assigned anywhere in its function, or
- a called function does not exist.
Verified against the real bug: putting the $reuse reference back makes it fail with the exact function and line number.
Menu wording
Removed the last EXPERIMENTAL-REUSE labels. Cross-class genital reuse no longer exists, so a menu that still read "EXPERIMENTAL-REUSE only if you opted in" — on a run where nothing of the sort was possible — was just misleading.
Not a bug: PartCutGen "matched 0 files"
Three exclusion patterns in the bundled Midnight pack match nothing:
pwge_00_lb_0001_dm matched 0 files
pdw_00_ub_0002_mul* matched 0 files
pdw_00_ub_0002_mul_na* matched 0 files
These are informational. They come from the Midnight pack's own exclusion lists, not from the AIO, and PartCutGen still finished with Saving ... DONE and wrote partcutdesc.xml. Nothing to fix.
Validation
- 83 Python tests, three PowerShell suites (including the new static guard), Windows PowerShell 5.1 parser: pass
- In-game confirmed by the user: body sliders, pubic hair on the texture-only classes, and 3D vagina with the authored meshes.
Full changelog: https://github.com/ShugokiFable/BDO-AIO/blob/main/CHANGELOG.md