A portable, offline-first DM tool.
Build worlds, run sessions, play together — all in one app.
Website · Releases · Report a Bug
Platforms: Android · iOS · Windows · Linux · macOS | Languages: EN · TR · DE · FR
Planned for upcoming releases — order not final, scope may shift between patch and minor versions.
- Better battle map system — The VTT upgrade has landed: snap-to-grid tokens, creature-size auto-scaling, 5e diagonal measurement rules, AoE templates (cone/line/sphere/cube/sector), and vector shape annotations. Still planned: smoother large-grid performance, stat-block token previews, and line-of-sight + dynamic vision.
- Built-in D&D 5e package visuals — Cover art, monster/species/class portraits, equipment icons, and spell glyphs bundled with the SRD core pack so default content stops looking like raw text.
- More online storage for users — Larger per-account quota for counted cloud media and selectable retention tiers; current beta cap is intentionally conservative (portraits, covers and live session media already sync free of quota).
- Deeper D&D 5e implementation — Close remaining SRD gaps (Drow 120ft superior darkvision, Berserker condition immunities, Lore Bard L3 extra skills, missing
auto_granted_bymetadata), automate more class/subclass effects, and finish bidirectional sync of mechanical resolutions across devices. - Full custom-content editors — The rule/effect authoring editor has landed; WYSIWYG editors for schemas, templates, and packages are still in progress so creators stop hand-editing JSON.
Build a setting, then bring it to the table.
- Mind Map — Infinite canvas, Bezier connections, workspaces, undo/redo.
- World Map — Pin system with location data, fog of war, timeline metadata per pin.
- Era Timeline — Track historical eras and waypoints; pin events to specific points in time. Drill into any location for nested pins and a per-era map image.
- Entity System — Schema-driven cards with 16 field widget types (text, markdown, image, stat block, dice roller, and more).
- Templates & Packages — Built-in D&D 5e schema, user-defined templates, full import/export.
- Rule & Effect Editor — Catalog-driven editor for authoring feat/feature mechanics (effect kind + target + per-rule params + predicates/scaling/activation), with non-blocking validation warnings. DM-editable core rule constants (ASI levels, HP-per-hit-die, AC base/shield, proficiency-bonus breakpoints) per template.
Works fully offline. Join the beta to sync your worlds across devices and share them with collaborators.
Run a session without breaking flow.
- Combat Tracker — Initiative, HP, conditions, turn management, automatic event log.
- Battle Map (VTT) — 6-layer canvas (grid, token, annotation, fog, terrain, decal). Draw tool, persistent rulers and circles, fog of war. Creature-size auto-scaling sizes tokens to their D&D footprint (Large 2×2, Huge 3×3…). 5e diagonal measurement with Euclidean / 5-10-5 (DMG) / 5-5-5 (PHB) rules, mirrored to player distance labels. AoE templates — cone, line, sphere, cube, and sector wedges with fill colors, persistent across reload. Vector annotations — rectangles, lines, and text labels on background / object / GM-only layers, each individually deletable. Per-player projection controls — Show All HP, Hide Token HUD, hidden tokens (DM-only), and DM viewport sync so players mirror your zoom/pan without letterboxing. Reuse already-uploaded location battlemaps without re-uploading.
- Session & Campaign Management — Rich notes, timeline tracking, encounter setup, save state across sessions.
- Soundpad — Layered audio, gapless loops, volume fade, custom themes. Download ready-made soundpacks (music themes, ambience, SFX) from the in-app catalog — browse them under Marketplace → Soundpacks or in Settings.
- PDF Viewer — Page navigation and zoom for your reference docs.
- Dice Roller — d4 through d100.
Second screen, three ways:
- Same device — Pop out a second window for your TV or projector.
- Different device — Cast battle maps, entity cards, and images to a tablet or laptop on the side.
- Online players — Project directly into every connected player's app. Per-world manifest replays the active view so late joiners catch up instantly.
Roll up a character, then take it anywhere.
- Character Creation Wizard — SRD-driven: species, class, background, ability scores (point-buy, standard array, roll, manual), skills, equipment, traits.
- Level-Up Planner — Auto-applies HP, proficiency bonus, hit dice. Queues ASI/feat, fighting styles, subclass, spell choices as Pending Choices you resolve inline.
- Multiclass — Full SRD prereq checks (AND/OR ability gates) with human-readable rejection reasons. Multiclass caster slot math built in.
- Weapon Mastery — Auto-grants mastery slots per class/subclass; takes the max across overlapping feats.
- Online Worlds — Join any world the DM publishes, claim a character, see live updates from every device at the table.
- Battle Map Marks — Place your own markers on the projected map during play.
Everything core works fully offline. Online features (sync, sharing, marketplace, social) require a free account.
- Closed-Beta Online Play — When a DM is in the beta, the whole table plays together online. Only the DM needs a beta slot; players just join.
- Share a World — Publish a world so players can join and see live updates. One active invite code per world; generate, copy, revoke at will.
- Realtime Sync — Character, member, and entity changes stream to every connected client via CDC. Offline edits reconcile on reconnect.
- Roles — Player and DM roles with row-level security.
- Character Ownership — Claim a world character, release it back, or delete it (DM only, if ownerless).
- Personal Cloud Sync — Back up characters, worlds, templates, and packages to your account; pick them up on another device.
- Cloud Media Tiers — Portraits and covers sync free of quota. Entity images and battle maps count against your quota with per-kind size limits. Live session media uses a shared transient pool that does not bill your save space.
- Graceful Offline — Network screens show a clean "You're offline" placeholder and auto-recover. Outbox writes flush on reconnect.
- Publish & Share — Worlds, templates, packages, characters as immutable snapshots with title, description, tags, changelog, cover image.
- Versioning — Every publish is a new version. Lineage tracking links every release of the same item.
- Browse & Download — Filter by type, language, tags. Atomic download counters; built-in vs. community sections.
- Contents Preview — See what a world or package holds before downloading. A publish-time content summary (template name + per-category entity counts and names) drives a preview dialog and richer cards — no need to pull the full payload to know what's inside.
- Integrity — Database-enforced immutability on core metadata prevents silent edits post-publish.
- Official Content — A curated, app-owned catalog of first-party packages served from a public CDN. Surfaces under Marketplace → All / Packages with a details dialog and an Install action; works offline via a bundled fallback manifest. Banner art downloads from the CDN and is materialised as the local package cover on install. Includes Open5e-sourced content — 22 packages spanning thousands of monsters, spells, magic items, and full chargen data (classes, subclasses, species, backgrounds, feats).
- Public Profiles — Username, display name, bio, avatar, follower counts. Discovery opt-out supported.
- Follow System — Optimistic follow/unfollow; browse followers and following per profile.
- Activity Feed — Text and image posts, likes, switch between all and following only. Server-side rate-limited.
- Direct Messaging — Realtime 1-to-1 and group chats. Unread counters, group rename, member leave, admin-managed deletion.
- User Discovery — Suggested profiles and username search with prefix matching.
- Game Listings — Post open games with system, seats, schedule, language, tags. Filter by language/system/tags.
- Applications — Players apply with a message; listing owners accept, reject, or applicants withdraw.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
- Download
DungeonMasterTool-Android.apkfrom the latest release. - Enable "Install from unknown sources" if prompted.
- Open the APK to install.
- Download
DungeonMasterTool-Windows.zipfrom the latest release. - Extract and run
dungeon_master_tool.exe.
- Download
DungeonMasterTool-Linux.zipfrom the latest release. - Extract and run:
unzip DungeonMasterTool-Linux.zip cd bundle ./dungeon_master_tool
- Download
DungeonMasterTool-MacOS.zipfrom the latest release. - Extract and drag
dungeon_master_tool.appinto Applications. - Remove the quarantine flag:
sudo xattr -rd com.apple.quarantine /Applications/dungeon_master_tool.app
- Launch from Applications or Launchpad.
Note: iOS builds are currently unsigned. Sideload via Xcode or a signing service.
- Download
DungeonMasterTool-iOS.ipafrom the latest release. - Sideload using Xcode, AltStore, or similar.
cd flutter_app
flutter pub get
dart run build_runner build --delete-conflicting-outputs
flutter runSee flutter_app/README.md for full developer documentation and CONTRIBUTING.md for contribution guidelines.
Licensed under CC BY-NC 4.0. See the LICENSE file for details.
| Platform | Link |
|---|---|
| GitHub Issues | Report a Bug |
| @erenorhun | |
| Orhun Eren Yalcinkaya | |
| orhun868@gmail.com |







