Introducing Chartopia

About October 2014 I, by chance, randomly met someone at a house party who participated in a lot of role playing games of the pencil, paper and dice variety. It became know that I was a software programmer and, as is quite often the case during these types of settings, he said “oh, I have an idea for an app”.

“Oh, yeah?” I said.

I typically humour these people (politely, of course) and hear what they have to say; after all, it’s a house party.

It’s now February 2017 and I’ve been working on Chartopia all that time. It turns out the idea had some merit and a couple of months later I chased up Scott, whose idea it was, and got him to flesh out some of the details. I finally had an excuse to learn python (via Django) and get involved with web development again.

What is Chartopia anyway?

I like to think of Chartopia as the Pinterest for roleplaying random tables, or perhaps the DeviantArt of RPG random tables. On the surface it looks like a giant, searchable repository of random tables that anyone roleplaying-inclined can search/browse their favourite genre of roleplaying game and see what material exists.

Under the hood though, Chartopia is a chart editor, rolling, discovery and sharing tool. Here’s a brief run down.

Chart Editing

Roleplaying gamers often make their own charts, the simple ones exist as blog posts but the more complex are either in spreadsheets or perhaps buried behind some javascript options on a website. Spreadsheets are okay, but they’re quite bespoke and get complicated quickly if you have tables that roll upon other tables. Javascript pages are cool, but they’ll only serve a specific task. I’m pretty sure it would be difficult to scale.

Chartopia address this with an editor that looks a bit like a spreadsheet but offers the ability for the user to enter in certain markdown-like formatting to create more complexity (or, euphemistically, more valuable and useful tables).

  • Rolling for a result on one table can automatically roll on other tables, collate the results of those multiple tables, then display it to the user.
  • You can add dice equations (such as 2d12+4) that are automatically calculated when the table is rolled on.
  • You can make small lists of objects that are calculated if they’re rolled on; e.g. [gold; silver; copper] would roll a d3 and select one item from the list.


The best part of the editor is that, once done, only one button press is required to collate a result (across multiple tables and with all the equations calculated) and display it to the user.


…and so given the above, let’s say you’re one of those people that never ‘creates’ their own content but ‘consumes’ a lot (e.g. I browse Pinterest but I never contribute any new images), you could search and browse all these amazing random tables and be one click away from checking out the table, or one press away from rolling some results on it.

The site’s discovery tool is so easy to use, it’s far better than sifting through people’s personal blogs.

Sharing, Publishing Tools

Naturally in todays Internet world, there are sharing tools such as Twitter and Facebook links (e.g. “Hey, I found this awesome chart on Chartopia!” type links to social media); they’re kind of a token gesture. More useful I reckon are the export tools so that the user can easily copy paste their own chart into  their blog or export to .csv (for they spreadsheet users out there).

More to come

There’s way more to share about Chartopia (I’ve been working on it for over 2 years after all) but I’ll cover that in subsequent posts. I’m also shamelessly trying to make Google associate the key words “roleplaying, rpg, random tables” with Chartopia’s website, so I need to write some more.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s