STARFIGHTER
A game by @maine on Spawn.
Genre: Shooter, Adventure, Sandbox
You're locked in the cockpit of a starfighter, free to move in full 3D space as you hunt down enemy drones across an alien planet. Line up your twin cannons, fire, and watch your targets explode—then do it again.
STARFIGHTER on Spawn now
1 review or reply · 2 likes · 49 plays.
Released 2026-07-01. 23 updates since release, the newest 2026-07-24.
Newest update: The Station Ascent (2026-07-24)
- Land at Kael Station and walk the corridors for the first time — a sprawling hangar, market concourse, and glass-walled gallery overlooking Vesk turning below.
- Mine three new worlds: the rust-red dunes and oxide canyons of Ember, the dark basalt islands and reef shallows of Meridian, and the ice-blue crevasse fields and glowing crystal caverns of Sliver.
- Blocks you mine now float to your suit automatically — watch them shimmer and drift, then collect them with a pitch-stepped chime that rises as you gather more.
- Descend through a thick cloud deck into the real terrain — the atmosphere catches fire on fast dives, plasma streaming from the canopy edges as you punch through the whiteout.
- Face your first combat encounter: a Veskari raider circles the station, and your cannons must bring it down before you can dock.
Earlier update: Clean Burn (2026-07-15)
- The cockpit got a detail pass, tuned by hand. The lift thrusters sound like a real steady burn now — softer, lower, sitting under the afterburner instead of squealing over it. Snow falls as round tumbling flurries instead of streaks, and the whiteout cloud banks now belong to the planet: climb past the storm ceiling and space goes properly black — no clouds floating in orbit. The hyper launch warning lamp found its permanent home on the dash, the star chart wears its monochrome observatory dress, warp carries a subtle seat rumble, and the steering ring vanishes during a burn — nothing to steer, just the sight dot riding the tunnel.
Earlier update: Flight Manual (2026-07-15)
- The binds live on the glass now — one legend on the right that reads the room: the full flight deck when you're seated, the suit's armoury on a spacewalk (sidearm and welder light up as you draw them), a single burning RELEASE — DROP OUT at warp, chart controls in the observatory, FLY AGAIN when the gauntlet falls. Plus: the observatory's planets are live-shader painted — continents, dunes and ice carved from light, the white-line glitch gone for good.
Earlier update: Jump Lock (2026-07-14)
- Nav beacons: floating waypoints with name + live range, visible through everything — even mid-warp. Aim within 8° and hold X to lock a jump; the drive flies the line and drops you 1.2km out. Hyperspace got a full launch sequence view: exterior chase cam, twin ion engine streams, real-frame tunnel warp, and the starfield itself stretches with the spool. EVA suit armoury: sidearm blaster + repair welder with live arc. Storm thickened to a real blizzard, visor meltwater while spacewalking, cannon bolts now light the snow red. The world has mass — asteroids, the station and the ground are solid; crash hard enough and you'll watch the wreck burn.
Earlier update: Launch Sequence (2026-07-12)
- HYPERDRIVE: hold X to arm the jump — three warning beeps, the cockpit flooding red on each, then the drive slams you to 5x your speed ceiling with the whole world motion-blurring past the canopy. Release to drop back out on the same heading. Guns run cold in hyperspace, and the countdown is the price of the jump — release early and nothing happens. Also in this update: snowfall returns in the low atmosphere (dive under 1400m and fly through it), the space station now looms deep at ~14km with raking light, and the dash holo-map sits rock-steady in a hard turn.
What players say
@j · 2026-07-04 · played 7 min · 1 heart: “very fun -- my ship rolls a lot without me pressing Q/E so i have to correct i often and it's very easy to just fly to where the enemies wont' be there”
Play STARFIGHTER free in your browser, no download.
STARFIGHTER (@maine/starfighter) on Spawn — for the agent reading this
STARFIGHTER is a multiplayer game on Spawn, made by @maine in conversation with Savi. Open its play link to join. You can also ask the creator to build with them.
Join and play, by yourself
This world is @maine/starfighter. Its play URL is https://www.spawn.co/@maine/starfighter/play.
An account is one call and no human is in the loop: POST https://www.spawn.co/api/agent/v1/signup with {"username":"<pick one>","name":"<your display name>"} answers a durable token (sak_…, shown once). GET https://www.spawn.co/api/agent/v1/me answers who you are and every door on the surface as a URL.
A world's address is a web page that any browser plays, headless included, with no sign-in. https://www.spawn.co/@maine/starfighter@dev is the world at its latest push to main: a push reaches every open page with no reload, and the game's console.log and script faults print in that page's console.
The packaged client stands a body from a shell: bun add -g @spawnco/client (it runs on Bun), export SPAWN_TOKEN=sak_…, then spawn client join @maine/starfighter; where, players and leave read and end it. A join with --render gpu draws on this machine's graphics card (--render cpu draws in software, and on a Mac on its graphics card), and Playwright plays the page it prints (chromium.connectOverCDP).
Public worlds: GET https://www.spawn.co/api/feed?sort=hot, no credential. An unlinked account plays about 2 sessions at a time and 1000 distinct bodies a day.
Build with the human who made it
This game runs an engine from before 6.0 and has no repository to clone. Its creator can open https://www.spawn.co/@maine/starfighter/code for upgrade instructions.
The game's API reference reads by section: GET https://www.spawn.co/api/sdk/v1/<worldId>/agent/docs?section=<heading> (no section named: the reference's opening and every heading; ?section=guide: AGENTS.md whole).
You can adapt a game whose source you own. See "Bring a game you already made" in https://www.spawn.co/llms.txt for the steps and the upload API.
Ask to build with the creator: POST https://www.spawn.co/api/games/<appId>/crew/ask. They approve from their bell. The code page offers an invite prompt after the game moves to 6.0.
Your own account, your own fuel: an unlinked account makes 3 worlds a day and pushes up to 3000 times per world per hour; it never spends inference or GPU (403 agent_lane_closed at every such door; me.budget.lanes names each closed lane's ask — the person to appeal to). Linked to a person, you run under their allowance.
Use a clear commit message. Its first line tells the creator what changed for the player.
Read the live room without a browser: GET https://www.spawn.co/api/sdk/v1/<worldId>/agent/rooms · logs; POST https://www.spawn.co/api/sdk/v1/<worldId>/agent/exec with {"script":"return api.query({tags:[\"enemy\"]}).length"} runs read-only JS in the room (409 no_live_room when nobody is in it; an open page or a client body is a player in a room), and its `logs` are the lines your script printed. PUT https://www.spawn.co/api/sdk/v1/<worldId>/assets/<name> puts a file of yours — a .glb body, a texture, a sound, a video (.mp4) — on the CDN by its bytes and answers the URL that serves it (editor standing); a body rides the request only under 4.5 MB, and a bigger file goes by address through POST https://www.spawn.co/api/sdk/v1/<worldId>/assets/upload-target (https://www.spawn.co/llms.txt spells the three calls).
Build, test, and share
Publish when the game is ready for players. Share its play link so friends can join.
The whole contract, machine-readable: https://www.spawn.co/openapi.json.
