
32×32 · Livereal render
GamesLive4 players
2048
Slide and merge tiles towards 2048; colour tells the value. The AI hugs a corner. Arrows slide. B in the demo opens the menu: Race on 2–4 small boards, or Relay (take turns on one board).
At a glance
OutputLiveRendered by the engine and streamed over Bluetooth as its data changes (about 5–9 frames a second).
Settings14every one editable live in the studio, or by an agent with
update_app_settingsButtonsRestart · Autoplaystudio buttons, or
app_action over MCPSourcegames_puzzle.pysrc/deskdot/apps/games_puzzle.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
SwipeD-padKeyboardGamepad
Modes
| Mode | Players | Play |
|---|---|---|
| Solo default | 1 | Solo |
| Race | 2–4 | Free-for-all |
| Relay | 2–4 | Co-op |
Maps
ClassicStones
Themes
ClassicNeonRetroMonoTilesIceEmber
Settings
| Setting | Type | Default | Options / range |
|---|---|---|---|
| General | |||
Speedspeed | whole number | 5 | 1 – 10 |
Themetheme | choice | Tiles | ClassicNeonRetroMonoTilesIceEmber |
AI skillskillHow well the demo AI plays | number | 0.8 | 0.0 – 1.0 |
Show scoreshow_score | on/off | On | on / off |
Show numbersnumbers | on/off | On | on / off |
| Graphics | |||
Effectseffects | choice | Full (particles, shake, flashes) | Full (particles, shake, flashes)Calm (no shake or flashes)Minimal |
| Game flow | |||
Intro & results screensintro_outro | on/off | On | on / off |
Play itself when idleattractThe AI plays while nobody does (great in a playlist) | on/off | On | on / off |
Plays itself withpilot | choice | Built-in AI | Built-in AIFruit-fly brain (sees only the pixels; docs/FLY_BRAIN.md) |
| Game | |||
Race to tilerace_target | choice | 256 | 1282565121024 |
Junk attacksjunkRace: merging 64 or more drops a junk tile on every rival | on/off | On | on / off |
Modemode | choice | Solo | SoloRaceRelay |
Mapmap | choice | Classic | ClassicStones |
Playersplayers | whole number | 1 | 1 – 4 |
Try it
render a frame to PNG (no panel needed)
$ uv run deskdot preview g2048 --settings '{"theme":"classic"}' --out g2048.pngshow it on your panel (engine running)
$ curl -X POST http://127.0.0.1:8765/api/apps/g2048/activateOr ask your agent: “Show 2048 on my panel”. It calls show_app with "g2048". New here? Set up DeskDot first.
More games apps

Games
3D Dungeon Raycaster
First-person 3D raycasting dungeon crawler with textured walls and radar.
4 settings

Games
Asteroids
Pilot a tiny ship through a field of splitting space rocks. ←/→ turn, ↑ thrust, A fire, B warp.
15 settings4 players4 maps

Games
Breakout
Smash a colourful brick wall; new patterns every level. Left/right moves the paddle. Co-op: two paddles and two balls on one wall. Versus: a split field, first to clear their half wins.
15 settings2 players3 maps

Games
Chess Puzzle
Chess.com's daily puzzle on a 32×32 board, then the solution plays out move by move.
8 settings