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
(Combat Scripts: HB seems reluctant to contribute his scripts, on top of the Round Tracker script being essentially replicated by the round calculation feature)
m (Dungeons & Dragons 5e)
(151 intermediate revisions by 44 users not shown)
Line 1: Line 1:
{{mentors only}}
+
{{pro only}}
{{Tocright}}
+
 
 +
<div style="float:left;margin-right:15px">__TOC__</div>
 +
{{apibox}}
 +
 
  
 
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 [https://github.com/Roll20/roll20-api-scripts API GitHub Repository] and follow the instructions in the README.md file at the bottom of the page.
 
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 [https://github.com/Roll20/roll20-api-scripts API GitHub Repository] and follow the instructions in the README.md file at the bottom of the page.
 +
 +
<br clear="both">
  
 
== Scripts By Category ==
 
== Scripts By Category ==
Line 10: Line 15:
  
 
==== Combat Scripts ====
 
==== Combat Scripts ====
Combat scripts assist in making combat flow more easily. This can mean anything from automatically handling initiative to automating exchanges betwen combatants.
+
Combat scripts assist in making combat flow more easily. This can mean anything from automatically handling initiative to automating exchanges between combatants.
* [[Script:Auto Initiative|Auto Initiative]] -- Adds the players to the initiative tracker, rolls randomly for them and adds relevant modifiers.
+
* [[Script:Group Initiative|Group Initiative]] -- Adds the selected tokens to the turn order after rolling their initiative + configurable data.
* [[Script:Automatic Initiative Roller and Round Counter|Automatic Initiative Roller and Round Counter]] --
+
* [[Script:Initiative Tracker|Initiative Tracker]] -- Round counter and status effect manager with optional announcements to chat.
* [[Script:Cone and Circle Templates|Cone and Circle Templates]] --
+
* [[Script:Random Turnorder|Random Turnorder]] -- Randomly assigns a turn to selected tokens.
* [[Script:Highlight Token at Top of Initiative|Highlight Token at Top of Initiative]] -- Highlights the token at the top of initiative.
+
* [[Script:TrackerJacker|TrackerJacker]] -- Graphical turnorder tracker, as well as status/condition marker tracking
* [[Script:Initiative highlighter|Initiative Highlighter]] -- Highlights a token whose turn it is with a flashing aura.
+
* [[Script:Turn Marker|Turn Marker]] -- Round counter and a moving marker that shows whose turn it is.
* [[Script:InitiativeTracker|InitiativeTracker]] -- Round counter and status effect manager with optional announcements to chat.
+
* [[Script: Critical|Critical]] -- Quick method of determining the outcome of a critical hit.
* [[Script:Random Turn Order|Random Turn Order]] -- Randomly assigns a turn to selected tokens.
+
* [[Script: Fumbler|Fumbler]] -- Quick method of determining the outcome of a fumble.
* [[Script:Range Finder|Range Finder]] -- Determines the distance between two named tokens
+
* [[Script:Roll Comparisons|Roll comparisons]] -- Comparing roll results.
+
  
 
==== Tokens - Conditions / Status / Health ====
 
==== 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.
 
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.
* [[Script:Automatic Status Markers|Automatic Status Markers]] -- Automatically adjust status markers on tokens
 
* [[Script:Automatic Temp HP Management|Automatic Temp HP Management]] -- Uses temporary hit points and sets it to automatically remove them first.
 
 
* [[Script:Blood And Honor: Automatic blood spatter, pooling and trail effects|Blood And Honor]] -- Automatic blood spatter, pooling and trail effects
 
* [[Script:Blood And Honor: Automatic blood spatter, pooling and trail effects|Blood And Honor]] -- Automatic blood spatter, pooling and trail effects
 
* [[Script:Bloodied and Dead Status Markers|Bloodied and Dead Status Markers]] -- Automatic bloodied and down icons for HP tracking
 
* [[Script:Bloodied and Dead Status Markers|Bloodied and Dead Status Markers]] -- Automatic bloodied and down icons for HP tracking
Line 30: Line 31:
 
* [[Script:Flight|Flight]] -- Mark how high tokens are flying
 
* [[Script:Flight|Flight]] -- Mark how high tokens are flying
 
* [[Script:Flip Tokens|Flip Tokens]] -- Flip graphics horizontally and/or vertically
 
* [[Script:Flip Tokens|Flip Tokens]] -- Flip graphics horizontally and/or vertically
* [[Script:Heal Chat Command|Heal Chat Command]] -- Use commands to heal characters
+
* [[Script:Mark|Mark]] -- Places a numbered Marker under tokens, clears on turn change/close, and page change.
* [[Script:HP Change Announcement|HP Change Announcement]] -- Announces when tokens' hit points changes.
+
* [[Script:Marking Conditions|Marking Conditions]] -- Set status markers on targeted on individual tokens
* [[Script:Target Marking|Target Marking]] -- System for marking tokens with status markerAuto create a token
+
* [[Script:Temp HP and Status|Temp HP and Status]] -- Temp hit point manager and bloodied/dying/dead status markers.
* [[Script:Updated Heal Chat Command|Updated Heal Chat Command]] --  
+
* [[Script:Toggle Status|Toggle Status]] -- Toggle status marker on/off, and update character attribute to match
  
==== Tokens - Movement ====
+
==== Tokens - Movement, Rotation, and Size ====
 
Scripts which are triggered by or change the location of tokens should generally be placed in this category.
 
Scripts which are triggered by or change the location of tokens should generally be placed in this category.
 
* [[Script:Auto Teleporting and Chat Based Teleporting|Auto Teleporting and Chat Based Teleporting]] -- Teleporting based on text commands or token locations.
 
* [[Script:Auto Teleporting and Chat Based Teleporting|Auto Teleporting and Chat Based Teleporting]] -- Teleporting based on text commands or token locations.
* [[Script:Carrying Tokens|Carrying Tokens]] -- Tokens carrying other tokens such as torches.
+
* [[Script:Change_Token_Image|Change Token Image]] -- Changes displayed image for tokens based on rollable table.
* [[Script:Character Token Locator|Character Token Locator]] -- Creates an aura and shrinks it slowly to help you find your token.
+
 
* [[Script:Collision Detection|Collision Detection]] -- Handles collisions between player-controlled tokens and a subset of path objects on the page
 
* [[Script:Collision Detection|Collision Detection]] -- Handles collisions between player-controlled tokens and a subset of path objects on the page
* [[Script:Disable Rotation|Disable Rotation via Chat Window Command]] -- Disable the rotation of tokens in the chat window.
+
* [[Script:KABOOM|KABOOM]] -- Creates explosion effects that move tokens away from or towards a point.
 
* [[Script:It's a Trap|It's a Trap]] -- Script for setting traps and detecting collisions with them at any point during movement.
 
* [[Script:It's a Trap|It's a Trap]] -- Script for setting traps and detecting collisions with them at any point during movement.
* [[Script:Marking Order|Marching Order]] -- Tracking marching order of characters
+
* [[Script:Marching Order|Marching Order]] -- Makes tokens follow each other in some specified order.
* [[Script:Movement Tracker and Aura Highlighter|Movement Tracker and Aura Highlighter]] -- Uses auras to track character movement based on speeds.
+
* [[Script:Move Lighting|Move Lighting]] -- Move dynamic lighting polygon path objects between game layers.
 
* [[Script:No Token Rotation|No Token Rotation]] -- Prevents tokens from being rotated
 
* [[Script:No Token Rotation|No Token Rotation]] -- Prevents tokens from being rotated
* [[Script:Patrolling Tokens|Patrolling Tokens]] -- Script for patrolling tokens.
+
* [[Script:Random Depth|Random Depth]] -- Randomly adjusts the depth of selected tokens.
* [[Script:Time Torch Tracker|Time/Torch Tracker]] -- Shrinking light auras of torches.
+
* [[Script:Random Rotate|Random Rotate]] -- Allows the GM to easily rotate all selected tokens to a random angle.
* [[Script:Trap Script|Trap script]] -- Script for using traps.
+
* [[Script:Size Lock|Size Lock]] -- Toggles a state which reverts any size changes automatically.
* [[Script:Units Moved|Units Moved]] -- Tracks units moved.
+
* [[Script:Slide Tokens|Slide Tokens]] -- Use an API command to move tokens along a waypoint path, instead of dragging the token and hitting space.
* [[Script:Visual Hourglass|Visual Hourglass]] -- Visual UI interface. Uses for asking players to wait.
+
* [[Script:Spin Tokens|Spin Tokens]] -- Allows the GM to toggle spinning of selected tokens.
 +
* [[Script:Table Token Sizer|Table Token Sizer]] -- Simple script to scale rollable tokens added to the tabletop to a given size (defaults to 3x3) an set them as not drawings.
 +
* [[Script:Token Path|Token Path]] -- Tracks movement of the token at the top of tracker, displaying its path (and distance traveled) for the round.
 +
* [[Script:Token Lock|Token Lock]] -- Allows GMs to selectively lock the movement of Player Tokens.
 +
* [[Script:Twins|Twins]] -- Links two tokens so that they mirror each other across pages.
  
 
==== Lighting and Revealing ====
 
==== 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 <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 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 <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.
 +
* [[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
 
* [[Script:Dynamic Lighting Animation|Dynamic Lighting Animation]] -- Animate a sequence of changes to the dynamic lighting layer
 
* [[Script:Dynamic Lighting Animation|Dynamic Lighting Animation]] -- Animate a sequence of changes to the dynamic lighting layer
* [[Script:Light Switch|Light Switch]] -- Script for turning on and off lights with chat commands.
 
* [[Script:Reveal Command|Reveal command]] -- Automatically moves tokens from the GM layer to objects layer, making them reveal to players.
 
 
* [[Script:The Darkness is Closing In|The Darkness is Closing In]] -- Example script for reducing light on a token every time it moves.
 
* [[Script:The Darkness is Closing In|The Darkness is Closing In]] -- Example script for reducing light on a token every time it moves.
 +
* [[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 SVG path file.
 +
* [[Script:ShareVision|ShareVision]] -- Allows normal vision and darkvision to be shared.
 +
 +
==== Jukebox ====
 +
The jukebox is a powerful tool for creating immersive gaming experiences. Make it even more powerful.
 +
* [[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.
  
 
==== Characters - Equipment ====
 
==== Characters - Equipment ====
Most game systems have some form of equipment to make characters better. While scripts dealing with that equipment may necessarily bet system-specific, there are scripts which handle equipment in a more general fashion.
+
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:Set Weapon Value Using The API|Set Weapon Values Using the API]] -- Tracks weapons equipped by characters.
+
* [[Script:Ammo|Ammo]] -- Provides inventory management for ammunition stored in an attribute of a character.
* [[Script:Trader Joes|Trader Joes]] -- Inventory Management
+
* [[Script:Ammunition Tracker|Ammunition Tracker]] -- A bunch of commands to track ammunition.
 +
* [[Script:Inventory Manager|Inventory Manager]] -- Inventory Management
 +
 
 +
==== 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.
 +
* [[Script:Conditions|Conditions]] -- Track attribute-modifying conditions.
 +
* [[Script:Manual Attribute|Manual Attribute]] -- Creates a manual copy of an autocalculated field, and assigns it to the bar of a token.
 +
* [[Script:ChatSetAttr|ChatSetAttr]] -- Create, modify, and delete character attributes via chat commands or macros.
 +
* [[Script:EasyExperience|EasyExperience]] -- Make awarding experience easy and choose your experience progression.
  
 
==== Generators ====
 
==== Generators ====
Random content generation can extend the reach of your campaign while minimizing the GM's prep time. It may be difficult to use these scripts for an in-depth story-driven game, but they'll be great for a random dungeon crawl!
+
Content generation can extend the reach of your campaign while minimizing the GM's prep time.
* [[Script:Its the Monster Mash|It's the Monster Mash!]] -- It's the Monster Mash! An adventure in Encounters!
+
* [[Script:CharSheet|CharSheet]] -- Allow players to create their own character sheets.
* [[Script:Random Dungeon Generator|Random Dungeon Generator]] -- Generates random dungeons with geomorphic tiles
+
* [[Script:Dungeon Utils|Dungeon Utils]] -- Generates random dungeons from wall and floor images.
* [[Script:Weather Generator Script|Weather Generator Script]] --
+
* [[Script:namegen]] -- Generates random names of People, Towns/Cities, and Taverns
 +
* [[Script:Random Dungeon Generator|Random Dungeon Generator]] -- Generates random dungeons with geomorphic tiles.
 +
* [[Script:Terrain Generator|Terrain Generator]] -- Generate simple outdoor maps (forests, deserts, etc)
 +
* [[Script:Tile|Tile]] -- Create tiled arrays of graphics on the map layer.
 +
* [[Script:Token Name Number|Token Name Number]] -- Automatic Numbering of tokens with special placeholder.
  
 
==== Roleplay ====
 
==== Roleplay ====
 
Scripts which attempt to make the game more immersive belong in this category.
 
Scripts which attempt to make the game more immersive belong in this category.
 +
* [[Script:Animation|Animation]] -- Create and display animations.
 +
* [[Script:Languages|Languages]] -- Allows characters & GMs to create and speak any language. This is a rework of What Did He Say
 
* [[Script:Language Script|Language Script]] -- A script for auto converting text to elven or dwarven.
 
* [[Script:Language Script|Language Script]] -- A script for auto converting text to elven or dwarven.
 
* [[Script:What Did He Say|What Did He Say?]] -- Language based scripting
 
* [[Script:What Did He Say|What Did He Say?]] -- Language based scripting
 +
* [[Script:Morality|Morality]] -- A dialog prompt that provides morality choices as decisions
  
 
==== System ====
 
==== System ====
 
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.
 
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.
* [[Script:API Command Process Standard Model|API command process, standard model]] -- API command process, standard model.
+
* [[Script:API Heart Beat|API Heart Beat]] -- Provides an API Heartbeat by setting the requesting player's color continuously.
* [[Script:Chat Command Script|Chat Command Script]] -- Script for standardizing and preventing duplication of chat commands.
+
* [[Script:cron|cron]] -- Schedule (possibly recurring) commands to run at some point in the future.
* [[Script:Custom Power Cards|Custom Power Cards]] -- Format messages for chat in an compact and appealing manner
+
* [[Script:DupCharToken|DupCharToken]] -- Duplicate and add identifying number to Character and Token.
* [[Script:Detecting Nearest Token|Detecting Nearest Token]] -- Script for detecting the nearest token after one is moved.
+
* [[Script:emas|emas]] -- Provides player !emas and !as commands.
* [[Script:Graphic Token Snapshot Saving and Loading|Graphic/Token snapshot saving/loading for building your own macros]] -- System for tracking a loading token set ups
+
* [[Script:Extended Expressions|Extended Expressions]] -- Extended roll expression syntax, supporting conditionals, variable references, bitwise operators, and more.
* [[Script:Scrolling Macro_Bar|Scrolling Macro Bar]] --
+
* [[Script:HiddenRolls|HiddenRolls]] -- Various types of roll hiding (unmodified roll only, final result only, only show to GM).
 +
* [[Script:Is Greater|Is Greater]] -- Trivial little script to check if the first value is greater than the second and report it to chat.
 +
* [[Script:Map Lock|Map Lock]] -- Provides locking of graphics to prevent moving/resizing/rotating them.  Also highlighting.
 +
* [[Script:Measure|Measure]] -- Measure distances between multiple tokens, both from the corners and the center.
 +
* [[Script:Message of the Day|Message of the Day]] -- Greets players that log in with the contents of a particular note.
 +
* [[Script:Move Players|Move Players]] -- Allows macros to move the player ribbon for players.
 +
* [[Script:MapChange|MapChange]] -- Provides an easy and user friendly way to move players between maps.
 +
* [[Script:Object Properties|Object Properties]] -- Get and set properties of API objects.
 +
* [[Script:Page Navigator|Page Navigator]] -- Easily move players from page to page, and allow players to move to pages by moving their tokens.
 +
* [[Script:Page Size|Page Size]] -- Resizes page, optionally moving and/or scaling its contents.
 +
* [[Script:RollStats|RollStats]] -- Track and display roll statistics.
 +
* [[Script:Rollable_Table_Macros|Rollable Table Macros]] -- Use macros and chat commands with rollable tables
 +
* [[Script:StateBrowser|StateBrowser]] -- View/modify the contents of the state object.
 
* [[Script:Store Commands|Store Commands]] -- Store a series of commands for repeated execution
 
* [[Script:Store Commands|Store Commands]] -- Store a series of commands for repeated execution
* [[Script:String Formatter|String Formatter]] -- Formats a string for printing.
+
* [[Script:Table Export|Table Export]] -- A script for exporting Rollable Tables between accounts.
 +
* [[Script:tokenFate|Token Fate]] -- Let fate decide! Randomly selects a token from the selected group.
 +
* [[Script:Token Mod|Token Mod]] -- An interface to adjusting properties of a token from a macro or the chat area.
 +
* [[Script:TokenSync|TokenSync]] -- Synchronize changes to token with other tokens that represent the same character
 +
* [[Script:TruePageCopy|TruePageCopy]] -- Duplicate page graphics by chat command, or with the Duplicate Page button.
 +
* [[Script:Weighted Dice|Weighted Dice]] -- Automated creation of rollable tables where a minimum value is weighted with values it replaces. (example d6min4 possible values: 4 4 4 4 5 6)
 +
* [[Script:Customizable Roll Listener|Customizable Roll Listener]] -- Customizable responses to API or non API chat messages.
  
 
=== Game Specific Scripts ===
 
=== Game Specific Scripts ===
Line 91: Line 135:
 
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).
 
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).
  
==== AD&D (Dungeons and Dragons 2e)  ====
+
==== 13th Age ====
* [[Script:Character Sheet (AD&D)|Character Sheet (AD&D)]] --
+
* [[Script:Escalation|Escalation]] -- Simple Escalation Die handling script, using the new custom entries with formulae.
  
==== Basic Fantasy Role Playing Game ====
+
==== Ars Magica ====
* [[Script:BFRPG|Basic Fantasy Role-Playing Game]] --
+
* [[Script:Ars Magica 5e Stress Die|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.
  
==== DnD 4th Edition ====
+
==== BASH! Ultimate Edition ====
* [[Script:Combat (D&D 4e)|Combat]] -- temporary hit points. Also prevents over healing.
+
* [[Script:Dice (BASH!)|Dice]] -- Rolls the Bash UE Dice format with exploding.
* [[Script:Combat Engine (D&D 4e)|Combat Engine]] --  
+
 
* [[Script:Helper (D&D 4e)|Helper]] -- 4th edition collection of scripts.
+
==== Chronique Oubliées ====
* [[Script:MM3 Monster Generator (D&D 4e)|Monster Generator]] --
+
* [[Script:COFantasy|COFantasy]] -- Combats, Skills and Spells support
* [[Script:Tools (D&D 4e)|Tools]] -- 4th edition. Adds marking to the Combat script.
+
 
 +
==== 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.
 +
 
 +
==== 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.
 +
 
 +
==== 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.
 +
* [[Script:Announce Roll|Announce Roll]] -- Prints an extra announcement of a critical or fumble to the chat when using /roll
 +
* [[Script:Monster Hit Dice|Monster Hit Dice]] -- Set Monster hit points from hit dice on add, usually via drag from journal.
 +
 
 +
==== Dogs in the Vineyard ====
 +
* [[Script:Dice 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 ====
 +
* [[Script:Use Power|Use Power]] -- A script for instrumenting and tracking the use of encounter and daily powers.
 +
 
 +
==== Dungeons & Dragons 5e ====
 +
* [[Script:5e Shaped Companion Script|5e Shaped Companion]] -- Support script for the 5e Shaped Character Sheet - provides monster import, auto-ammo, auto-HD, auto-death saves, loads of config options and more
 +
* [[Script:5th Edition Greyhawk Initiative|Greyhawk Initiative]] -- Supports the use of Greyhawk Initiative from Wizards of the Coast's Unearthed Arcana.
 +
* [[Script:Spell Level (D&D 5e)|Spell Level]] --
 +
 
 +
==== 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.
  
 
==== Edge of the Empire ====
 
==== Edge of the Empire ====
* [[Script:Dice (EotE)|Dice]] --
+
* [[Script:Dice Roller (Edge of the Empire)|Dice Roller]] -- A Dice roller for the Edge of the Empire/Age of Rebellion/Force and Destiny Roleplaying Game
* [[Script:Dice With Images In The Chat Window (EotE)|Dice with Images in the Chat Window]] --
+
  
 
==== Exalted, Second Edition ====
 
==== Exalted, Second Edition ====
 
* [[Script:Exalted Successes|Successes]] -- reports successes for d10 rolls per ''Exalted'' rules.
 
* [[Script:Exalted Successes|Successes]] -- reports successes for d10 rolls per ''Exalted'' rules.
  
==== Fantasy Craft 2nd Printing ====
+
==== Exalted, Third Edition ====
* [[Script:Damage Save (Fantasy Craft)|Damage Save]] --
+
* [[Script:exaltScript|exaltScript]] -- Adds general utility and automation to Exalted 3rd Edition campaigns.
* [[Script:Standard Character Token Management (Fantasy Craft)|Token Management]] --
+
  
==== HERO System ====
+
==== FATE ====
* [[Script:Automate Combat (HERO)|Automate Combat]] --
+
* [[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.
 +
 
 +
==== Numenera ====
 +
* [[Script:Cypher Roller|Cypher Roller]] -- Script to automatically roll Cyphers in Numenera, with full descriptions.
 +
* [[Script:Numenera_Natha|Numenera Natha]] -- 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  [https://github.com/Roll20/roll20-character-sheets/tree/master/Numenera_NathasNumenera_French "Numenera (French)"].
  
 
==== Pathfinder ====
 
==== Pathfinder ====
* [[Script:Pathfinder All In One|All In One]] --
+
* [[Script:Creature Gen|Creature Gen]] -- Generate combat ready tokens from PRD and D20PFSRD statblocks (Obsolete - no longer supported)
* [[Script:Character Sheet (PF)|Character Sheet]] --  
+
* [[Script:Skillbook|Skillbook]] -- Generate token action to put API buttons for skills in chat window
* [[Script:Inspired Collection|Inspired Collection]] --
+
* [[Script:HL-Import|HL-Import]] -- Import characters from Hero Lab via XML
 +
* [[Script:Pathfinder_Character_Sheet|Pathfinder_Character_Sheet]] -- Import PCs/NPCs based on the format and text placement
 +
 
 +
==== Ryuutama ====
 +
* [[Script:Ryuutama Token Status Markers|Ryuutama Token Status Markers]]
 +
* [[Script:Ryuutama Skill Check Totaler|Ryuutama Skill Check Totaler]]
  
 
==== Savage Worlds ====
 
==== Savage Worlds ====
 
* [[Script:Raise Count|Raise Count]] -- Counts raises on a roll against a given target number
 
* [[Script:Raise Count|Raise Count]] -- Counts raises on a roll against a given target number
  
==== Star Wars Saga ====
+
==== Shadowrun 5e ====
* [[Script:Character Sheet (SWS)|Character Sheet]] --
+
* [[Script:SR-RollExtender|SR-RollExtender]] -- Deals with Shadowrun specific rules like glitches and extended rolls.
 +
* [[Script:SR-NextPass|SR-NextPass]] -- GM aid to handle moving on to the next initiative pass
 +
 
 +
==== Trail of Cthulhu ====
 +
* [[Script:GUMSHOE|GUMSHOE]] -- A point-spending script for GUMSHOE games. Integrates with supporting character sheets.
 +
 
 +
==== Vampire: The Masquerade, 20th Anniversary Edition ====
 +
* [[Script:Track V20 Attributes|Track V20 Attributes]] -- Track character Disciplines, Paths, and Backgrounds for use with macros and other scripts.
 +
 
 +
====WFRP2E (Havoc)====
 +
* [[Script:wfrp2e-api|wfrp2e-api]] -- Functions and Roll Templates in support of the Warhammer Fantasy Roleplay 2E Sheet by Paul "Havoc" Stein
 +
 
 +
====WFRP4E====
 +
* [[Script:WFRP4e|WFRP4e]] -- Oops!, Critical Hit Location, and Critical Hit result support for Warhammer Fantasy 4th Edition.
  
 
==== Zombie Dice ====
 
==== Zombie Dice ====
* [[Script:Zombie Dice|Zombie Dice]] -- A Script for playing zombie dice
+
* [[Script:Zombie Dice|Zombie Dice]] -- Rolls canceling Zombie Dice
  
 
=== Utility Scripts ===
 
=== 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.
 
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.
 
+
* [[Script:Base64|Base64]] -- Base 64 encoding for Roll20 Scripts. (Adapted from http://www.webtoolkit.info/ )
* [[Script:CommandShell|CommandShell]] -- Framework for marshalling chat commands with POSIX-shell-style arguments, permissions, and duplicate-command checking.
+
* [[Script:Command Shell|Command Shell]] -- Framework for marshalling chat commands with POSIX-shell-style arguments, permissions, and duplicate-command checking.
* [[Script:GMCode|GMCode]] -- Generates a unique code to authenticate the GM.
+
* [[Script:ESRO|Extended Syntax Roll20 Objects]] -- Wraps objects to extend their functionality.
 +
* [[Script:GM Code|GM Code]] -- Generates a unique code to authenticate the GM.
 
* [[Script:Interpreted sendChat|Interpreted sendChat]] -- Send a message to the chat as the same person or character that triggered a chat event
 
* [[Script:Interpreted sendChat|Interpreted sendChat]] -- Send a message to the chat as the same person or character that triggered a chat event
 
* [[Script:IsGM Auth Module|IsGM Auth Module]] -- Provides a function isGM() for determining if a player id refers to a gm. Intended for use alongside other scripts.
 
* [[Script:IsGM Auth Module|IsGM Auth Module]] -- Provides a function isGM() for determining if a player id refers to a gm. Intended for use alongside other scripts.
Line 143: Line 236:
 
* [[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.
 +
* [[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 5E OGL character sheet actions.
 +
 +
=== Special Thanks ===
 +
Roll20 wants to give special thanks to [https://app.roll20.net/users/235259/brian Brian] and [https://app.roll20.net/users/104025/the-aaron Aaron C. M.] for their contributions to the community and this API script index.
  
 
[[Category:API|Script Index]]
 
[[Category:API|Script Index]]

Revision as of 23:10, 16 June 2019

Contents


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 README.md file at the bottom of the page.


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.
  • Initiative Tracker -- Round counter and status effect manager with optional announcements to chat.
  • Random Turnorder -- Randomly assigns a turn to selected tokens.
  • TrackerJacker -- Graphical turnorder tracker, as well as status/condition marker tracking
  • Turn Marker -- Round counter and a moving marker that shows whose turn it is.
  • 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.

Tokens - Movement, Rotation, and Size

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

  • Auto Teleporting and Chat Based Teleporting -- Teleporting based on text commands or token locations.
  • Change Token Image -- Changes displayed image for tokens based on rollable table.
  • 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.
  • No Token Rotation -- Prevents tokens from being rotated
  • Random Depth -- Randomly adjusts the depth of selected tokens.
  • Random Rotate -- Allows the GM to easily rotate all selected tokens to a random angle.
  • Size Lock -- Toggles a state which reverts any size changes automatically.
  • Slide Tokens -- Use an API command to move tokens along a waypoint path, instead of dragging the token and hitting space.
  • Spin Tokens -- Allows the GM to toggle spinning of selected tokens.
  • Table Token Sizer -- Simple script to scale rollable tokens added to the tabletop to a given size (defaults to 3x3) an set them as not drawings.
  • Token Path -- Tracks movement of the token at the top of tracker, displaying its path (and distance traveled) for the round.
  • Token Lock -- Allows GMs to selectively lock the movement of Player Tokens.
  • Twins -- Links two tokens so that they mirror each other across pages.

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.
  • Dynamic Light Recorder -- Save dynamic lighting paths for map tiles and automatically regenerate later
  • Dynamic Lighting Animation -- Animate a sequence of changes to the dynamic lighting layer
  • The Darkness is Closing In -- Example script for reducing light on a token every time it moves.
  • 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.

Jukebox

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.
  • Ammunition Tracker -- A bunch of commands to track ammunition.
  • Inventory Manager -- Inventory Management

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.
  • Manual Attribute -- Creates a manual copy of an autocalculated field, and assigns it to the bar of a token.
  • ChatSetAttr -- Create, modify, and delete character attributes via chat commands or macros.
  • EasyExperience -- Make awarding experience easy and choose your experience progression.

Generators

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.
  • Script:namegen -- Generates random names of People, Towns/Cities, and Taverns
  • Random Dungeon Generator -- Generates random dungeons with geomorphic tiles.
  • Terrain Generator -- Generate simple outdoor maps (forests, deserts, etc)
  • Tile -- Create tiled arrays of graphics on the map layer.
  • Token Name Number -- Automatic Numbering of tokens with special placeholder.

Roleplay

Scripts which attempt to make the game more immersive belong in this category.

  • Animation -- Create and display animations.
  • Languages -- Allows characters & GMs to create and speak any language. This is a rework of What Did He Say
  • Language Script -- A script for auto converting text to elven or dwarven.
  • What Did He Say? -- Language based scripting
  • Morality -- A dialog prompt that provides morality choices as decisions

System

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.

  • API Heart Beat -- Provides an API Heartbeat by setting the requesting player's color continuously.
  • cron -- Schedule (possibly recurring) commands to run at some point in the future.
  • DupCharToken -- Duplicate and add identifying number to Character and Token.
  • emas -- Provides player !emas and !as commands.
  • Extended Expressions -- Extended roll expression syntax, supporting conditionals, variable references, bitwise operators, and more.
  • HiddenRolls -- Various types of roll hiding (unmodified roll only, final result only, only show to GM).
  • Is Greater -- Trivial little script to check if the first value is greater than the second and report it to chat.
  • Map Lock -- Provides locking of graphics to prevent moving/resizing/rotating them. Also highlighting.
  • Measure -- Measure distances between multiple tokens, both from the corners and the center.
  • Message of the Day -- Greets players that log in with the contents of a particular note.
  • Move Players -- Allows macros to move the player ribbon for players.
  • MapChange -- Provides an easy and user friendly way to move players between maps.
  • Object Properties -- Get and set properties of API objects.
  • Page Navigator -- Easily move players from page to page, and allow players to move to pages by moving their tokens.
  • Page Size -- Resizes page, optionally moving and/or scaling its contents.
  • RollStats -- Track and display roll statistics.
  • Rollable Table Macros -- Use macros and chat commands with rollable tables
  • StateBrowser -- View/modify the contents of the state object.
  • Store Commands -- Store a series of commands for repeated execution
  • 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.
  • TokenSync -- Synchronize changes to token with other tokens that represent the same character
  • TruePageCopy -- Duplicate page graphics by chat command, or with the Duplicate Page button.
  • Weighted Dice -- Automated creation of rollable tables where a minimum value is weighted with values it replaces. (example d6min4 possible values: 4 4 4 4 5 6)
  • 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

  • 5e Shaped Companion -- Support script for the 5e Shaped Character Sheet - provides monster import, auto-ammo, auto-HD, auto-death saves, loads of config options and more
  • Greyhawk Initiative -- Supports the use of Greyhawk Initiative from Wizards of the Coast's Unearthed Arcana.
  • Spell Level --

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.

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

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

HERO Systems

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

Numenera

Pathfinder

  • 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

Ryuutama

Savage Worlds

  • Raise Count -- Counts raises on a roll against a given target number

Shadowrun 5e

  • 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

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

  • Base64 -- Base 64 encoding for Roll20 Scripts. (Adapted from http://www.webtoolkit.info/ )
  • Command Shell -- Framework for marshalling chat commands with POSIX-shell-style arguments, permissions, and duplicate-command checking.
  • Extended Syntax Roll20 Objects -- Wraps objects to extend their functionality.
  • GM Code -- Generates a unique code to authenticate the GM.
  • Interpreted sendChat -- Send a message to the chat as the same person or character that triggered a chat event
  • IsGM Auth Module -- Provides a function isGM() for determining if a player id refers to a gm. Intended for use alongside other scripts.
  • levenshteinDistance -- Measure the difference between strings
  • splitArgs -- Split a string into arguments
  • Token Collisions -- A library for detecting collisions among tokens during movement.
  • Vector Math -- A library for vector mathematics.
  • PowerCards -- Create nicely formatted output cards for attacks, spells, and other abilities.
  • PowerCards Macro Helper -- Support the automatic generation of PowerCards for 5E OGL character sheet actions.

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.