Frequently asked questions
The basics
Is it free?
Yes. The apps and the server are MIT licensed and free to download. The only thing that can cost money is an AI provider you choose to connect (OpenAI, OpenRouter), billed by them to you. A human Dungeon Master or a local model costs nothing.
Do I need an account?
Not with the project; there is no central service. A world hosted from your own app has an owner you name in one field. A friend's app-hosted world asks for a name and a room code. A self-hosted server has its own accounts, with or without Discord.
Do I need a server?
No. The desktop and Android apps host a world themselves and share it with a room code. A server is for groups that want the table reachable without anyone's app open, a shared local model, or the extras. See Which setup fits your table.
Can I play on a phone?
Yes, fully: host a world on it, or join one. Android today; an iPhone joins in Safari through the invite link.
Which rules does it use?
D&D 5e from the SRD 5.1, extended by the Open5e content pack (about 1,800 spells, 2,000 items and 3,200 monsters) and the settings' own classes and backgrounds. The app enforces the rules itself, about 96 percent of the SRD held by the engine; the narrator never edits a number. The whole SRD 5.1 is in the app as a searchable rulebook, from the home menu or the book button at the table.
Does it run on a Steam Deck?
Yes. Any Linux build runs; added to Steam as a non-Steam game it starts full screen in Game Mode and takes the controller on every screen. See Install on Linux.
The AI
Does the AI cheat, or fudge rolls?
It cannot. Dice, hit points, spell slots, conditions and the death track are computed by the app; the model only asks for rolls and narrates results through validated tools that are logged. A reroll of a narration never changes a die.
Which model should I use?
With a key: OpenAI's gpt-5.1 with gpt-5-mini as the utility model, the app's defaults. Locally: Qwen3.6 35B at the largest quantisation that fits your GPU with a 64K context, which the desktop app installs for you. Anything must support tool calling. See Local models.
The AI narrates fights but never rolls anything.
Tool calling is off or weak. Check --jinja on llama.cpp, that thinking is not disabled, that presence penalty is 0, and that the model supports function calling. Run Test backend on a server. Server troubleshooting.
The AI forgets things.
The context window is too small and the story is being compacted early. Serve a local model at 64K; set the context override for an unknown endpoint; OpenAI models get 128K. The Context tab shows what was cut.
Can we play in another language?
Yes. A campaign's Table language setting has fifteen languages, and the Dungeon Master writes the story in it. For story memory in that language, choose Many languages under Story memory in the desktop app's Settings, or set a multilingual EMBEDDING_MODEL on a server. The app's own buttons and menus stay in English.
Can Claude or Gemini be the Dungeon Master?
Through OpenRouter as a Custom backend, or with Claude Code as an agent program on a desktop or server. There is no direct Anthropic or Google backend.
Can a person run the table instead?
Yes: Human DM mode, with a console, a binder, maps and an assisted mode that hands pieces to the AI when wanted.
Hosting and joining
My friend's code says no table is online.
Their app is closed or not sharing. A code only leads somewhere while its host is online; ask them to open the campaign.
Do I have to open ports on my router?
Not to host from the app: sharing uses a tunnel. A self-hosted server needs its web port reachable (usually behind an HTTPS proxy) and, only for the built-in voice media server, one UDP and TCP port.
What happens when the host closes the app?
The world goes offline; nothing is lost. Friends see the host marked offline and rejoin when it is back.
Can I move my world to another machine?
A self-hosted server, yes: make a backup from Admin, Backup and restore it on the other machine; the archive carries the database key. See Backups and restore. A world hosted in the desktop app has no Backup section: quit the app and copy its data folder to the same place on the other computer. A world on a phone stays on the phone; export characters and workshops to take them along.
Why can't my Mac share online?
The tunnel helper does not ship for the Mac build yet. A Mac hosts for itself, shares on its Wi-Fi for a table in the same room, joins any world, and can run the server for a group. See Install on macOS.
Privacy
What does the project see?
Nothing about your play. With a shared world, the broker sees the tunnel's name and your address while you share. Everything else depends on the AI provider you connected, if any. See What leaves your machine.
Where is my API key stored?
On the server that uses it (the one inside your app, or the one you run), sent only to the provider, never to players.
How do I delete my account?
Account settings, Delete account, on the server the account lives on; the app offers it per saved server. A grace period set by the server's administrator applies. See Delete your account.
Dice, voice and pictures
Can I use my real dice?
Yes: typed physical entry per die shape, or Pixels Bluetooth dice, when the campaign's dice policy allows it. A requested physical roll waits for you. See Dice.
The microphone button does nothing in my browser.
Browsers grant the microphone on HTTPS or localhost only. Use the app, or ask the host for an HTTPS address.
Why are there no portraits or scene art?
No image backend is connected, or it is unreachable. Pictures fail soft to placeholders. Add an OpenAI key, ComfyUI or the FLUX worker; battle maps never need one. See Image providers.
Help
Where do I report a bug or ask for a feature?
Open an issue with the app or server version, the platform, what you did and what you saw. The in-app user guide and the tours cover the screens; this knowledge base covers the rest.
Is there a community?
Yes: the Open Dungeon Master Discord is the place for questions, tables looking for players, and talk about the project.