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

Personal tools

Difference between revisions of "Mod:Script Index"

From Roll20 Wiki

Jump to: navigation, search
m (D&D 5E: Added the Paladin Aura API to the list of D&D 5E APIs)
(Utility)
 
(81 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{pro only}}
+
{{revdate}}{{pro only|page}}
{{apibox}}
+
{{mod}}
  
The '''API Script Index''' is a listing of community-contributed API scripts that are available for use on Roll20.
+
The '''Mod:Script Index''' is a '''community-curated''' list of Mod Scripts that are available for use on Roll20.
 
+
{{apibox}}{{pro features}}
If you're interested in contributing to the Roll20 API Community Scripts please visit the {{repo|Roll20/roll20-api-scripts Roll20 API Scripts Repository}} and follow the instructions in the {{repo|Roll20/roll20-api-scripts#roll20-api-scripts README}}, and then continue to [[API:Introduction]].
+
=General=
 
+
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
Favorite API Lists of some users:
+
| Contribute & share your Mods
* {{fpl|9779918/ David M.'s top APIs}}
+
|-
* {{fpl|10098189/ Jay R. top APIs}}
+
| If you're interested in contributing to the {{repo|Roll20/roll20-api-scripts Roll20 Mod Community Scripts}} & want yours to show up in the [[Mod:Use_Guide#Install|One-Click Install]] please follow the instructions in the {{repo|Roll20/roll20-api-scripts#readme README}}. Otherwise you can add yours to [[Mod:Short Community Scripts|Short Community Scripts]] or make a new page for it.
 +
|}
 +
Favorite Mod Lists of some users:
 +
* {{fpl|9779918/ David M.'s top Mods}}
 +
* {{fpl|10098189/ Jay R. top Mods}}
  
 +
For Modss not found in the [[Mod:Use_Guide#Install_Mod|Mod One-Click Install]] see:
 +
* '''[[#Mods needing manual install]]'''
 +
* '''[[Mod:Short Community Scripts|Short Community Scripts]]'''
 
__TOC__
 
__TOC__
 +
=Mods available in One-Click Menu=
 +
{{apiboxRec}}
 +
{{notebox|This list ''resemble'' the list found in the [[Mod:Use_Guide#Install_Mod|Mod One-Click Install]], but currently lists only Mods that have their own wiki pages, or are popular enough. There are lots of Mods that aren't listed [[User:1223200|1223200]] ([[User talk:1223200|talk]]) Sept 2021 }}
 +
If your script are designed for use with a ''specific'' game system, ruleset, or specific [[CS|Roll20 character sheet]], please  list the Mod under that game system, instead of listing under one of the more generic categories. When appropriate, Mod can be listed under more than one category.
  
=APIs available in One-Click Menu=
+
Some '''great''' or '''popular Mods''' have their '''name highlighted in bold''' to stand out.
{{Ambox
+
=Mods by Category=
|nocat=true
+
==Journal==
| type  = content
+
Modss interacting primarily with things on the {{Journal}} tab, such as [[Characters]] and [[Handouts]].
| text  = '''Script-specific Instructions & Descriptions:''' Most API Scripts have a description (&possibly instructions) in the  [[API:Use_Guide#Install_API|API One-Click Install]] when selected. Many API have a built it "help/instructions" command that can be accessed in-game.
+
=== Characters===
}}
+
{{:Character_Sheet/API}}
{{notebox|This list ''resemble'' the list found in the [[API:Use_Guide#Install_API|API One-Click Install]], but currently lists only APIs that have their own wiki pages, or are otherwise popular enough. There are ''hundreds'' of APIs missing from this list, but an effort to update it have been started. The Index have been updated in batches through Feb-March. [[User:1223200|1223200]] ([[User talk:1223200|talk]]) 14:03, 29 March 2021 (UTC)}}
+
If your script are designed for use with a ''specific'' game system, ruleset, or specific [[CS|Roll20 character sheet]], please  list the API under that game system, instead of listing under one of the more generic categories. When approprate, API can be listed under more than one category.
+
 
+
Some '''great''' or '''popular APIs''' have their '''name highlighted in bold''' to stand out.
+
 
+
== Characters==
+
Various scripts related to [[Character Sheets]], and managing them.
+
 
+
* [[Script:CharSheet|CharSheet]] -- Allow players to create their own character sheets.
+
* {{fpl|5281433/ Welcome Package}} -- API create and assigns character sheets to new people who join a game
+
* {{fpl|9888024/ PlayerCharacters}} -- Player & Character Manager. List all Player Characters divided by Player for the GM, or all assigned Characters for a Player. Add Characters for GM and Players.
+
* {{fpl|6213379/ PublicSheet}} -- Creates a "public" version of character sheets that players can't edit, which mirrors the ''actual'' character sheet.
+
* {{fpl|9934364/ Reporter}} -- A script to poll the game and return info on Token/Character pairs, along with customized action tools.
+
* {{fpl|4742980/ Observer}} -- Manages observer players, who are given the visiblilty (and control) of all player characters. This is useful for both podcasting views and local play on a single player screen.
+
===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.
+
* [[Script:Ammo|Ammo]] -- Provides inventory management for ammunition stored in an attribute of a character. Can be used with any char sheet
+
  
===Attributes===
+
=== Handouts ===
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.
+
{{:Handout/API}}
* [[Script:Ammo|Ammo]] -- API for tracking ammo use & recovery.
+
* '''[[Script:ChatSetAttr|ChatSetAttr]]''' -- Create, modify, and delete character attributes via chat commands or macros. ChatSetAttr can be embedded into normal macros.
+
* '''[[Script:GroupCheck|GroupCheck]]''' -- A way to quickly roll a group check for everyone, and see who succeed
+
** {{fpl|4359153/ ApplyDamage}} -- Supplementary API to GroupCheck, which enables to automatically apply damage to a group of characters, based on failed/succeeded GroupCheck rolls. Example: Damage of an AoE Spell, based on success/fail on saving throw
+
* [[Script:Conditions|Conditions]] -- Track attribute-modifying conditions.
+
* [[Script:EasyExperience|EasyExperience]] -- Make awarding experience easy and choose your experience progression.
+
* {{fpl|6872561/ LazyExperience}} -- to record experience during a game. Inspired by EasyEx, biggest difference is that it has an option to reward experience directly.
+
* '''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.
+
  
 
== Chat ==
 
== Chat ==
Various APIs that primarily help you out by creating API commands & options that can be used in the {{Text Chat}}.
+
{{main|Text Chat/API}}
* '''[[Script:ChatSetAttr|ChatSetAttr]]''' -- Create, modify, and delete character attributes via chat commands or macros.
+
{{:Text Chat/API}}
* ''ChatTurnManager'' -- A script to simplify Turn Order Management, and move it into chat.
+
* [[Script:emas|emas]] -- Provides player <code>!emas</code> and <code>!as</code> commands.(emote as)
+
* [[Script:ScriptCards|ScriptCards]] -- A scripting language in an API Script. Used to produce nicely formatted output cards for attacks, spells, and other abilities.
+
* [[Script:PowerCards|PowerCards]] -- Create nicely formatted output cards for attacks, spells, and other abilities.
+
* [[Script:PowerCards Macro Helper|PowerCards Macro Helper]] -- Support the automatic generation of PowerCards for '''"[[D&D 5E by Roll20]]"''' character sheet actions.
+
* [[Script:Message of the Day|Message of the Day]] -- Greets players that log in with the contents of a particular note.
+
* [[Script:Rollable_Table_Macros|Rollable Table Macros]] -- Use macros and chat commands with [[Roll Table|rollable tables]]
+
* '''{{forum|permalink/9430875/ DiscreteWhisper}}''' -- multi-recipient whispers with asides and buttons
+
* {{forum|permalink/7506126/ Check It Out}} -- allows players to examine nearby objects(tokens) and learn more information about them by having a message appear in the chat. Can be set up with system-specific properties, such as automated Investigation skill checks that reveal more information based on the rolled result.  {{repo|Roll20/roll20-api-scripts/blob/master/CheckItOut/README.md Readme}}
+
* {{forum|permalink/9956771/ Dialog}} -- a script that makes chat a bit more fun and easier to parse, especially for games that don't use voice. It also makes it much easier to get the GM's attention in a busy game. by [[Keith]]
+
** {{repo|keithcurtis1/Scripts/tree/main/Dialog sourcecode}}
+
  
 
== Combat==
 
== Combat==
Universal combat scripts assist in making combat flow more easily. This can mean anything from automatically handling initiative({{Turn Tracker}}), automating exchanges between combatants, or doing more comprehensive management. Scripts made for specific Game systems or Roll20 sheets are listed on [[#D&D 5E]] &
+
{{:Combat/API}}
* '''[[Script:Group Initiative|GroupInitiative]]''' -- Adds the selected tokens to the turn order after rolling their initiative + configurable data.
+
* '''{{forum|permalink/9441420/ CombatMaster}}''' -- API for improving various aspects of combat. Automating condition duration in combat, Initiative improvement, and more. Version of CombatMaster in API Drowdown might not be latest version, check thread/repo for latest version. {{repo|vicberg/CombatMaster CombatMaster repo}}
+
* [[Script:EncounterHelper|EncounterHelper]] -- Group tokens into encounters that can be shown, hidden, and reset to their initial values.
+
* [[Script: Critical|Critical]] -- Quick method of determining the outcome of a critical hit.
+
* [[Script: Fumbler|Fumbler]] -- Quick method of determining the outcome of a fumble.
+
* [[Script:InitiativeTrackerPlus|InitiativeTrackerPlus]] -- Initiative and effect tracker with other features.
+
* ''ChatTurnManager'' -- A script to simplify Turn Order Management, and move it into chat.
+
  
 
== Jukebox ==
 
== Jukebox ==
The {{Jukebox}} is the music player, and some APIs interact with it
+
{{:Jukebox/API}}
* [[Script:Roll20_Audio_Master|Roll20 Audio Master]] -- Comprehensive jukebox control script; play, stop, and loop tracks. Adjust volume of tracks. Create, edit, play, stop, loop, and shuffle playlists.
+
* [[Script:PowerCards|PowerCards]] -- Create nicely formatted output cards for attacks, spells, and other abilities. Have options to interact with Jukebox.
+
  
 
== Generators ==
 
== Generators ==
Line 84: Line 50:
  
 
==Maps & Drawing==
 
==Maps & Drawing==
Various APIs related to the Map that isn't related to [[Dynamic Lighting]], nor focused on [[Tokens]].
+
{{:Maps/API}}
* {{fpl|4041327/ Areas of Effect}} -- let's players spawn AoE effects on the map(based on what GM made available.
+
* {{forum|permalink/2948292/ DryErase}} – An API that can stop players from drawing on the map.
+
* {{forum|permalink/8339585/ Hexploration}} -- Script allows the GM to conceal areas of a hex grid with individual opaque hexes. Then characters can explore the hexes to reveal them. {{repo|Roll20/roll20-api-scripts/tree/master/Hexploration#hexploration Readme}}
+
* [[Script:Map Lock|MapLock]] -- Provides locking of graphics to prevent moving/resizing/rotating them.  Also highlighting.
+
* [[Script:MapChange|MapChange]] -- Provides an easy and user friendly way to move players between maps.
+
* [[Script:Page Navigator|Page Navigator]] -- Easily move players from page to page, and allow players to move to pages by moving their tokens. '''Note:''' Version 2 have some known issues.
+
* '''{{forum|permalink/9137492/ Radar}}''' -- to simulate various types of radar, tremor sense etc. Includes options for [[DL]].
+
* [[Script:TruePageCopy|TruePageCopy]] -- Duplicate page graphics by chat command, or with the Duplicate Page button. ''(Partially obsolete since Roll20 implemented their update to Copying Pages in Q4 2020)''
+
  
 
=== Dynamic Lighting ===
 
=== Dynamic Lighting ===
[[Dynamic Lighting]] is a [[Plus]]/[[Pro]] 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 <code>walls</code> [[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.
+
{{:Dynamic_Lighting/API}}
 
+
Not all APIs, or all thier features work on both Legacy DL and [[UDL|Updated DL]], you have to check them closer to know that.
+
 
+
* '''{{fpl|9919591/ DoorKnocker}}''' -- Script helps quickly open and close doors by controlling the dynamic lighting lines. '''v1.211''' Introduces option to create "[[windows]]", sections that stop movement but not sight. {{repo|Roll20/roll20-api-scripts/tree/master/Door%20Knocker sourcecode}} | {{yt.be|JaRF9LhhPcc Tutorial}}
+
* {{forum|post/9521203/script-udlwindows-dynamic-lighting-paths-that-block-movement-but-not-vision-or-light-warning-updated-dynamic-lighting-only#post-9532981 UDLWindows}} -- API for creating DL lines that blocks movement, but doesn't block vision. (for [[UDL|Updated Dynamic Lighting]])
+
* {{forum|permalink/9939691/ UDLPasswall}} - Walls that block sight but not movement
+
* [[Script:DLEllipseDrawer|DLEllipseDrawer]] -- Draw circles and ellipses on the dynamic lighting layer.
+
* [[Script:Dynamic Light Recorder|Dynamic Light Recorder]] -- Save dynamic lighting paths for map tiles and automatically regenerate later
+
* {{fpl|4428847/ LightCrumbTrails}} -- Produces lit, shared-vision breadcrumbs behind character tokens. This allows them to see where they've been on maps with dynamic lighting. (Made for [[LDL]])
+
** {{gist|shdwjk/29cd674266fce53387899f3e797b2100 UDL version of LightCrumb}}, by [[Aaron]] (not tested)
+
* [[Script:Move Lighting|Move Lighting]] -- Move dynamic lighting polygon path objects between game layers.
+
* {{forum|post/4932580/script-one-way-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. (Works for [[LDL|Legacy DL]])
+
* [[Script:Torch|Torch]] -- A simple script for giving lights to tokens and turning off and on dynamic lighting.
+
* [[Script:Walls|Walls]] -- Builds Dynamic Lighting walls with an exported <code>.svg</code> path file.
+
* [[Script:ShareVision|ShareVision]] -- Allows normal vision and darkvision to be shared.
+
* {{fpl|9719344/ ToggleDaylight}} -- turn daylight mode on, off, or toggle it for LDL or UDL on the current page.
+
  
 
==Tokens==
 
==Tokens==
APIs that focus on interacting with [[tokens]], or some aspect of them.
+
{{:Token/API}}
 
+
* '''[[Script:Token Mod|TokenMod]]''' -- An interface to adjusting properties of a token from a macro or the chat area. Very versatile and tons of options, and it can perform features of several other Token-related APIs.
+
* {{forum|permalink/9934364/ Reporter}} -- A script to poll the game and return info on Token/Character pairs, along with customized action tools.
+
* {{forum|permalink/8996556/ WeaponArcs}} -- provides a means to add weapon arcs to tokens for visualization of range and targetable tokens
+
 
+
===Movement, Rotation, and Size ===
+
Scripts which are triggered by or change the location of tokens should generally be placed in this category.
+
 
+
* {{forum|permalink/8584976/ Bump}} - provides a way to invisibly manipulate tokens on the GM Layer from the Objects Layer, and vice versa.
+
* '''[[Script:Token Lock|TokenLock]]''' -- Allows GMs to selectively lock the movement of Player Tokens.
+
* {{forum|permalink/5503029/ Carry Tokens}} -- Allows tokens to "carry" and move other tokens, like dragging other characters or moving items.
+
* [[Script:Collision Detection|Collision Detection]] -- Handles collisions between player-controlled tokens and a subset of path objects on the page
+
* [[Script:DupCharToken|DupCharToken]] -- Duplicate a Character and Token, and add identifying number to Character and Token.
+
* '''[[Script:It's a Trap|It's a Trap!]]''' -- Script for setting traps and detecting collisions with them at any point during movement. Has separate versions customised for specific games/sheets
+
* [[Script:KABOOM|KABOOM]] -- Creates explosion effects that move tokens away from or towards a point.
+
* [[Script:Marching Order|Marching Order]] -- Makes tokens follow each other in some specified order.
+
* [[Script:Measure|Measure]] -- Measure distances between multiple tokens, both from the corners and the center.
+
* [[Script:Random Rotate|Random Rotate]] -- Allows the GM to easily rotate all selected tokens to a random angle.
+
* '''[[Script:Teleport|Teleport]]''' -- Teleports tokens within a page or between pages either by chat menu or token movement by using teleport tokens on the GM layer.
+
* [[Script:tokenFate|Token Fate]] -- Let fate decide! Randomly selects a token from the selected group.
+
* [[Script:Flip Tokens|Flip Tokens]] -- Flip graphics horizontally and/or vertically
+
* [[Script:Spin Tokens|SpinTokens]] -- Allows the GM to toggle spinning of selected tokens.
+
* {{forum|permalink/9649899/ Spawn Default Token}} -- general idea is to automatically spawn the default token for a given "character" with various options for token qty, location/arrangement, and certain token properties such as size, side(for [[Roll_Table#Rollable_Table_Token|multi-sided tokens]]), light emission etc.
+
 
+
===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.
+
* {{forum|permalink/9605567/ Emojibubble}} -- System to easily display emojis in a bubble above Character Tokens, or on the map.
+
* [[Script:Flight|Flight]] -- Mark how high tokens are flying
+
* ''Health Status'' -- makes it possible for GM & players to see ''roughly'' how much health an enemy has. can be used with this macro: <code>!hp @{target|token_id}</code>
+
* [[Script:Mark|Mark]] -- Places a numbered Marker under tokens, clears on turn change/close, and page change.
+
* [[Script:Marking Conditions|Marking Conditions]] -- Set status markers on targeted on individual tokens
+
* [[Script:Token Name Number|Token Name Number]] -- Automatic Numbering of tokens with special placeholder.
+
* [[Script:Monster Hit Dice|Monster Hit Dice]] -- Set Monster hit points from hit dice on add, usually via drag from journal.
+
* ''Aura/Tint HealthColors'' -- Script to set health indicator on tokens via aura or tint, based on a bars value.
+
  
 
== Utility ==
 
== Utility ==
 
Scripts in this category are a bit more ''meta'', or does a variety of things, so they didn't fit neatly into any other category. These scripts assist with Roll20 itself more than they assist the game you're playing.
 
Scripts in this category are a bit more ''meta'', or does a variety of things, so they didn't fit neatly into any other category. These scripts assist with Roll20 itself more than they assist the game you're playing.
  
* [[Script:API Heart Beat|API Heart Beat]] -- Provides an API Heartbeat for how the APIs in the game perform,  by setting the requesting player's color continuously. Diagnostics Tool.
+
* {{fpl|10117219/ Calendar}} by Steve -- Simple way to keep track of the current in-game date
* {fpl|10117219/ Calender}} -- Simple way to keep track of the current in-game date
+
* {{fpl|10825826/script-calendar-reworked Calendar (reworked)}} by Julexar  -- based on an older calendar-script by Kirsty
 +
* '''{{fpl|10675897/ Campaign Survey}}''' - helps you inventory the size of your campaign, by listing how many pages/characters/handouts/graphics/etc it has, how often each are used, etc.
 +
* [[Script:Customizable Roll Listener|Customizable Roll Listener]] -- Customizable responses to Mod or non Mod chat messages.
 
* {{forum|permalink/7580899/ Hands Up}} -- allows players to "raise their hand" to get GM's attention witha simple button that makes the players character flash.
 
* {{forum|permalink/7580899/ Hands Up}} -- allows players to "raise their hand" to get GM's attention witha simple button that makes the players character flash.
 
* [[Script:Game Timer|Game Timer]] -- This is a simple script to court how long does player use the game room.
 
* [[Script:Game Timer|Game Timer]] -- This is a simple script to court how long does player use the game room.
 +
* {{fpl|10394732/ Lister}} (by [[Keith]]) --  Mod that looks through your campaign and lists characters, handouts, pages, rollable tables and players. Can create handout with the report.
 
* [[Script:MetaMacros|MetaMacros]] -- Precompiler enabling C-style textual substitution macros in macro definitions.
 
* [[Script:MetaMacros|MetaMacros]] -- Precompiler enabling C-style textual substitution macros in macro definitions.
* [[Script:Customizable Roll Listener|Customizable Roll Listener]] -- Customizable responses to API or non API chat messages.
+
* [[Script:SelectManager|SelectManager]] -- a way to preserve the portions of a message that are present in a user-generated message but lost in an api-generated message (the selected tokens, who sent the message, and the playerid).
* {{fpl|9817678/ SelectManager}} -- a way to preserve the portions of a message that are present in a user-generated message but lost in an api-generated message (the selected tokens, who sent the message, and the playerid).
+
** Useful for transferring token selection from one Mod to another, such as [[PowerCards]] to [[ChatSetAttr]]
** Useful for transferring token selection from one API to another, such as [[PowerCards]] to [[ChatSetAttr]]
+
 
* [[Script:StatusInfo|StatusInfo]] -- StatusInfo works nicely together with Tokenmod, DeathTracker, and InspirationTracker scripts. It shows condition descriptions whenever a statusmarker is set or when the command <code>!condition</code> is used, eg: <code>!condition prone</code>
 
* [[Script:StatusInfo|StatusInfo]] -- StatusInfo works nicely together with Tokenmod, DeathTracker, and InspirationTracker scripts. It shows condition descriptions whenever a statusmarker is set or when the command <code>!condition</code> is used, eg: <code>!condition prone</code>
* {{forum|post/8824428/script-universalvttimporter-import-dd2vtt-files-to-create-dynamic-lighting-lines-and-lights UniversalVTTImporter}} -- for importing DL settings and other info from maps created with the <code>.dd2vtt</code>, as used by Dungeondraft.
+
* {{fpl|10434784/ Supernotes}} -- script pulls the contents from a token's GM Notes field.
* {{forum|permalink/8293909/ Supernotes}} -- script pulls the contents from a token's GM Notes field.
+
 
** If the token represents a character, you can optionally pull in the Bio or GM notes from the character. The user can decide whether to whisper the notes to the GM or broadcast them to all players.
 
** If the token represents a character, you can optionally pull in the Bio or GM notes from the character. The user can decide whether to whisper the notes to the GM or broadcast them to all players.
 
** Finally, there is the option to add a footer to notes whispered to the [[GM]]. This footer creates a chat button to give the option of sending the notes on to the players.
 
** Finally, there is the option to add a footer to notes whispered to the [[GM]]. This footer creates a chat button to give the option of sending the notes on to the players.
 
* {{fpl|4121164/ NoteLog}} -- provides an easy interface to keeping notes for your players.
 
* {{fpl|4121164/ NoteLog}} -- provides an easy interface to keeping notes for your players.
 
* {{fpl|5250301/ Search}} --  provides full text searching across handouts and characters (including attributes). Search respects permissions on handouts and characters.
 
* {{fpl|5250301/ Search}} --  provides full text searching across handouts and characters (including attributes). Search respects permissions on handouts and characters.
 +
* {{fpl|10688032/ RollStats}} -- get roll statistics for your game and players
 +
* [[Script:Triggered_Cleanup|Triggered Cleanup]] -- ideal for Living Communities or West Marches style tables.  Assists with the cleanup of tokens, optimizing the performance of other APIs through an API command.
 +
* [[Script:Ongoing_Cleanup|Ongoing Cleanup]] -- ideal for long duration Campaign style tables.  Assists with the cleanup of tokens, optimizing the performance of other APIs by deleting all tokens related to the character sheet linked to a token that is manually deleted.
 +
 
===[[Cards]] & [[Roll Tables]]===
 
===[[Cards]] & [[Roll Tables]]===
APIs specifically for interacting with [[Cards]] & [[Roll tables]]
+
Mods specifically for interacting with [[Cards]] & [[Roll Tables]].
* {{fpl|7687278/ Dealer}} -- Deals and takes cards from players, can specify selection by deck (by [[Keith]])
+
 
* {{forum|permalink/7081435/ PeekCards}} -- See what you played face down, but don't let others peek at them.
+
*'''Cards'''
* {{fpl|2286409/ DealInit}} -- Deals initiative cards for Savage Worlds  
+
** {{fpl|7687278/ Dealer}} -- Deals and takes cards from players, can specify selection by deck (by [[Keith]])
 +
** {{forum|permalink/7081435/ PeekCards}} -- See what you played face down, but don't let others peek at them.
 +
** {{fpl|2286409/ DealInit}} -- Deals initiative cards for [[Savage Worlds]]
 +
** {{fpl|7737099/ SummonCards}} -- allows dealing cards from a deck to the table easily, particularly to predefined patterns/locations
 +
* '''Roll tables'''
 +
** [[Script:Table Export|Table Export]] -- A script for exporting Rollable Tables between accounts.
 +
** {{forum|permalink/7844658/ RecursiveTable}} -- RecursiveTable provides a way to expand the results of Rollable Tables which have inline rolls within them.
 +
** [[Script:Rollable_Table_Macros|Rollable Table Macros]] -- Use macros and chat commands with [[Roll Table|rollable tables]]
 +
** [[Mod:Short Community Scripts#Make Rollable Table Tokens|Make Rollable Table Tokens]] -- select tokens from map and make a Rollable Table Token from them quickly
  
 +
==Import/Export==
 +
Mods for importing content to Roll20, or for exporting content between games.
  
 
* [[Script:Table Export|Table Export]] -- A script for exporting Rollable Tables between accounts.
 
* [[Script:Table Export|Table Export]] -- A script for exporting Rollable Tables between accounts.
* {{forum|permalink/7844658/ RecursiveTable}} -- RecursiveTable provides a way to expand the results of Rollable Tables which have inline rolls within them.
+
'''Maps'''
* [[Script:Rollable_Table_Macros|Rollable Table Macros]] -- Use macros and chat commands with [[Roll Table|rollable tables]]
+
* [[Script:Walls]] create DL Walls from a {{c|.svg}} file
 +
* [[Script:UniversalVTTImporter|Universal VTT Importer]] -- for importing DL settings and other info from maps created with the Universal VTT map format (<code>.dd2vtt</code>/<code>.df2vtt</code>/<code>.uvtt</code>), as used by several map creator programs.
 +
* [[Script:DungeonAlchemistImporter|Dungeon Alchemist Importer]] -- Import Dungeon Alchemist maps into Roll20.
 +
* [[Script:Dynamic Light Recorder]]
  
 
== [[5E|D&D 5E]] ==
 
== [[5E|D&D 5E]] ==
Many APIs( beyond the ones listed here) are made with '''Dungeons & Dragons 5th Edition''' in mind, or have specific commands tailored to work with the popular [[D&D 5E by Roll20]]-character sheet. In the one-click menu, most APIs made for 5E should have a name starting with '''D&D 5E'''. 5E is the system that have most system-specific APIs by a large margin. Several generic APIs have configuration settings tailored for the 5E sheets, such as '''[[Script:Group Initiative|GroupInitiative]]''' or '''GroupCheck'''.
+
{{:5E Mods}}
 
+
* '''[[D%26D_5E_by_Roll20#Utilizing_the_5th_Edition_OGL_by_Roll20_Companion_API_Script|5th Edition OGL by Roll20 Companion]]''' -- Official Companion script for '''[[D&D 5E by Roll20]]''' character sheet
+
* [https://github.com/Roll20/roll20-api-scripts/blob/master/5E%20Resting%20in%20Style/README.md 5E Resting in Style] -- This script for the 5E OGL character sheet solves the error prone task of updating your character sheet when resting. Using !long-rest and !short-rest commands will update your sheet, and report to you everything it is doing.
+
* {{repo|iantoon0/5E-BattleMaster 5E BattleMaster}} -- streamlining combat with the 5E sheet.
+
* {{repo|Roll20/roll20-api-scripts/tree/master/RatWorkshop_Dungeon 5E Master Tools}} -- Tool Framework for extending Roll20, auto mark tokens dead, award xp, add on modules for Barbarian and Paladin abilities. 
+
* ''{{forum|forum/permalink/8652406/ Rest and Recovery}}'' -- Short & Long Rest automation, by Keith
+
* ''{{forum|permalink/8856337/ WildShape}}'' -- Managing Druid Wildshape, changing token image, setting HP and temporary stats, etc.
+
* [[Script:5e Shaped Companion Script|5e Shaped Companion]] -- Support script for the [[DnD5e Shaped Character Sheet|DnD5e Shaped]] Character Sheet - provides monster import, auto-ammo, auto-HD, auto-death saves, loads of config options and more
+
* '''D&D 5E - Token Action Maker''' - This script creates token actions on selected tokens for the [[D&D 5E by Roll20]] sheet, very helpful for both NPCs and Players.
+
** {{forum|permalink/8458497 forum thread}} (Created by Kevin, modified by keithcurtis, {{user profile|157788|GiGs}}, & Bretmckee)
+
* {{fpl|9989663/ Blind Rolls for 5E}}
+
* {{fpl|9112039/ 5E Paladin Aura}} -- Managing the proximity bonuses given by Paladins by notifying users in chat when a bonus should be applied.
+
* ''Rest in Style'' -- Short & Long Rest automation
+
* ''CashMaster'' -- for managing you currencies
+
* ''Concentration'' -- Concentration keeps track of characters concentration, and reminds to do a concentration check.
+
* ''It's a Trap! -- D&D 5E Generic''' (should detect automatically what sheet is used)
+
* ''ShortRest'' -- Automating recovery of various resource during Short Rest
+
* ''SpellMaster'' -- a high-performance total-replacement for the Spells page of the [[D&D 5E by Roll20]]-sheet, with several additional key features that go beyond the default spells page.
+
  
 
== System Toolbox ==
 
== System Toolbox ==
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 sections above).
+
{{:API:System Specific}}
 
+
'''[[Script:It's a Trap|It's A Trap!]]''' have several game-specific versions.
+
=== 13th Age ===
+
 
+
* ''13th Age Official Character Sheet Companion'' -- Enhances the Official 13th Age Character Sheet with quick Escalation Die tracking, automatic recovery tracking, token setup, and automatic staggered and down icons.
+
 
+
=== Ars Magica ===
+
* [[Script:Ars Magica 5e Stress Die|Ars Magica 5e--Automated Stress Die]] -- Roll a stress die with automated printout, with or without modifiers. Botch dice count can be changed in both versions.
+
 
+
=== Chronique Oubliées ===
+
* [[Script:COFantasy|COFantasy]] -- Combats, Skills and Spells support
+
 
+
=== Cypher System ===
+
* [[Script:Cypher_System_Sheet|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 [https://github.com/Roll20/roll20-character-sheets/tree/master/CypherSystem "English"] and  [https://github.com/Roll20/roll20-character-sheets/tree/master/CypherSystemFrench "French"] versions.
+
* ''Cypher Systems by Roll20 Companion'' -- Enables the applying to characters of Stats costs and Recovery rolls advancement from the chat roll template, as well as applying Damage to NPCs.
+
 
+
=== D6 System ===
+
The "D6 System" includes a number of games from [[wikipedia:West End Games|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.
+
* [[Script:Wild Dice|Wild Dice]] -- Implements the Wild Dice rolling mechanic, used in "Star Wars D6", "D6 Adventure", "D6 Fantasy", and "D6 Space" 
+
 
+
=== [[Earthdawn]] ===
+
* [[Earthdawn - FASA Official|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.
+
 
+
=== Exalted===
+
* ''Exalted 3rd Edition Dice Roller'' -- A more robust dice rolling script for use with the Exalted Third Edition game system.
+
* [[Script:exaltScript|exaltScript]] -- Adds general utility and automation to Exalted 3rd Edition campaigns.
+
 
+
=== FATE ===
+
* [[Script:Fate Dots|Fate Dots]] -- Provides numbered multi dots for Fate stress boxes.
+
 
+
=== HERO Systems ===
+
This includes Champions, Star HERO, Fantasy HERO, Traveller HERO, etc.
+
* [[Script:HeroRoller|Hero Roller (aka HeRoller)]] -- A comprehensive roller for HERO systems.
+
 
+
=== Numenera ===
+
* [[Script:Cypher Roller|Cypher Roller]] -- Script to automatically roll Cyphers in Numenera, with full descriptions.
+
* [[Script:Numenera_Natha|Natha's Numenera]] -- Adds Numenera rolls and character update functions to the Natha's Numenera character sheets: [https://github.com/Roll20/roll20-character-sheets/tree/master/Numenera_NathasNumenera_English "Numenera (tabbed)"] and  {{repo|Roll20/roll20-character-sheets/tree/master/Numenera_NathasNumenera_French "Numenera (French)"}}.
+
 
+
=== [[Pathfinder]] ===
+
* [[Script:Skillbook|Pathfinder Skillbook]] -- Generate token action to put API buttons for skills in chat window
+
* [[Script:HL-Import|Pathfinder HeroLab Character Import]] -- Import characters from Hero Lab via XML
+
* ''Pathfinder Companion Script'' -- The Pathfinder Companion Script automates many of the day to day tasks of playing in and running a pathfinder game. The script is designed for the Neceros Pathfinder Sheet for Roll20
+
 
+
=== Pathfinder 2nd Edition ===
+
* [[Script:Pathfinder_2_Utilities|Pathfinder 2 Utilities]] -- automatically roll Pathfinder 2 abilities and display their effect references, and track modifiers.
+
* {{forum|post/9683168/script-pathfinder-2e-treat-wounds#post-9686795 Pathfinder 2E Treat Wounds}}
+
* {{forum|post/9718635/script-pathfinder-2e-character-adjustments Pathfinder 2E Character Adjustments}}
+
 
+
=== Savage Worlds ===
+
* [[Script:Raise Count|Raise Count]] -- Counts raises on a roll against a given target number
+
* [[Script:Savage_Worlds_Raise_Roller|Savage Worlds Raise Roller]] -- Rolls for extra or wildcard and then shows a list of target numbers that are success or success with raises.
+
* {{fpl|2286409/ DealInit}} -- Deals cards for initiative for Savage Worlds
+
* ''Savage Worlds Status Changer'' -- This script makes it easy to assign a status to a set of selected tokens.
+
 
+
=== [[Shadowrun]]===
+
 
+
'''5E'''
+
 
+
* {{repo|Roll20/roll20-api-scripts/tree/master/Shadowrun%205th%20Edition Shadowrun 5th Edition}} -- API helper for the "Shadowrun 5th Edition"-sheet by [[Cassie]]
+
* [[Script:SR-RollExtender|SR-RollExtender]] -- Deals with Shadowrun specific rules like glitches and extended rolls. For the "Shadowrun: 5th Edition (Advanced)" sheet.
+
* [[Script:SR-NextPass|SR-NextPass]] -- GM aid to handle moving on to the next initiative pass
+
 
+
=== [[Star Wars]] ===
+
Scripts for the various Star Wars systems.
+
 
+
* [[Script:Star Wars: Fantasy Flight Games - Dice Roller‎|Star Wars: FFG - Dice Roller]] -- Dice Roller for the [[Star Wars: FFG (API-Compatible)]]-character sheet
+
* ''Star Wars: Fantasy Flight Games - Destiny Tracker'' -- SW FFG Destiny Tracker provides a way to prompt, set and track destiny points for Star Wars: Edge of the Empire (Fantasy Flight Games)
+
* [[Script:Wild Dice|Wild Dice]] -- Implements the Wild Dice rolling mechanic, used in "Star Wars D6", "D6 Adventure", "D6 Fantasy", and "D6 Space" 
+
 
+
=== [[Starfinder]] ===
+
* [[Script:Starfinder - Guidance Tools for Starfinder (Simple) Character sheet|Starfinder - Guidance Tools for Starfinder (Simple) Character sheet]] -- Provides commands to populate character sheets from Stat blocks. ([https://github.com/russellasinclair/guidance/blob/develop/guidance.js Beta Test Branch can be found at this link.] Disclaimer: Beta Test branch is in active development. )
+
 
+
=== Trail of Cthulhu ===
+
* [[Script:GUMSHOE|GUMSHOE]] -- A point-spending script for GUMSHOE games. Integrates with supporting character sheets.
+
 
+
 
+
===Warhammer Fantasy Roleplay===
+
 
+
'''2E'''
+
 
+
* [[Script:wfrp2e-api|WFRP 2E Actions (Havoc)]] -- Functions and Roll Templates in support of the Warhammer Fantasy Roleplay 2E Sheet by Paul "Havoc" Stein
+
 
+
'''4E'''
+
 
+
* [[Script:WFRP4e|WFRP4e]] -- Oops!, Critical Hit Location, and Critical Hit result support for Warhammer Fantasy 4th Edition.
+
  
 
== Library/Meta Scripts==
 
== Library/Meta Scripts==
'''Library''' scripts are generally not intended to be used alone or directly by the user. These scripts will not do anything for your campaign directly, but rather they create functions to be used by other APIs.
+
'''Library''' scripts are generally not intended to be used alone or directly by the user. These scripts will not do anything for your campaign directly, but rather they create functions to be used by other Mods.
  
APIs installed from the one-click menu should automatically install any Library scripts that are needed for them to work, or warn about needing additional APIs installed.
+
Mods installed from the one-click menu should automatically install any Library scripts that are needed for them to work, or warn about needing additional Mods installed.
  
 +
* [[Script:API Heart Beat|API Heart Beat]] -- Provides an Mod Heartbeat for how the Mods in the game perform(or show if they are even working),  by setting the requesting player's color continuously. Diagnostics Tool.
 
* [[Script:Base64|Base64]] -- Base 64 encoding for Roll20 Scripts. (Adapted from http://www.webtoolkit.info/ )
 
* [[Script:Base64|Base64]] -- Base 64 encoding for Roll20 Scripts. (Adapted from http://www.webtoolkit.info/ )
 
* [[Script:ESRO|Extended Syntax Roll20 Objects]] -- Wraps objects to extend their functionality.
 
* [[Script:ESRO|Extended Syntax Roll20 Objects]] -- Wraps objects to extend their functionality.
Line 300: Line 124:
 
* [[Script:Token Collisions|Token Collisions]] -- A library for detecting collisions among tokens during movement.
 
* [[Script:Token Collisions|Token Collisions]] -- A library for detecting collisions among tokens during movement.
 
* [[Script:Vector Math|Vector Math]] -- A library for vector mathematics.
 
* [[Script:Vector Math|Vector Math]] -- A library for vector mathematics.
* '''{{fpl|10005695/ Meta Toolbox}}''' A set of APIs created by [[timmaugh]] that covers a lot of ground
+
* [[Script:RPGMaster_Library|RPGMaster Library]] -- A library of Roll Templates, sheet table management functions, database management functions, and AD&D2e data
** [[APILogic]] -- Gives If/ElseIf/Else Processing, Inline Math operations, and Variable Muling to Other Scripts | {{forum|permalink/9771314/ APILogic}}
+
* '''[[Meta-Toolbox|Meta Toolbox]]''' A set of Mods created by [[timmaugh]] that covers a lot of ground
** {{forum|permalink/9770117/ libInline}} - provides an easy interface for inlinerolls
+
** [[Script:SelectManager]] -- Utility to Preserve the Selected Tokens For API-Generated Calls
** {{forum|permalink/9817678/ SelectManager}} -- Utility to Preserve the Selected Tokens For API-Generated Calls
+
** [[Script:ModLogic]] -- Gives If/ElseIf/Else Processing, Inline Math operations, and Variable Muling to Other Scripts | {{forum|permalink/9771314/ APILogic}}
 +
** {{forum|permalink/9770117/ libInline}} - provides an easy interface for [[Inline|inline rolls]]
 
* {{forum|permalink/9097236/ InsertArg}} -- script preamp, siege engine, menu maker, command line constructor
 
* {{forum|permalink/9097236/ InsertArg}} -- script preamp, siege engine, menu maker, command line constructor
  
=APIs elsewhere=
+
=What Are Meta-Scripts?=
Some known APIs aren't available in the One-Click Install menu in Roll20, but might be hosted elsewhere and manually installed. This is an attempt to list prominent ones.
+
{{main|API:Meta Scripts}}
 +
{{:API:Meta_Scripts}}
  
==Not Available in One-Click Menu==
+
=Mods needing manual 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.
+
Some Mods aren't available in the One-Click Install in Roll20, but the code might be hosted elsewhere and need to be manually installed into your game. This is an attempt to list prominent ones.
* {{forum|permalink/9256621/ Tracker Jacker}} -- Combat API, formerly known as "Initiative Tracker Plus"
+
 
 +
'''See Also: [[Mod:Short Community Scripts]]'''
 +
 
 +
==Roll20 repo, but not in menu==
 +
This is a list of Mod that are still hosted in Roll20's Mod script repository, but for one reason or other isn't available in the One-Click install.
 +
* {{fpl|10308811/ Battle Royale}} -- Instantly create a GM-less PvP experience! Even handles doors, invisibility etc.
 +
** {{repo|Jsigvard/roll20-api-scripts/tree/master/BattleRoyale sourcecode}}
 +
** fairly old Mod, pretty much superseded by  [[Script:InitiativeTrackerPlus|Initiative Tracker Plus]]
 
* [[Script:Creature Gen|Creature Gen]] -- Generate combat ready tokens from PRD and D20PFSRD statblocks (Obsolete - no longer supported)
 
* [[Script:Creature Gen|Creature Gen]] -- Generate combat ready tokens from PRD and D20PFSRD statblocks (Obsolete - no longer supported)
  
==APIs elsewhere==
+
==Mods hosted elsewhere==
Other notable APIs that isn't in the one-click install. Needs to be installed manually.  
+
Other notable Mods, that aren't available in the one-click install. Some are larger Mods, and others just smaller snippets. Needs to be installed manually.  
  
 +
'''Map & Token'''
 
* {{fpl|874303 Splatter v2}} (2014)-- Bloodsplatter automatically appear on map when token's HP gets low enough.
 
* {{fpl|874303 Splatter v2}} (2014)-- Bloodsplatter automatically appear on map when token's HP gets low enough.
 
** {{gist|Anduh/b4bd6323478665efa6d29754f8fbc17d sourcecode mirror}}
 
** {{gist|Anduh/b4bd6323478665efa6d29754f8fbc17d sourcecode mirror}}
* [[Script:Blood and Honor]] -- automatic blood splatters
+
* [[Script:Blood and Honor|Blood and Honor]] -- automatic blood splatters
 +
* {{fpl|3472238/ Face2Face Dynamic Lighting Helper}} -- for [[Legacy DL]]
 
* [[Script:Random Dungeon Generator|Random Dungeon Generator]] -- Generates random dungeons with geomorphic tiles  
 
* [[Script:Random Dungeon Generator|Random Dungeon Generator]] -- Generates random dungeons with geomorphic tiles  
 
** {{gist|BaldarSilveraxe/9075585 sourcecode}}
 
** {{gist|BaldarSilveraxe/9075585 sourcecode}}
* [[Script:Morality|Morality]] -- A dialog prompt that provides morality choices as decisions
 
** {{repo|Roll20KenL/Roll20_API_Scripts/blob/master/morality.js sourcecode}}
 
 
* {{fpl|5019325/  Matt's Door Script}} -- Older Script that's somewhat popular, link to an version that The Aaron have updated in 2017.
 
* {{fpl|5019325/  Matt's Door Script}} -- Older Script that's somewhat popular, link to an version that The Aaron have updated in 2017.
* {{fpl|9631549/ Dimmerswitch}} -- WIP API to handle changing of lighting intensity/color on the map, such as sunset/sunrise happening
+
* {{fpl|9631549/ Dimmerswitch}} -- WIP Mod to handle changing of lighting intensity/color on the map, such as sunset/sunrise happening
 
* {{fpl|6638045/ SimpleRoofControl}} -- A roof "lifting" system to show/hide rooms or houses. It also gives the option to turn the Advanced Fog of War and Dynamic Lighting on or off so you can have those features enabled only inside the building
 
* {{fpl|6638045/ SimpleRoofControl}} -- A roof "lifting" system to show/hide rooms or houses. It also gives the option to turn the Advanced Fog of War and Dynamic Lighting on or off so you can have those features enabled only inside the building
 
** {{repo|blawson69/SimpleRoofControl sourcecode}}
 
** {{repo|blawson69/SimpleRoofControl sourcecode}}
 +
* {{fpl|10357649/ Daylight}} -- small Mod that have commands to change light levels for a page
 +
* {{fpl|2991336/ Patrols using Waypoints}} Mod from 2015
 +
 +
'''Other'''
 +
* [[Script:Morality|Morality]] -- A dialog prompt that provides morality choices as decisions
 +
** {{repo|Roll20KenL/Roll20_API_Scripts/blob/master/morality.js sourcecode}}
 
* {{forum|permalink/9924560/ Live Handouts/GMNotes}} trick
 
* {{forum|permalink/9924560/ Live Handouts/GMNotes}} trick
 
** {{gist|ILiekTofu/3958622e66b500a535122e666936339c sourcecode}}
 
** {{gist|ILiekTofu/3958622e66b500a535122e666936339c sourcecode}}
Line 334: Line 173:
  
 
= Special Thanks =
 
= Special Thanks =
Roll20 wants to give special thanks to [[Brian Shields]] and [[Aaron|Aaron C. M.]] for their contributions to the community and this API Script Index.(2014)
+
In Summer 2022, API where renamed as Mods, and the work to update the various pages started. The Index had continued to be updated sporadically.
 +
 
 +
In early 2021, [[Andreas J.]] did a major revision of the page, reorganizing with better categories, add several newer and popular APIs to the list, and added relevant forum/wiki/documentation links to most listed APIs, so it would be easier to learn about them.
  
In early 2021, [[Andreas J.]] did a major revision of the page, reorganizing with better categories, add several newer and popular APIs to the list, and added wiki/forum thread links to most listed APIs, so more info was easily accessible.
+
::''The category cleanup on the API index is something I intend to bring to the [[API#Install_API|API 1-click Install]], as the One-Click Menu is currently pretty hard to browser, as something like half of the APIs are categorized under "Utility", and there would be a benefit for all D&D5E-specific API to be in a separate category from the other game-specific APIs.'' -[[User:1223200|1223200]] ([[User talk:1223200|talk]]) October 2021
  
::''The category cleanup on the API index is something I intend to bring to the [[API#Install_API|API 1-click Install]], as the One-Click Menu is currently pretty hard to browser, as something like half of the APIs are categorized under "Utility", and there would be a benefit for all D&D5E-specific API to be in a separate category from the other game-specific APIs.'' [[User:1223200|1223200]] ([[User talk:1223200|talk]]) 14:29, 15 May 2021 (UTC)
+
Roll20 wants to give special thanks to [[Brian Shields]] and [[Aaron|Aaron C. M.]] for their contributions to the community and creation of the API Script Index (in 2014).
 
<br>
 
<br>
 
<br>
 
<br>
 
[[Category:API|Script Index]]
 
[[Category:API|Script Index]]
 +
[[Category:User API Scripts]]
 +
[[Category:API Recommendations]]
 +
[[Category:Pro]]
 +
[[Category:Featured articles]]

Latest revision as of 01:51, 30 July 2023

The Mod:Script Index is a community-curated list of Mod Scripts that are available for use on Roll20.

[edit] General

Contribute & share your Mods
If you're interested in contributing to the Roll20 Mod Community Scripts & want yours to show up in the One-Click Install please follow the instructions in the README. Otherwise you can add yours to Short Community Scripts or make a new page for it.

Favorite Mod Lists of some users:

For Modss not found in the Mod One-Click Install see:

Contents

[edit] Mods available in One-Click Menu

If your script are designed for use with a specific game system, ruleset, or specific Roll20 character sheet, please list the Mod under that game system, instead of listing under one of the more generic categories. When appropriate, Mod can be listed under more than one category.

Some great or popular Mods have their name highlighted in bold to stand out.

[edit] Mods by Category

[edit] Journal

Modss interacting primarily with things on the N Journal tab, such as Characters and Handouts.

[edit] Characters

Various scripts related to Character Sheets, and managing them.

  • CharSheet -- Allow players to create their own character sheets.
  • Welcome Package(Forum) -- API create and assigns character sheets to new people who join a game
  • PlayerCharacters(Forum) -- Player & Character Manager. List all Player Characters divided by Player for the GM, or all assigned Characters for a Player. Add Characters for GM and Players.
  • PublicSheet(Forum) -- Creates a "public" version of character sheets that players can't edit, which mirrors the actual character sheet.
  • Reporter(Forum) -- A script to poll the game and return info on Token/Character pairs, along with customized action tools.
  • Observer(Forum) -- Manages observer players, who are given the visibility (and control) of all player characters. This is useful for both podcasting views and local play on a single player screen.

[edit] 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. Can be used with any char sheet

[edit] 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.

  • Ammo -- API for tracking ammo use & recovery.
  • ChatSetAttr -- Create, modify, and delete character attributes via chat commands or macros. ChatSetAttr can be embedded into normal macros.
  • GroupCheck -- A way to quickly roll a group check for everyone, and see who succeed
    • ApplyDamage(Forum) -- Supplementary API to GroupCheck, which enables to automatically apply damage to a group of characters, based on failed/succeeded GroupCheck rolls. Example: Damage of an AoE Spell, based on success/fail on saving throw
  • Conditions -- Track attribute-modifying conditions.
  • EasyExperience -- Make awarding experience easy and choose your experience progression.
  • LazyExperience(Forum) -- to record experience during a game. Inspired by EasyEx, biggest difference is that it has an option to reward experience directly.
  • Experience Tracker -- (Note: Old API, not updated since 2016) Automatic tracking of a D&D 5e-like experience system, as well as level up announcement in chat. !xp handles experience and announces level up.


[edit] Handouts

API Scripts interacting with Handouts and Journal entries.

  • Supernotes(Forum) -- script pulls the contents from a token's GM Notes field.
    • If the token represents a character, you can optionally pull in the Bio or GM notes from the character. The user can decide whether to whisper the notes to the GM or broadcast them to all players.
    • Finally, there is the option to add a footer to notes whispered to the GM. This footer creates a chat button to give the option of sending the notes on to the players.
  • NoteLog(Forum) -- provides an easy interface to keeping notes for your players.
  • Search(Forum) -- provides full text searching across handouts and characters (including attributes). Search respects permissions on handouts and characters.


[edit] Chat

Main Page: Text Chat/API

Various APIs that primarily help you out by creating API commands & options that can be used in the q Text Chat.

  • ChatSetAttr -- Create, modify, and delete character attributes via chat commands or macros.
  • ChatTurnManager -- A script to simplify Turn Order Management, and move it into chat.
  • Check It Out(Forum) -- allows players to examine nearby objects(tokens) and learn more information about them by having a message appear in the chat. Can be set up with system-specific properties, such as automated Investigation skill checks that reveal more information based on the rolled result. Readme
  • Dialog(Forum) -- a script that makes chat a bit more fun and easier to parse, especially for games that don't use voice. It also makes it much easier to get the GM's attention in a busy game.sourcecode, by Keith
  • DiscreteWhisper -- multi-recipient whispers with asides and buttons
  • emas -- Provides player !emas and !as commands.(emote as)
  • ScriptCards -- A scripting language in a Mod Script. Used to produce nicely formatted output cards for attacks, spells, and other abilities. Successor to PowerCards
  • SuperNotes(Forum) Mod to pull descriptions from token/character descriptions, Bio, GM fields & more as an caht message. Later version comes with 10 different chat template options.
  • PowerCards -- Create nicely formatted output cards for attacks, spells, and other abilities.
  • Message of the Day -- Greets players that log in with the contents of a particular note.
  • Rollable Table Macros -- Use macros and chat commands with rollable tables
  • Changes how normal macros and API Script calls are processed:
    • MetaMacros -- Precompiler enabling C-style textual substitution macros in macro definitions.
    • Meta-Toolbox -- collection of meta scripts
      • SelectManager -- a way to preserve the portions of a message that are present in a user-generated message but lost in an api-generated message (the selected tokens, who sent the message, and the playerid).
    • Category:API Meta Scripts


[edit] Combat

Universal combat scripts assist in making combat flow more easily. This can mean anything from automatically handling initiative(t Turn Tracker), automating exchanges between combatants, or doing more comprehensive management. Scripts made for specific Game systems or Roll20 sheets are listed on D&D 5E & System_Specific

  • Group Initiative -- Adds the selected tokens to the turn order after rolling their initiative + configurable data.
  • TurnMarker1 -- provides a visual marker to show which token's turn it is & centers map on them.
  • CombatMaster(Forum) (by Victor B.) -- API for improving various aspects of combat. Automating condition duration in combat, Initiative improvement, and more.
  • autoButtons - automatically generate damage & healing buttons in chat after rolls are made, making it quick & easy to apply the damage & healing to other characters.
  • AddCustomTurn(Forum) (by Aaron)-- An easy way to add (and remove) custom turns which increment or decrement, and have auto delete features.
  • EncounterHelper -- Group tokens into encounters, making it easy to shown/hide/reset individual encounters on the same map, along with rolling initiative for them.
  • GitHubLogo.png -- A script to simplify Turn Order Management, and move it into chat.
  • Critical -- Quick method of determining the outcome of a critical hit.
  • Fumbler -- Quick method of determining the outcome of a fumble.
  • Initiative Tracker Plus -- Initiative and effect tracker with other features.
  • InitiativeMaster -- Standard, Group & Individual Initiative manager for Script:RoundMaster with many additional features
  • RoundMaster -- Generic Turn Order Tracker, Token status manager, and Effect macro system


[edit] Jukebox

The u Jukebox is the music player, and some APIs interact with it

Relevant:

[edit] Generators

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

  • 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)

[edit] Maps & Drawing

Various APIs related to the Map that isn't related to Dynamic Lighting, nor focused on Tokens.

  • SmartAoE -- graphical interface for implementing AoE's on gridded maps to clearly show which squares are affected
  • Areas of Effect(Forum) -- let's players spawn AoE effects on the map(based on what GM made available.
  • DryErase(Forum) – An API that can stop players from drawing on the map.
  • Hexploration(Forum) -- Script allows the GM to conceal areas of a hex grid with individual opaque hexes. Then characters can explore the hexes to reveal them. Readme
  • MapLock -- Provides locking of graphics to prevent moving/resizing/rotating them. Also highlighting.
  • MapChange -- Provides an easy and user friendly way to move players between maps.
  • Radar(Forum) -- to simulate various types of radar, tremor sense etc. Includes options for DL.
  • Universal VTT Importer -- for importing DL settings and other info from maps created with the Universal VTT map format (.dd2vtt/.df2vtt/.Uvtt), as used by several map creator programs.
  • Page Navigator -- Easily move players from page to page, and allow players to move to pages by moving their tokens. Note: Version 2 have some known issues.
  • TruePageCopy -- Duplicate page graphics by chat command, or with the Duplicate Page button. (Partially obsolete since Roll20 implemented their update to Copying Pages in Q4 2020)


[edit] Dynamic Lighting

Dynamic Lighting is a Plus/Pro 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.

Not all APIs, or all their features work on both Updated DL and Legacy DL, you have to check them closer to know that.

  • DLTool(Forum) - A Dynamic Lighting Control Panel and Troubleshooter by keith
  • Door Knocker -- Script helps quickly open and close doors by controlling the dynamic lighting lines, as well as creating "windows"
  • DLEllipseDrawer -- Draw circles and ellipses on the dynamic lighting layer.
  • Dynamic Light Recorder -- Save dynamic lighting paths for map tiles and automatically regenerate later
  • LightCrumb (UDL version), by Aaron (not tested)
  • Move Lighting -- Move dynamic lighting polygon path objects between layers.
  • Walls -- Builds Dynamic Lighting walls with an exported .svg path file.
  • ShareVision -- Allows normal vision and darkvision to be shared.
  • ToggleDaylight(Forum) -- turn daylight mode on, off, or toggle it for LDL or UDL on the current page.
  • Script:UniversalVTTImporter For importing Dynamic Lighting lines & light sources to Roll20 from map creation programs that can export to Universal VTT-file format.

Following Mods no longer work as well as previous, since real Doors and Windows where introduce:

  • UDLWindows(Forum) -- API for creating "windows", i.e. DL lines that blocks movement, but doesn't block vision.
  • UDLPasswall(Forum) - Walls that block sight, but not movement


APIs that only works with Legacy

  • LightCrumbTrails(Forum) -- 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(Forum) -- Allows you to set up dynamic lighting walls that allow you to see through one side, but not the other.
  • Torch -- A simple script for giving lights to tokens and turning off and on dynamic lighting.
    • UDL version in the works


[edit] Tokens

APIs that focus on interacting with tokens, or some aspect of them.

  • TokenMod -- An interface to adjusting properties of a token from a macro or the chat area. Very versatile and tons of options, and it can perform features of several other Token-related APIs.
  • Reporter(Forum) -- A script to poll the game and return info on Token/Character pairs, along with customized action tools.
  • SelectManager - can patch and extend token selection between APIs
  • Supernotes(Forum) -- script pulls the contents from a token's GM Notes field.
  • GitHubLogo.png -- easy way to manage multi-sided tokens which are being used to represent progress clocks, or any other kind of incrementing timer or countdown.
  • Random Token Tinter -- will randomly assign (or remove) tints on tokens based on either a command-line list, a predefined Rollable Table, or a default rainbow (ROYGBV). See !!randtint --help for more.
  • TokenController(Forum) - Automate Token Movement for Patrols, following, roaming, and more
  • WeaponArcs(Forum) -- provides a means to add weapon arcs to tokens for visualization of range and targetable tokens
  • Faces(Forum) -- This is a short script that is designed to provide a quick visual interface for swapping token images and names. Great for any changeling. by Keith

[edit] Movement, Rotation, and Size

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

  • Bump(Forum) - provides a way to invisibly manipulate tokens on the GM Layer from the Objects Layer, and vice versa.
  • TokenLock -- Allows GMs to selectively lock the movement of Player Tokens.
  • Carry Tokens(Forum) -- Allows tokens to "carry" and move other tokens, like dragging other characters or moving items.
  • Collision Detection -- Handles collisions between player-controlled tokens and a subset of path objects on the page
  • DupCharToken -- Duplicate a Character and Token, and add identifying number to Character and Token.
  • It's a Trap! -- Script for setting traps and detecting collisions with them at any point during movement. Has separate versions customised for specific games/sheets
  • KABOOM -- Creates explosion effects that move tokens away from or towards a point.
  • Marching Order -- Makes tokens follow each other in some specified order.
  • Measure -- Measure distances between multiple tokens, both from the corners and the center.
  • Random Rotate -- Allows the GM to easily rotate all selected tokens to a random angle.
  • Teleport -- Teleports tokens within a page or between pages either by chat menu or token movement by using teleport tokens on the GM layer.
  • Spawn Default Token(Forum) -- general idea is to automatically spawn the default token for a given "character" with various options for token qty, location/arrangement, and certain token properties such as size, side(for multi-sided tokens), light emission etc.
  • Token Fate -- Let fate decide! Randomly selects a token from the selected group.
  • Flip Tokens -- Flip graphics horizontally and/or vertically
  • SpinTokens -- Allows the GM to toggle spinning of selected tokens.
  • TokenController -- Allows GMs to quickly create patrol path shapes, assign tokens one or more paths, lock tokens in place, set tokens to follow each-other, and more. Uses complete menu system, no chat commands required.

[edit] 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.


[edit] Utility

Scripts in this category are a bit more meta, or does a variety of things, so they didn't fit neatly into any other category. These scripts assist with Roll20 itself more than they assist the game you're playing.

  • Calendar(Forum) by Steve -- Simple way to keep track of the current in-game date
  • Calendar (reworked)(Forum) by Julexar -- based on an older calendar-script by Kirsty
  • Campaign Survey(Forum) - helps you inventory the size of your campaign, by listing how many pages/characters/handouts/graphics/etc it has, how often each are used, etc.
  • Customizable Roll Listener -- Customizable responses to Mod or non Mod chat messages.
  • Hands Up(Forum) -- allows players to "raise their hand" to get GM's attention witha simple button that makes the players character flash.
  • Game Timer -- This is a simple script to court how long does player use the game room.
  • Lister(Forum) (by Keith) -- Mod that looks through your campaign and lists characters, handouts, pages, rollable tables and players. Can create handout with the report.
  • MetaMacros -- Precompiler enabling C-style textual substitution macros in macro definitions.
  • SelectManager -- a way to preserve the portions of a message that are present in a user-generated message but lost in an api-generated message (the selected tokens, who sent the message, and the playerid).
  • StatusInfo -- StatusInfo works nicely together with Tokenmod, DeathTracker, and InspirationTracker scripts. It shows condition descriptions whenever a statusmarker is set or when the command !condition is used, eg: !condition prone
  • Supernotes(Forum) -- script pulls the contents from a token's GM Notes field.
    • If the token represents a character, you can optionally pull in the Bio or GM notes from the character. The user can decide whether to whisper the notes to the GM or broadcast them to all players.
    • Finally, there is the option to add a footer to notes whispered to the GM. This footer creates a chat button to give the option of sending the notes on to the players.
  • NoteLog(Forum) -- provides an easy interface to keeping notes for your players.
  • Search(Forum) -- provides full text searching across handouts and characters (including attributes). Search respects permissions on handouts and characters.
  • RollStats(Forum) -- get roll statistics for your game and players
  • Triggered Cleanup -- ideal for Living Communities or West Marches style tables. Assists with the cleanup of tokens, optimizing the performance of other APIs through an API command.
  • Ongoing Cleanup -- ideal for long duration Campaign style tables. Assists with the cleanup of tokens, optimizing the performance of other APIs by deleting all tokens related to the character sheet linked to a token that is manually deleted.

[edit] Cards & Roll Tables

Mods specifically for interacting with Cards & Roll Tables.

  • Cards
    • Dealer(Forum) -- Deals and takes cards from players, can specify selection by deck (by Keith)
    • PeekCards(Forum) -- See what you played face down, but don't let others peek at them.
    • DealInit(Forum) -- Deals initiative cards for Savage Worlds
    • SummonCards(Forum) -- allows dealing cards from a deck to the table easily, particularly to predefined patterns/locations
  • Roll tables

[edit] Import/Export

Mods for importing content to Roll20, or for exporting content between games.

  • Table Export -- A script for exporting Rollable Tables between accounts.

Maps

[edit] D&D 5E

Many Mods( beyond the ones listed here) are made with Dungeons & Dragons 5th Edition in mind, or have specific commands tailored to work with the popular D&D 5E by Roll20-character sheet. In the one-click menu, most Mods made for 5E should have a name starting with D&D 5E. 5E is the system that have most system-specific Mods by a large margin. Several generic Mods have configuration settings tailored for the 5E sheets, such as GroupInitiative and GroupCheck.

  • Rest & Resource Management
    • 5E Rest in Style -- This script for the "D&D 5E by Roll20" character sheet, solves the error prone task of updating your sheet when resting.
      • Using !long-rest and !short-rest commands will update your sheet, and report to you everything it is doing.
    • Rest and Recovery(Forum) -- Short & Long Rest automation, by Keith
    • ShortRest -- Automating recovery of various resource during Short Rest
    • CashMaster -- for managing you currencies
  • Spells & Special Abilities
    • SpellMaster -- a high-performance total-replacement for the Spells page of the D&D 5E by Roll20-sheet, with several additional key features that go beyond the default spells page.
    • WildShape(Forum) -- Managing Druid Wildshape, changing token image, setting HP and temporary stats, etc.
    • Hunter's Mark
    • 5E Paladin Aura(Forum) -- Managing the proximity bonuses given by Paladins by notifying users in chat when a bonus should be applied.
    • Concentration -- Concentration keeps track of characters concentration, and reminds to do a concentration check.


[edit] System Toolbox

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 sections above).

It's A Trap! have several game-specific versions.

[edit] 13th Age

  • 13th Age Official Character Sheet Companion -- Enhances the Official 13th Age Character Sheet with quick Escalation Die tracking, automatic recovery tracking, token setup, and automatic staggered and down icons.

[edit] AD&D2e

  • RPGMaster - set of APIs made for AD&D 2E sheet
    • RPGMaster Suite -- The RPGMaster Suite loader. Load this Mod to load the whole RPGMaster suite of Mods.
    • CommandMaster -- Manages the initialisation of a Campaign to use the RPGMaster APIs, communication and command syntax updates between the APIs and, most importantly for the DM, easy menu-driven setup of Tokens and Character Sheets to work with the APIs.
    • RoundMaster -- provides functions to manage tokens and entries in the Turn Order Tracker, and add statuses and effects to tokens, along with additional features such as Area of Effect display and Effect Macros that can be run when statuses are added, on or removed from a token.
    • InitiativeMaster -- supports initiative for RPGs using the Turn Order and the Tracker window.
    • AttackMaster -- provides functions to manage weapons, armour & shields, including taking weapons in hand and using them to attack.
    • MagicMaster -- provides functions to manage all types of magic, including Wizard & Priest spell use and effects; Character, NPC & Monster Powers; and discovery, looting, use and cursing of Magic Items.
    • RPGMaster Library -- The RPG version and Character Sheet version specific data & ruleset library for other RPGMaster APIs, which also provides some useful Roll Templates and API-callable library functions for character sheet table management, database management and other useful stuff. In future, multiple versions of this library may exist for multiple RPGs, but for now it is just AD&D2e.

[edit] Ars Magica

[edit] Chronique Oubliées

  • COFantasy -- Combats, Skills and Spells support

[edit] 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.
  • Cypher Systems by Roll20 Companion -- Enables the applying to characters of Stats costs and Recovery rolls advancement from the chat roll template, as well as applying Damage to NPCs.

[edit] 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, used in "Star Wars D6", "D6 Adventure", "D6 Fantasy", and "D6 Space"

[edit] Earthdawn

  • 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.

[edit] Exalted

[edit] FATE

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

[edit] HERO Systems

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

[edit] Numenera

[edit] Pathfinder

[edit] Pathfinder 2nd Edition

[edit] Savage Worlds

  • Script: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.
  • TokenMod: Changes token properties This enables macros to modify tokens, and even apply Wounds or change rotation.
  • Savage Worlds Status Changer: Want to remove the Stunned state and apply the Distracted and Vulnerable states with one command? Want to do that for 5 tokens with one command? This enables macros to set token status indicators like shaken, vulnerable, and prone. These can be set manually by clicking on the token, clicking the indicator button, scrolling the menu, and clicking on the status indicator, but with macro control you could set them by name or set them for several Extras at the same time.
  • DealInit(Forum) Want to quickly handle initiative for players with Quick or Level Headed? Roll20 API Script to Deal Initiative for Savage Worlds Games. DealInit supports Savage Worlds style card based inititive by dealing cards to the Turn Order and sorting the order by suit. It does not, however, utilize the Roll20 deck system. Instead it manages an internal array of cards that are reshuffled when the deck runs out or a joker is drawn. It also checks character attributes for any SW Inititative Edges and handles them appropriately.

APIs Not in the Install menu:

  • Bennies: to ease dealing Savage Worlds Bennies to players. You can also use it to grant Conviction, count Mass Battle tokens, or keep track of Social Conflict Influence.
  • Import Stat Block -- NOT WORKING, APRIL 2020 This saves a lot time creating Character Sheets for NPCs and creatures from the bestiary. All you have to do is copy a stat block from a PDF or other source into the GM Notes section of a token, then type "!SW-Import" into the q Chat tab and it will create the Character sheet for you.


[edit] 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. For the "Shadowrun: 5th Edition (Advanced)" sheet.
  • SR-NextPass -- GM aid to handle moving on to the next initiative pass

[edit] Star Wars

Scripts for the various Star Wars systems.


[edit] Starfinder

[edit] Trail of Cthulhu

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


[edit] Warhammer Fantasy Roleplay

2E

  • WFRP 2E Actions (Havoc) -- Functions and Roll Templates in support of the Warhammer Fantasy Roleplay 2E Sheet by Paul "Havoc" Stein

4E

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

[edit] Other


[edit] Library/Meta Scripts

Library scripts are generally not intended to be used alone or directly by the user. These scripts will not do anything for your campaign directly, but rather they create functions to be used by other Mods.

Mods installed from the one-click menu should automatically install any Library scripts that are needed for them to work, or warn about needing additional Mods installed.

[edit] What Are Meta-Scripts?

Main Page: API:Meta Scripts

Meta-scripts are scripts that offer a level of "pre-processing" to other scripts by giving the user ways to change the message before other scripts receive it. To understand what a metascript can do and how they can help, it helps to start with understanding the different message types.

In a Roll20 game, you have simple messages... these are things that you type into the chat input and they hit the chat output pane. They can be plain text or Roll Templates, whispered or public, and they can include Inline Rolls ( [[1d10]] ), character attribute calls ( @{character|attribute} ), or Roll Queries( ?{What?|Option1|Option2} ).

You also have Mod/API messages... these are prepended with an exclamation point, and they do not (in and of themselves) hit the chat pane. They can also include inline rolls, sheet calls, or roll queries. At this point it pays to think of the message as a thing -- an object -- with certain describable properties. One property is the text that was entered into the chat input (sometimes called the command line or the message content). These message objects get handed to the scripts you have installed to see if any script needs to take an action. The scripts hand the same message object off, one script to the next. Typically, each script is looking to see if it needs to do anything with the message by the message handle (the part of the command line that immediately follows the exclamation point).

!thehandle --arg1 --arg2

The scripts are processed (usually) in install-order, handing the message over in a chain until there are no more scripts to inspect the message to see if they should take action. For standard scripts (e.g. non metascripts), the destination script designated by the handle is typically the end of the line. You want TokenMod to pick up your call to !token-mod, and you want ChatSetAttr to pick up the call to !setattrs. The message will continue on through the rest of the scripts in the queue; it's just likely that none of them will have anything to do with it.

Until recently, that was the end of the discussion.

Then The Aaron discovered a quirk of script ordering that would let a script shin-kick its way to the front of the chain of scripts waiting to handle the message in order. In other words, no matter if you installed one of these shin-kicking scripts later in your script library, it would still get the message first. That discovery gave birth to metascripts.

Metascripts use the shin-kicking technique to get to the head of the line, but they don't look for a particular handle of their own. They don't aim to be the end-destination of the message. Instead, they are looking for text triggers within the command line that tell them to take particular actions on the message before they hand it off (to the queue of regular scripts waiting to see if they should handle the message). In effect, they offer a universal level of "pre-processing" to other scripts without needing the coding infrastructure duplicated by each individual scripter. {{Meta Metascripts can alter the command line of the message, alter other properties of the message, or fire other scripts, all with the goal of getting the message into a particular shape by the time that the intended-destination script would pick it up.

[edit] Meta Scripts

Script:APILogic - can conditionally include/exclude parts of a command line using comparison logic. APILogic(Forum)

Script:Muler - can store and retrieve variables from mule tables, offering rollable or static access.

  • It can bypass HTML character replacement requirements for roll queries, and with ZeroFrame can operate recursively over new meta-constructions.

Plugger - offers a way to run script commands at meta-speed, making it easy to plug-in small, single-job code snippets or to execute full calls to other scripts.

  • Optionally, Plugger can return some result from the plugged-in code to the command line (see this discussion(Forum) about converting a range script to a Plugger plugin to return a range modifier).

Script:SelectManager - There is a quirk of Roll20 that when a script sends a chat call to another script (we call this an 'API generated message'), the tabletop's selected tokens are not maintained with the new message.

  • SelectManager returns those to the API generated message. It also allows you to "virtually" select tokens, replacing what is actually selected on the tabletop, or adding to that set. It can also iterate a command on a per-token basis, returning individual information to each token's command line.

Script:Fetch - extends the things that can be returned from tokens, characters, etc., including a default value.

  • It offers the ability to designate a default value in case the thing asked for isn't found, and offers a standardized framework to access a repeating attribute without having to know its position on the character sheet ahead of time. Aside from retrieving information by token or character name, Fetch can also use the selected token, the speaker, or a token from the Turn Tracker.

MathOps - provides an inline math parser, offering more functions than are available in a typical inline roll.

Script:ZeroFrame - brings a script framework to scripts that are built to work with it... allowing the user to loop over their installed metascripts and set the order for an individual pass over the loop or for all passes.

  • For instance, sometimes you might need to run a Fetch construction before you base APILogic off of what you return. Other times, you might need to run the APILogic comparisons before you know what you need to Fetch. ZeroFrame also allows you to defer inline rolls (only resolving them after all required meta-processing has completed), to defer other meta-constructions, and to output a simple message (hitting the chat window) and skipping the waiting queue of API scripts.
  • That ability means you can utilize metascript constructs in what you want to be a normal message. So even though you don't have a destination script in mind, you can still use APILogic to conditionally construct your line, or you can use Muler to return a variable, or you can Fetch a token property that isn't available with the typical Roll20 syntax, or you can use Plugger to get the range between two tokens... and then output that to a roll template in the chat window.

Visit the Meta Toolbox page for an overview of the them, with further links to each. The Meta Script Toolbox(Forum)-thread is also a good visit.

  • InsertArg(Forum) -- script preamp, siege engine, menu maker, command line constructor


[edit] Mods needing manual install

Some Mods aren't available in the One-Click Install in Roll20, but the code might be hosted elsewhere and need to be manually installed into your game. This is an attempt to list prominent ones.

See Also: Mod:Short Community Scripts

[edit] Roll20 repo, but not in menu

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

  • Battle Royale(Forum) -- Instantly create a GM-less PvP experience! Even handles doors, invisibility etc.
  • Creature Gen -- Generate combat ready tokens from PRD and D20PFSRD statblocks (Obsolete - no longer supported)

[edit] Mods hosted elsewhere

Other notable Mods, that aren't available in the one-click install. Some are larger Mods, and others just smaller snippets. Needs to be installed manually.

Map & Token

Other

[edit] Special Thanks

In Summer 2022, API where renamed as Mods, and the work to update the various pages started. The Index had continued to be updated sporadically.

In early 2021, Andreas J. did a major revision of the page, reorganizing with better categories, add several newer and popular APIs to the list, and added relevant forum/wiki/documentation links to most listed APIs, so it would be easier to learn about them.

The category cleanup on the API index is something I intend to bring to the API 1-click Install, as the One-Click Menu is currently pretty hard to browser, as something like half of the APIs are categorized under "Utility", and there would be a benefit for all D&D5E-specific API to be in a separate category from the other game-specific APIs. -Andreas J. (talk) October 2021

Roll20 wants to give special thanks to Brian Shields and Aaron C. M. for their contributions to the community and creation of the API Script Index (in 2014).