- Roll20 Sheet Author Master List
- Guide to the Guide
- HTML – The Building Blocks
- Guide to CSS – Styling a Character Sheet
- Sheet Workers – Automating The Sheet
This page lists all posts for reading, using, and creating Sheet Workers on Roll20. Sheet workers are the way you build complex automation in a sheet (like calculating stat modifiers when stat changes).
All sheet workers are written in JavaScript. There are plenty of guides for JS on the web, but this guide is focused on the specific needs and gotchas related to Roll20 character sheets.
This list will be expanded as new posts are written.
- Anatomy of a Sheet WorkerHow to write a sheet worker, and what most sheet workers have in common.
- Variables – How to Name ThingsA guide to naming things in sheet workers.
- Arithmetic in Sheet WorkersAdding, subtracting, and other arithmetic.
- What If? in Sheet WorkersHow to analyse your code and manage code branching.
- Arrays and DropdownsHow to create and use Arrays. A primer for the upcoming posts on Objects and Loops.
- JavaScript ObjectsThe curious connection between getAttrs, setAttrs, and custom databases - JavaScript Object!
- Getting Loopy With JavaScriptLoops are almost as fundamental as if statements, and just like those, the basic concept is self-explanatory. What if you want to repeat the same process over and over, and you don't know ahead of time how many repeats you want to do? Coding this simple concept is often anything but straightforward, however. In this post, ...
- Strings in Sheet WorkersIntroducing the concept of Strings, what they are and you use them in Roll20.
- Logging in the Browser ConsoleHow to use the browser console, and control what appears there.
- Strings, Arrays, and LoopsAn example of using different techniques to solve a problem - Strings, Loops, and Arrays.
- Undefined and Other Error ValuesA short noted about undefined and similar "unvariables". Avoid them when you can.
- Events, and watching AttributesSheet workers watch a character sheet for changes to specific attributes. Here's what you need to know.
There are often different ways to do the same thing in JavaScript – this series will focus on one approach for simplicity and ease of teaching. The Function Library post will describe more general approaches (or maybe there’ll be a separate post added to illustrate the possible variety here).
Other Sheet Worker Posts
In time, I’ll add more sheet worker posts that aren’t a core part of the series. They’ll be indexed here.
- Blowing My Own TrumpetA guide to some of my other Roll20 creations, and where you can find them.
- Asynchronicity and Things to Avoid With LoopsWhat does Asynchronicity mean and how does it affect you?