How to play 2D6 Dungeon with the companion app

Bonjour, hi! I've been building an app for a little while, and I finally recorded a video that shows how to actually play with it. Here it is.

First, the game

I didn't invent the game. 2D6 Dungeon was created by Toby Lancaster, and it's a dice-and-paper dungeon crawler. You roll dice and use that randomness to create rooms, discover what's in them, fight creatures and gain experience (XP).

You play with two books: one holds the rules, and the other is full of tables you roll on. There are also expansions. Everything is available in print and as PDF, which is what I used when I was live coding so viewers could follow along.

A companion, not a digital version

This app is not a digital version of the game. It's a companion app. I wanted to be able to play on the couch, in bed, or in the car (assuming you're not the driver), all places where throwing dice and drawing on a piece of paper isn't very convenient. Playing stays very manual on purpose, which is why it's called the 2D6 Dungeon companion App and not the 2D6 Dungeon game.

2D6 Dungeon App screenshot showing the map

How it's built

This isn't a one-shot AI-generated app. I've been crafting it for a long time, in my spare time and during my live streams. It's written in C# with Blazor and Fluent UI, stores everything in MySQL, and runs in containers orchestrated with .NET Aspire. You can run it locally (Docker works if you don't want to install anything) or deploy it to Azure Container Apps.

The code is open source and available on GitHub. If you just want to give it a try, there's also a hosted version. It runs on a very tiny server and I clean up the existing games roughly every week, so please don't use it for a game you want to keep. It's only there so people can try it.

What's in the video

Rolling dice with pen, paper and books is a bit different from using an interface, so the video plays through the start of a game in the app. I create an adventurer, roll the dungeon entrance, open doors with the room wizard, look up results in the tables, adjust a room on the map, and fight a couple of creatures, then save and reload the adventure.

Feedback welcome

A big reason I made this video is to get feedback. If something weird happens, if it doesn't match the rule book, or if you can't get it running, open an issue on GitHub (screenshots help a lot) or find me on Discord. I'd especially like to hear from people playing on a tablet, since that's what it was designed for. And of course, you'll need the books to play: the game is available from DR Games, and Toby often streams himself playing it with dice and paper.

Links

Reading Notes #720

Another week, another batch of links that caught my attention, and this one covers a lot of ground. From AI agents on Kubernetes and a security incident that should make every developer pause, to the authentication changes coming in .NET 11 and a sharp argument that slow software is a design problem rather than a language problem. Here's what I found worth sharing.


AI

Programming

Miscellaneous

Sharing my Reading Notes is a habit I started a long time ago, where I share a list of all the articles, blog posts, and books that catch my interest during the week. 

 ~frank

Reading Notes #719

Welcome back for another round of Reading Notes, the weekly list of links I wish I had found sooner. This edition leans into .NET performance with CBOR and NativeAOT, includes what you need to know before touching Xcode 27 in your MAUI apps, and answers the question everybody keeps asking about the Copilot SDK. Skim the headings and jump straight to whatever catches your eye.


Programming

AI

LowCode


Miscellaneous

  • Swipe, Match, Cook! (Alexandre Brisebois) - Really cool app that solves a real problem. Love it!

~frank