Skip to content

[codex] Stabilize tower defence quality pass#17

Draft
rupertgermann wants to merge 1 commit into
mainfrom
codex/stabilize-tower-defence-quality
Draft

[codex] Stabilize tower defence quality pass#17
rupertgermann wants to merge 1 commit into
mainfrom
codex/stabilize-tower-defence-quality

Conversation

@rupertgermann

Copy link
Copy Markdown
Owner

Summary

Implements the stabilization and hardening pass from #1 across the open implementation slices #2-#16.

  • Adds Vitest, behaviour tests, CI, config injection, and a no-console lint guard.
  • Fixes economy kill rewards, wave completion bonuses, UI scene shutdown cleanup, support-tower stat drift, path movement edge cases, teleport end handling, target selection, and pure hit resolution.
  • Adds projectile pooling, pooled impact/explosion emitters, and Arcade overlap broad-phase collision detection behind the pure hit-resolution seam.
  • Refreshes the top-right UI button art for main menu, restart, mute, and unmute so the icons read cleanly at in-game size.

Issue Coverage

Fixes #2
Fixes #3
Fixes #4
Fixes #5
Fixes #6
Fixes #7
Fixes #8
Fixes #9
Fixes #10
Fixes #11
Fixes #12
Fixes #13
Fixes #14
Fixes #15
Fixes #16
Refs #1

Manual Verification

Restart cleanup (#4):

  1. Started the local dev server with npm run start -- --host 127.0.0.1 --port 3000.
  2. Opened the game in the in-app browser.
  3. Started a game, opened the restart confirmation, confirmed restart.
  4. Repeated restart a second time.
  5. Placed a basic tower and started a wave.
  6. Observed no duplicated UI updates and no browser console errors or warnings.

Collision/effects runtime smoke (#11, #15, #16):

  1. Started an Insane game, placed several towers, and ran a heavier wave segment.
  2. Ran repeated multi-wave start chunks in a browser session.
  3. Observed no browser console errors or warnings during projectile firing, hit effects, enemy damage, and wave progression.

Validation

  • npm test — 12 files, 47 tests passed
  • npm run lint — passed with 2 existing asset-generator console.log warnings allowed as warnings
  • npm run build — passed with existing webpack bundle/asset-size warnings

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment