Dev notes · v2.4.0 · updated Jul 2026

SoulGlitch Notes

What SoulGlitch actually is today: an offline AI planet sandbox — orbit My Planet, walk the surface, run swarm polls with 1,500+ emoji personas, chat on-device with Loom, host Plex LAN multiplex, and blow stuff up. Not a cloud chatbot wrapper. Not the old face-only prototype.

🧬

What SoulGlitch is now

The product as it exists on store + desktop

SoulGlitch is an offline AI playground built on Loom + PrimeCraft physics. You boot into a voxel multiverse, claim a home planet, magnet wild echoes, run on-device models, and ask emoji swarms to vote on yes/no questions — all without sending chats to our servers.

The tone is deliberately playful: “don’t take AI too seriously.” Underneath that is serious infra — Hugging Face download → on-device quant → .entity checkpoints, ISO telemetry PDFs, Construct TCP, and measured Plex multiplex on CPU SIMD and WebGPU.

📱

Core loop

How a session is supposed to feel

  • Land on My Planet in orbit — pinch zoom, compass guides, tap Play to walk the surface.
  • Magnet wild echoes, assign party slots, toggle Destroy, enter patch scene arenas for emoji-power combat.
  • Open Swarm poll — pick emoji voters, ask a question, watch live tally + streamed replies.
  • Open AI Chat — Glitch Threads, RAG libraries, download models, pick CPU / SIMD / GPU inference.
  • Plex Link — host or join a LAN multiplex; one model, isolated KV per client chat.
  • Construct TCP — host on your planet; external Go clients spawn constructs while you stay in-game.
  • Browse scene gallery, codex, models, ISO telemetry — glass dock: Chat · Poll · Browse (+ Play when orbiting).
🔗

Plex — share one brain on LAN

Multiplex hosting (chaosglue/plex)

Plex is LAN model hosting: load one .entity, assign up to 8 client slots, each peer gets an isolated conversation. Backends: CPU tiled, CPU SIMD (Plan 9 AVX2/NEON — ~2× throughput vs scalar in lab multichat), or GPU WebGPU KV-swap on desktop.

Phone defaults to SIMD; desktop defaults to GPU. GPU host + planet WebGPU still fight for the same device — use SIMD on mobile when the multiverse renderer is live. Port 17485; scan/join from Plex Link sheet.

💸

Free vs Founder Pack

What’s gated today (v2.4)

Free

Planet + core AI

  • My Planet multiverse — orbit, play, echoes, patch scenes
  • On-device chat with downloaded models (CPU / SIMD / GPU)
  • Glitch Threads, libraries, model catalog, scene gallery
  • Construct TCP host, ISO telemetry, codex browsing
  • Linux desktop bundle includes Founder unlock free
Founder Pack · one-time IAP

Premium layer

  • Swarm poll — fullscreen crew voting with emoji personas
  • Full emoji picker in AI Chat & new glitch threads
  • Future premium features (same purchase, no subscription)
  • Android · iOS · macOS via store billing
💻

Platforms & downloads

Where v2.4.0 runs

Extract Linux bundle → run bundle/soulglitch. Rebuild native libs after pulling engine changes — see repo README.

🧠

On-device models

What the catalog supports today

  • SmolLM2 135M / 360M / 1.7B — fast to heavy; good mobile defaults.
  • Qwen3 0.6B / 1.7B / 4B — stronger reasoning; watch RAM on 4B.
  • BitNet b1.58 2B — sub-byte quant path; CPU/SIMD friendly, heavy KV.
  • Download safetensors on device → convert to .entity → pick Tiled / SIMD / WebGPU at load.
  • Plex host shares whichever .entity you loaded — one weight set, many KV slots.

Future — vendor NPUs in-app

On the roadmap after v2.4

Today SoulGlitch inference paths are CPU tiled, Plan 9 SIMD (AVX2/NEON), and WebGPU — plus Plex multiplex on those same backends. We plan native integration with vendor accelerators through Loom v0.83+ poly/accel: Apple Metal, Qualcomm Hexagon (Snapdragon — experimental in lab), and Intel OpenVINO NPU — each cell measured with the Drift Spectrum parity buckets before it ships in the app.

Goal: pick the best backend per device automatically — SIMD on reactive dense loops, NPU for fat matmul/conv layers, WebGPU where the GPU isn't fighting the planet renderer. See Loom research PDF for measured numbers. Scene gen (procedural + LLM patch builds) is the other big open item — see changelog FREE RnD.

🎯

Who it's for

Positioning notes

Audience

AI-curious people who want a toy universe on their phone or PC — sandbox gamers, local-LLM tinkerers, privacy-first users, and anyone bored of sterile cloud chat UIs.

Hook

“Land on your planet. Ask a swarm. Don't take it too seriously.” Sovereign AI is the engine story; chaos and emoji voters are the front door.

📋

Full changelog

From mvp-simulation/UPDATES.md — newest first

FREE RnD — the old lab wishlist. Almost all of it is in the app now; scene generation is the main thing still open.

Shipped (was RnD, now product)

  • Plex multiplex — one .entity, many isolated LAN chats (CPU · SIMD · GPU, port 17485); AI Chat → Plex tab + Plex Link join sheet.
  • TANHI / UDP viz — watch layer traffic in real time (Apps → TANHI, listener :17481).
  • On-device models — download safetensors, quantize on phone/PC, save .entity locally (SmolLM2, Qwen3, BitNet, …).
  • Glitch Threads + swarm — multi-persona chat, emoji voters, streamed swarm replies in the planet UI.
  • Share compute — Plex host on LAN; share .entity — full checkpoint transfer without re-download (port 17482).
  • Construct TCP — host on your planet; external Go clients spawn constructs while you play.

Still RnD — scene generation

  • Local scene generator — procedural worlds on-device (gallery card exists, not wired).
  • LLM / Ollama scenes — describe a patch build in natural language → scene JSON (placeholder in Browse gallery).
  • Optional polish: Plex-hosted characters with speech bubbles on the planet surface.
2.4.0 2026-07-09

Audio panel & swarm polish — dedicated sound controls, looping planet music, fullscreen crew voting, and emoji-picker stability. Ships on top of 2.3.0.

Audio

  • Audio panel — top-bar speaker icon opens a fullscreen panel (master volume, per-channel mute, mute all); settings persist across sessions.
  • Planet musicbackground_music.mp3 loops quietly on planet surface and patch instances.
  • Claim SFXplanet_claim.mp3 plays when you claim a planet.
  • Audio controls moved out of planet settings into the new panel.

Swarm poll

  • Fullscreen polls — ask, live vote, and history panels sit above dock, HUD, and top chrome.
  • Emoji-only voters — buddy picker removed from “Who votes?”; add emoji personas inline.
  • SIMD inference — Model & settings offers Tiled, SIMD, and WebGPU backends.
  • Emoji picker fix — inline picker inside the swarm panel (no modal over the game view); viewport frame uploads isolated so semantics/layout no longer crash.

AI Chat

  • Buddies tab removed — home sidebar is Threads / Libraries / Plex.
  • New glitch thread — emoji persona only (no planet buddy picker); legacy buddy-linked threads still open from Threads.
  • Plex SIMD hosting — Plex tab backend picker is CPU · SIMD · GPU (Plan 9 AVX2/NEON multiplex, same chaosglue/plex pipeline as single-chat SIMD). Phone defaults to SIMD; desktop defaults to GPU. LAN port 17485 unchanged.

Flutter (for integrators)

Integrator file tables: see repo UPDATES.md for this release.

Full restart recommended after pulling (new audio assets + native rebuild if engine changed).

2.3.0 2026-07-09

Surface navigation guides — compass arrows to wild echoes and patch scene targets, plus boot and echo-placement fixes. Ships on top of 2.2.1.

Fixes

  • Black screen on launch — storage migration no longer deadlocks during init; construct settings load before camera home; boot errors surface in the multiverse view instead of hanging before runApp.
  • Wild echoes after patch scenes — entering then leaving a built scene instance no longer collapses all loose echoes into one pile (positions are parked during the arena and restored on exit; fresh spread respawn if restore fails).
  • Wild echo spawn spread — minimum tangent spacing, wider near-player ring, and even shell distribution so echoes do not stack on the same patch tile.

Navigation guides

  • Surface guide arrows — cyan arrow + line toward the nearest magnetable wild echo on the planet; orange arrow toward the destruction / scene sphere inside patch instances.
  • Orbit & split view — guides work when zoomed out in orbit and in two-player split (camera projection matches the active viewport).
  • Arrow on the ring — compass sits around your orb, not on top of it; bearing fallback when the target is off-screen or too close after zoom.

Camera

  • Pinch zoom — two-finger pinch on orbit and player views (same feel as scroll zoom).
  • Default max zoom out — orbit and birds-eye player views start fully zoomed out when switching presets or returning home.

Engine (for integrators)

Integrator file tables: see repo UPDATES.md for this release.

Rebuild required: ./scripts/build-lib-linux.sh (or platform equivalent) after pulling Go changes.

2.2.1 2026-07-06

Gallery fix & Destroy HUD polish — patch on 2.2.0.

Fixes

  • Scene gallery — opening a gallery scene from Browse no longer crashes (dual wgpu / Jolt allocator conflict). Planet GPU releases before gallery/creator/tanhi viewports boot; multiverse resumes when you return.

UI

  • Destroy button — muted slate when off, orange-red glow when on (clear on/off state).
  • Party status — removed redundant "destroy on" line under wild/following count.
2.2.0 2026-07-06

Planet play UX overhaul — two-view orbit/play flow, thumb-friendly game HUD, gather UI, and top notices. Ships on top of 2.1.0 echo destruction combat.

Orbit & camera

  • Two views onlyOrbit (default) and Player (on-foot). No top Player/Orbit toggle.
  • Cold start → Orbit — returning players land on the home planet in orbit view.
  • Play — dock shows a game icon in orbit; tap it to drop to the planet with move controls open.
  • Orbit on the controls panel (or Esc) returns to orbit view.
  • Hatch intro ends in Orbit (not forced Player); dev Play hatch no longer double-plays; player orb hidden during the cinematic.
  • Codex / overlays — closing full-page routes restores your previous camera preset and re-snaps horizon background planets (ChaosMultiverseRefreshBackground).
  • Codex return — coming back from Echo Codex restores move controls when you were on-foot in Player view.

UI chrome

  • Buddies rail removed — no top-right people button or side panel on the planet view (planet buddy meshes stay off).
  • Resource dropdown stacks above the orbit auto-spin button (no more panel tucked underneath).
  • Resource gather progress — stand on a glowing node to collect; progress bar floats in the center of the game view (not inside the resource dropdown). Dropdown is inventory counts only.
  • Top notices — toast messages slide in under the top bar (replacing bottom snackbars).
  • Apps menu (Browse) — full-screen opaque overlay; planet, dock, and side chrome hidden until you tap Planet back.

Echo panel

  • Assign button removed from the planet strip (use Codex for party slots — Assign only opened Codex anyway).
  • Destroy is a single toggle (off = peaceful repair, on = combat assault); separate Repair button dropped.
  • Act removed — Call starts the assault when Destroy is on.
  • Call/Recall and Follow/Stay are single toggles each (not separate buttons).
  • Bottom HUD layout — left: wild · following status, then Active · Codex · Call/Recall above the move stick; Orbit centered between stick and right rail; right: Destroy, Follow/Stay, Magnet (thumb side).

Echo combat (follow-up)

  • Party echoes use per-emoji skills during destruction assault (not generic pulse on Retract).
  • Retract no longer ghost-fires destruction when echoes are recalled.

Rebuild required if pulling Go changes from 2.1.0: ./scripts/build-lib-linux.sh (or platform equivalent).

2.1.0 2026-07-06

Echo Destruction Combat — ~1,595 unique emoji powers, destruction sphere assault in patch instances, and the full Repair ↔ Destroy loop.

Emoji destruction powers

  • ~1,595 composable powers — each emoji persona gets a unique gene mix (implode/explode, slam/lift, push/ram/sweep, spin/vortex, sphere/column/ring/wedge patterns, single/double-burst phase).
  • Gene math lives in chaos/physics/destruction_power.go; Flutter catalog in assets/emoji/emoji_destruction_powers.json (matches Go PowerForEmojiID).
  • Codex → Powers tab — searchable grid of every power (title, kind, genes, magnitude, radius); filter All / Unlocked / Locked.
  • Power demo lab — tap a captured (or Founder-unlocked) power to open a live 3×3×3 cube arena and fire the instruct on demand.
  • Founder pack gates browsing full power details for emojis you haven't magnet-captured yet.

Repair vs Destroy

  • Echo control strip: Repair (peaceful follow / mend) and Destroy (combat assault).
  • Act instructs the active echo — in destruction mode this kicks off (or reinforces) the assault.
  • On the planet surface, a small destruction lab spawns light cubes inside a ~9 m radius when Destroy is active.
  • In patch scene instances, the zone auto-fits the imported gallery scene footprint (12–85 m) instead of a fixed disc.

Destruction sphere & instance assault

  • Enter a built scene → tap Destroy → a glowing destruction sphere wraps the play zone (dot shell + bright equator ring).
  • Status line shows zone N in Xm — destructible body count and fitted radius.
  • Call party echoes → each echo ghost-drifts in 3D toward its own target inside the sphere (parallel assault, not one-at-a-time).
  • Every striker fires its own emoji power (area destruction at the target — implode, vortex, wedge, etc.).
  • Target ring visual on the locked destructible; path arrows point at drift goals.
  • 2 s stall timeout — if an echo makes no progress, it abandons and picks a new random target.
  • Assault runs until the zone is clear; Retract recalls echoes without ghost-bombing the arena.

Wild echoes & party

  • Wild echo beacons — floating spheres above loose echoes on the planet (dim → species tint when near → cyan pulse in magnet range).
  • Party assign trait-key sync fixed between Flutter codex and Go loadout (emoji:hue:… wire format).
  • Hatch intro plays once on construct reset / dev panel (no double-play).

Engine (for integrators)

Integrator file tables: see repo UPDATES.md for this release.

Rebuild required: ./scripts/build-lib-linux.sh (or platform equivalent) after pulling Go changes.

Known limitations (2.1.0)

  • Destruction assault is tuned for patch scene instances; planet-side lab cubes are a smaller sandbox.
  • Store listing markdown under store/ still says 1.3.0 until the next store submit.
2.0.0 2026-07-06

v2 — patch scene instances — enter a built patch and play the gallery scene on foot.

Enter built scenes

  • Stand on a patch with a build → top Enter prompt (scene title from gallery catalog).
  • Enter teleports you into an isolated flat arena (5 km plain) far from the multiverse grid — planet shell hidden, scene spawned at center.
  • You and called echoes spawn outside the scene footprint (~140 m south) and run in — no spawning inside geometry.
  • Player orb controls (WASD / move stick, top-down or FP camera) with ExploreControls + echo party panel.
  • Play / pause / restart in scene chrome; Back returns to the planet and restores your position.

Physics & echoes

  • Arena uses flat gravity; dynamic scene props get world gravity (chain-reaction pieces fall and settle).
  • Scene ground/floor/plane meshes skipped on import (arena floor only).
  • Echo drop, follow, and active modes use flat-floor navigation in the arena (no shell clamp under the plane).

Engine (for integrators)

Integrator file tables: see repo UPDATES.md for this release.

Rebuild required: ./scripts/build-lib-linux.sh (or platform equivalent) after pulling Go changes.

1.9.1 2026-07-06

Top-down camera fix — run around the planet without flipping or getting stuck.

Birds-eye / player view

  • Fixed the 180° camera flip when orbiting the full planet in top-down mode — WASD no longer reverses mid-lap.
  • Fixed the player orb spinning in place at certain coordinates (pole singularity in the old heading math).
  • Movement and camera now share a stable tangent heading parallel-transported around the sphere (same idea as first-person).

Rebuild required: ./scripts/build-lib-linux.sh (or platform equivalent) after pulling Go changes.

1.9.0 2026-07-06

Claim planets and build gallery scenes on patches.

Planet claim

  • Stand on a biome patch of an unclaimed planet (no builds on any patch) → prompt above the glass dock: *Would you like to claim this planet?*
  • Claims persist per grid cell (ix, iy, iz) — multiple planets can be claimed across the multiverse.
  • Saved locally in planet_claims.json and synced to the engine on boot / visit.

Patch build

  • On a claimed planet, stand on an empty patch → *Would you like to build something here?* (same placement as transit towers).
  • Searchable gallery picker — JSON scenes only (embedded biocraft/anogu catalog today; user-generated entries when gallery gen ships).
  • Scene spawns on the patch surface (oriented to planet up, ground plane skipped), scaled to fit the land-mass disk.
  • Rise animation — glowing preview emerges from underground with beam + ring; massive hatch-style explosion on land; then solid build spawns.
  • Builds persist per patch and reload when you revisit that planet cell (including after tower transit).

Engine (for integrators)

Integrator file tables: see repo UPDATES.md for this release.

Rebuild required: ./scripts/build-lib-linux.sh (or platform equivalent) after pulling Go changes.

1.8.0 2026-07-06

Planet resource HUD polish and orb dash movement.

Planet resources — top chrome

  • Toggle chip next to the Player / Orbit camera menu — resources no longer always-on top-left.
  • Current planet biome icon + collected count only (not home biome, not galaxy total).
  • Polls cell_biome from the engine so counts match the planet you are standing on.

Orb dash

  • Hold move 2s5× speed burst while pushing; dash stays armed 2s after you release (re-tap move within that window without re-charging).
  • Directional explosion VFX — anim1-style particle burst (world-space, visible in FP) along travel direction.
  • Slam downC, on-screen button, or Arrow Down while airborne; radial dash into the planet shell with downward burst.
  • Echoes mirror player dash when following; patch step-up scales during dash.

Engine (for integrators)

Integrator file tables: see repo UPDATES.md for this release.

Rebuild required after pulling Go dash changes: ./scripts/build-lib-linux.sh (or platform equivalent).

1.7.0 2026-07-05

Echo Codex Skills, UI cleanup, and orbit camera fixes.

Echo Codex — Skills tab

  • Skills tab on Echo Codex (Dex · Skills · Party) — unlockable Echo Build toolkit, not a gallery demo list.
  • Catalog sections — Parts (box/sphere/cylinder/capsule/cone), Motion (static/dynamic/rotate), Joints (fixed/hinge/point), Spawn transform, Reflex programs (automation, sequence, pulse, PD, effectors), Echo acts/roles/cues.
  • Unlocks from captures — magnet/codex traits + thresholds (minUniqueActs, minCaptures, anyEcho); party build hints (e.g. ~5 blocks + 1 rotor + 1 pulse).

UI cleanup

  • Removed duplicate Codex button from the bottom glass dock — Codex stays on the echo control strip only (less clutter).

Orbit camera fix

  • Top menu stays on Orbit — camera preset now syncs from the engine (menu no longer snaps back to Player after selecting Orbit).
  • Planet visible in orbit — bootstrap sphere draws again while orbiting your home cell (was patches floating in empty space); neighbor impostors unchanged.

Engine (for integrators)

Integrator file tables: see repo UPDATES.md for this release.

Rebuild required after pulling Go changes: ./scripts/build-lib-linux.sh (or platform equivalent).

1.6.0 2026-07-05

Planets feel like their biome type — PrimeCraft-style color, props, and patch identity.

Biome-colored patches (on foot)

  • Palette fixluduiq.BiomeColor now matches the seven PrimeCraft biomes (water blue, lava orange, grass green, ice pale, crystal magenta, jelly purple, organic teal). Patch cubes no longer look like random earth tones.
  • Home bias — when your planet has a dominant biome, ~78% of patch tiles use that type (was ~58%), so a lava home reads mostly orange, grass mostly green, etc.
  • Bootstrap tint — planet sphere + patches share the same biome ground color.

Orbit decorations (detail LOD)

  • Lava — emissive glow liquid shell + fire plumes (rock pillars + additive glow) instead of trees.
  • Waterrock clusters instead of trees.
  • Grass / Ice / Crystal / Jelly / Organic — biome-tinted trees unchanged (trunk + canopy colors per type).

Chaos engine (chaos/luduiq)

  • BiomeColor() — PrimeCraft palette (IDs 0–6).
  • biomeAtDir() — stronger ShellBiomeBias dominance when HomeBiomeID is set at construct boot.

Engine (for integrators)

Integrator file tables: see repo UPDATES.md for this release.

Rebuild required after pulling Go changes: ./scripts/build-lib-linux.sh (or platform equivalent).

Known limitations (1.6.0)

  • Biome props (fire/rocks/trees) show in orbit view at detail LOD — not yet spawned on the construct home surface while on foot.
  • Player env forces (jelly swirl, crystal pulse, organic lung) still apply to background wanderers only.
  • Store listing markdown under store/ still says 1.3.0 until the next store submit.
1.5.0 2026-07-05

Sparse terrain patches on the walkable planet — fast, solid land-masses instead of the old full voxel shell.

Terrain patches (replaces biome voxel shell)

  • Patch bootstrap — construct now boots with PatchTerrain (~40 biome-colored land-mass plates per planet) instead of the luduiq full shell (~445k cells).
  • Always on — patches are always generated and visible on your active planet (no settings toggle; removed Biome voxel shell from Planet settings).
  • Planet + patches — on foot, the bootstrap planet sphere and patch overlays draw together (patches no longer hide the planet mesh).
  • Walk physics — smooth planet sphere between patches; solid plate colliders on each land-mass (compound static shapes, not per-tile snagging).
  • Orbit view — multiverse impostor draws the sphere; construct renders patch cubes on top.

Echo party + patches

  • Planet-first movement — following echoes path on the planet sphere, not pre-snapped to patch height.
  • Step-up — when feet enter a patch disk, echoes hop onto the plate (animated radial lift + small arc); step back down when they leave.
  • Wild spawn — loose echoes start on the ground; spawns directly on a patch disk begin at plate height.

Chaos engine (chaos/construct)

  • -patches flag in run-construct-tcp.sh (recommended); legacy -shell / -biome kept for full voxel shell.
  • PatchSite anchors for future gallery-scene land-mass import.
  • Player snap skipped while grounded on patch plates (Jolt footing drives position).

Engine & FFI (for integrators)

Integrator file tables: see repo UPDATES.md for this release.

Rebuild required after pulling Go changes: ./scripts/build-lib-linux.sh (or platform equivalent).

Known limitations (1.5.0)

  • Patches are visual + walk colliders only — not mineable tile-by-tile yet (full shell still available via -shell in chaos TCP demo).
  • Echo step-up is kinematic shell-lock, not full physics climb.
  • Store listing markdown under store/ still says 1.3.0 until the next store submit.
1.4.0 2026-07-05

Echo companions on the walkable shell, multiverse horizon planets that actually look like neighbours, and a much lighter on-foot render path.

Echo party system

  • Echoes — collectible wild orbs on each planet; absorb into your party via MagnetAssignCall.
  • Call — echoes drop from the camera column onto the planet shell (dynamic physics).
  • Follow / Stay / Active — kinematic shell-lock: stand upright on the surface, auto-rotate to the normal, pathfind toward the player (construct TCP / capsule-squad parity).
  • Limp — ragdoll pile mode (dynamic + gravity).
  • Codex — Flutter store page for unlocked echo types; counts persist locally.
  • Control panel — bottom-left in Player / top-down / split views (hidden in Orbit); status line shows wild / following / assign queue.
  • Fall-through fix — squad stabilize + pathfind always tick on foot (gallery lite no longer skips them); shell clamp during drop/limp; loadout auto-activates on Follow/Stay.

Construct TCP keyboard parity (Player view)

Integrator file tables: see repo UPDATES.md for this release.

Multiverse background planets & LOD

  • 3-tier planet LOD — far (16×10), mid (24×16), detail (32×20) with hysteresis so meshes don’t thrash as you move.
  • Horizon snap (on foot) — neighbour impostors draw at ~one grid step from the player instead of true cell centres 800–2200 u away (fixes tiny sky specks in Player view).
  • Tighter on-foot streaming — immediate neighbour ring only, forward hemisphere preferred.
  • Background planets toggle — Planet settings → Background planets now works in gallery-lite Player view (was always cleared for FPS).
  • Compositing sync — surface camera mode refreshes when switching Orbit ↔ Player, including gallery render path.
  • Active cell — multiverse impostor sphere hidden on foot; construct walk shell is the ground (optional biome voxel overlay via settings).

Gallery lite (on-foot performance)

  • Single-pass render on Player / top-down — same draw path as Scene gallery; skips multiverse compositing churn when background planets are off.
  • Skips — luduiq fluid goroutine, orb smoke/trails/bubbles, wireframe bootstrap duplicate, per-frame tower colour pulse (towers + resources stay for gameplay).
  • Resolution — uses sceneGalleryPixelSize() formula instead of the old 960×540 cap.

Engine & FFI (for integrators)

Integrator file tables: see repo UPDATES.md for this release.

Rebuild required after pulling Go changes: ./scripts/build-lib-linux.sh (or platform equivalent).

Known limitations (1.4.0)

  • Echo party UI is Player-surface only (not Orbit).
  • Horizon snap is visual-only — transit still targets real grid cell centres.
  • Gallery lite still runs construct physics + one full engine.Render(); very old GPUs may need Background planets off.
  • Store listing markdown under store/ still says 1.3.0 until the next store submit.
1.3.0 2026-07-03

Walkable multiverse planets — gather biome resources, ride transit towers to neighbouring cells, and keep Player / Orbit cameras working after travel.

Planet resources (first playable pass)

  • Six collectible nodes per active planet cell, one flavour per biome (Brinethread, Ember ash, Verdant pollen, etc.).
  • Sit-to-collect — stand on a node ~1 s to pick it up (Player view only).
  • HUD — biome resource icons with live counts in the multiverse top bar.
  • Respawn — nodes come back after ~75 s.
  • Persistence — counts saved locally per device (soulglitch/planet_resources.json); not cloud-synced yet.
  • Design docPLANET-RESOURCES.md (canon; implementation now partially landed).

Interplanetary transit (construct towers)

  • Transit pillars — six white, semi-transparent beams on each walkable shell (along ±X / ±Y / ±Z), replacing the old purple 500-unit multiverse beams.
  • Proximity prompt — Flutter panel shows destination grid coords and biome name; Stay / Travel.
  • Three-phase hop — physics boost off the tower → arced cruise across the grid → ease onto the arrival shell at the opposite tower.
  • Planet relocalize — construct voxel shell, resources, and towers respawn on the destination cell mid-flight; player keeps momentum feel instead of a hard teleport.
  • Safe spawn — dev-player bootstrap avoids spawning directly on tower axes.

Camera & view modes

  • Player on any planet — top-down, first-person, and split work after travelling off home (no longer locked to Orbit-only off-home).
  • Orbit follows you — after transit, Orbit targets the active construct cell, not hard-coded home (0,0,0).
  • No forced Orbit snap — arriving on a neighbour no longer yanks you out of Player view every frame.

Visual cleanup

  • Removed legacy pink pillars — old spawnTowers 500-unit purple beams disabled; cached planets purge -tower- meshes on first stream refresh.
  • Depth-correct glow — construct tower beams use depth-tested glow (white / faint blue) instead of drawing on top of the whole planet.

Engine & FFI (for integrators)

Integrator file tables: see repo UPDATES.md for this release.

Rebuild required after pulling Go changes: ./scripts/build-lib-linux.sh (or platform equivalent).

Known limitations (1.3.0)

  • Resource collection only in Player view (not Orbit).
  • Transit is a scripted hop (boost + lerp), not a full open-space flight sim yet.
  • PLANET-RESOURCES.md still lists some future energy-conversion / scene-spawn hooks as not implemented.
  • iOS may need FFI symbols added to chaosmvp.xcconfig if transit/resource exports are missing on that target.
1.2.0 (prior release)
  • Plex — LAN multiplex hosting in AI Chat (shared CPU / CPU SIMD / GPU model, per-client KV slots, port 17485).
  • Multiverse-first launch (splash → home planet), planet settings, bottom dock (Chat · Swarm · Construct · Apps).
  • On-device swarm voting, RAG chat, Hugging Face model pipelines, character worlds.

See README.md for full 1.2.0 feature surface.

Integrators: each release section in repo UPDATES.md also lists Go/Flutter/FFI file tables. Rebuild: ./scripts/build-lib-linux.sh (or platform script) after pulling engine changes.