Character Vault
Any Concept / Any System
Your System Come To Life
Roll20 for Android
Streamlined for your Tablet
Roll20 for iPad
Streamlined for your Tablet

Personal tools


From Roll20 Wiki

Jump to: navigation, search

css wizardry · formal powercard syntax · signature · sandbox

About Me
Pacific Time.png This user's time zone is Pacific Time.
Mentor Base.png This user has a Base-level subscription.

Playedwith100.png Achievement get! Representative
Played10000.png Achievement get! Expert
See Me Rollin.png Achievement get! See Me Rollin'
Getting to Know You.png Achievement get! Getting to Know You
I Know You're Out There.png Achievement get! I Know You're Out There
Artpatron.png Achievement get! Patron of the Arts
Better to Give.png Achievement get! Better to Give
Sheet Auteur.png Achievement get! Sheet Auteur
All Opinions.png Achievement get! All Opinions are Valid
Bughunter10.png Achievement get! Exterminator
GM Count1.png Achievement get! I've Got An Idea
Never Ending Story.png Achievement get! Never Ending Story
Rolled10000.png Achievement get! It's Raining Dice
Script Runner.png Achievement get! Script Runner
Consecutive10.png Achievement get! One Of Us
Scribe.png Achievement get! Scribe
Tutorial.png Achievement get! Read the Instructions
Arcane Scriptomancer.png Achievement get! Arcane Scriptomancer

Brian Shields have been using Roll20 since August, 2013, and is the Sheet Author of several character sheets, and well as API scripts. He no longer actively updates them.

I started when I was trying to find an online battle grid for a D&D 4e campaign when we had multiple people joining via a conference call, and simply describing the layout of the battlefield was far too inefficient. One of the players, Eric V., recalled the Kickstarter for Roll20, and recommended that I look it up. My group has greatly enjoyed the features it grants, and I've gone as far as purchasing a Pro-level subscription.



I have approximately 10 years of experience with computer science, attending Rice University for computer science for four years. Since purchasing my Pro-level membership, I've been putting that knowledge to use when I can with the Roll20 API.

My first tabletop roleplaying game was Vampire: the Masquerade in 2004, and I have since played:

  • Advanced Dungeons & Dragons
  • Black Crusade
  • Changeling: the Dreaming
  • Dark Ages: Mage
  • Dark Ages: Vampire
  • Dark Heresy
  • Deathwatch
  • Demon: the Fallen
  • The Dreaming
  • Dresden Files RPG
  • Dungeons & Dragons 3.5
  • Dungeons & Dragons 4e
  • Exalted
  • Exalted 2e
  • Fiasco
  • Iron Kingdoms
  • Legacy Crossing
  • Mage: the Ascension
  • Mage: the Awakening
  • Mage: the Socerer's Crusade
  • Mutants and Masterminds
  • Nobilis
  • Outbreak Undead
  • Paranoia
  • Unknown Armies
  • Unknown Ponies: Failure is Awesome
  • Vampire: the Masquerade
  • Werewolf: the Apocalypse
  • Wraith: the Oblivion

I have also participated in three LARPs: Vampire: the Masquerade, an oWoD crossover (Vampire, Werewolf, and Changeling), and Exalted 2e.

Roll20 Creations


Wrote large parts of the original API documentation, as well as created the CSS Wizardry page. Wrote the Beginner's Guide to GitHub-article.

API Scripts

Have created several "meta"-APIs that are to this day utilized in creation of other APIs.

  • splitArgs
  • EASO
  • Collision Detection
  • Flight
  • Flip Tokens

Character Sheets

Have created the following character sheets:

Games using the Storyteller system (World of Darkness, etc.) are also heavily influenced by my work on the Exalted 2e sheet, which was runner-up in the Character Sheet contest held at feature launch of the community character sheets system. I have also assisted in solving problems encountered by other users in making various sheets, and I designed the Quintessence Wheel for the Mage: the Ascension sheet.

Git Notes

These are simply some notes to myself on the git command line. The following are much more advanced processes than for example what I wrote about in Beginner's Guide to GitHub. These notes are intended for myself and no explanation is given to accompany them. Utilize at your own risk.

Delete a Commit

Back up to Head - N or a specific commit:

git reset --hard HEAD~1
git reset --hard sha1

Force the push

git push origin HEAD --force

Sync a Fork

git fetch upstream
git merge upstream/master
git push origin

Force Overwrite of Fork

Overwrites everything in the local copy with the original (upstream, the official repo), then uses that to overwrite the fork (origin).

git fetch upstream
git reset --hard upstream/master
git push origin HEAD --force


I am not currently taking requests of any kind.