Spawn
playmakespawnjam
⌘K
visitorclaim namesign in
sign up
playmake
spawn / aboutwhat we're building

pinned

start herewhat spawn isfaqfrequently asked questionsthe betthe spawn bet

updates

engine v6.0One PlaceSep 5, 2026engine v5.2LumeJul 10, 2026engine v5.1ConnectionJun 18, 2026engine v5.0For RealJun 4, 2026engine v4.6AtelierJun 1, 2026engine v4.5Surface TensionMay 22, 2026engine v4.4SolidMay 15, 2026engine v4.3GroovyMay 13, 2026engine v4.2ContinuumMay 9, 2026engine v4.1FoundationsMay 4, 2026engine v0.1GenesisApr 29, 2026

pinned

what spawn isstart herefrequently asked questionsfaqthe spawn betthe bet

updates

One Placeengine v6.02w agoLumeengine v5.22mo agoConnectionengine v5.13mo agoFor Realengine v5.03mo agoAtelierengine v4.63mo agoSurface Tensionengine v4.54mo agoSolidengine v4.44mo agoGroovyengine v4.34mo agoContinuumengine v4.24mo agoFoundationsengine v4.14mo agoGenesisengine v0.14mo ago
← All posts
← All posts

engine v5.2.18

Engine v5.2.18

August 5, 2026

A patch in the Lume line.

what's new

  • Sounds can now stick to the thing that made them: playSound(clip, { position, follow: true }) keeps a sound on a moving object instead of leaving it behind at the spot it started — your own footsteps, engine hums, and whooshes stay with you instead of trailing behind as you run.
  • Spatial audio now always hears from the camera you actually see. Games with custom mouse-orbit camera scripts could previously get subtly wrong or mirrored panning while everything looked perfect — that seam is closed.
  • Changes your game's scripts make to the game's own setup — input bindings, UI, camera, terrain settings, and more — now survive saves: a script could change these live and see the change silently erased the next time anything else saved the game. Now they stick.
  • Games with lots of moving objects spend less engine time per frame on internal bookkeeping — positions, rotations, and scales are read without generating garbage-collector pressure, leaving more headroom for game logic at the same object count.
  • Particle effects can finally layer in front of 2D backgrounds — spells, explosions, and sparkles in a 2D game draw in front of backdrop art instead of always hiding behind it. Effects and sprites now sort together by world position, so an effect between two scenery layers lands between them.
  • Heat-haze and shockwave-style distortion effects no longer flash a ghostly rectangle that erases the effects behind them when their ripple settles to zero — an idle distortion is now invisible, exactly like it should be.
  • Game databases work in relay multiplayer: scores, inventories, and anything your game saves with SQL now actually persists on relay rooms — including schema setup, which happens automatically even in rooms that are nothing but players' browsers.
  • Performance readings got honest on iPhone: a GPU timing quirk could report absurd frame costs (literally the phone's uptime) — those readings are now filtered out at the source, so performance snapshots tell the truth.
  • Games sit lighter in phone memory: an idle world no longer keeps ~24 MB of background job machinery resident, which means fewer iOS tab reloads on long sessions.
  • One over-sized background job can no longer silently break all terrain and asset loading for the rest of a session — it now fails alone, loudly, naming what got too big. And the "server physics is paused" notice stops promising a wait will fix itself when it provably won't — past the warm-up window it reports the measured pause and routes to a bug report.
  • Timed entities actually expire now, even when a player's device wedges: projectiles, pickups, and effects spawned with a lifetime no longer pile up frozen in the world when the machine simulating them stops responding — the server cleans them up at their deadline.
  • Changing another object's state now just works everywhere you can see it: edit .state on anything a query or a collision hands you and the change is real — no more edits that silently vanish because they touched a copy.
  • Bot-heavy and query-heavy games get faster: reading state off query results no longer copies the whole state bag per object per tick, state writes do half the work they used to, and Savi's live edits over big worlds respond quicker.
  • Editing scripts on big worlds feels snappier: each save no longer recompiles every unchanged library module from scratch, so the little freeze after an edit on script-heavy games shrinks to just the code that actually changed.
  • Pinch zooms the game, not the page: every game gets two-finger pinch (and mouse-wheel) zoom by default — camera scripts that read the zoom channel keep full control of what zooming means, and games whose cameras ignore it get a sensible built-in zoom on phones and tablets.
  • Big multiplayer worlds got faster to join and lighter to run: players now download and stream just the area they're in instead of the whole room, so joining a large world is quicker and crowded rooms waste far less bandwidth on movement nobody can see.
  • Multiplayer rooms open faster: the world download now starts the moment the connection begins instead of waiting for the handshake — worth up to nearly a second on mobile connections.
  • Multiplayer movement smoothed out on relay rooms: other players no longer freeze and teleport when they start moving, stop, or change direction — walking in any pattern now streams as smoothly as walking in a straight line always did.
  • Music works in relay multiplayer rooms: jukebox tracks, stems, and fades now play for everyone — including players who join mid-track, who come in at the right point in the song instead of silence.
  • Script-created things stop vanishing in relay multiplayer: cars, pickups, and anything a script spawns when a place starts now come back correctly when players travel between places — leaving and returning no longer leaves the world permanently emptier.
  • Multiplayer ghosts are gone on relay rooms: a player who walks into your area now reliably appears, and one who leaves reliably disappears — no more invisible neighbors or lingering copies standing where someone used to be.
  • Relay multiplayer got dramatically cheaper on the wire — player movement and world state now ride a compact binary lane (3–5× smaller), and catching up after joining compresses — so rooms feel smoother on weaker connections and mobile data.
  • Big terrain rebuilds can't knock a room over anymore: when a whole world's ground rebuilds at once, the server paces the work instead of freezing — no more "the room restarted and everything spawned in it is gone" after a heavy terrain edit.
  • Games with lots of moving objects spend less time in memory cleanup — motion updates now recycle their bookkeeping instead of generating garbage every tick.
  • Things spawned right after a save now come alive immediately — on script-heavy worlds, entities created during the few seconds after an edit no longer stand frozen (visible but running no scripts) until the engine finishes recompiling.
  • 2D sprite edges are clean again — characters and props no longer wear a thin halo of sky color around their silhouettes when standing in front of tilemap ground.
  • Editing large worlds is faster: applying a change to a world full of roads, power lines, fences, and rooms no longer re-derives every generated piece on every edit — an edit now costs work proportional to what actually changed (~4x faster applies on lowering-heavy worlds, and burst edits like big builder-script runs spend far less time in bookkeeping between steps).
  • Heavy particle effects and layered music run smoother — ribbons, trails, and audio-rich scenes shed a large share of their per-frame CPU cost, with identical visuals and sound.
  • Games with several AI-generated or uploaded 3D models hold dramatically less memory on phones — the engine now frees each model file's raw bytes once its textures reach the GPU instead of keeping whole files around, which is a big step against the "game reloads on iPhone" class of crash. Busy building sessions also idle lighter: landing model metadata no longer re-scans all your scripts, and big boot bursts no longer leave permanently enlarged buffers behind.
  • Long sessions in sound- and media-heavy games use much less memory: decoded sound effects, warmed video clips, and edited-away material shaders are now released when nothing is using them (they reload on demand), which especially helps phones stay alive in big games.
  • Games with lots of timers — every() loops, staged builds, scheduled waves — no longer pay a per-tick sweep over every armed timer, and the engine's own tick loop allocates far less, so long sessions hitch less from garbage-collection pauses.
  • Invisible rotated walls: static boxes spawned with a yaw could, around busy spawn bursts and reconnect churn, briefly (or in bad cases permanently) collide as if unrotated — cars slamming into walls that measurably weren't there. Static colliders now always converge to their authored rotation as soon as it arrives, no matter what order the network delivered the pieces in.
  • Switching a world's terrain type live actually works now — going from tile-based ground to heightmap hills (or voxels) no longer silently keeps the old ground stuck in place until the room restarts. And if a terrain setup ever fails to install, the log now says which place and what that means, instead of failing quietly.