Engine v5.2.9
Saves stop storming, cities stop blinking, Safari plays
July 29, 2026
A patch to Lume.
- Saving a script in a world that rebuilds its objects (city generators, wave spawners, destroy-and-respawn builders) no longer makes everything blink out and back over and over — rebuilt objects land once and stay.
- When the room does refuse to create something (flood limits, permission gates), your game's log now says so by name instead of the object just quietly never appearing.
- Models you place while they're still being prepared now show up on their own once they're ready — no more invisible props that stay gone until everyone rejoins the room.
- When Savi checks the scene, a model that actually failed now reads as failed instead of "still generating" forever.
- Firefox players get your world instead of a black screen — a shader Firefox refused to compile is fixed, and every shader the engine generates is now checked against Firefox's rules before it can ship.
- Safari and iPhone players stop losing their session to "graphics device stopped responding" — a Safari bug the engine now works around automatically.
- Big outdoor worlds run roughly twice as fast on phones (one test iPhone went from ~15 to ~27fps), and phones get their own lighter bloom so glow effects stop eating the frame budget.
- Scattered objects (forests, rocks, crowds) now respect every setting you put on their template — most visibly
castShadow: false: turning shadows off on a scatter of 400 trees actually turns them off now, instead of silently ignoring you and paying the full shadow cost. - Savi got sharper at two things this build: kills in multiplayer combat feel instant for the shooter (no wait-for-server hitch in the death reaction), and floating-island worlds get true open sky below the horizon instead of a fake ground haze — she now reaches for both patterns on her own.
- When a texture script draws something but the texture comes out blank, Savi now gets told exactly that — instead of the engine calling it a success and leaving you staring at an untextured object wondering why.
- Fixed a runaway save loop: some games were silently saving new versions every second (one hit 2.6 saves per second, thousands of junk versions) — burning storage and making version history useless. Saves only happen when something actually changed now.
- Savi can now look at your game the way a phone player sees it — checking that menus and HUDs fit a small screen — instead of only ever seeing the desktop view.
- Side-facing walls (
facing: 'x') with off-center doors or windows now collide where the opening is drawn — no more invisible wall in a visible doorway with a secret walk-through spot mirrored across the wall's center. - Savi's 3D-model workshop got a box of professional modeling shortcuts — custom models come back with nicer edges and surface detail in one pass.
- Your game has a real database now — one save file per game, with your build room's data kept physically separate from live players' data. Savi writes ordinary SQL for save systems, load-at-join, save slots, shared world state, and analytics queries — and games that saved before the database keep every old save, carried over automatically.
- Misspell or invent an option on an effect sprite/ribbon/light and Savi now gets told exactly which word the engine doesn't know, with the list of words it does — instead of the effect quietly ignoring it and leaving everyone staring at a fireball that "should" have soft edges.
- Games with always-on regen, timers, or meters no longer flood their version history with a save every half-second — pure player-state ticks batch up quietly (real changes still save instantly, and nothing is lost if the room crashes).
- Ask for crouch in a first-person game and Savi now lowers the camera the way you'd expect, instead of tilting it toward the floor.
- Swapping or deleting sprite art mid-session no longer leaves the engine silently re-requesting the dead art every 10 seconds until someone reloads the room.
- Dragging a file from your computer onto the game view works now — the drop lands in the import overlay instead of vanishing into the game.
- Right after sending a voice message, tapping Tab opens the chat box again instead of doing nothing.
- Cold animation sheets no longer flash giant — the engine holds the whole last frame until the new sheet lands.
- Safari and iPhone players get another big speed-up: the engine stops using a rendering path Safari secretly rebuilds from scratch every frame, and three per-tick busywork loops that hit Safari's JavaScript engine hardest are gone entirely.