Period: September 8, 2025 Total Commits: 5
Hey — here’s what we worked on today
Short one: we pushed a rendering refactor that makes PvP feel smoother, got our first AWS/CDK deployment running, and tightened up a few server boot issues. No balance numbers today — this pass was mostly performance, infra, and polish.
What’s New
-
AuraGlow is now purely visual (moved out of simulation):
- Cleaner separation: sim computes game state; renderer handles the shiny bits.
- Fewer per-tick allocations, less GC noise in fights, steadier frame pacing.
- Easier to iterate on VFX without risking desyncs in PvP logic.
- [screenshot: clearer aura visuals around towers at f675cd3]
-
Instanced rendering path for towers:
- Removed redundant draw calls in busy lanes.
- Should help big-wave moments hold 60 FPS more consistently.
- [screenshot: crowded lane with smoother frame pacing at f675cd3]
-
UI touch-ups where it matters:
- Minor updates to GameHUD, Lobby, and Matchmaking.
- Replays and server game view got more reliable state handling.
- Username modal won’t fight your cursor anymore.
- [screenshot: streamlined matchmaking panel at f675cd3]
-
Infrastructure: Redis-backed services and deployment pipeline:
- ElastiCache Redis cluster wired via a single REDIS_URL.
- Makefile targets to deploy client/site/wiki + servers in one go.
- CloudFront + S3 for static content; EC2 + Load Balancer for services.
What Got Fixed
- Server now listens on 0.0.0.0 (not localhost): external clients can actually connect. Simple fix, big unlock.
- Env loading order on server: load env vars before importing services. Avoids boot-time crashes and weird partial configs.
- Monitor status types are correct now: supports active/completed/abandoned/didnotselect, plus an “all” filter.
- Fewer runtime surprises; badges display the right state.
- Pathing and spatial math cleanup:
- Tidier coordinate calculations and tile handling in caches.
- Helps eliminate micro-stutters when waves reroute.
What’s Still Broken
- HTTPS is temporarily off for services: load balancer is HTTP only right now. You might see mixed content warnings. Certificates are already in the plan.
- Redis in public subnets for alpha: fine for early testing, not the final setup. Could see occasional variance under load.
- Aura visuals are client-side only now: in rare cases replays might show the glow slightly out of sync with when a buff applied. Gameplay logic is correct; we’ll keep an eye on it.
- Old debug overlays: some of the dead code cleanup likely removed a couple debug-only overlays. If you rely on one, ping us and we’ll bring back a cleaner version.
Under the Hood
- Renderer/simulation split for VFX: aura updates live with the renderer, not SimCore. Less churn per tick, easier to reason about correctness in PvP.
- Instanced draw path: fewer draw calls for repeated tower meshes; better batching in crowded defenses.
- AWS/CDK deployment passes: CloudFront/S3 for all static assets, EC2 fleet for server, monitor, and bots behind an Application Load Balancer.
- Redis CacheStack: standardized REDIS_URL in env; server and monitor updated accordingly.
- Deployment workflow: new Makefile targets handle build, sync, cache headers, and CDN invalidations.
- TypeScript hygiene: cleaned warnings, removed dead imports, stricter types across the client and monitor.
[screenshot: replay timeline and badges reflecting new status types at f675cd3]
What’s Next
- Turn on HTTPS (certs + redirects), then move services into private subnets.
- Keep chipping away at render perf during mass spawns and late-game builds.
- Matchmaking and monitor quality-of-life so it’s easier to find and follow matches.
- Early bot polish for better practice lanes without queueing.
Try It Out
We’ve got the alpha build hooked up to our new infrastructure. If you want to poke it:
- Play a match at alpha.towerstorm.com
- Expect rough edges while we finish HTTPS and tighten deploys
- If you hit issues, let us know what happened and what you were doing — that’s super helpful
Thanks to everyone sending in bug reports and edge cases. It’s getting there.