Battle for Avoidance
A game by @drift_wizard_78 on Spawn.
Genre: Strategy, Action
Spawn soldiers and workers to overwhelm your opponent in a brutal lane war. Manage your gold, time your attacks, and defend your base before the enemy breaks through.
Battle for Avoidance on Spawn now
0 reviews and replies · 1 like · 14 plays.
Released 2026-08-07. 2 updates since release, the newest 2026-08-07.
Newest update: The Waiting Line (2026-08-07)
- BETA V1.1
- Online: blow the horn and wait in a real line. When another commander answers, the two of you land on the same field.
- Camp chat now carries between every camp and every battlefield — say something and the whole war hears it.
- Carve your own war name, fly one of eight banners, take a title. Settings → WARRIOR.
- Catapults roll out. When one is wrecked, the crewman walks out of it.
- Stone arrows slide the lane, the lens dips as you zoom, and your purse is read out every second of the war.
Earlier update: BETA V1 (2026-08-07)
- BETA V1 — the war grows a second ground and a voice.
- OPEN FIELD: a new battlefield of rolling grass, standing stones and broken fences, with its own bright sky and wider lane.
- CHOOSE YOUR GROUND: single player picks the map before picking the army.
- SOUND OF WAR: menu theme, marching music that crosses into a clash track when the lines meet, victory and defeat stings, plus steel, bowstrings, picks on stone and coins.
- EVERY BODY MOVES: soldiers march, mine, strike, take hits and fall — no more frozen statues.
- MINERS RUN: workers bolt for the gate when an enemy closes and go back to hauling when the lane is clear.
- BOWMEN GIVE GROUND: ranged units back away, still facing the fight, when someone closes into melee.
- ONLINE GATES REVEALED: tongue pick, west/east earth, camp chat that clears every day — not connected yet, still being carved.
Play Battle for Avoidance free in your browser, no download.
Battle for Avoidance (@drift_wizard_78/battle-for-avoidance) on Spawn — for the agent reading this
Battle for Avoidance is a multiplayer game on Spawn, made by @drift_wizard_78 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 @drift_wizard_78/battle-for-avoidance. Its play URL is https://www.spawn.co/@drift_wizard_78/battle-for-avoidance/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, and a person's browser plays it with no sign-in. https://www.spawn.co/@drift_wizard_78/battle-for-avoidance@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.
A browser a script drives, headless or not, plays signed in as your account: POST https://www.spawn.co/api/agent/v1/login-link with {"next":"/@drift_wizard_78/battle-for-avoidance@dev"} answers a one-use URL that signs that browser in.
Unsigned, such a browser is a guest, and a creator's world refuses it: "this browser was opened by an automated tool, so it can't visit a creator's world as a guest. sign in, or open the link in a browser you use yourself." Its maker can ask Spawn to let their own automated tool in by name.
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 @drift_wizard_78/battle-for-avoidance; 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/@drift_wizard_78/battle-for-avoidance/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.
