I like rules-light story games like Fiasco Classic. I have friends who live far away, who I haven’t seen in years. Like all grownups, getting an ongoing campaign together is awful because schedules. And I like making technology work for me.
All of these led me to figure out a way to make have ongoing Fiasco games at different times and online to solve these problems, costing only some sweat equity, and making it as easy as possible on the players.
If you are interested in playing with us, please contact me directly.
Sorry, but I’m not comfortable opening up my game to the entire internet at large.
Differences In Play
For players: Very little from your point of view, except the “facilitator” (me) handles all the crunchy bits, so you can focus on actually playing. Roll20 has the “playmat” and scenario bits, we use the whiteboard during the setup phase to establish relationships. You don’t need to know how to play; doing this online actually makes it easier for you to jump right in.
For “facilitators”: It differs a little from “regular” Fiasco, in that I’m serving a “facilitator” role – kind of like a “banker” in a tabletop board game. This also streamlines it a lot for the players, and means they don’t really need to know anything about the game coming in. This also works around the biggest limitation with Roll20 – controlling the dice tokens. Players will “ping” the playmat in Roll20 to indicate outcome instead of moving a die toward a player, and likewise if something is a safety concern. Also, I assume in this walkthrough that you’re familiar enough with Fiasco and Roll20 that I can explain the differences without explaining each bit. (Seriously, go buy the PDF. It’s worth it.)
What The Players Need
From a player point of view, they need a browser that can have two tabs open – one for the whiteboard, one for Roll20 – and Discord for voice. Before the game, I strongly prefer players sign up for a spot using a signup service, but if there’s an open spot at the time of the game, “walk ins” are more than welcome.
Notes On Play
Even more so than “regular” Fiasco, I’ve found this advice very useful for all participants.
- Scenes are short, and your character should want something so the scene is dynamic.
- Emphasize that “good” and “bad” relate more to “Does the character that’s the focus of the scene get what they want or not?”
- The Rule of Cool applies – if the rules say one thing, but the story feels right another, we’re going with story every time.
- Do “Yes, and” or maybe “Yes, but”. Brennan Lee Mulligan’s way of handling chaos applies here. For example, in the last game, a player and I switched “turns” because it made sense for the story and that way also kept us within the rules.
Everything below this point is the “how to” and should be “behind the scenes” for the players. I really want to keep the technology out of the way for the players as much as possible.
I looked at a lot of different options – MythicTable, Mumble or Jitsi for voice/video – but really, they didn’t quite meet the needs of having a low bar of entry for the players or having the feature sets I wanted/needed. I ended up settling on Roll20,Discord, Signup.com, and a selfhosted whiteboard ( find it at https://github.com/cracker0dks/whiteboard ).
I chose this particular whiteboard for two main reasons. First, you can put images on it easily, and you can export both images and your setup as JSON. That latter means it’s really easy to set it up once properly and then keep re-using that setup. I have a three, four, and five person “default” setup that I can bring up in just one or two clicks. It is a little finicky, but all of the self-hosted whiteboards seem to be. Also, it has a Docker setup, which is nice. The installation instructions are pretty straightforward, I also used basic authentication in front of it to add another layer of security.
The whiteboard is needed because that way you can dynamically fill in relationships, objects, and so on during setup.
While this setup is designed so you can do it all with just sweat equity and free tiers, if you’re able, support the companies providing services you use, okay?
Creating Your Resources
The main things you’re going to need to create are: Playmat, die/player icons, the setup cards, and the playbook pages. The last is actually the hardest; everything else was pretty straightforward. I used the GNU Image Manipulation Program for creating the images.
I used Iconfinder to get base die images, player icon images, and images for the cards. The most distinctive Fiasco font is the free font “Hitchcock“. You’ll want to make 12 die images (1-6 white and dark), all the cards you want to use, and the playmat. The annotated playmat below is from a screenshot after I put the die icons on in Roll20.
As you can see, I also put some of the “rules” on the playmat as well, and added my own yellow and red pingable areas if problematic content comes up for players to use.
The hard part is getting the playsets (and tilt/aftermath tables) into images. I used the powerful ImageMagick to make it work, though I suppose you could do it all by hand if your image editor can import PDFs. ImageMagick is command line, so here’s the incantation (heh) to change a PDF into a series of JPGs:
convert -density 300 PdfToConvert.pdf Output-%03d.jpg. If you want to do a whole stack of things at once, you can do something like this on a linux system:
fdfind . | xargs -I % convert -density 300 % %-.jpg.
One important note – the default setup of ImageMagick will probably crap out on the big rulebooks. I had to change policy.xml as per the instructions here: https://stackoverflow.com/questions/31407010/ddg#53699200
Once I had the relevant pages as image files, I used my image manipulation program to smush the setup pages into one large image. This actually makes setup much much easier because you’re not flipping through a lot of pages in a book or PDF. You’ll use these later.
Setting Up Services
Spin up/set up your whiteboard. There’s instructions on the GitHub page; port forwarding and the like are things you should be familiar with if you’re self-hosting. StackOverflow is your friend. Set up some “default” setups by importing images and save them as JSON so you can reuse them easily. This is what my default 4-person setup looks like before play.
Set up your game in Roll20. I’ve got a quick description, and everywhere I could, I put links to the other services as well so players could easily find them.
The nice bit about Roll20 is the use of map pages to guide the flow of the game. Upload your die images, your rules tables, and the playbook setup images you created to Roll20. I organized mine into “core rules”, dice, and a separate folder for each playset.
As you can see in the image above, I’ve made those images “map layer” images (and turned off the grid lines). That way we can keep focus where it needs to be.
I set up a Discord server, rules, roles, and channels. This is largely to reduce the possibility of “raids” (because trolls exist). Even if some get through, the “in-game” channels require me to personally approve folks.
I’m using two bots – Dyno for roles and auto-moderation, and JMusicBot for music. Roll20’s music seems to reset the volume between each track in a playlist, and besides, JMusicBot can handle an icecast stream from my own rig, so I have full control of that instead of relying on SoundCloud/Youtube/etc like most of the music bots do. Instructions abound on the internet on how to set up a Discord server, and each of those two bots are well-documented.
I only use voice because I’ve found – particularly if you use WebRTC like Roll20 does – that video takes a lot of bandwidth when you’ve got a good number of people, and if one person’s bandwidth gets exceeded, it can cause problems for everyone. Also the big video solutions cost money for longer than 40 minutes.
Finally over to SignUp.com, which actually impresses the heck out of me as a volunteer coordination platform. It’s featureful as heck at the free tier. I put a description of which playset is being “run” on each instance.
The hard part is over.
One thing I’ve found while facilitating these is that die rolls SLOW EVERYTHING DOWN. So I pre-roll the dice for the setup and place the die tokens on the playmat and on the setup pages. I learned the hard way that is the best way for everyone to keep track during setup. As the facilitator, just delete the die token off the setup page as you go through setup.
Once everyone’s “present” and the rules are clear to everyone, start with setup. Move the players to the setup page on Roll20 so they can see what they’re choosing. In the other browser tab, the players (or facilitator) can annotate the whiteboard as you go.
I highly recommend making a screenshot immediately after setup is completed. That way if things get jacked up on the whiteboard, you can reset it, upload the screenshot you made, and assign it to the background layer so it doesn’t get messed up again.
When you hit the tilt, as the facilitator, do the dice thing again quickly while folks are taking the recommended break, then execute the tilt the same way as you did the setup. When you reach the aftermath, do have the players roll the dice, since those are specifically about their character (and it’s simple to do). It doesn’t matter if they roll in Roll20 or in Discord using a bot.
I personally like for these games to be somewhat ephemeral, because I don’t want players worrying about how it will “look” later on.
It was a lot of work to set up originally, and to figure out what works… but I know from experience now that it absolutely does work, and rather smoothly.
I’m going to post the full size version of the playmat (because that is my derivative creation), but you’ll need to make the cards for yourself because it’s a little too close to Bully Pulpit Game’s work for me to feel comfortable with that.
If this inspires you to make your own solution, or figure out a better way to do a part of it, comment or drop me a line! And if you want to join us, do the same!
 I mean Fiasco Classic throughout here, but this sort of thing will work for any rules-light game. Fiasco is absolutely amazing, though, and well worth your $12 at DriveThruRPG.
 I used fdfind and xargs because, well, it was easier for me.