We love to play D&D

It just has everything! Friends, food, fun, and a whole lot of writing down numbers in the margins of a sheet of notebook paper while you try and figure out who had the highest initiative roll. As a DM (Dungeon Master, or game manager) and a player, we've tried using all sorts of online D&D tools to streamline our games, but have found them to either be insufficient for our needs, or too stifling, digitizing away the purpose of a tabletop game among friends. We wanted to create something in the middle ground, and that's what we ended up making!

What it does

Any projector, any size

Our D&D projector software automatically detects a connected projector, and will open up a dashboard window to your desktop and a display window to the projector screen automatically. The desktop dashboard provides tools for you, the DM, to run your game! You can create and load worlds, characters, and monsters. You can hide the nooks and treasures of a darkened cave, or show off the majesty of an ancient temple. You can easily and rapidly perform a variety of computerized die rolls, and apply damage to players and monsters alike!

How we built it

Good old reliable Java

We used Java and the Swing library to create our windows and display the game world. The display window is projected onto a table or floor with any kind of connected projector. This allows the players to interact with real game pieces in real time, while allowing the DM to alter the game board cleanly and rapidly in response to the state of the game.

Challenges we ran into

The bigger the application, the harder it crashes

Creating such a large application with so many different features is something we haven't done before, so the scope definitely posed a challenge. Additionally, the organization of the code into a robust, scalable codebase proved difficult, but we feel we did a fine job in the end.

Accomplishments that we're proud of

A game board you can touch but you can't break

We've created a fun and interesting way for people to play D&D with nothing more than their laptop and a projector! We've removed many of the annoying or time-wasting aspects of the game, while simultaneously maintaining the authenticity of a tabletop RPG played with real pieces in real life.

What we learned

Collaboration? More like code-llaboration!

We learned a lot about how to put together a multi-windowed, expansive application, with support for many different features during program execution and the need for advanced file storage afterward. We also got better at communicating between the frontend and the backend throughout development.

What's next for D&D Projector

Game on!

D&D is a ridiculously large game, with a vast set of rules, regulations, and variations. With the scalable interface we've built so far, we plan on expanding our dashboard much further to include spells, interactions between players and NPC's, hunger/thirst, exhaustion, and many other parts of the game we feel could be streamlined. We fully intend to be careful in what we add, as retaining the authentic feel of the game is important to us. Our next D&D session is going to be a very interesting one indeed, and we're really looking forward to it!

Built With

Share this project: