Period: December 2, 2025 Total Commits: 17
Hey, here’s what we’ve been working on today. The big pieces are visual clarity for stacked minions, a reworked interactive tutorial that actually teaches the color system while you play, and a handful of fixes that tighten up PvP fairness and map flow. Nothing flashy, just solid improvements that make matches feel better.
What’s New
Minions Spread Out When Stacked (Render-Only)
When multiple minions occupy the same spot, they now subtly spread apart visually so you can tell what’s going on without affecting gameplay.
- Offsets are render-only; collisions and targeting are unchanged
- Smooth transitions: minions glide toward their visual spread at 0.5 units/sec (no snapping)
- Clear separation: max offset bumped to 12px for readability
- Consistent patterns using a stable golden-angle spread, so formations don’t flicker as clusters change
- Stable decisions between simulation ticks to avoid micro-jitter
Why: Dense clusters looked like a single blob. This keeps information visible without changing the game.
[screenshot: clustered minions spread visually at 6246cfe]
Interactive Tutorial, Now With Real Gameplay
The tutorial is no longer a static level. It’s a guided, step-by-step session that walks you through unlocking, placing, upgrading, and attacking while waves keep rolling.
- Step-by-step overlay with clear goals and progress
- Continuous waves using endless mode, so pacing is consistent
- Color lesson built in: you learn elemental advantages with live examples
- Cannon tower unlock and level-up guidance included
- Victory/defeat overlay shows again; you can Keep Playing at the end
- The old tutorial level is removed to avoid confusion
Why: People were bouncing off the first-time experience. This version teaches while you play, not while you read.
[screenshot: tutorial overlay guiding tower placement at 4ef361f]
Encyclopedia Upgrades + Color Wheel
We restructured the Encyclopedia so it’s easier to navigate and learn from mid-session.
- Left-hand navigation with clearer sections
- URL routes: jump directly to Towers, Minions, or the Color Wheel
- Color Wheel page shows elemental matchups in a clean pentagon diagram
- Scrolling fixes so longer pages behave
Why: Players were tabbing in and out during matches to remember color advantages. Now it’s a couple clicks away and readable.
[screenshot: color wheel encyclopedia page at 551ca7d]
Maps: Custom Selection Counts + Visibility
Maps can now define how many units you must select before starting, and that number is respected across the board.
- Custom selection counts are enforced server-side, shown correctly in the UI, and used by bots
- The map manifest now deploys properly, so newly added maps show up
- “The Grand Maze” is available with the correct identity data
Why: Some maps want two-unit drafts, others want four. The UI and logic finally match that intent.
[screenshot: The Grand Maze in map selection at 823053f]
What Got Fixed
Fairer Spawn Protection
Targeting checks now consider minion bodies, not just tile centers.
- Circle-based collision means a minion becomes targetable the moment any part of it leaves the spawn area
- Result: fewer “ghost-invulnerable” moments right outside the spawn zone
Why: That extra half-step of invisible protection felt wrong and was creating edge-case exploits.
Auto-Spawn Won’t Jump the Gun
Auto-spawn zones no longer accumulate gold or place minions before players finish their unit selections in multiplayer.
- Spawning is gated by the actual first wave start
- Internal timing is relative to that start to prevent pre-match income snowballing
Why: Starting behind before you’ve even picked units isn’t a real match.
Visual Cluster Stability and Persistence
The new minion spread system got a round of polish:
- Offsets persist per board/team and no longer get wiped by unrelated updates
- Smooth out micro-oscillations by basing decisions on tick positions
- Less noise: cleaned up debug logs that were tanking frame clarity
Why: If visual clarity flickers, it’s worse than no clarity.
Selection Consistency (Server, Client, Bot)
Custom selection counts now line up everywhere:
- Server validation matches the map’s requirement
- Client UI shows the correct number of slots
- Bots respect the same rule, so practice matches don’t drift from real games
Why: Draft rules shouldn’t change depending on who you’re playing.
UI/UX Paper Cuts
- Fixed Encyclopedia scrolling in long pages
- Back button moved to a more predictable spot near server status
- Screenshots and docs updated for easier onboarding (no gameplay changes)
Under the Hood
- Rendering: Stabilized cluster detection by using tick-time positions and added an early-exit pass for nearby-minion checks for a small perf win
- Particles: Preserved the batched renderer and scoped particle managers per board to keep campaign effects humming
- Sim hooks: Added utility to adjust game mode and wave timing from tutorial flow
- Housekeeping: Docs reshuffle, README additions, and new screenshots after a clean test run
Thanks
Appreciate the reports on spawn targeting and auto-spawn timing—both were causing real match feel issues. Keep the feedback coming, and if something feels off in the new clustering visuals or the tutorial flow, let us know where it tripped you up.