Period: November 5, 2025 Total Commits: 11
Daily Dev Update: Tilesets Go Multi‑Elevation - November 5, 2025
Hey, here’s what we’ve been working on. Short version: tilesets are now consistent between the level editor and the game client, with proper multi‑elevation support. We also cleaned up some editor UX rough edges and moved the AI Training Lab to a faster backend.
What’s New
- In‑game tilesets now render exactly like they do in the editor
- Maps embed their tileset configuration, so what you design is what you fight on.
- Connection logic for tiles carries over into matches, so edges, corners, and joins look correct without manual tweaking.
- This reduces the “it looked right in the editor” moment to basically zero.
[screenshot: campaign map using multi-elevation tilesets in-match at 8deb932]
- Multi‑elevation tileset editor
- Separate ground (E0) and platform (E1) tiles with proper connection variants.
- Stairs (double‑height) for clean transitions between elevations.
- Auto‑cliffs generate below platforms to sell height and block movement where intended.
- Clear Z‑layering so overlaps render predictably.
- A preview with grid overlay and per‑connection selection makes setup straightforward.
[screenshot: tileset editor with elevation and stair controls, preview on the right at af2956d]
- Faster, less intrusive editing workflow
- You can double‑click tilesets in the toolbox to edit them.
- Paint and delete across elevations without swapping tools.
- Removed pop‑up alerts in favor of quiet logs so you stay in flow.
[screenshot: editing a tileset layer and removing a platform tile at 7a27b86]
What Got Fixed
-
Visual correctness
- Fixed UV mapping from spritesheets so tiles pick the right pixels.
- Calculated tile grid dimensions from the actual image instead of assumptions.
- Proper Y‑flip handling to avoid mirrored or inverted tiles.
-
Connectivity and updates
- Tiles now recalc connections when neighbors change, not just when placed.
- Elevation “0” is treated as a real value, so ground tiles place reliably.
- Stairs and platforms update surrounding masks more consistently.
-
Persistence across view changes
- Tilesets no longer disappear when the board view is recreated (e.g., switching perspectives). They get re‑added reliably so you don’t see blank patches during transitions.
-
Shared renderer
- The editor and client use the same tileset renderer now, which removes a whole class of “works here but not there” bugs and keeps visuals in sync.
-
Texture loading behavior
- Materials update when textures load asynchronously. First‑time loads should settle quickly; if you notice brief tile “popping,” that’s the cache warming up.
-
Editor UX
- Success pop‑ups were replaced with quiet console logs to avoid breaking your workflow.
Under the Hood
- Tileset data lifecycle
- A centralized manager now handles loading, saving, and exporting tileset configurations.
- Editor state includes tileset layers and selection UI state, so your setup persists with the map and reopens exactly as you left it.
- The simulation can query tileset layers directly, keeping rendering and logic aligned.
Notes and Thanks
- If you’re building maps: send us examples if you spot any odd connection masks or stairs that don’t quite land where you expect. Repro steps and the map file help a lot.
- Thanks for the ongoing reports about rendering inconsistencies; those directly informed the fixes that make the editor and client match.
That’s it for today. Steady progress, fewer surprises, cleaner visuals.