What's Changed
Improvements
- Refactor CreateObjectBits — Replaced 18-bool struct (duplicated across 4 version folders) with a shared
[Flags] enum. Cleaner serialization viaWriteCreateBitsextension method, declarative flag assignment inSetCreateObjectBits. - Fix GitVersion for local builds — Switch to three-part SemVer tags (
v4.2.0) sodotnet publishproduces correct FileVersion instead of0.0.1.0.
Bug Fixes
- Fix auto-attack getting stuck on legacy servers — Mitigate a race condition where rapid target switching (ATTACK_SWING → ATTACK_STOP → ATTACK_SWING) could cause cMangos servers to stop producing melee swings. The proxy now defers CMSG_ATTACK_STOP during active attacks and coalesces target switches into clean SWING sequences. Also suppresses duplicate ATTACK_SWING for the same target.
- Fix AutoAttackVictim nullability — Make
AutoAttackVictimnullable (WowGuid128?) matching the pattern from the WowGuid128 fields fix, so the CombatVictim bit in SMSG_UPDATE_OBJECT correctly distinguishes "not set" from "empty GUID".
Full Changelog: v4.1...v4.2.0