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

API:Script Index

From Roll20 Wiki

Revision as of 14:18, 17 June 2020 by Andreas J. (Talk | contribs)

Jump to: navigation, search


Roll20 API Getting Started


Cookbook (Examples)

Community Scripts

  • Script Index

The API Script Index is a listing of community-contributed API scripts that are available for use on Roll20. If you're interested in contributing to the Roll20 API Community Scripts please visit the API GitHub Repository and follow the instructions in the file at the bottom of the page.

Scripts available in the One-Click Install

Scripts By Category

General Purpose Scripts

If your script incorporates specific game system rules, consider listing the script under that game system instead of one of these general purpose categories.

Combat Scripts

Combat scripts assist in making combat flow more easily. This can mean anything from automatically handling initiative to automating exchanges between combatants.

  • Group Initiative -- Adds the selected tokens to the turn order after rolling their initiative + configurable data.
  • Critical -- Quick method of determining the outcome of a critical hit.
  • Fumbler -- Quick method of determining the outcome of a fumble.

Tokens - Conditions / Status / Health

Tokens are used to represent player characters as well as non-player characters. Naturally, both occasionally get punched around a bit. Scripts in this category deal with the changing conditions of tokens, often but not necessarily as a result of combat.

  • Flight -- Mark how high tokens are flying
  • Flip Tokens -- Flip graphics horizontally and/or vertically
  • Mark -- Places a numbered Marker under tokens, clears on turn change/close, and page change.
  • Marking Conditions -- Set status markers on targeted on individual tokens

Tokens - Movement, Rotation, and Size

Scripts which are triggered by or change the location of tokens should generally be placed in this category.

  • Collision Detection -- Handles collisions between player-controlled tokens and a subset of path objects on the page
  • KABOOM -- Creates explosion effects that move tokens away from or towards a point.
  • It's a Trap -- Script for setting traps and detecting collisions with them at any point during movement.
  • Marching Order -- Makes tokens follow each other in some specified order.
  • Move Lighting -- Move dynamic lighting polygon path objects between game layers.
  • Random Rotate -- Allows the GM to easily rotate all selected tokens to a random angle.
  • Token Lock -- Allows GMs to selectively lock the movement of Player Tokens.

Lighting and Revealing

Dynamic lighting is a subscriber feature that changes what parts of the map are visible to the players as they move their tokens around. The light-blocking walls are achieved by paths on the walls layer, and tokens are used as point light sources. Scripts which modify either the light emitted by tokens or the walls which block the light belong in this category.

  • DLEllipseDrawer -- Draw circles and ellipses on the dynamic lighting layer.
  • LightCrumbTrails -- Produces lit, shared-vision breadcrumbs behind character tokens. This allows them to see where they've been on maps with dynamic lighting.
  • One-Way Dynamic Lighting -- Allows you to set up dynamic lighting walls that allow you to see through one side, but not the other. (for Legacy DL)
  • Torch -- A simple script for giving lights to tokens and turning off and on dynamic lighting.
  • Walls -- Builds dynamic lighting walls with an exported SVG path file.
  • ShareVision -- Allows normal vision and darkvision to be shared.


The jukebox is a powerful tool for creating immersive gaming experiences. Make it even more powerful.

  • Roll20 Audio Master -- Comprehensive jukebox control script; play, stop, and loop tracks. Adjust volume of tracks. Create, edit, play, stop, loop, and shuffle playlists.

Characters - Equipment

Most game systems have some form of equipment to make characters better. While scripts dealing with that equipment may necessarily be system-specific, there are scripts which handle equipment in a more general fashion.

  • Ammo -- Provides inventory management for ammunition stored in an attribute of a character.

Characters - Attributes

Manipulate one or more characters' attributes. Anything that is system-specific should be placed in the system's category below; this section is for system-agnostic attribute manipulation.

  • Conditions -- Track attribute-modifying conditions.
  • ChatSetAttr -- Create, modify, and delete character attributes via chat commands or macros.
  • EasyExperience -- Make awarding experience easy and choose your experience progression.
  • Experience Tracker -- Automatic tracking of a Dungeons and Dragons 5e like experience system, aswell as level up announcement in chat. !xp handles experience and announces level up.


Content generation can extend the reach of your campaign while minimizing the GM's prep time.

  • CharSheet -- Allow players to create their own character sheets.
  • Dungeon Utils -- Generates random dungeons from wall and floor images.
  • namegen -- Generates random names of People, Towns/Cities, and Taverns
  • Terrain Generator -- Generate simple outdoor maps (forests, deserts, etc)


Scripts in this category are a bit more meta than the ones listed above. These scripts assist with Roll20 itself more than they assist the game you're playing.

  • Game Timer -- This is a simple script to court how long does player use the game room.
  • Duplicate a Character and Token -- Duplicate and add identifying number to Character and Token.
  • emas -- Provides player !emas and !as commands.
  • MapLock -- Provides locking of graphics to prevent moving/resizing/rotating them. Also highlighting.
  • Message of the Day -- Greets players that log in with the contents of a particular note.
  • MetaMacros -- Precompiler enabling C-style textual substitution macros in macro definitions.
  • Page Navigator -- Easily move players from page to page, and allow players to move to pages by moving their tokens.
  • Rollable Table Macros -- Use macros and chat commands with rollable tables
  • Table Export -- A script for exporting Rollable Tables between accounts.
  • Token Fate -- Let fate decide! Randomly selects a token from the selected group.
  • Token Mod -- An interface to adjusting properties of a token from a macro or the chat area.
  • TruePageCopy -- Duplicate page graphics by chat command, or with the Duplicate Page button.
  • Customizable Roll Listener -- Customizable responses to API or non API chat messages.

Game Specific Scripts

Scripts that deal with specific rules of a game system should be listed in a sub-heading here. If the appropriate game system is not listed, feel free to create the appropriate heading.

Scripts under each system below may be designed for any use (in other words, had they been system-agnostic, they might fit under any of the sub-headings in the "General Purpose Scripts" section above).

13th Age

  • Escalation -- Simple Escalation Die handling script, using the new custom entries with formulae.

Ars Magica

  • Fifth Edition stress die roller -- Roll a stress die with automated printout, with or without modifiers. Botch dice count can be changed in both versions.

BASH! Ultimate Edition

  • Dice -- Rolls the Bash UE Dice format with exploding.

Chronique Oubliées

  • COFantasy -- Combats, Skills and Spells support

Cypher System

  • Cypher System Sheet -- Enables the applying of stat cost, recovery roll advance, auto calculation of PC state and damage track in the Cypher System Sheet, from the roll template or sheet buttons, for both the "English" and "French" versions.

d6 System

The "d6 System" includes a number of games from West End Games which utilize the same (or very similar) game mechanics. Scripts which are more specific to a single game than the system as a whole should be categorized there.

  • Wild Dice -- Implements the Wild Dice rolling mechanic.

d20 System

The "d20 System" includes Dungeons & Dragons and the games it spawned which utilize the same (or very similar) game mechanics. Scripts which are more specific to D&D or one of its spinoffs than the system as a whole should be categorized there.

  • Announce Roll -- Prints an extra announcement of a critical or fumble to the chat when using /roll
  • Monster Hit Dice -- Set Monster hit points from hit dice on add, usually via drag from journal.

Dogs in the Vineyard

  • Dice in the Vineyard -- Dice tracker for Dogs in the Vineyard. Stacks poker-chip-styled roll tokens in defined areas for characters to spend.

Dungeons & Dragons 4e

  • Use Power -- A script for instrumenting and tracking the use of encounter and daily powers.

Dungeons & Dragons 5e


  • Earthdawn (FASA Official) -- A companion to the Earthdawn (FASA Official) and 1879 (FASA Official) character sheets, this provides many features such as automatically creating token actions and helping with accounting, calculating Target Numbers and checking for number of successes, Etc.

Edge of the Empire

  • Dice Roller -- A Dice roller for the Edge of the Empire/Age of Rebellion/Force and Destiny Roleplaying Game

Exalted, Second Edition

  • Successes -- reports successes for d10 rolls per Exalted rules.

Exalted, Third Edition

  • exaltScript -- Adds general utility and automation to Exalted 3rd Edition campaigns.


  • Fate Dots -- Provides numbered multi dots for Fate stress boxes.

HERO Systems

This includes Champions, Star HERO, Fantasy HERO, Traveller HERO, etc.



  • Creature Gen -- Generate combat ready tokens from PRD and D20PFSRD statblocks (Obsolete - no longer supported)
  • Skillbook -- Generate token action to put API buttons for skills in chat window
  • HL-Import -- Import characters from Hero Lab via XML
  • Pathfinder_Character_Sheet -- Import PCs/NPCs based on the format and text placement

Pathfinder 2nd Edition


Savage Worlds

  • Raise Count -- Counts raises on a roll against a given target number
  • Savage Worlds Raise Roller -- Rolls for extra or wildcard and then shows a list of target numbers that are success or success with raises.

Star Wars FFG

Shadowrun 5e

  • Shadowrun 5th Edition -- API helper for the "Shadowrun 5th Edition"-sheet by Cassie
  • SR-RollExtender -- Deals with Shadowrun specific rules like glitches and extended rolls.
  • SR-NextPass -- GM aid to handle moving on to the next initiative pass

Trail of Cthulhu

  • GUMSHOE -- A point-spending script for GUMSHOE games. Integrates with supporting character sheets.

Vampire: The Masquerade, 20th Anniversary Edition

  • Track V20 Attributes -- Track character Disciplines, Paths, and Backgrounds for use with macros and other scripts.

WFRP2E (Havoc)

  • wfrp2e-api -- Functions and Roll Templates in support of the Warhammer Fantasy Roleplay 2E Sheet by Paul "Havoc" Stein


  • WFRP4e -- Oops!, Critical Hit Location, and Critical Hit result support for Warhammer Fantasy 4th Edition.

Zombie Dice

Utility Scripts

These scripts are generally not intended to be used alone, but are often instead required by some of the above scripts. Alone, these scripts will not do anything for your campaign, but rather they create functions to be used by other scripts.

Special Thanks

Roll20 wants to give special thanks to Brian and Aaron C. M. for their contributions to the community and this API script index.

API scripts elsewhere

This is an incomplete list of Roll20 API that aren't available in the One-Click Install menu in Roll20, but might be hosted elsewhere and manually installed.

Not available in the One-Click install

This is a list of API that are still hosted in Roll20's API script repository, but for one reason or other isn't available in the One-Click install.

  • Spin Tokens -- Allows the GM to toggle spinning of selected tokens.
  • Dynamic Light Recorder -- Save dynamic lighting paths for map tiles and automatically regenerate later
  • Token Name Number -- Automatic Numbering of tokens with special placeholder.
  • API Heart Beat -- Provides an API Heartbeat by setting the requesting player's color continuously.

User-hosted API

  • Random Dungeon Generator -- Generates random dungeons with geomorphic tiles. (link to a github gist of the API)
  • Morality -- A dialog prompt that provides morality choices as decisions (link to github)