Tabletop RPGs are back in fashion a serious way. Thanks to a recent tidal wave of podcasts, live streams, and YouTube series, games like Dungeons & Dragons, Vampire: The Masquerade, Warhammer 40,000, and other TTRPG systems have never been more popular.
Aside from finding a day all your friends are available, the most difficult part of playing can be handling and juggling different maps. Struggle no longer with paper printouts and upgrade your GM’s table with an old TV, a Raspberry Pi, and a bit of ingenuity. Now grab your carpenter’s tools and roll a skill check…
WARNING!: Power Tools In this tutorial we use various hand and power tools that can be very dangerous. Please seek adult supervision.
This article first appeared in The MagPi 86 and was written by Rob Zwetsloot
Step 01 Choose your Raspberry Pi
Not every Raspberry Pi will be quite suited for this use. The main function of Raspberry Pi here is to launch into a web app from full-screen Chromium. It’s not the lightest webpage in the world, so while something like a Raspberry Pi Zero might seem like a no-brainer, we’d suggest doing some tests first. We’re using a spare Raspberry Pi 3 and it works just fine, and a Raspberry Pi 3A+ would probably do the job as well, even with the reduction in RAM.
If you’re buying a brand new Raspberry Pi for the job, go for the 4GB Raspberry Pi 4 so that you have more room to grow with possible future TV and web upgrades.
Step 02 Set up Roll20
The real magic for this interactive table comes from Roll20 – it’s a free online service that is normally used to let people remotely connect to each other for a TTRPG game. As well as being able to talk to your group and GM, you can roll dice within the app and control tokens of your characters.
It also allows a GM to display a map that has a ‘fog of war’ – areas that the players cannot see. From their computer, they can reveal the map as the players explore. Sign up for an account – if you’re the GM, you might want a secondary account to act as the ‘player’ account for the screen.
Step 03 Initial screen setup
A fresh install of Raspbian is best for the table, we find. If this is your first time using a Raspberry Pi, check our Quick Start guide for instructions on how to install Raspbian, including the normal first-time setup stuff like connecting to wireless LAN and setting a password, etc.
Once that’s all done, open Chromium and log in to your Roll20 account that will be used for the screen. Go to the My Games section and right-click and ‘Copy link address’ on the Launch Game link for the campaign you want to show on the screen.Open Chromium’s settings, scroll down to ‘Open a specific page or pages’ (under the ‘On start-up’ section), and paste the link into there.
Step 04 Raspbian tweaks
To get Chromium to launch at startup, you can add a quick line to the bottom of the profile config file. Open the Terminal and use:
sudo nano /etc/profile
Use an arrow key to scroll to the bottom of the file and add:
chromium-browser --start-fullscreen &&
Press CTRL+X, then Y to save and exit. Now on a reboot, Raspbian will open Chromium in full-screen straight to your map.
We did a bit of customisation of Raspbian as well. You can swap the Raspberry Pi Desktop splash screen by changing the splash.png file in /usr/share/plymouth/themes/pix/ (we used the Dungeons & Dragons ampersand logo) and we also changed the wallpaper on the desktop for the few moments it appears on boot.
Step 05 Measure your screen
If you want to build a frame, you need to make sure you know how big your TV is. Measure the length and width precisely, as well as the depth and the bezels. For the frame, you want to use planed lengths of timber to create the sides of a sort of box.
Make sure the width of the timber is larger than the depth of the TV. We used 18 mm-deep cuts of wood to try to keep the weight down; however, you may choose thicker.
We used moulded skirting boards for the façade of the frame, meaning we didn’t need to create a chamfer on a piece of wood. The width of the skirting should cover the depth of the main frame, as well as the bezel on the TV.
Step 06 Cut your wood
We recommend using a mitre box to make sure your cuts are straight or perfectly angled. We created the frame by cutting the wood for the top and bottom of the TV to the exact length of each side, and then cut the two side bits of wood to fit their size, plus twice the depth of the wood. This way, the side parts cover the ends of the wood used for the top and bottom.
For the façade, we measured how long each piece of wood would be at the top (side length plus twice the wood depth) and then cut at a 45-degree angle inwards so that the chamfered edge was the shorter edge of the wood.
Step 07 Assemble the frame
This step looks easy, but is a bit tricky. You need to nail the shorter (side) lengths of wood to the longer (top and bottom) lengths of wood to create your basic box-like frame. Use clamps where you can to keep the angle at as close to 90 degrees as possible. We recommend nailing one of the short (side) parts of wood to both of the long pieces (top and bottom), before closing it off with the other side part of wood.
Step 08 TV check
Before going further, make sure your measurements were correct and fit your TV into the box. At this point you might want to make note of any extra protrusions, or drill some holes to access buttons on the television if necessary.
If it doesn’t fit properly, you may need to take apart the frame and do it again, or make sure you measured correctly in the first place.
Step 09 Assemble the façade
You should probably glue the edges of the façade together to make sure they’re all even and nice before attempting to add it to the frame.
We didn’t do that, and instead clamped each piece to their specific side and added a few nails to attach them. In our case, we had quite wide pieces, so we had to make sure they didn’t dip inwards while we hammered them in. Gluing beforehand should allow you to avoid that.
Step 10 Install the TV
Once the façade is added, turn over the frame and lower your TV in. We screwed in some wide brackets to the sides of the frame to keep the TV in place. This also means you can remove the TV if you need to at some point. Turn it over and admire your handiwork.
Step 11 Final adjustments
You’ll need to run a couple of power cables from beneath the frame to power the TV and Raspberry Pi – we used a rotary tool to carve out a little bump that would allow cables (along with a mouse cable) to run freely from under the frame.
Now it’s time for the first proper test, so try to get your friends over (if their schedules allow it) and try not to spill any canned drinks onto the new table.
Step 12 Further upgrades
The table looks nice, but there are always ways for it to look nicer. You could carve the façade parts to make it look more ornate, and give it a coat of dark varnish to give it a more woody look.
If the bezels on the TV you used aren’t particularly deep, you could also add a layer of clear acrylic as protection to the real screen. Finally, maybe add carrying handles if you plan to move it around a lot.