Skip to content

fix(taxi): resolve mount creature entries to display IDs - #679

Merged
Mathih13 merged 2 commits into
mainfrom
t3/fix-issue-677
Oct 11, 2026
Merged

Mathih13 merged 2 commits into
mainfrom
t3/fix-issue-677

Conversation

@Mathih13

@Mathih13 Mathih13 commented Oct 11, 2026 •

Copy link
Copy Markdown
Contributor

Flights used creature-template IDs as mount display IDs, so the client could show the wrong model. The importer now resolves each faction's TaxiNodes entry through the full creature-template dump and checks the selected display against CreatureDisplayInfo.

A zero faction entry uses the other faction's entry. A missing template or invalid display produces zero and a warning, so the Module refuses the flight. This follows the CMaNGOS Classic entry lookup and faction fallback. The catalogue uses the first nonzero template model; it does not randomize model or gender.

Standalone DBC imports now require --taxi-mounts <dump.sql[.gz]>. The world import script passes its full dump, so mount resolution does not depend on spatially filtered creature templates. Existing catalogues need this import again. The refresh procedure and active-flight limit are documented. No schema change.

Closes #677.

What you verified

  • The original regression failed with creature IDs 1100,1101 and passes with display IDs 295,1147.
  • cargo test -p lyracore-importer: 409 passed, 12 ignored.
  • cargo clippy --workspace --all-targets --all-features -- -D warnings: passed.
  • cargo fmt --all -- --check: passed.
  • bash importer/scripts/import-world-sql-test.sh: 27 passed.
  • ShellCheck at warning severity for both changed shell scripts: passed.
  • Tests cover both faction slots, zero-entry fallback, missing templates, missing client displays, secondary model slots, numeric whitespace and incomplete template dumps.
  • Two adversarial reviewers found incomplete-dump and whitespace handling defects. Both are fixed, and both reviewers approved the corrections with no remaining code blockers. All 9 CI checks passed on bfb2748, including the durable suite and Official Packages.

What you did not verify

No production catalogue was changed. The Mist's Edge flight could not be reproduced because its source and destination were not supplied. No real-client rendering check was run. The 12 ignored importer tests need external data.

Model: GPT-6-Astra with high reasoning effort. Harness: Codex in T3 Code.

@Mathih13
Mathih13 marked this pull request as ready for review October 11, 2026 16:38
@Mathih13
Mathih13 merged commit ca0a49e into main Oct 11, 2026
9 checks passed
@Mathih13
Mathih13 deleted the t3/fix-issue-677 branch October 11, 2026 18:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Flight mounts use the wrong creature model

1 participant