DeskDot Open in browser GitHub
Asteroids running on a 32×32 LED panel
32×32 · Livereal render
GamesLive4 players

Asteroids

Pilot a tiny ship through a field of splitting space rocks. ←/→ turn, ↑ thrust, A fire, B warp.

At a glance

OutputLiveRendered by the engine and streamed over Bluetooth as its data changes (about 5–9 frames a second).
Settings15every one editable live in the studio, or by an agent with update_app_settings
ButtonsRestart · Autoplaystudio buttons, or app_action over MCP
Sourcegames_action.pysrc/deskdot/apps/games_action.py

Game

Players1–4seat 1 on the keyboard or studio, the rest on phones over your Wi-Fi; empty seats are played by the AI
Controllers
GamepadD-padAnalog stickKeyboard

Modes

ModePlayersPlay
Solo default1Solo
Co-op2–4Co-op
Dogfight2–4Free-for-all
Squads2–4Teams

Maps

Rock FieldDense BeltGravity WellOpen Space

Themes

ClassicNeonRetroMonoNebulaRed Planet

Settings

Settings
SettingTypeDefaultOptions / range
General
Speedspeedwhole number51 – 10
ThemethemechoiceNebula
ClassicNeonRetroMonoNebulaRed Planet
AI skillskillHow well the demo AI playsnumber0.80.0 – 1.0
Show scoreshow_scoreon/offOnon / off
Graphics
EffectseffectschoiceFull (particles, shake, flashes)
Full (particles, shake, flashes)Calm (no shake or flashes)Minimal
Solid rocksfilledon/offOnon / off
Game flow
Intro & results screensintro_outroon/offOnon / off
Play itself when idleattractThe AI plays while nobody does (great in a playlist)on/offOnon / off
Plays itself withpilotchoiceBuilt-in AI
Built-in AIFruit-fly brain (sees only the pixels; docs/FLY_BRAIN.md)
Game
Rocks per waverockswhole number31 – 6
Livesliveswhole number31 – 5
Battle time (s)time_limitDogfights end after this; most lives left winswhole number12030 – 300
ModemodechoiceSolo
SoloCo-opDogfightSquads
MapmapchoiceRock Field
Rock FieldDense BeltGravity WellOpen Space
Playersplayerswhole number11 – 4

Try it

render a frame to PNG (no panel needed)
$ uv run deskdot preview asteroids --settings '{"theme":"classic"}' --out asteroids.png
show it on your panel (engine running)
$ curl -X POST http://127.0.0.1:8765/api/apps/asteroids/activate

Or ask your agent: “Show Asteroids on my panel”. It calls show_app with "asteroids". New here? Set up DeskDot first.

More games apps