This is a multiplayer companion app for the Dungeon Crawler Carl RPG. It runs your sheet, rolls your dice, narrates the dungeon, and tracks combat — so you and your friends can focus on roleplay.
@ai to make the Dungeon AI react.Two AIs you'll meet:
Anything you type in the chat box without a / or @ prefix is normal table chatter — your party sees it, the Dungeon AI might react if it's something interesting (a kill, a crit, a scene change).
By design, the Dungeon AI is silent >95% of the time so it doesn't get annoying. If you want it to speak on demand, mention it directly:
| Mention | What it does |
|---|---|
@ai | Forces the Dungeon AI to advance the story / narrate something. |
@ai burst into the room dramatically | Same, but with your specific prompt. |
@dungeon | Same as @ai — alias. |
@gm | Forces the GM AI to respond — best for rules questions or "what would happen if I…" scenarios. |
@gm can I push the boulder onto the goblins? | GM rules a specific action. |
Mentions are case-insensitive. @AI works too.
Slash commands run actual game mechanics — they're the way to roll dice, attack, heal, etc. They don't ask the AI for permission; they just execute and post the result to chat.
| Command | What it does |
|---|---|
/roll 1d20 | Roll any dice expression. Supports 2d6+3, 1d4-1, etc. |
/check Athletics 12 | Skill check vs DC. Uses your skill rank + governing stat mod. Crits on natural 20, fumbles on natural 1. |
/check STR 15 | Raw stat check (no skill ranks). |
/attack Goblin | Attack a mob with your first weapon. Auto-rolls to-hit + damage, applies HP loss, costs an action. |
/attack Goblin 2 | Attack with weapon #2 in your attacks list. |
/heal 1 | Heal 1 HB slot (capped at max). |
/damage 3 | Take 3 damage (DR is auto-applied). |
/initiative | Roll initiative for the whole party + alive mobs (d20+DEX). |
/phase | Advance to the next combat phase. |
/endcombat | Manually end combat (clears mobs + actions). |
Most of these have buttons in the command bar above the chat input — use them as shortcuts.
Combat runs in 6 phases per round, in order:
/damage N if you take a hit./attack, /check, etc. You get 2 actions per round.Use /phase to advance. The phase bar in the Combat panel highlights the current phase.
Action economy: the panel shows actions remaining for each crawler. Each /attack spends one action.
Auto-end: when the last mob hits 0 HB, combat ends automatically and loot unlocks.
How to start combat: the GM (room creator) clicks Generate Encounter in the lobby panel. It spawns floor-appropriate mobs and a loot table.
When an encounter is generated, the loot drops appear in the Loot panel — but they're locked until all enemies are defeated. (We added this rule because Stockton tried to loot before killing the mushroom zombies. Lesson learned.)
You'll see a 🔒 "Defeat all enemies to claim loot" message and the Pick Up buttons will be greyed out until combat ends.
Once combat ends:
If you really need to grab something mid-combat (boss puzzle, cursed item drop), use /endcombat to end combat manually. Or have the GM rule it.
Click My Character in the top right. There are six tabs that mirror the official PDF:
/attack uses)./check uses).Stat modifiers: use the standard d20 formula floor((unenhanced - 10) / 2). Enter unenhanced + enhanced; the mod field is yours to set or you can ask the AI Assistant to recalc it.
HB track: click the slot circles at the top of the Identity tab to toggle damage. Or use /damage and /heal in chat.
Save: hit the green Save Character button at the bottom. Saves are synced to your room instantly.
The character sheet has a lot of fields. Filling them all by hand is tedious. The AI Assistant lets you describe what you want in plain English and drafts the changes for you.
How it works:
What it can do:
What it won't do: the AI is a drafter, not an authority. It never applies changes without your approval. It will list its assumptions in the warnings section so you can sanity-check.
Tip: when adding to a list (skills, attacks, inventory), the AI is instructed to preserve your existing entries. But always glance at the JSON — if you see your old skills missing, edit them back in before approving.
Q: The AI never speaks.
By design, it stays quiet 95% of the time. If you want narration, type @ai followed by what you want it to react to.
Q: My attack says "No attack configured".
You haven't added any attacks to your sheet yet. Open My Character → Combat tab and add at least one. Or use the AI Assistant: "Add a basic punch attack, 1d4+0 damage".
Q: My check says "Skill not found".
The skill name has to match what's in your sheet. Try /check STR 12 for a raw stat check instead.
Q: I want to GM, not play.
The room creator is the GM. Only the GM can generate encounters. We're building dedicated GM tools in v0.8.0.
Q: Can I bring my character to other rooms?
Not yet. Each room has its own party. Cross-room characters are coming in v1.0.
Q: The AI suggested something weird.
It's a draft. Edit the JSON before approving, or click Discard. Nothing changes without your green-light.
Q: Where's voice / TTS?
v0.9.0. Deepgram + ElevenLabs are scaffolded but not wired yet.
Built with way too much chaos. Roll well, crawler.