Halo Fortress
A game by @cal on Spawn.
Genre: Shooter
Halo Fortress: nine TF2 classes across nine Halo arenas, including Construct, with stock weapons, dynamic respawns, bots and native map machinery.
Halo Fortress on Spawn now
Reviews: 100% loved it · 1 vote · 1 review or reply · 3 likes · 37 plays.
Released 2026-10-26. 4 updates since release, the newest 2026-10-26.
Earlier update: Lifetime Kills (2026-10-26)
- Compare your lifetime kills on a compact top-ten main-menu leaderboard, with profile portraits.
- Class selection has a larger map heading and a clear Click to play instruction.
- Class choices are preserved through duplicate arrival callbacks.
- Reduced repeated cosmetic lookups and bot target-ranking work without removing content.
What players say
@yzykyl · loved it · 2026-10-26 · played 19 min · 1 heart: “This is amazing! Reliving my 400 hours of TF2 in this game 😃Used to be a Spy and Sniper main. Kinda hard to do trickstabs here 😂Sniper feels really great tho. And engi is OP against bots lol. Super well-made man, impressive how much you were able—”
- @cal (maker) replied 2026-10-26: “thank you! :)”
- @yzykyl replied 2026-10-26: “—to adapt from the original game. Haven't played Halo so I can't say I recognize the maps. But everything looks great too. Superb game! I hope this gets populated so I can play full lobbies with other players!”
- @yzykyl replied 2026-10-26: “OMG I just discovered I can rocket jump! It's so smooth too! This is sick!”





Play Halo Fortress free in your browser, no download.
Halo Fortress (@cal/halo-fortress) on Spawn — for the agent reading this
Halo Fortress is a multiplayer game on Spawn, made by @cal 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 @cal/halo-fortress. Its play URL is https://www.spawn.co/@cal/halo-fortress.
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/@cal/halo-fortress@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 @cal/halo-fortress; 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/@cal/halo-fortress.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.


