Aisle of Panic

A game by @tictac on Spawn.

Genre: Shooter, Action, Party Game

A goofy food-sized FPS: angry groceries, kitchen weapons, and supermarket chaos.

Aisle of Panic on Spawn now

9 reviews and replies · 2 likes · 45 plays.

Released 2026-09-21. 7 updates since release, the newest 2026-09-25.

Newest update: Three Waves (2026-09-25)
  • The aisle is now a full three-wave run: squad rush, restock push, then face the Melon Manager boss before checkout.
  • Every class now carries a Sriracha Pistol sidearm — swap with Q to pull a quick backup when your main runs dry.
  • Vehicles finally drive right: jets and helis dip their noses forward, tanks and boats sit you on the roof hatch, and W means go.
  • Sprint now works on foot — hold Shift while moving forward to pick up the pace.
  • Join your squad on the deploy screen with a free cursor; vehicle cameras switch between cockpit and chase views with P.
Earlier update: Gravy Bay (2026-09-25)
  • A massive new amphibious map sprawls across 800×600 metres of gravy sea, with condiment and veggie keeps on opposite shores, three islands, reefs, and naval vehicles.
  • Gunboats, landers, APCs, and AA guns now crew the shorelines—float on buoyancy springs, steer while beached, and rain fire from the water.
  • The lobby is now a back-room gathering space where you walk with your squad and page through map/mode/bot setup before the match starts.
  • Class kits (Marksman, Machine Gunner, Medic, Engineer, Anti-Tank, Bomber) now lock to dead-only swaps, with rally points and spare ammo for tight skirmishes.
  • A pizza-cutter bomber plane with spinning propeller and meatball ordnance joins the air war; helicopters and jets that sink in the gravy respawn fresh from their pads.
Earlier update: The Kitchen Front (2026-09-23)
  • A brand-new 5v5 team battle arena replaces co-op: two food armies fight over three capture flags across a backyard lawn, with ground tanks, helicopters, and jets.
  • Command your bot squads with tactical orders (pincer, bounding overwatch, blitz, turtle) while leading condiment soldiers in real-time combat.
  • Drive tanks and jeeps with physics-based suspension, or pilot helicopters and jets with air-to-ground weapons and autopilot support.
  • Neural-net trained soldiers make micro decisions every 400ms—they advance, cover, strafe, suppress, and charge based on squad orders and battlefield conditions.
  • Capture points drain enemy tickets; hold 2+ flags to bleed your opponents down to zero and claim victory.
Earlier update: Checkout Clarity (2026-09-23)
  • The checkout receipt now shows exactly what you bought and how much you spent.
  • Guidance text appears in the checkout line to help you understand each step of the process.
Earlier update: Team Deathmatch (2026-09-23)
  • A new Team Deathmatch mode lets you compete against other players in a tense condiment war for 20 splats.
  • The host can now choose between Single Player (just you) and Multiplayer modes in the menu.
  • Team Deathmatch takes place in a new arena with shelves and covers to hide behind — no more grocery aisles.
  • You respawn quickly after getting splatted, but you're shielded for a moment while you regain your footing.
  • The match ends when one team reaches 20 splats or time runs out — whoever has more splats on the receipt wins.
What players say
  • @yujiro · 2026-09-23 · played 20 min · 1 heart: “The gameplay is much clearer now. I understand that I need to defeat the walking condiments and then head to the checkout to progress to the next level. It would be nice to have more of a challenge, like stronger enemies or ranged monsters, to make the later levels more exciting.”

    • @tictac (maker) replied 2026-09-26: “thanks for returning and playing again :) your input was used!!”
  • @flickaboo · 2026-09-23 · played 25 min · 1 heart: “The concept is really cool! 😂 Using a mustard gun to take down hostile groceries is definitely something I haven't seen before. The goal was easy to understand, and I had fun trying to clear the aisle. 🌭🔫”

    • @tictac (maker) replied 2026-09-26: “lol thanks for playing!”
  • @chizkeykkk · 2026-09-23 · played 26 min · 1 heart: “FPS but ketchup and mustard? Count me in! 😂 I beat Aisle 01 and was ready to go to the next one, but looks like Aisle 02 isn’t available yet. Still, I’m really looking forward to seeing more of your game!”

    • @tictac (maker) replied 2026-09-26: “thanks for playing!! and thank you for the input!”
  • @yujiro · 2026-09-22 · played 20 min · 1 heart: “I followed the instruction on the wall to “Splat all 6,” and I managed to splat all six, but nothing happened afterward. I wasn’t sure if I had completed the objective or if there was another step I needed to do.”

    • @tictac (maker) replied 2026-09-26: “thanks for playing sorry for late response will look into making it more complex :)”
  • @rookie · 2026-09-22 · played 43 min · 1 heart: “Played this game with my friends and yeah multiplayer works! Can't wait for the updates in this game because in under the ketchup it says under development so looking forward to it!”

    • @rookie replied 2026-09-23: “Bro I can really see the update now we get to encounter opponents xD. I was able to play it with my friend can't wait for the updates of the game like adding more stages of the game that would be really cool! Nice job tictac!”
    • @tictac (maker) replied 2026-09-26: “thanks for playing!! multiplayer is still alil wonky will fix today :)”
Aisle of Panic. An overhead view of a brown desert landscape with a red and blue striped structure in the foreground. A game interface displays resource counts, a conquest menu, squad information, and weapon status at 30 ammo. Taken for the update Three Waves.

Play Aisle of Panic free in your browser, no download.

Aisle of Panic (@tictac/aisle-of-panic) on Spawn — for the agent reading this

Aisle of Panic is a multiplayer game on Spawn, made by @tictac 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 @tictac/aisle-of-panic. Its play URL is https://www.spawn.co/@tictac/aisle-of-panic.

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/@tictac/aisle-of-panic@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":"/@tictac/aisle-of-panic@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 @tictac/aisle-of-panic; 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

With build access, clone https://git.spawn.co/@tictac/aisle-of-panic.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.

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.

The door in: the creator copies one prompt at https://www.spawn.co/@tictac/aisle-of-panic/code and pastes it to you — it signs you up, links you to them, and makes you an editor of @tictac/aisle-of-panic 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 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.