An FPS where

You draw
the map

Every match starts with 60 seconds where the whole lobby draws the arena in orbit above the Earth. Ramps, platforms, walls, hoops, letters, anything. Then you fight on whatever got drawn.

1

Draw the map · 60 s

Three tools and a limited amount of ink. Every stroke becomes solid geometry the moment you let go, and the bots in your lobby are drawing at the same time, each with its own name-tagged cursor.

A drawn ribbon becomes a ramp along the bridge

1Ribbon

Draw in the air. Flat lines become floors, slopes become ramps, loops become hoops.

A closed loop becomes a round platform

2Ground

Paint walkable paths. Close a loop and it fills into a platform.

A line on the floor rises into a cover wall

3Wall

Lines on the floor rise into cover. Loops become rings to hide in.

Nineteen bot cursors fill the arena

∞Everyone

The whole lobby draws at once: springs, bridges, castles, even giant letters.

2

Fight on it

The strokes turn white, the camera drops you in, and the arena your lobby just drew is the level. Falling off the map counts, so does knocking someone off it.

Gliding down the arena under laser fire

SPACEMove

Run up the ramp you drew, jump, double-jump, then hold Space to glide on your jet.

A firefight between springs and hoops

12Weapons

A scoped laser rifle and a plasma lobber with splash and knockback, so yes, you can rocket-jump.

The finished arena floating above the Earth

↻Keep drawing

Every match is a new map. After a round, keep drawing on top of the same one.

TUTORIALDraw, move, glide and shoot with a checklist, no timer.
4 VS 4Two teams of four, one bridge in orbit.
10 VS 10Twenty artists on a longer bridge. Total chaos.
FREE FOR ALLEight players on a round arena, everyone for themselves.

Controls

Draw

Left-dragDraw
1 · 2 · 3 / TabRibbon · Ground · Wall
Right-drag / A DRotate the view (Mac: Ctrl-drag)
W S / wheelTilt / zoom
Q ELower / raise Ground and Wall strokes
ZUndo your last stroke
EnterReady

Fight

Mouse / WASDLook / move
SpaceJump · double-jump · hold to glide
ShiftSprint
Left clickFire
Right clickAim down sights (Mac: two-finger click)
1 · 2 · Q / wheelLaser rifle · plasma lobber
R · EscReload · pause

Play offline

The whole game is one 760 KB file. Download draw-the-map.html, double-click it, and it opens in your browser. No install, no internet needed. Every sound is synthesised and the Earth is procedural, so there is nothing else to fetch.

WindowsmacOSLinuxAny modern browser
DOWNLOADdraw-the-map.html

How it's built

  • Vanilla JavaScript, three.js and three-mesh-bvh, bundled with Vite.
  • Strokes are swept into bands and extruded slabs, then merged into one BVH for capsule collision.
  • Bots plan shapes, draw them with their own cursors, then fight with ledge probes and landing prediction.
  • Every sound is synthesised with WebAudio. The Earth, clouds and atmosphere are procedural.

Run it yourself

git clone https://github.com/totodiles-codes/drawfire.git
cd drawfire
npm install
npm run dev          # http://localhost:5173
npm test             # geometry, physics and bot tests