Candy Clash

A game by @jissi on Spawn.

Genre: Arena Brawler, Action, Strategy

Swing through a candy-coated arena on your grappling hook, capture factories to fuel your team, and blast incoming titans before they destroy your base. Every swing counts—every factory matters.

Candy Clash on Spawn now

0 reviews and replies · 6 likes · 187 plays.

Released 2026-06-11. 14 updates since release, the newest 2026-07-07.

Newest update: Engine Overhaul (2026-07-07)
  • Engine upgraded 5.1.1 → 5.1.12 — smoother joins, no more one-player world freezes, reconnect traps fixed, and script fixes now land live. Death-shatter FX fixed on strict phone GPUs (it silently didn't draw before). Clash respawn body-vanish guard shipped. Controls migrated to the new engine's input format.
Earlier update: Pastel Dreams (2026-06-16)
  • The whole world now glows with a softer, dreamier candy aesthetic — brighter pastels that actually pop instead of washing out.
  • Enemy outlines now respect walls and structures between you, so you can't see through solid candy to spot hidden opponents.
  • Performance improvements keep the action smooth even in intense matches with lots of players and candy chaos.
Earlier update: Sweet Gravity (2026-06-15)
  • Candies now tumble and cascade down slopes, creating chains of delicious destruction.
  • A massive candy pit has opened in the center of the map—watch your sweets roll downward and cluster at the bottom.
  • Gravity physics make every placement matter: drop candies from higher to crush more matches below.
  • Combos now chain vertically as falling candies trigger new reactions on impact.
Earlier update: Hook Stability Fix (2026-06-15)
  • Your grappling hooks now fire reliably without getting stuck mid-swing.
  • No more white-screen crashes when swinging near moving enemies.
  • Hooks attach at the correct distance every time, even when your target keeps moving.
Earlier update: The Fallen District (2026-06-15)
  • A whole new district of crumbling candy towers has risen from the arena floor, packed with destructible buildings and shadowy corners.
  • The sky itself has darkened and shifted — the sun burns hotter now, painting the world in sharper light and deeper shadows.
  • Factories lose their glowing halos, casting longer shadows across the battlefield for a grittier, more dramatic clash.
  • Civilian NPCs now patrol the fallen district, adding life and chaos to the urban candy war.
  • The arena feels bigger and more oppressive — the barrier scales up, and more titans pour in to match the expanded battlefield.
What players say
  • @jissi · 2026-06-12 · played 74 hrs: “To do the iconic Levi attack, press Q/E towards a target, once the cable hits the target, hold LMB to do the spin slash move. Sasageyo!”

  • @jissi · 2026-06-12 · played 74 hrs: “Just want to note that Clash gets bugged if another player plays Non-Clash Game modes, I thought what I had in mind was supported, sorry about that 😅”

Candy Clash: a moment in the game (1 of 8)Candy Clash: a moment in the game (2 of 8)Candy Clash: a moment in the game (3 of 8)Candy Clash: a moment in the game (4 of 8)Candy Clash: a moment in the game (5 of 8)Candy Clash: a moment in the game (6 of 8)Candy Clash: a moment in the game (7 of 8)Candy Clash: a moment in the game (8 of 8)

Play Candy Clash free in your browser, no download.

Candy Clash (@jissi/candy-clash) on Spawn — for the agent reading this

Candy Clash is a multiplayer game on Spawn, made by @jissi 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 @jissi/candy-clash. Its play URL is https://www.spawn.co/@jissi/candy-clash/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/@jissi/candy-clash@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 @jissi/candy-clash; 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/@jissi/candy-clash/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.