2D6 Dungeon is a classic style dungeon crawler, print and play, roll and write game designed for solo play. You explore randomly generated dungeon rooms, fight monsters and collect treasure as you gain experience and strive to become a legendary adventurer. Every adventure and dungeon is unique. I was created by DR Games and it's a paper and dice game.
This project is a digital version of the game, with creator's approval. It's a web application that allows you to play the game on your computer or mobile device. It's a work in progress. I progress by iteration improuving the code, the struture at each passes.
📅 Details on the progress of the project can be found on the project's board.
- Help with the construction of your adventurer.
- Save and load adventurers.
- Save and load adventures.
- Help with the rules when creating a new room.
- No need of physical dice.
- digital map.
- Help with battle rules
While I prototype functionalities, and make progress I create content (blog post and videos) to document my journey. Here the list of the content:
- 📄 Database to go! The perfect database for developer
- 📺 The perfect database for developers
- 🤳 Developer Database To Go
- 📺 How to Quickly Generate APIs for your Database
- 📺 How to Create a DEV Environment with Multiple Dev Containers
Requirements: Docker Desktop must be installed and running on your computer.
Want to play 2D6 Dungeon? Follow these simple steps:
-
Create a game folder
- Create a new folder on your computer (name it anything you like, e.g., "2d6-game")
- Open a terminal/command prompt and navigate to that folder
-
Download the configuration files
- Run these commands to download the game configuration:
curl -o docker-compose.yml https://raw.githubusercontent.com/FBoucher/2d6-dungeon-app/main/docker-compose.yml curl -o .env https://raw.githubusercontent.com/FBoucher/2d6-dungeon-app/main/.env.example
- Run these commands to download the game configuration:
-
Customize the settings
- Open the
.envfile with a text editor - Change
MYSQL_ROOT_PASSWORD=changemeto a password you choose (something simple is fine) - You can leave the other settings as they are
- Open the
-
Start the game
- Run this command:
docker-compose up -d --build - Wait a minute for everything to download and start
- Run this command:
-
Play!
- Open your web browser and go to:
http://localhost:8080 - Start your adventure!
- Open your web browser and go to:
To stop playing: Run docker-compose down in your game folder.
The solution uses .NET Aspire to manage all the services and website.
- You will need Docker or Podman, and .NET 10 installed.
- Clone the repository locally.
- Open the solution in VSCode or Visual Studio and press F5. If asked for the starting point of the solution select the orchestrator
AppHost. Once the solution starts it will:- Open the .NET Aspire Dashboard in a web browser.
- Create a MySQL container, create the database using the SQL script included.
- Create a data API, in a second container.
- Start the 2D6 Dungeon webApp.
Once everything is ✅ Running, click on the Endpoint of the webApp
2d6-dungeon-app is built for the community, by the community - and maintained by Frank Boucher. Your contributions are welcome! There a diagram of the classes services and database tables to help visualizing the structure. Note that it's always evolving.
Take a look at CONTRIBUTING for details.
Join the Discord community to discuss the project, ask questions, and share your ideas.