PocketZot
About

About PocketZot

PocketZot is an unofficial DCSS app designed for iOS and Android phones in portrait mode. Play online on public WebTiles servers, or offline with a full build of DCSS that runs entirely on your device.

PocketZot login screen with two saved WebTiles accounts, a guest spectate option, and an offline game
ASCII dungeon map on Dungeon:1 as a Spriggan, with a ball python nearby, HUD, message log, and on-screen touch controls
PocketZot offline lobby showing a saved game with game details, past games, installed game data, options, and backup
Spectator view of a Felid run in Cocytus, rendered in ASCII, with the floating monster list
Spectator view of a Minotaur run in a Gauntlet, rendered in ASCII
Spectator view in the Shoals, rendered with graphical tiles

Getting started

DCSS has no app on the App Store, but you don't need one: open pocketzot.app and install it like an app with "Add to Home Screen". Then log in to a WebTiles server and play, or tap "Play offline". iPads and other tablets work too.

Features

Controls

The controls are organized into three tabs: @, >, and ?. The mental model is:

@ "micro"
Moment-to-moment actions, including during battle
> "macro"
Actions often taken outside of battle, or after clearing a floor
? "info"
Commands to get information about your character or game

Obligatory virtual keyboard also available.

Gestures

Offline play

Tap the "Play offline" card on the login screen to run DCSS directly on your device: no server, no account, no connection. The first launch installs the engine and tile data as a one-time download. After that, games start and play with no network at all, including in airplane mode.

Offline characters get named save slots, a past-games list with scores and full morgues, an editable options (RC) file, and a Backup feature that exports everything to a single file you can keep or move to another device. Saves live in your browser's storage, which the OS can evict under storage pressure: if a character matters to you, export a backup now and then.

Version support

Current stable and trunk DCSS are supported. Versions back to 0.24 generally work; older versions and forks may or may not. In particular, starting a new character on versions before 0.24 doesn't work. Offline play ships its own DCSS build.

Security and privacy

PocketZot has no accounts of its own. Your browser connects directly to your chosen DCSS server over an encrypted WebSocket, just like the desktop WebTiles client. Credentials go only in the login message and are never stored. Saved logins keep the server's session cookie, not your password. The site records anonymous usage counts.

How it was built

Most of the code was written with Claude Code. The design, product decisions, testing, and review were mine.

The source is available at github.com/pocketzot/pocketzot, licensed under AGPL-3.0-or-later; see ATTRIBUTION.md for its relationship to DCSS.

Feedback

Please send any comments, questions, or bug reports to pocketzot@proton.me. If you're enjoying the app, I'd love to hear from you.

Thanks

My thanks to the following people, whose feedback, feature requests, and bug reports have helped improve the app. In chronological order:

And thanks to everyone else who has sent a kind word. Your messages are the best part of doing this.