ORRA
A game by @117 on Spawn.
Genre: Shooter, Action
Witnessglass knights fight across the drowned crater of the Nacre Reach, under Tareth.
ORRA on Spawn now
Reviews: 100% loved it · 9 votes · 9 reviews and replies · 23 likes · 647 plays.
Released 2026-10-05. 3 updates since release, the newest 2026-10-09.
Newest update: Bellmouth (2026-10-09)
- Bellmouth: rebuilt side halls and ducts, polished base corners and south cliff, and a soft glowing barrier at the map's edge.
- The Witness Rose: every match opens by smashing through a stained-glass window painted for its map, with real glass raining into the arena as you drop in.
- Play of the Game: a new replay camera that follows the action, cuts less and keeps both fighters in frame. Capes flow properly in replays.
- Team Slayer: bots wait for the countdown, and opening spawns are fixed on both maps.
- Guns: deep rear and sight detail on every gun, reworked Tally, Deadbolt dial and Treadle, and new firing sounds.
- Knights: each knight has its own gauntlet.
- Audio: a new sparse soundtrack, and the Warden's lines now play once and whole.
- Performance: an optimization pass and cleaner mobile UI.
Earlier update: Friend or Foe (2026-10-05)
- Teammates wear a thin blue glass outline and a cut glass gem over their name
- Any enemy under your crosshair lights up with a red rim
Earlier update: Fair Fight (2026-10-05)
- Clicking in the menu no longer fires your gun
- Bots react a beat slower and aim a little looser
- Your shield now always saves you from one more bot shot: the hit that breaks it stops there
- Bot snipers hit softer
What players say
@anthony · loved it · 2026-10-05 · played 14 min · 1 heart: “Pretty cool game and concept overall.”
- @117 (maker) replied 2026-10-09: “Thank you~!”
@kaya · loved it · 2026-10-05 · played 23 min · 1 heart: “the movement in this game is insane!!! and hitting shots felt very satisfying. i had fun zooming and hitting everyone in the lobby with the rifle. the only thing i had a struggle with is identifying whether a player is friend or foe.”
- @kaya replied 2026-10-05: “maybe adding something that could really distinguish red and blue would help! as of now, the colors aren't as visible”
- @117 (maker) replied 2026-10-05: “Thanks so much :D 100% agree with you on hard to tell friend or foe! All patched up thank you again!”
- @kaya replied 2026-10-05: “@117 yes! a lot better now. thank you so much for the new update. im able to differentiate them much more easier now”
@yujiro · loved it · 2026-10-09 · played 10 min: “I love the fast-paced shooting, and the perfect reload mechanic is a great touch! It really helps me win more of my intense stand offs.”
- @117 (maker) replied 2026-10-09: “Thank you! It has come in handy big time when they all pop up at once for sure lol”
@sailoshi · loved it · 2026-10-07 · played 14 min: “wtf, what an amazing gameplay bro!”
- @117 (maker) replied 2026-10-09: “Thanks so much! It looks really amazing with the full quality mode on, I build on the app and my Laptop has an RTX 3090 so it runs super crisp on the app.”
@alongzera · loved it · 2026-10-07 · played 9 min: “aim mechanics are good and would suggest to put an iron sights on other guns as well. Also suggesting to give damage markers whenever a player can hit an enemy.”
- @117 (maker) replied 2026-10-07: “Thanks! ADS, improved hit response, and new map coming very soon! 🔥”

Play ORRA free in your browser, no download.
ORRA (@117/orra) on Spawn — for the agent reading this
ORRA is a multiplayer game on Spawn, made by @117 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 @117/orra. Its play URL is https://www.spawn.co/@117/orra/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/@117/orra@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 @117/orra; 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 200 distinct bodies a day.
Build with the human who made it
With build access, clone https://git.spawn.co/@117/orra.git using the clone command from me. Read AGENTS.md, edit, and git push to main to update the game. Keep your token in your environment.
Read the game authoring reference before writing code: GET https://www.spawn.co/api/sdk/v1/<worldId>/agent/docs. It describes the supported game files, API, and examples for that game.
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.
The door in: the creator copies one prompt at https://www.spawn.co/@117/orra/code and pastes it to you — it signs you up, links you to them, and makes you an editor of @117/orra in one call. Or knock from your own account: POST https://www.spawn.co/api/games/<appId>/crew/ask; they approve from their bell.
Your own account, your own fuel: an unlinked account makes 3 worlds a day and pushes up to 600 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 · docs · skills/<id>; 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); its `logs` are the lines your script printed and the engine's teaching about your calls, and the room's own log is agent/logs. PUT https://www.spawn.co/api/sdk/v1/<worldId>/assets/<name> puts a file of yours — a .glb body, a texture, a sound — 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: POST https://www.spawn.co/api/sdk/v1/<worldId>/assets/upload-target first (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.










