engine v4.3.0
Groovy
May 13, 2026
Savi is your DJ now. God mode, movement, and controls all feel right
what's new
- Savi is your DJ now. Ask her for a song and she'll score your game live — the music reacts to what's happening, so when things get tense, the music gets tense.
- No more jitter. Players and cars walk and drive clean.
- Controls feel right. What you press is what you get.
- God mode pointer works again. Clicking and dragging in build mode is fixed. Bigger god mode upgrades coming soon.
- Way more clouds. Skies can be way more dramatic without slowing things down.
›technical notes
- Vibe: new live-coded music system + sample library (#6442).
.vibefiles, mini-notation, transport API,vibeskill. Vibes read game state and modulate voices in real time. - BREAKING:
DrawInterpolationValuechanged from{ teleportThreshold } | nullto{ kind: 'enabled', teleportThreshold } | { kind: 'disabled' }. See migration notes. - Movement smoothing: entity smoother half-life now matches camera smoother — fixes player/car walk jitter (#6462). Interpolation on by default (1.25m threshold; 20m for control targets). All players interpolate, not just self (#6441). New
SimTickIntervalcomponent +ThrottleResourcepipe effective tick rate to renderer. - Input pipeline redesign (#6470): raw capture on main thread, worker-side resolution, epoch removed. Preserve input runway after fullsync (#6478).
- Raycast + god mode unified (#6445): single pointer ray, single drag state.
- Render:
draw/cloud-clustersremoved, replaced by GPU-instanceddraw/sprite-instances(#6452). - Reliability: networking-tail prod fixes (#6451), diagnostic signals for stuck rooms (#6467).
- Skills: Minecraft prompts route to
voxel-terrain(#6464). Stale persistence refs removed from Savi prompt (#6441).
›migration notes
The interpolation property on objects now uses { kind: 'enabled', teleportThreshold: number } or { kind: 'disabled' } instead of { teleportThreshold: number } | null. If any scripts set interpolation: null to disable smoothing, replace with interpolation: { kind: 'disabled' }. If scripts set interpolation: { teleportThreshold: N }, replace with interpolation: { kind: 'enabled', teleportThreshold: N }.