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 "Savage Worlds"

From Roll20 Wiki

Jump to: navigation, search
(Added organizing tips for the Art Library and Journal tabs)
m (Target Stats Macro)
(208 intermediate revisions by 6 users not shown)
Line 1: Line 1:
=== Acing Die Rolls ===
+
= Savage Worlds on Roll20 =
In Savage Worlds, Trait and Damage rolls can Ace. Each time the die rolls its max value, you add that value and roll again.
+
The streamlined rules of Savage Worlds are relatively easy to set-up and play in Roll20, even with a free account. With little effort Roll20 can handle [[#Tracking Bennies|Bennies]], special dice rolls (Acing/exploding rolls and Wild Card dice), and Action cards for initiative.
  
This example rolls a d4. You can type this script into the chat window and the result is shown in the chat window. If the die rolled a 1 the result will be in a red box. If a die aced it will be shown in a green box.
+
GMs can upload or create maps, upload tokens for NPCs and track their stats, and configure the Character Sheet for settings like Rifts, Deadlands, and others.
  
<pre>/r {1d4!}</pre>
+
Players can enter all aspects of their characters into a character sheet for easy die rolling that accounts for wounds and other modifiers, with notes for edges, powers, and gear descriptions.
<code>/r</code> rolls dice. <code>1d8!</code> rolls 1d4 and enables acing on the die.
+
  
=== Wild Card Die Rolls ===
+
Common functions (like trait rolls and calculating raises) are easily automated with the basic scripting ability included in the free Roll20 service. Most of the automation (usually called macros) needed to play adventures and campaigns are built into the character sheet, others (to speed up or clarify things) are included in this guide.
Wild Card characters roll an extra d6 and take the highest of the Trait die or Wild die.
+
  
Here's an example that rolls a d8 and the d6 wild card die. You can type this script into the chat window. The result is shown in the chat window. If either die rolled a 1, the result will be in a red box. If a die aced it will be shown in a green box.
+
{{mbox|text=The Roll20 [[Savage Worlds Tabbed]] page covers Character Sheets and rolls for traits, weapons and powers.}}
  
<pre>/r {1d8! , 1d6!}kh1</pre>
+
[[File:Savage worlds play example.jpg|thumb|right|550px|Example of Savage Worlds play with macros and customization]]
<code>The {x,y}kh1 keeps the highest of the two dice.</code>
+
__TOC__
 +
== Quick Start ==
 +
Roll20 has more than one way to do things, Savage Worlds has many setting rule variations, and GMs have their own preferences. This guide is going to show you one way to cover the core rules, using only features in a free account. I made some judgement calls along the way to get you up and running as quickly as possible. Looking for another way? There is a section at the end of this for alternative methods and great-but-not-essential enhancements.
  
This <i>wildRoll</i> example prompts for the die type and modifier, then rolls with a d6 wild card die.
+
# [[Savage_Worlds#Game_Settings|Game Settings]]— Set defaults for map pages and tokens, select the Character Sheet and set its defaults.
 +
# [[Savage_Worlds_Tabbed|Savage Worlds (Tabbed) Character Sheet]]— Automates trait, weapon, and power rolls. Tracks Wounds, Fatigue, and statuses like Shaken and Distracted.
 +
# A [[Savage_Worlds#Tracking_Bennies|custom Benny]] image— Upload it as an infinite card deck and deal them to players.
 +
# Translucent [[Savage_Worlds#Area_of_Effect_.28Blast.29_Templates|Blast and Cone]] images— Upload as a deck or as a token for a character sheet.
 +
# Use a 3rd party app like Discord for sound and video if you have more than two players. There's a [https://roll20.zendesk.com/hc/en-us/articles/360039223594-Video-and-Voice-Chat-Troubleshooting technical explanation about better performance], and you also gain easy in-game side-bar conversations, and out-of-game text with your group for things like scheduling.
  
<pre>Wild card roll is [[{1d?{Die type|6}!, 1d6!}kh1 + ?{Modifier|0}]]</pre>
+
This guide has lots of other macros and information. You probably don't need it. Call your players, tell them you need 45 minutes to set up, and start playing!
<code>?{Question|Default}</code> prompts the user to enter a value.''
+
  
==== Saving Scripts for Reuse ====
+
You can also speed up things and make your life easier with those macros:
Scripts can be saved as Macros in the Collections tab, or as Abilities on the character sheet Attributes & Abilities tab.
+
# [[Savage_Worlds#Character_Sheets|Stat Block Macro]]— Brings up a menu with all of the rolls from the character sheet, without having to open the character sheet.
# On the Collections tab, Macros, click Add.
+
# [[Savage_Worlds#Token_method:_Character_Sheet|Target Stats Macro]]— Shows the Parry, Toughness and Raises for a target, so players don't have to ask the GM (again).
# In the Edit Macro dialog, enter the name and script.
+
# GM Macros— [[Savage_Worlds#Wild_Card_Die_Rolls|Wild Card trait]], [[Savage_Worlds#Acing_.28Exploding.29_Die_Rolls|Extra trait]], [[Savage_Worlds#Damage_Rolls|Melee/Thrown/Range damage]], and [[Savage_Worlds#Scripts.2C_Macros.2C_and_Abilities|Run]]. For when you don't want to create a character sheet for some NPC.
# (Usually) Set Visible to Players = All Players.
+
# (Sometimes) Set Show as Token Action = True. (These appear in a second macro bar only when a token is selected.)
+
  
 +
<br clear=all>
  
If the previous example is saved as a Macro named ''wildRoll'', players can access it by:
+
= Game Settings =
* Typing #wildRoll in the chat window.
+
After you create a new game, from the Game Settings menu, select Game Settings.
* Opening the Collections tab and clicking the dice icon for the macro.
+
* Selecting "Show Macro Quick Bar" in the Collections tab, and selecting "In bar" for the macro.
+
* Clicking the Macro name in the Collections tab and selecting "Show as Token Action".
+
  
=== Calculating Raises and Wounds ===
 
In Savage Worlds, a roll is a success if it is at least the Target Number (TN, typically 4), and every 4 points above the TN is called a Raise.
 
  
This script computes the number of raises on a 2d6 damage roll against a toughness of 5. The result is the number of raises or a negative number if there was no success.
+
== Game Default Settings ==
 +
From the Game Settings Page, scroll down and configure this section.
  
<pre>/r floor({2d6!!-5}/4)</pre>
+
* Page Defaults
<code>floor(x)</code> rounds down.
+
** Page Scale: 1 grid cell = 6 ft.
 +
** Grid Measurement: Euclidean
 +
* Token Defaults
 +
** Bar Location: Bottom Overlapping
 +
** Bar Style: Compact
 +
* Player Permissions
 +
** Name: [x]See [x]Edit
 +
** Bar 1: [ ]See [x]Edit Text Overlay: Hidden
 +
** Bar 2: [ ]See [x]Edit Text Overlay: Hidden
 +
** Bar 3: [x]See [x]Edit Text Overlay: Hidden
 +
** Aura 1: [x]See [x]Edit
 +
** Aura 2: [x]See [x]Edit
  
This <i>calcRaises</i> macro prompts for the roll total and target number, then returns the number of raises.
+
{{mbox|text=Be sure to click Save Defaults at the bottom of this section.}}
  
<pre>calc raises: [[ floor( (?{Roll value} - ?{Target number|4} ) /4) ]] raise(s) (0 is success)</pre>
 
  
In Savage Worlds, some weapons have an armor piercing (AP) value which allows them to bypass up to that many points of armor. (A Glock handgun does 2d6 AP2 damage.) Character's toughness is noted as total toughness followed by armor in parenthesis, like 11 (1). The handgun would ignore 1 point of toughness, so the target has a net toughness of 10.  
+
== Character Sheet Template ==
 +
From the Game Settings Page, scroll down and configure this section.
 +
 
 +
Select Savage Worlds (Tabbed Layout). I recommend these Default Sheet Settings as a start so that creating NPCs takes fewer steps. ''You're going to do that a lot, save yourself some clicks.''
 +
* [x] Extra
 +
* [x] Start Attributes at d6
 +
* [x] Show Soak Button
 +
* [x] Show Unshake Button
 +
* [x] Show Size fields
 +
* [x] Use Species
 +
* [x] Show Load and Encumbrance
 +
* [x] Show Occupation ''I use this field to store the URL to NPC art.''
 +
 
 +
{{mbox|text=Be sure to click Save Defaults at the bottom of this section.}}
 +
 
 +
 
 +
== In-Game Settings: My Settings ==
 +
After launching the game, these settings are under the <span style="font-family:Pictos;">y</span>[[My Settings]]-tab.
 +
 
 +
* [x] Use advanced keyboard shortcuts
 +
* [x] Enable 3D dice
 +
* [x] Automatically roll 3D dice
 +
 
 +
 
 +
=== 3D Dice ===
 +
[[File:Enable 3D dice.jpg|thumbnail|right|Animated 3D dice help recreate the table top feeling]]Selecting ''Automatically roll 3D dice'', speeds up the game. Without it, when a die roll is needed it delays the game while a user drags across the table top to set the direction and velocity of the dice throw. The color of the dice will be the same as the color of your chat avatar. Click on the color box of your chat avatar to change it. [[File:3D dice color.jpg|framed|left|The dice color match your chat avatar color]]
 +
 
 +
<br clear=all>
 +
 
 +
== In-Game Settings: Game Settings ==
 +
After launching the game, these settings are under the <span style="font-family:Pictos;">y</span>[[My Settings]]-tab.
 +
 
 +
Token Bar Colors + Display Settings.<br>
 +
''When you click on a token, three circles show Bar 3, Bar 1, and Bar 2.''
 +
* Bar 1: Ivory (for Fatigue)
 +
* Bar 2: Purple (for Power Points)
 +
* Bar 3: Red (for Wounds)
 +
* Status Marker Position: Bottom ''These tiny icons indicate Shaken, Distracted, etc.''
 +
<br>
 +
Chat Avatars
 +
* Player Avatar Size: Names only
 +
<br>
 +
Video + Audio Chat Options
 +
* Chat Tech: None (no video/audio) ''For best performance, use a 3rd party application, not something browser-based.''
  
This <i>calcDamage</i> macro prompts for damage, toughness, armor, and armor piercing damage to calculate net damage to the target.
 
  
<pre>Net damage= [[ ?{Damage|7} - (?{Toughness|5} - {?{Armor|3}, ?{AP Damage|2}}kl1) ]]</pre>
+
From the [[https://roll20.zendesk.com/hc/en-us/articles/360039223594-Video-and-Voice-Chat-Troubleshooting#VideoandVoiceChatTroubleshooting-HowisWebRTCdifferentfromDiscord,GoogleHangouts,Skype,etc?| Roll20 Video and Voice Chat Troubleshooting Guide]]:
<code>{x,y}kl1</code> returns the lower of the two values.
+
:<blockquote>A Roll20 WebRTC call has a suggested download and upload bandwidth of 512Kbps per additional user in the chat. That means that in a six person call (five users other than yourself), you would need around 2.5Mbps of bandwidth for a stable call. If your group has members whose connections cannot support these requirements we suggest using a 3rd party, non-browser based chat option, that can make use of both hardware acceleration and data-compression to lower bandwidth requirements.</blockquote>
 +
<br clear=all>
  
=== Tracking Bennies ===
+
= Tracking Bennies =
In Savage Worlds, Bennies are tokens the players (and GM) may redeem to reroll the dice. Players start each session with three Bennies and are awarded more for good roleplaying or when a Joker is drawn during initiative.
+
In Savage Worlds, Bennies are tokens the players (and GM) may redeem to reroll the dice and change the story. Players start each session with three Bennies and are awarded more for good roleplaying or when a Joker is drawn during initiative.
  
 +
[[File:Bennies as a deck.jpg|thumb|right|400px|Create a card deck for Bennies]]
 
In order to easily track Bennies, create a custom card deck.
 
In order to easily track Bennies, create a custom card deck.
# On the Collections tab, Decks, click Add.
+
# On the <span style="font-family:Pictos;">l</span> [[Collection]]-tab, look at [[Decks]], click Add.
 
# In the New Deck dialog:
 
# In the New Deck dialog:
 
## Name the deck Bennies.
 
## Name the deck Bennies.
 
## Set Cards in Deck = Infinite, Considered = Drawing.
 
## Set Cards in Deck = Infinite, Considered = Drawing.
## Set Card Size to 140x140 (usually a good value since the grid is 70x70).
+
## Set Card Size to 105x105 (usually a good value since the grid is 70x70).
## Upload an image (like a coin or poker chip) for the card back.
+
## Upload an image (like a coin or poker chip) for the card back. A good size for the art is 210x210px, so it looks good zoomed up.
 
## Upload the same image for the card front.
 
## Upload the same image for the card front.
 
# Select Show Deck.
 
# Select Show Deck.
# Hover over the deck and select Deal.
 
  
  
If you are using a setting with special Bennies, you might have to create extra cards. For example, Deadlands: Reloaded uses a Benny pool made up of Poker Chips called Fate Chips. There are 20 white chips, 10 red chips and 5 blue chips in the Fate Chip pool. So create your deck as before, upload an image of a poker chip as the background, and then create 20 new cards called White Chip. Upload an image of a white poker chip for each card. Repeat for the red and blue chips, making 10 and 5 of each. Then for deck options make sure that you do NOT check "cards in deck are infinite" and cards are played face up. Check the boxes to allow GM to see number of cards in other's hands and front of cards. Set any other options you like and you are done!
+
This [[https://drive.google.com/drive/folders/13YUBsxt8SW3riu5_DN0Awm6uPgA9YTEm?usp=sharing| poker chip art]] is free to use.
  
You can then shuffle and deal the "deck" just like a deck of cards and the users will receive their Bennies as normal. They can play them to the tabletop just like other cards.
+
You can then shuffle and deal the "deck" just like a deck of cards and the users will receive their Bennies as normal.  
  
=== Using Cards for Initiative ===
+
To play a Benny:
In Savage Worlds, Action cards (poker cards with jokers) are dealt to players to determine initiative order. Play order is a countdown from Ace to Two, with Jokers going first, and ties resolved in reverse alphabetical order (Space, Hearts, Diamonds, Clubs). Some characters may get more than one card, some groups of extras may get one to represent the group.
+
# Open the card hand window: Click on the Benny icon above your player name at the bottom of the screen.
 +
# Drag a Benny onto the table top.
 +
# Close the card hand window: Click again on the Benny icon above your name.
 +
# Right click on the Benny on the table top and select Delete. ''We like the way they look on the table, so we wait until the end of the encounter to delete them.''
  
Roll20 can do this manually or automatically.
+
<br clear=all>
  
==== Manual Method ====
+
= Using Cards for Initiative =
The GM can play cards onto the table into a place designated for the particular player or group. This method makes it easy to assign one card to a group of extras and extra cards to players that need them. To help track which card was assigned to each player:
+
In Savage Worlds, Action cards (poker cards with jokers) are dealt to players to determine initiative order. Play order is a countdown from Ace to Two, with Jokers going first, and ties resolved in reverse alphabetical order (Spades, Hearts, Diamonds, Clubs). Some characters may get more than one card, some groups of extras may get one to represent the group.
* Drag to edges of the screen assigned to players (e.g. "Dave sits at the top of the screen, Luke on the right, Jeff on the left. I the GM sit at the bottom.")
+
* Draw a set of boxes with player names and drag the cards there.
+
* Drag left to right corresponding to the avatar names at the bottom.
+
  
 +
[[File:Turn Tracker for Savage Worlds.jpg|framed|right|Use the Turn Tracker to manage initiative in card order]]
 +
Roll20 helps automate initiative with the Turn Tracker. Open the Turn Tracker from the menu (or by pressing 'y').
  
The first two methods can allow players to draw their own cards. The left-to-right method only holds up if the GM draws the cards.
+
Add tokens to the Turn Tracker by selecting tokens and pressing 'u'. (If Advanced keyboard shortcuts are not enabled, you can also do this by right clicking on tokens and choosing the Add Turn options from the pop-up menu.)
  
==== Automatic Method ====
+
Show the deck of Action cards by going to the {{collections}}-tab, scrolling to [[Decks|Playing Cards]] and clicking '''Show'''.
You can use the Turn Tracker with cards. Tokens can be added to the Turn Tracker right clicking on them and choosing the Add Turn options from the pop-up menu. The GM decides who gets his own cards and who is grouped together. If a token in the Turn Tracker represents a group of extras the highlighting obviously does not work correctly. Also, don't delete dead tokens because if you delete the one token you chose to represent a group, the group also disappears from the Turn Tracker. A better choice is to mark them dead with a token indicator overlay, or move them out of the visible portion of the Fog of War.
+
  
To deal a card to each token in the Turn Tracker, click "Deal" on the initiate deck, then select "Deal Cards to Turn Order Items" from the pop-up window.
+
Deal a card to each token in the [[Turn Tracker]] by clicking "Deal" on the Action Cards deck, then clicking "Deal Cards to Turn Order Items" from the pop-up window. (You don't have to type anything into the number box.)
  
Here is how you can use the Turn Tracker and still keep some of the excitement of "dealing the card". The GM calls out who he is dealing for and draws a card from the stack. This is done by clicking on the card that sticks out on the top of the stack. The card is flipped around and the players can see what card it is. The "Show deck to players" option for the deck has to be set for this to work. Then the GM drags the card onto the Turn Tracker. He has to release the mouse when the cursor is over the number next to a token (the number turns yellow then).
+
Once the cards are dealt, open the Turn Order Settings dialog (click the blue gear icon) and press the "By Card/Suit" button to sort the Turn Tracker.
 +
<br>
  
:The mouse cursor has to be over the number of the Turn Tracker for this to work, not the card, a corner of the card, or actually anything related to the card. It has to be the mouse cursor. It is easier to see this and get it right if the GM picks the card up on the left upper corner, because then it is easier to see the background color of the number in the Turn Tracker turn yellow.  
+
If you hover over a a token in the Turn Tracker it will highlight that token on the map. If it represents a group of Extras it will only highlight one. Avoid deleting dead tokens because if you delete the one token you chose to represent a group, the group also disappears from the Turn Tracker. A better choice is to mark them dead with a token indicator overlay, or move them out of the visible portion of the Fog of War.
  
Once the cards are dealt, the GM can open the Turn Order Settings and press the "By Card/Suit" button to sort the Turn Tracker.
+
=== Level Headed Edge, Hesitant Hindrance ===
 +
Characters with the Level Headed edge or Hesitant hindrance get two cards and select the one to play. (Level Headed chooses the best card, Hesitant chooses the lower card or Joker.) For this, just add their token to the Turn Tracker twice. For Improved Level Headed, add three of their tokens to the tracker so they get to choose from the best of three cards.
  
A note on the order in which the cards are drawn. The GM can decide to follow a fixed order every time, but it is easier to use the order in the turn tracker, which will be the order in which the tokens were added in the first round and then the order of the previous round. For dramatic purposes, it might also be a good idea to deal the cards for the NPCs first and then for the players.
+
=== Quick, Tactician Edges ===
 +
Characters with the Quick edge get an extra Action card if their card is a 5 or less. Tacticians get an extra Action card and may use it or give it to an allied Extra.  
  
=== Injury (and other) Tables ===
+
You can manually deal new or extra cards (or cards) to them by selecting "Deal" from the Action deck's popup menu, or you can just click on it to make a card flip up, then click and drag that card to the tracker. (And if they have access to the deck, they can do it themselves.)
  
It is possible to set up the '''Injury Table''' as a rollable table. This is probably only worth the effort if you play with "gritty damage" rules. Use the following weights to get the results with "one roll":
+
[[File:Hybrid deal init card.gif|framed|right|You can drag cards into the Turn Tracker]]You can manually deal cards to the Turn Tracker. To draw a card the GM clicks on the card sticking out of the deck; this flips it face up. (The deck must have "Show deck to players" enabled.) Then the GM drags the card onto the Turn Tracker to the card next to the character's name, and when the number turns yellow the GM drops the card.
 +
 
 +
{{mbox|text=Note: You can't just click and drag the card from the deck or the table. You have to click so it flips face up on the deck, then click and drag to the Turn Tracker.}}
 +
 
 +
The card on the turn tracker, or drop point, turns yellow when the mouse pointer is over it. The drop point is only activated by the mouse pointer, not the card. This is easiest to do if the GM picks up the card on the upper left corner, because then it is easier to see the background color of the number in the Turn Tracker turn yellow.
 +
 
 +
 
 +
 
 +
<br clear=all>
 +
 
 +
= Character Sheets =
 +
[[Character Sheets]] allow you to track your character's traits, edges, powers, and gear. The creator of a game can choose a character sheet template when setting up the game, and all characters in the game will use that sheet template. Use the guides below for specific versions of available character sheets.<br />
 +
*[[Savage_Worlds_Tabbed|Savage Worlds (Tabbed) Character Sheet]] (Updated for SWADE, April 2019)
 +
 
 +
 
 +
==== Statblock Macro ====
 +
[[File:Sw-tcs_stat_block.png|200px|thumb|left|Stat block for a character]] With the 'statblock' macro, you can access almost any PC or NPC action in three clicks: Click the token to show the [[quickbar|token macro bar]], click the 'statblock' macro to see a menu of options, then click the action. Compared to using the character sheet, this takes up less screen space and is faster to access. (This draws from info in the character sheet.) Create this as a token macro.
 +
 
 +
 
 +
-----
 +
'''statblock''' (macro) shows stat block as chat menu with clickable actions.
 +
<br><code><nowiki>/w @{selected|token_name} %{selected|fullstatblock}</nowiki></code>
 +
 
 +
<br clear=all>
 +
 
 +
==== Target Stats Macro ====
 +
[[File:Sw-tcs_target_stats.png|200px|thumb|left|stats for Devil Bat]] With the 'target-stats' macro, players can click on an NPC token and see the Parry and Toughness target numbers, and roll numbers needed for Raises. The scale modifier is based on the attacker being size 0. Output is whispered to the player in the chat window, so it doesn't clutter up the window for other players. Create this as a token macro.
 +
 
 +
 
 +
-----
 +
'''target-stats''' (token macro) shows Size, Parry, and Toughness with calculated Raises and Wounds. By [https://app.roll20.net/users/2656153/mike-deboston Mike deBoston]
 +
<br><code><nowiki>/w @{selected|token_name} &{template:info} {{item=@{target|Token|token_name} [pic](~target-pic) }} {{**Size**=@{target|Token|size}, **Scale Mod:** +[[floor(@{target|Token|size}/4)*2]]. }}{{Parry=@{target|Token|parrycur}, [[@{target|Token|parrycur}+4]] to raise damage. }} {{Toughness=@{target|Token|toughnesscur} (@{target|Token|toughnessArmor}), [[@{target|Token|toughnesscur}+4]] to wound, more wounds at [[@{target|Token|toughnesscur}+8]], [[@{target|Token|toughnesscur}+12]], [[@{target|Token|toughnesscur}+16]]. }}</nowiki></code>
 +
 
 +
<br clear=all>
 +
 
 +
==== Target Pics Macro ====
 +
[[File:Sw-tcs_target_pic2.png|200px|thumb|left|picture and stats for Giant Monkape]]This is similar to the target-stats macro, but it also shows a picture of the target character. To make this work, paste a URL to the picture into the Occupation field on the Character Sheet. I've found that Google Drive and Dropbox don't work for this, but IMGUR does. Create this as a token macro.
 +
 
 +
 
 +
-----
 +
'''target-pic''' (token macro) shows picture, Size, Parry, and Toughness with calculated Raises and Wounds. By [https://app.roll20.net/users/2656153/mike-deboston Mike deBoston]
 +
<br><code><nowiki>/w @{selected|token_name} &{template:info} {{item=@{target|Token|token_name} }} {{[picture NA](@{target|Token|occupation}) **Size**=@{target|Token|size}, **Scale Mod:** +[[floor(@{target|Token|size}/4)*2]]. }} {{Parry=@{target|Token|parrycur}, [[@{target|Token|parrycur}+4]] to raise damage. }} {{Toughness=@{target|Token|toughnesscur} (@{target|Token|toughnessArmor}), [[@{target|Token|toughnesscur}+4]] to wound, more wounds at [[@{target|Token|toughnesscur}+8]], [[@{target|Token|toughnesscur}+12]], [[@{target|Token|toughnesscur}+16]]. }}</nowiki></code>
 +
 
 +
 
 +
<br clear=all>
 +
 
 +
= Tokens for Characters and Creatures =
 +
[[Token Features|Tokens in Roll20]] can represent PCs and NPCs (and other objects) on the map. Tokens have artwork, a name, and may also have a 3–6 attributes (like Parry or Wounds) and a link to a character sheet.
 +
 
 +
[[File:Token types.png|framed|right|Three common types of tokens]]
 +
== Hints for Token Artwork==
 +
'''Top view token art''' provides the most realism but the least detail because you mostly see the top of the NPC's head and shoulders.
 +
 
 +
'''Side view token art''' provides the most complete view, but since they're displayed at 70px tall most detail is lost and they can be difficult to see on a map.
 +
 
 +
'''Round token art''' has head and shoulder portraits with a colored circle border and is generally preferred. They're easy to see and provide the most facial detail, and there are free applications and web sites that make it easy to scale and crop the portrait art into a round token. They don't show clothing, weapons, hands, and other details but these can be in the full side-view art in the character sheet, or a Journal handout, or in the <span style="font-family:Pictos;">q</span> Chat tab (via a macro).  
 +
 
 +
[[File:Atani -token150.png|thumbnail|right|NPC token, 150px square]]
 +
[[File:Atani -mini.png|thumbnail|right|NPC art, 440px wide]]
 +
'''Token Art Size''': For standard-sized creatures, tokens will displayed as 70x70px, the default map grid size. To look good at 200% zoom, make the token 140x140px or larger. If you're creating a token that is the head and shoulders clipped from a larger portrait, you'll want the clipped portion to be 140 square and this generally means that the larger (source) portrait will be 300–400px wide. If you use smaller source material, your tokens will look blurry.
 +
 
 +
== Methods of representing characters as tokens ==
 +
There are three major ways to configure tokens and stats: Just art, character sheets with unlinked bars, and with linked bars.
 +
 
 +
* '''Just art'''--- Place token art on the map, keep the key stats like parry and toughness elsewhere (like on paper). When you need to roll an attack, use basic dice commands like <code>/roll 1d6!</code>. But because players cannot see the Parry, Toughness, and Armor values, they'll have to ask the GM (over and over) and can make combat take longer.
 +
 
 +
* '''Character sheet with unlinked bars'''--- Create a character sheet for the creature, then link the token to it. Then also link the character sheet to the token. This lets access the character sheet for special attacks, but each token has their own wounds. This is handy for Extras. Details on this method are below.
 +
 
 +
* '''Character sheet with linked bars'''--- Create a character sheet for the creature and link the token and token bars (like wounds, fatigue,  or ammo) to it. Then also link the character sheet to the token. This lets stats (like wounds, fatigue, or ammo) be adjusted on the token and update the character sheet. This is useful for Wild Cards, bosses and unique NPCs. Details on this method are below.
 +
 
 +
== Token method: Character Sheet ==
 +
This method ties the token to a character sheet. It's very helpful because it provides a quick reference to the Edges, Powers and all the attributes of the character. For Wild Cards, this is worth the time to set up, and possibly for commonly encountered Extras, but this depends on how much time you want to allocate to entering the data.
 +
 
 +
'''1. Create the character sheet.''' You should at least enter Parry, Toughness, Fighting skill, Strength, and the Weapon, and Spirit. If it's an extra, and they're not likely to try to soak wounds, you don't even need to enter Vigor.
 +
 
 +
'''2. Create a token.''' Size it on the map correctly. New tokens dragged from the character sheet will use this size.
 +
 
 +
'''3. Link the token to the character sheet.''' Edit the token and use the **Represents Character** drop-down menu (on the Basic tab).
 +
 
 +
'''4. OPTIONAL Link the token bars.''' Skip this step if there will be multiple tokens linked to a single character sheet, like Extras (guards), and even for Wild Cards (several captains).
 +
 
 +
You should do this step if you want adjustments to the Wounds, Fatigue, Power Points or ammo on the token to make changes on the character sheet. It's handy for recurring villains. This step connects the status bars overlaid on the token to stats on the character sheet, so trait rolls will automatically account for wound and fatigue penalties. These also link the bubbles shown when the token is selected so you can edit the values without having to open the character sheet.
 +
 
 +
Here's a setup for fatigue, power points, and wounds. This makes it easy for players to edit those values as the game progresses. If the character doesn't have power points, just leave it blank, or use it for ammo. Set the field value for each Bar on the Basic tab with the drop-down menu. Type the first few letters of the field value to find it faster.
  
 
{| class="wikitable"
 
{| class="wikitable"
 +
|+Settings for the Edit Token box
 
|-
 
|-
! Wound !! Weight
+
! Field    !! Field Value  !! Bar Color  !! See !! Edit
 
|-
 
|-
| Unmentionables || 1
+
| Name      || Xena        ||            || yes || yes
 
|-
 
|-
| Arm || 5
+
| Bar 1    || fatigue      || bone      || no  || yes
 
|-
 
|-
| Guts (Broken) || 8
+
| Bar 2    || powerpoints  || purple    || no  || yes
 
|-
 
|-
| Guts (Battered) || 8
+
| Bar 3    || wounds      || red        || yes || yes
 +
|}
 +
 
 +
Bar colors are set for the entire game; set them on the <span style="font-family:Pictos;">y</span>[[My Settings]] tab.
 +
 
 +
See and Edit, and Bar Location and Bar Style can be set on the Advanced tab of the Edit Token box but it's better to set them for all tokens in Game Settings. Use See=Yes on Bar 3 so other players can see Wounds (but not fatigue, for example). Use Edit=Yes on all bars so that the player can change the values without having to open their character sheet. Set Bar Location = Bottom Overlapping and Bar Style = Compact.)
 +
 
 +
On the token, bars without a value (no wounds, no fatigue, no expended power points) will not be shown. The player will see all three bars for their character, and the GM will see all bars for all characters, but other players will only see the wounds bar.
 +
 
 +
'''5. Save Changes on the Token.''' Click Save Changes to close the Edit Token box. You have configured the token on the map, but if you delete the token you will lose those settings. To place that token on another map you'd have to copy and paste this one. If you drag the art out onto the map again, you will be creating a new token and it won't have these settings.
 +
 
 +
In the next step you will set the character sheet to use this token with all of the settings so far. The character sheet will remember these settings, so the token can be deleted and added again at any time.
 +
 
 +
'''6. Link the Character Sheet to the Token.''' Shift-double-click on the token to open the linked character sheet. At the top right, click Edit. In that screen, remove the old default token if there is one, then click to add the selected token.
 +
 
 +
{{mbox|text=Many people overlook step seven and lose their work so far, or find that new tokens don't have the right settings.}}
 +
 
 +
'''7. Save Changes on the character sheet.''' Test this by dragging the character sheet (by the name, not the handle icon) onto the map. Check to see that this new token has all of the correct settings.
 +
 
 +
 
 +
<br clear=all>
 +
 
 +
= Area of Effect (Blast & Burst) Templates =
 +
Savage Worlds uses blast (round) and burst (cone) templates to determine which characters are impacted by various area of effect spells. You can place these images on the map over the tokens.
 +
 
 +
If you upload templates as art and then drag them onto the map, they will resize to match the grid (70x70). One way around this is to configure the templates to be the right size, then link each to its own special character sheet. When you want to put an AoE template on the map, drag on the "character".
 +
 
 +
# Use the [https://www.peginc.com/templates-for-templates-for-savage-worlds/ Savage Worlds art] or create new template art.
 +
# Save as PNG or GIF with a transparent background.
 +
# In the <span style="font-family:Pictos;">P</span>[[Art Library]]-tab, click '''Upload'''. You can drag all templates at once into the dialog box.
 +
# (optional) Store them into a folder "AoE templates". Try to keep your Recent Uploads list empty by putting everything in folders.
 +
# Place the art on the map.
 +
# Right-click the art and select Advanced > Is Drawing.
 +
# Right-click the art and select Advanced > Set Dimensions.
 +
# Size it correctly; Roll20 grids are 70px per inch.
 +
## Small blast is 2", 140px by 140px
 +
## Medium blast is 4", 280px by 280px
 +
## Large blast is 6", 420px by 420px
 +
## Burst is 3"x9", 210px by 630px. In some burst templates the cone image only occupies the top half of the template. These are designed so they rotate around the caster. Set the size to 210px by 1330px.
 +
 
 +
 
 +
Once your templates have been uploaded and sized, in the Journal tab, create a folder named "Area of Effect templates".
 +
# Inside the folder create a character named "blast, small".
 +
# Select the token, click the settings Gear, and link the token to the character sheet. (Save your settings.)
 +
# Open the character sheet, link it to the token.
 +
# Make the character sheet visible and editable by all players. (Save your settings.)
 +
# Repeat for each token: "blast, medium", "blast, large", "burst".
 +
# If you've made different tokens for different trappings you might make character sheets like "blast, medium fire" or "burst, swarm".
 +
 
 +
 
 +
You start with some [https://drive.google.com/drive/folders/1sRyDxJVrDTMxZFalG5hCrAfqrVXYI8hL?usp=sharing free Area Effect templates] here.
 +
 
 +
To use the templates, find them in the Journal folder and drag them (by the name) onto the center of where you want them (usually on the spell caster for Bursts or in the crowd of enemies for Blasts).
 +
 
 +
<br clear=all>
 +
 
 +
= States and tokens =
 +
A lot of bad things can happen to Savage Worlds characters, and many are represented by states. You can use Roll20's [[Token_Features#Token_Markers_.285.29|Token Markers]] to provide visual reminders.
 +
 
 +
[[File:sw-set status indicator.png|framed|center|Click the round button to show token markers]]
 +
 
 +
You can overlay a single digit on top of any '''Token Marker''' icon, to indicate things like flying height in inches or 10s of inches. Hover the mouse pointer over the wing icon and press a single digit. Fatigue and Wounds could be indicated this way, but it's generally better to use the token bars instead.
 +
 
 +
[[File:sw-status indicators.png|400px|thumb|left|Roll20 Token Markers mapped to SW States]]'''Token Markers''' have no effect on Roll20's calculations so you can use any indicator for any purpose. This convention is a good place to start. (The name of the status and the red text aren't part of the marker. Use this chart or create one like it as a handout in the {{Journal}}-tab.
 +
<br clear=all>
 +
 
 +
== Custom Savage Worlds Token Markers ==
 +
{{mbox|text=Since January 2020, you can also create [[Token Marker|Custom Token Markers]].}}
 +
 
 +
[[File:Savage_Worlds_token_marker_status_list.jpeg|200px|thumb|left|Custom Token Markers mapped to SW States]]There is a free set of [[https://drive.google.com/drive/folders/1DOY0YqhVLeyiOPVesJJknvI32az9v34Z Token Markers for Savage Worlds]] available.
 +
 
 +
[[https://marketplace.roll20.net/browse/search?keywords=savage%20worlds&category=Art:Token%20Markers Browse Token Markers for Savage Worlds]] in the Roll20 Marketplace.
 +
 
 +
This is a lot of steps but it should only take a few minutes.
 +
# Download the set to your computer.
 +
# From your game launch page (before you launch it), locate the Token Marker Sets box (bottom right).
 +
# Click the + button.
 +
# In the 'Add Token Marker Sets' box, click "Create New Set".
 +
# On the 'Token Marker Library' page, click "+Create Set".
 +
# In the 'Create Token Marker Set' dialog box, type "SWADE Starter Token Markers".
 +
# On the 'Add images to your new token marker set' page, click "Add Images".
 +
# (finally) Drag all of the downloaded images to this page.
 +
# Click to save after upload the set.
 +
# Click to save after the option to rename them.
 +
 
 +
 
 +
Now that the Token Marker set has been uploaded, set Roll20 to use them in your game, and to stop using the default set.
 +
# Go back to your game launch page and locate the Token Marker Sets box again (bottom right).
 +
# Click the + button.
 +
# In the 'Add Token Marker Sets' box, type "SWADE", then select your new set and click Update.
 +
# Click on the menu button next to the Default Set and select "Remove from this game".
 +
<br clear=all>
 +
 
 +
= Chases =
 +
[https://app.roll20.net/forum/post/2752951/slug%7D Savage Worlds (Deluxe) Chases and Roll20] An example and explanation in the forum
 +
 
 +
<br clear=all>
 +
 
 +
= Tables =
 +
Tables in Roll20 use a weight for each row instead of a die range. (Rolling a 2 on 2d6 is a 1/36 chance, so the weight is 1.) The weights are shown below.
 +
 
 +
When you create the table in Roll20, enter the Weight and the Description columns. You don't need to enter the first column.
 +
 
 +
== Injury ==
 +
Since a result from one table roll cannot trigger a roll on a sub-table, so in those cases (like injury), the weights have been adjusted and the sub-tables have been added to the main table.
 +
 
 +
If you name the table 'injury', you can get the results by typing '[[1t[injury]]]' in the chat box.
 +
 
 +
{| class="wikitable"
 +
|+ Injury Table for SWADE
 
|-
 
|-
| Guts (Busted) || 8
+
! 2d6 (and 1d6)       !! Weight  !! Description
 
|-
 
|-
| Leg || 3
+
| 2                  || 6        || Unmentionables           
|-
+
|-          
| Head (Hideous Scar) || 1
+
| 3–4, then 1–3 on d6 || 15      || Targeted (or right) arm 
 +
|-           
 +
| 3–4, then 4–6 on d6 || 15      || Targeted (or left) arm   
 +
|-           
 +
| 5–9, then 1–2 on d6 || 48      || Guts (Broken)           
 +
|-           
 +
| 5–9, then 3–4 on d6 || 48      || Guts (Battered)         
 +
|-           
 +
| 5–9, then 5–6 on d6 || 48      || Guts (Busted)           
 +
|-           
 +
| 10–11              || 30      || Leg                     
 +
|-           
 +
| 12, then 1–3 on d6  || 3        || Head (Hideous Scar)      
 +
|-           
 +
| 12, then 4–5 on d6  || 2        || Head (Blinded)           
 +
|-           
 +
| 12, then 6 on d6    || 1       || Head (Brain Damage)     
 +
|}
 +
 
 +
 
 +
{| class="wikitable"
 +
|+ Injury Table for SWD
 
|-
 
|-
| Head (Blinded) || 1
+
! 2d6 (and 1d6)       !! Weight  !! Description
 
|-
 
|-
| Head (Brain Damage) || 1
+
| 2                  || 6        || Unmentionables           
 +
|-           
 +
| 3–4, then 1–3 on d6 || 15      || Targeted (or right) arm 
 +
|-           
 +
| 3–4, then 4–6 on d6 || 15      || Targeted (or left) arm   
 +
|-           
 +
| 5–9, then 1–2 on d6 || 48      || Guts (Broken)           
 +
|-           
 +
| 5–9, then 3–4 on d6 || 48      || Guts (Battered)         
 +
|-           
 +
| 5–9, then 5–6 on d6 || 48      || Guts (Busted)           
 +
|-           
 +
| 10–11              || 18      || Leg                     
 +
|-           
 +
| 12, then 1–2 on d6  || 2        || Head (Hideous Scar)      
 +
|-           
 +
| 12, then 3–4 on d6  || 2        || Head (Blinded)           
 +
|-           
 +
| 12, then 5–6 on d6  || 2        || Head (Brain Damage)     
 
|}
 
|}
  
It is (currently) not possible to set up the '''Fright Table''' as a rollable table since you frequently need to roll on it with a modifier and modifiers for tables are not possible in Roll20.
 
  
For the '''Out of Control Table''' use these weights:
+
== Fear ==
 +
The SWADE Fear table is a d20 plus a modifier of 0 to 4. Because Roll20 does not directly support modifiers, you can either implement it as five tables or as a macro. If you implement it as five tables it will roll the d20 and show you the result from the table. If you implement it as a macro it will roll the d20, show you the entire table, and you can just read down to find the result.
 +
 
 +
The macro method is the easiest so it's here. The five tables method is at the Alternatives section of this page.
 +
 
 +
-----
 +
'''fear-table''' prompts for the fear penalty, rolls the die, and shows the ENTIRE table. You select the result manually. By [https://app.roll20.net/users/2656153/mike-deboston Mike deBoston]
 +
<br><code><nowiki>&{template:info} {{item=Fear Table}} {{+?{Fear Modifier|0} fear roll=[[1d20 +?{Fear Modifier}]]. }} {{1–3=Adrenaline surge (Joker) }} {{4–6=Target Distracted }} {{7–9=Target Vulnerable }} {{10–12=Target Shaken }} {{13.=Mark of Fear: Target Stunned, cosmetic alteration }} {{14–15=Frightened: Target Hesitant for encounter, or Panicked }} {{16–17=Panicked: Target runs away, Shaken}} {{18–19=Target gains Minor Phobia Hindrance}} {{20–21=Target gain Major Phobia Hindrance}} {{22+=Heart Stutters: Target rolls Vigor-2. **Success**=Stunned. **Fail**=Incapacitated, dies in 2d6 [[2d6]] rounds, Healing -4 to save life but remains Incapacitated.}}</nowiki></code>
 +
 
 +
 
 +
== Vehicles ==
 +
If you name the table 'vehicle-ooc', you can get the results by typing '[[1t[vehicle-ooc]]]' in the chat box.
  
 
{| class="wikitable"
 
{| class="wikitable"
 +
|+ Vehicle Out of Control Table for SWADE
 
|-
 
|-
! Effect !! Weight
+
! 2d6  || Weight || Description
 
|-
 
|-
| Roll Over || 1
+
| 2    || 1     || Major collision
 
|-
 
|-
| Spin || 5
+
| 3–4  || 5     || Minor collision
 
|-
 
|-
| Skid || 24
+
| 5–9  || 24     || Distracted
 
|-
 
|-
| Slip || 5
+
| 10–11 || 5     || Vulnerable
 
|-
 
|-
| Flip || 1
+
| 12    || 1     || Glitch
 
|}
 
|}
  
For the '''Critical Hits Table''' use these weights:
+
If you name the table 'vehicle-critical-hit', you can get the results by typing '[[1t[vehicle-critical-hit]]]' in the chat box.
  
 
{| class="wikitable"
 
{| class="wikitable"
 +
|+ Vehicle Critical Hit Table for SWADE
 
|-
 
|-
! Effect !! Weight
+
! 2d6  || Weight || Description
 
|-
 
|-
| Scratch and Dent || 1
+
| 2    || 1     || Scratch/dent
 
|-
 
|-
| Engine || 2
+
| 3    || 2     || Guidance/traction
 +
|-
 +
| 4–5  ||  7    || Locomotion
 +
|-
 +
| 6–8  || 16    || Chassis
 +
|-
 +
| 9–10  ||  7    || Crew
 +
|-
 +
| 11    ||  2    || Weapon
 +
|-
 +
| 12    ||  1    || System
 +
|}
 +
 
 +
 
 +
{| class="wikitable"
 +
|+ Vehicle Out of Control Table for SWD
 
|-
 
|-
| Locomotion || 3
+
! 2d6  || Weight || Description
 
|-
 
|-
| Controls || 4
+
| 2    || 1    || Roll over
 
|-
 
|-
| Chassis || 16
+
| 3–4  || 5    || Spin
 
|-
 
|-
| Crew || 7
+
| 5–9  || 24    || Skid
 
|-
 
|-
| Weapon || 2
+
| 10–11 || 5    || Slip
 
|-
 
|-
| Wrecked || 1
+
| 12    || 1     || Flip
 
|}
 
|}
  
 +
{| class="wikitable"
 +
|+ Vehicle Critical Hit Table for SWD
 +
|-
 +
! 2d6  || Weight || Description
 +
|-
 +
| 2    ||  1    || Scratch/dent
 +
|-
 +
| 3    ||  2    || Engine
 +
|-
 +
| 4    ||  3    || Locomotion
 +
|-
 +
| 5    ||  4    || Controls
 +
|-
 +
| 6–8  || 16    || Chassis
 +
|-
 +
| 9–10  ||  7    || Crew
 +
|-
 +
| 11    ||  2    || Weapon
 +
|-
 +
| 12    ||  1    || Wrecked
 +
|}
 +
<br clear=all>
  
=== Character Sheets ===
+
= Finding Games =
[[Character Sheets]] allow you to track your character's traits, edges, powers, and gear. The creator of a game can choose a character sheet template when setting up the game, and all characters in the game will use that sheet template. Use the guides below for specific versions of available character sheets.<br />
+
* [https://app.roll20.net/lfg/listing/76047/roll20-savages-savage-worlds-directory Roll20 Savages -Savage Worlds Directory]
*[[Savage_Worlds_Tabbed|Savage Worlds (Tabbed) Character Sheet]] (Updated for SWADE, April 2019)
+
<br clear=all>
  
  
=== Area of Effect (Blast) Templates ===
+
= Pro Account Features for Savage Worlds =
Savage Worlds uses blast and cone templates to determine which characters are impacted by various area of effect spells. You can place these images on the map over the tokens.
+
The free Roll20 service is powerful and easy enough to run a complete Savage Worlds adventure or complete campaign with the Base Account subscription. The Pro Account adds [https://roll20.zendesk.com/hc/en-us/articles/360039675093#TextChat-SpecialEffects(/fx) animated FX options] and the ability to create and run [[API:Script_Index|APIs for advanced automation]], including some that are particularly useful for Savage Worlds.  
  
If you upload templates as art, then drag them onto the map, they will resize to match the grid. To keep them the original size, it's useful to store the templates in card decks, one deck for each template size.
+
== FX==
 +
You can add animated effects for Bolt, Burst, and Blast area effects. These macros will get you started. Many more (and custom ones) are available.
  
==== Make the templates ====
+
-----
# Use the [https://www.peginc.com/templates-for-templates-for-savage-worlds/ Savage Worlds art] or create new template art.
+
'''blast-spell-fx''' (macro) prompts for the target token and the type of blast. By [https://app.roll20.net/users/2656153/mike-deboston Mike deBoston]
# Size them correctly: Roll20 grids are 70x per inch, and in SWADE 1 inch = 2 yards, so each yard is 35px. Thus: 4 yard small blast is 140px, 8 yard medium is 280px, 12 yard large is 420px. The 18 yard cone is 630x210.
+
<br><code><nowiki>/fx explode-?{type|fire|frost|water} @{target|token_id}</nowiki></code>
# Set them to be about 20% transparent so you'll be able to see tokens under them.
+
# Also create template card back art. They will look the same size while in the player's hand, so it's helpful to have backs that have Small, Medium, Large labels.
+
# (optional and fun) Create extra templates to represent different trappings. For the four elements (fire/earth/water/air) and four sizes you'll need 16 templates. Consider adding poison gas, insect and other swarms.
+
# (optional and furious) Make parts inside the blast template transparent, like the space between insects, or an inward spiral for a tornado funnel.
+
  
==== Upload Art to Roll20 Decks ====
+
-----
# In the Art Library tab, click Upload. You can drag all templates at once into the dialog box.
+
'''bolt-spell-fx''' (token macro) prompts for the target token and the type of bolt. By [https://app.roll20.net/users/2656153/mike-deboston Mike deBoston]
# (optional but useful) Store them into a folder "blast templates". Try to keep your Recent Uploads list empty by putting everything in folders.
+
<br><code><nowiki>/fx beam-?{type|fire|frost|water} @{selected|token_id} @{target|token_id}</nowiki></code>
# Create four decks: small blast, medium blast, large blast, cone.
+
#* In each deck set the size correctly.
+
#* For all decks, select Cards in deck are infinite, Allow choosing cards to GM + Players, Played facing = Face Up, and Considered = Drawings.
+
#* Drag the deck window to the left, click "add card", that window will open a little to the right. Click the Art Library tab and drag over the appropriate template. Repeat for each template and deck.
+
  
==== Using Area Effect Templates in Play ====
+
-----
At the start of the session, show the decks, let the players take the cards that match their spells and trappings, then hide the decks. Players will put the card/blast template on the table when they need it. After use, the player can right-click select "Take Card" to put it back in their hand.
+
'''burst-spell-fx''' (token macro) prompts for the target token and the type of burst. By [https://app.roll20.net/users/2656153/mike-deboston Mike deBoston]
 +
<br><code><nowiki>/fx breath-?{type|fire|frost|water|slime} @{selected|token_id} @{target|token_id}</nowiki></code>
  
=== Organizing Content ===
+
 
 +
== APIs ==
 +
This isn't a list of all of the advantages of a Pro Account or all of the API Scripts, just a selection that might be particularly helpful for Savage Worlds.
 +
 
 +
API: [https://app.roll20.net/forum/post/7335145/stat-block-importer 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 <span style="font-family:Pictos;">q</span> Chat tab and it will create the Character sheet for you.
 +
 
 +
API: [https://github.com/Roll20/roll20-api-scripts/tree/master/SavageWorldsStatusChanger 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. Explained in [https://youtu.be/1zuBuqe3aKQ?t=644 Tabletop Tango Ep 21]
 +
 
 +
API: [https://github.com/pelwer1/Deal-Init Deal Init]: '''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. Explained in [https://www.youtube.com/watch?v=1zuBuqe3aKQ Tabletop Tango Ep 21]
 +
 
 +
API: [https://github.com/gronyon/BenniesScript 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.
 +
 
 +
API: Token Mod: '''Changes token properties''' This enables macros to modify tokens, and even apply Wounds or change rotation.
 +
 
 +
 
 +
<br clear=all>
 +
 
 +
= Organizing Content =
 
As you upload art, tokens, portraits, maps, handouts and other material, here are some tips to get the most from your storage allowance and still rapidly find things.
 
As you upload art, tokens, portraits, maps, handouts and other material, here are some tips to get the most from your storage allowance and still rapidly find things.
  
==== Art Library ====
 
All uploaded art will appear here, even if it is directly uploaded into a card deck, handout, map, or character sheet. All uploaded art counts against your storage allowance, and it is shared across all games you create. Here are some strategies for organization. This will help you avoid duplicates and find things quickly.
 
  
When art is uploaded, immediately put it into a folder. Your goal should be for the Recent Uploads section to be blank.
+
== <span style="font-family:Pictos;">P</span> Art Library tab ==
* Bestiary (monsters, guards)
+
All uploaded art will appear in the <span style="font-family:Pictos;">P</span>[[Art Library]], even if it is directly uploaded into a card deck, handout, map, or character sheet. All uploaded art counts against your storage allowance, and it is shared across all games you create. Here are some strategies for organization. This will help you avoid duplicates and find things quickly.
* Races (tokens and portraits for playable races)
+
 
* Named NPCs (tokens and portraits)
+
Roll20's art management system can be unreliable, so it's wise to create art folders on your local computer that mirror the folders you will create on Roll20, and to keep local copies of your art so it can be uploaded again if needed.
* Player Characters (tokens and portraits)
+
 
 +
When art is uploaded, immediately put it into a folder.  
 +
 
 +
{{mbox|text=Your goal should be for the Recent Uploads section to be blank.}}
 +
* Bestiary ''for goblins, guards, etc''
 +
* NPCs ''for named NPCs and Wild Cards''
 +
* Player Characters
 
* Cards and Bennies
 
* Cards and Bennies
 
* Scenes
 
* Scenes
Line 218: Line 569:
 
If you're going to run games in vastly different settings (fantasy and science fiction), then you can create top-level folders for this and use the folders above as sub-folders.
 
If you're going to run games in vastly different settings (fantasy and science fiction), then you can create top-level folders for this and use the folders above as sub-folders.
  
==== Journal ====
+
== <span style="font-family:Pictos;">N</span> Journal tab ==
The journal is unique to each game. Good organization here will help you find things while playing. Items in the Journal that are shared with all players will have a blue dot after their name.
+
The {{Journal}} is unique to each game. Good organization here will help you find things while playing. Items in the Journal that are shared with all players will have a blue dot after their name.
  
 
Start with a good folder system.
 
Start with a good folder system.
* Bestiary
+
* Roll20 Tips
* NPCs
+
** Setup for audio, browser add-ons, whatever
 +
** Shortcuts for Roll20
 +
** Useful macros, how to attack, use power, take damage
 
* Player Characters
 
* Player Characters
 +
* Gear (Tip: Just paste in screen shots.)
 +
** Weapons, armor, and vehicles
 +
* Ships (if your vehicles have character sheets)
 +
* Handouts
 
* Maps
 
* Maps
 
** Subfolders for nations, continents, realms, etc.
 
** Subfolders for nations, continents, realms, etc.
* Handouts
+
* Rules (Just paste in screen shots)
* Rules
+
** Skills, Edges, Hindrances
** Raise calculator, weapon and armor tables
+
** Raise calculator
 
** References for states, power modifiers
 
** References for states, power modifiers
** Character sheets used for storing scripts (macro mules)
+
* Bestiary
 +
* NPCs
 +
** Subfolders for locations
 +
* Macros
 +
** Character sheets (pc-macros, gm-macros, power-macros) used for storing scripts
  
=== Script/Macro/Ability Resources ===
+
= Script/Macro/Ability Resources =
These threads over on the forum explain more about setting up Macros in Roll20 for Savage Worlds:
+
{{mbox|text=This section needs some cleanup. Many of the macro examples here are already implemented in the Tabbed Character Sheet.}}
  
[https://app.roll20.net/forum/post/667546/savage-worlds-macro-examples#post-671583 Example of Setting up Character Sheets and Macros]
+
Scripts are the lines of code that automate Roll20. When they are stored in the <span style="font-family:Pictos;">l</span> Collection tab they are called [[Macros]]. When they are stored in the [[Journal#Attributes_.26_Abilities_Tab|Abilities &amp; Attributes]]-tab of a Character sheet, they are called Abilities.
  
[https://app.roll20.net/forum/post/287162/roll20-and-savage-worlds#post-316474 Some General Macros: Rate of Fire 3, etc. ]
+
[[File:Roll-run macro.png|frameless|right|Creating a Macro]]The scripts in this guide will have a name and some code, and sometimes an explanation of the code in italics. Scripts (macros) will be shown like this:
  
[https://app.roll20.net/forum/post/2578013/slug%7D Easy Savage Worlds Macros]
 
  
===Savage Worlds Macros By Necron99===
+
-----
Here is an example of some of the macros i use for my Savage Rifts game. These Macros also work in regular Savage Worlds game. Just change the names.  [https://app.roll20.net/forum/post/3858800/some-macros-i-made-for-savage-rifts/?pageforid=3868889#post-3868889 Link to my original post on macros]
+
'''roll-run'''
 +
<br><code><nowiki>Run speed is [[6 + 1d6]].</nowiki></code>
  
Ive been making these macros for my game to make everything run faster.  The pull A lot of information from the sheet.   One thing I suggest is making a bubble linked to parry on the token it set for bar 1 but you can change it.  that way if a PC or what ever make a wild attack, you can just input the -2 and it will adjust.   These Macros  take everything from the sheet, as much as possible.  A couple here and there might be  slight mutations. as macros evolve with a life of their own.  these macros must be named the name as they are listed if you change the name change the button information as well. these are tiered macros.  
+
''Syntax: The code <code>1d6</code> rolls one d6. Surrounding the roll with <code>[[</code> shows only the total. Hover over the result to see a tool tip with the values of the die roll.''
 +
-----
  
'''Chain-Great-Sword''' (Enter this as an ability on the character sheet.)
 
<br><code><nowiki>
 
&{template:default}{{name=Chain-Great-Sword AP2 MDC}}{{Attack1=[[floor((1d@{fighting}!!+?{Penalty or Bonus?|0}-@{encumbrance}-@{target|bar1}-@{wounds}-@{fatigue})/4)]] Raises}}{{Attack2=[[floor((1d@{fighting}!!+?{Penalty or Bonus?|0}-@{encumbrance}-@{target|bar1}-@{wounds}-@{fatigue})/4)]] Raises}}{{Wild Die=[[floor((1d6!!-@{encumbrance}-@{wounds}-@{fatigue}- @{target|bar1}+?{Penalty or Bonus?|0})/4)]] Raises}}{{Targets Parry=[[@{target|bar1}]]}}{{Target=@{target|token_name}}}{{[Chain-Great-Sword](~chain-great-sword-dmg)}}
 
@{target|image}</nowiki></code>
 
  
'''Note''' <code>@{target|image}</code> is used in many macros to show a picture of the target. The target must have an attribute named image and the value must be [image](url of .jpg or gif). If it doesn't have the .jpg or .gif extension, just numbers, add #.jpg or #.png at the end of it.)
+
[[File:Collection tab, macros.jpg|frameless|right|Collection tab, Macros]]
 +
To save a scripts as a Macro in the <span style="font-family:Pictos;">l</span> Collection tab:
 +
# On the <span style="font-family:Pictos;">l</span> Collection tab, Macros, click Add.
 +
# In the Edit Macro dialog, enter the name and script.
 +
# (Usually) Set Visible to Players = All Players.
 +
# (Sometimes) Set Show as Token Action = True. (These appear in a second macro bar only when a token is selected.)
  
  
'''chain-great-sword-dmg''' (Enter as an ability)
+
If the previous example is saved as a Macro named ''roll-run'', players can access it by:
<br><code><nowiki>
+
* Typing #roll-run in the chat window. (After typing '#ro', you can press tab to auto-complete the phrase.)
&{template:default}{{name=Chain-Great-SwordAP2 Mega Damage}}{{Chain-Sword [[d@{strength}!!+2+2d10!!+?{raise|no,0|yes,1d6!!}]]}}{{Vehicle [[d@{strength}+2+2d10]]}}{{Target Toughness=[[@{target|toughnesscur}]] ([[@{target|toughnessArmor}]])}}{{[Dmg-Calc](~dmg-calc)}}</nowiki></code>
+
* Opening the <span style="font-family:Pictos;">l</span> Collection tab and clicking the <span style="font-family:dicefontd20;">t</span> dice icon for the macro.
 +
* Selecting "Show Macro Quick Bar" in the <span style="font-family:Pictos;">l</span> Collection tab, and selecting "In bar" for the macro.
 +
* Clicking the Macro name in the <span style="font-family:Pictos;">l</span> Collection tab and selecting "Show as Token Action".
 +
<br clear=all>
  
Mini-rail-gun-(Range-75/150/300)<br>
+
=== Acing (Exploding) Die Rolls ===
<nowiki>
+
In Savage Worlds, Trait and Damage rolls can Ace. Each time the die rolls its max value, you add that value and roll again.
&{template:default}{{name=Mini-rail-gun-(Range 75/150/300, Damage 2d8+4, RoF 4 AP 6, MDC)}} {{Attack1=[[floor((1d@{shooting}!!+?{Penalty or Bonus?|0}-@{encumbrance}-@{wounds}-@{fatigue}-4)/4)]] Raises}}{{Attack2=[[floor((1d@{shooting}!!+?{Penalty or Bonus?|0}-@{encumbrance}-@{wounds}-@{fatigue}-4)/4)]] Raises}}{{Attack3=[[floor((1d@{shooting}!!+?{Penalty or Bonus?|0}-@{encumbrance}-@{wounds}-@{fatigue}-4)/4)]] Raises}}{{Attack4=[[floor((1d@{shooting}!!+?{Penalty or Bonus?|0}-@{encumbrance}-@{wounds}-@{fatigue}-4)/4)]] Raises}}{{Wild Die=[[floor((1d6!!-@{encumbrance}-@{wounds}-@{fatigue}+?{Penalty or Bonus?|0}-4)/4)]] Raises}}{{Target=@{target|token_name}}}{{[mini-rail-run-dmg](~mini-rail-run-dmg)}}</nowiki>
+
  
mini-rail-run-dmg<br>
+
This example rolls a d4. You can type this script into the <span style="font-family:Pictos;">q</span>[[Text Chat|Chat]] tab and see the result there. If the die rolled a 1 the result will be in a red box. If a die aced it will be shown in a green box.
<nowiki>
+
&{template:default}{{name=Mini-rail-gun-(Range 75/150/300, Damage 2d8+4, RoF 4 AP 6, MDC)}}{{Rail gun=[[2d8!!+4+?{raise|no,0|yes,1d6!!}]]}}{{Target Toughness=[[@{target|toughnesscur}]] ([[@{target|toughnessArmor}]])}}{{[Dmg-Calc](~dmg-calc)}}</nowiki>
+
  
NG-57(Range-12/24/48-RoF-1)<br>
+
<pre>/r 1d4!</pre>
<nowiki>
+
''<code>/r</code> rolls dice. <code>1d4!</code> rolls 1d4 and enables acing on the die.''
&{template:default}{{name=NG-57 Heavy Duty Ion Blaster Range 12/24/48, RoF 1, Damage 1–3d6+1}} {{Attack1=[[floor((1d@{shooting}!!+?{Penalty or Bonus?|0}-@{encumbrance}-@{wounds}-@{fatigue}-4)/4)]] Raises}}{{Wild Die=[[floor((1d6!!-@{encumbrance}-@{wounds}-@{fatigue}+?{Penalty or Bonus?|0}-4)/4)]] Raises}}{{Target=@{target|token_name}}}{{[NG-57-dmg](~NG-57-dmg)}}</nowiki>
+
  
NG-57-dmg<br>
+
This example macro prompts for the die to roll, a modifier, and some descriptive text.
<nowiki>
+
&{template:default}{{name=NG-57 Heavy Duty Ion Blaster Range 12/24/48, RoF 1, Damage 1–3d6+1}}{{Damage=[[?{Range|short, 3d6!!| medium, 2d6!!| long, 1d6!!} + ?{dmgmod|0}+?{raise|no,0|yes,1d6!!}]]}}{{Target Toughness=[[@{target|toughnesscur}]] ([[@{target|toughnessArmor}]])}}{{[Dmg-Calc](~dmg-calc)}}</nowiki>
+
  
HEX-Grenade<br>
+
'''roll-trait'''
<nowiki>
+
<br><code><nowiki>Trait roll is [[ d?{Die type|6}! + ?{Modifier|0} ]] to ?{Reason|do nothing}</nowiki></code>
&{template:default}{{name=HEX-Grenade (Range 5/10/20 MDC, MBT)}} {{Attack1=[[floor((1d@{Throwing}!!+?{Penalty or Bonus?|0}-@{encumbrance}-@{wounds}-@{fatigue}-4)/4)]] Raises}}{{Wild Die=[[floor((1d6!!-@{encumbrance}-@{wounds}-@{fatigue}+?{Penalty or Bonus?|0}-4)/4)]] Raises}}{{Target=@{target|token_name}}}{{[HEX-Grenade-dmg](~HEX-Grenade-dmg)}}</nowiki>
+
  
HEX-Grenade-Dmg<br>
+
''<code>?{Question|Default}</code> prompts the user to enter a value. Surrounding the roll with <code>[[</code> shows only the result of the roll. Hover over the result to see a tool tip with the values of the dice.''
<nowiki>
+
&{template:default}{{name=HEX-Grenade (Range 5/10/20 MDC, MBT)}}{{Damage=[[3d8!!+ ?{dmgmod|0}+?{raise|no,0|yes,1d6!!}]]}}{{Target Toughness=[[@{target|toughnesscur}]] ([[@{target|toughnessArmor}]])}}{{[Dmg-Calc](~dmg-calc)}}</nowiki>
+
  
fraggrenade (Range 5/10/20) LBT-MDC<br>
+
=== Wild Card Die Rolls ===
<nowiki>
+
When making trait rolls, Wild Card characters roll an extra d6 and take the highest of the Trait die or Wild die.
&{template:default}{{name=Frag grenade (Range 5/10/20, Damage 3d6, Mega Damage, LBT)}} {{Attack1=[[floor((1d@{Throwing}!!+?{Penalty or Bonus?|0}-@{encumbrance}-@{wounds}-@{fatigue}-4)/4)]] Raises}}{{Wild Die=[[floor((1d6!!-@{encumbrance}-@{wounds}-@{fatigue}+?{Penalty or Bonus?|0}-4)/4)]] Raises}}{{Target=@{target|token_name}}}{{[FRAG-Grenade](~FRAG-Grenade-dmg)}}</nowiki>
+
  
FRAG-Grenade-dmg<br>
+
[[File:Wild card roll aced.png|thumbnail|right|d8 trait roll with wild card die, hovered to show rolls]]
<nowiki>
+
Here's an example that rolls a d8 and the d6 wild card die. You can type this script into the <span style="font-family:Pictos;">q</span>Chat tab and see the result there. If either die rolled a 1, the result will be in a red box. If a die aced it will be shown in a green box.
&{template:default}{{name=Frag grenade (Range 5/10/20, Damage 3d6, Mega Damage, LBT)}}{{Damage=[[3d6!!+ ?{dmgmod|0}+?{raise|no,0|yes,1d6!!}]]}}{{Target Toughness=[[@{target|toughnesscur}]] ([[@{target|toughnessArmor}]])}}{{[Dmg-Calc](~dmg-calc)}}</nowiki>
+
  
 +
<pre>[[ {1d8!, 1d6!}kh1 ]]</pre>
 +
''<code>{x,y}kh1</code> keeps the highest one of the two dice. Surrounding the roll with <code>[[</code> shows only the result of the roll. Hover over the result to see a tool tip with the values of the dice.''
  
this is a special one  i have cyborg battle toads. so i gave them "The boot"
+
This example prompts for the die type and modifier, then rolls with a d6 wild card die.
the-boot<br>
+
<nowiki>
+
&{template:default}{{name=The Boot MDC}}{{Attack1=[[floor((1d@{fighting}!!+?{Penalty or Bonus?|0}-@{encumbrance}-@{target|bar1}-@{wounds}-@{fatigue})/4)]] Raises}}{{Attack2=[[floor((1d@{fighting}!!+?{Penalty or Bonus?|0}-@{encumbrance}-@{target|bar1}-@{wounds}-@{fatigue})/4)]] Raises}}{{Wild Die=[[floor((1d6!!-@{encumbrance}-@{wounds}-@{fatigue}- @{target|bar1}+?{Penalty or Bonus?|0})/4)]] Raises}}{{Targets Parry=[[@{target|bar1}]]}}{{Target=@{target|token_name}}}{{[The Boot](~The-Boot-dmg)}}</nowiki>
+
  
the-boot-dmg
+
'''roll-wild-trait'''
<br>
+
<br><code><nowiki>Wild card trait roll is [[{d?{Die type|6}!, d6!}kh1 + ?{Modifier|0}]] to ?{Reason|do nothing}</nowiki></code>
<nowiki>
+
&{template:default}{{name=The Boot Mega Damage}}{{The Boot=[[d@{strength}!!+3+1d10!!+3d6!!+?{raise|no,0|yes,1d6!!}]]}}{{Target Toughness=[[@{target|toughnesscur}]] ([[@{target|toughnessArmor}]])}}{{[Dmg-Calc](~dmg-calc)}}</nowiki>
+
  
magic<br>
+
''<code>?{Question|Default}</code> prompts the user to enter a value. Surrounding the roll with <code>[[</code> shows only the result of the roll. Hover over the result to see a tool tip with the values of the dice.''
<nowiki>
+
<br clear=all>
&{template:default}{{name=Magic}}{{Magic=[[floor((1d@{Spellcasting}!!+?{Penalty or Bonus?|0}-@{encumbrance}-@{wounds}-@{fatigue}-4)/4)]] Raises}}{{Wild Die=[[floor((1d6!!+@{encumbrance}-@{wounds}-@{fatigue}+?{Penalty or Bonus?|0}-4)/4)]] Raises}}{{Power Points=[[@{selected|bar3}]]}}{{Wizard=[[-1]] point per raise}}
+
[Armor 5pp](~armor)[slow 2pp 30"](~slow)[Bolt 3d6(2)pp 6d6(4)pp 18/36/72](~bolt)[Boost- Lower-Trait 4pp 20"](~Boost-Lower-Trait)[Darksight 2pp](~darksight)[Deflection 4pp](~deflection)[PPE-Thief 9pp 20"](~ppe-thief)[fear 4pp 30"](~fear)[Rezi 30pp](~RESURRECTION)[mass-healling 6pp 20"r](~mass-healing)[astral-form 10pp](~astral-form)[mind-control 6pp 20"](~mind-control)[slumber 4pp 30"](~slumber)[wall-walker 4pp](~wall-walker)[zombie 3pp/per](~zombie)</nowiki>
+
  
 +
=== Damage Rolls ===
 +
Damage rolls are made after a successful attack (fighting, throwing, shooting) roll, and the damage total gains an extra d6 if the attack roll was a raise. The easiest way to do this is to show the extra d6 roll and let the player add it.
  
armor<br>
+
<code><nowiki>Damage roll is [[1d6! + 1d8!]] and bonus damage is [[1d6!]].</nowiki></code>
<nowiki>
+
&{template:default}{{name=ARMOR GREATER ARMOR}}{{Power Points Cost=[[(5-?{number of raises|0})]]}}{{Range=Touch}}{{Duration=3 (1/round)}}{{Success grants=+5 M.D.C. Armor, a raise grants +10}}</nowiki>
+
  
bolt<br>
+
These three scripts prompt for the strength die, weapon dice, modifiers and AP, and roll the optional d6 for the raise bonus. (If you hover over the raise result, the popup text will explain when to apply it.)
<nowiki>
+
&{template:default}{{name=Bolt Mega Dmg 18/36/72}}{{3d6 cost=[[2-?{number of raises|0})]]}}{{6d6 cost=[[4-?{number of raises|0})]]}}{{3d6=[[3d6!!+?{Raise|no,0|yes,1d6!!}]]}} {{6d6=[[6d6!!+?{Raise|no,0|yes,1d6!!}]]}}{{Target Toughness=[[@{target|toughnesscur}]] ([[@{target|toughnessArmor}]])}}{{[Dmg-Calc](~dmg-calc)}}</nowiki>
+
  
Boost-Lower-Trait<br>
+
'''melee-damage''' (strength die + weapon die, applies to melee weapons)
<nowiki>
+
<br><code><nowiki>The melee damage is [[?{Strength die|d6, d6!|d4, d4!|d8, d8!|d10, d10!|d12, d12!|d12+1, d12!+1|d12+2, d12!+2} + ?{Weapon die|d6|d4|d8|d10|d12}! + ?{Modifier|0}]] AP(?{AP|0}).  Raise bonus: [[1d6! Add raise bonus if the fighting roll got a raise.]]</nowiki></code>
&{template:default}{{name=BOOST/LOWER TRAIT}}{{Power Points Cost=[[(4-?{number of raises|0})]]}}{{Range=[[@{smarts}*2]]}}{{Duration=3 (1/round)}}{{Success grants=two die types for a success, four with a raise.}}</nowiki>
+
  
darksight<br>
+
'''thrown-damage''' (strength die + weapon die, applies to melee weapons)
<nowiki>
+
<br><code><nowiki>The range damage is [[?{Strength die|d6, d6!|d4, d4!|d8, d8!|d10, d10!|d12, d12!|d12+1, d12!+1|d12+2, d12!+2} + ?{Weapon die|d6|d4|d8|d10|d12}! ]] AP(?{AP|0}). Raise bonus: [[1d6! Add raise bonus if the shooting or throwing roll got a raise.]]</nowiki></code>
&{template:default}{{name=DARKSIGHT}}{{Power Points Cost=[[(2-?{number of raises|0})]]}}{{Range=Touch}}{{Duration=1 hour }}{{Success grants=Exalted darksight makes it virtually impossible to impair the target’s vision in any way. Blind does not work on him, nor does any form of obscure or other lighting penalties. He can also see anyone using the invisibility power.}}</nowiki>
+
  
i could do the whole list but you get the formula by now to make changes on your own. and I can answer any questions you might have on how to implement them. and yes i did put every spell the npc has into macros. i like all combat to run very fast and these help me do it.
+
'''range-damage''' (weapon dice, applies to bows and guns)
 +
<br><code><nowiki>The range damage is [[?{Number of dice|2}?{Weapon die|d6|d4|d8|d10|d12}! + ?{Modifier|0}]] AP(?{AP|0}). Raise bonus: [[1d6! Add raise bonus if the shooting roll got a raise.]]</nowiki></code>
 +
<br clear=all>
  
a little bit of work on the back end, and the front runs so much smother.
+
=== Calculating Raises and Wounds ===
for those of you that play with someone who is running API script you can add <pre>/fx explode-blood @{target|token_id}</pre> to the end of any macro and make blood explode from your target.
+
In Savage Worlds, a roll is a success if it is at least the '''Target Number''' ('''TN''', typically 4), and every 4 points above the TN is called a '''Raise'''.
coming soon!(hopefully it can be done i just need to learn it first)
+
how to add a sound effect to play when ever you hit someone or damage them
+
I hope you all find these macros useful. Read the wiki on macros.  that where i started.  90% of you are not getting the full enjoyment out of the site as you can.  I can only afford a free account and I've done so much with just the free resources.
+
  
===General Macros===
+
This script computes the number of raises on a 2d6 damage roll against a toughness of 5. The result is the number of raises or a negative number if there was no success.
  
Here is a basic wild card trait test macro.  You can point it at any token connected to a sheet.  This macro is meant to be put under macros in the setting tab.  I should mention, all these macros are for the tabbed sheet for savage worlds.  The 2 sheet have different values.
+
<br><code><nowiki>/r floor({2d6!!-5}/4)</nowiki></code>
 +
<br><i>Syntax: <code>floor(x)</code> rounds down.</i>
  
WC-Trait
+
This <b>calc-raises</b> macro prompts for the roll total and target number, then returns the number of raises. A negative result is a failure, a 0 is a success.
<nowiki>/me @{target|token_name} makes a trait test
+
/r floor(({?{Trait to Roll|Agility, #agility |Smarts,#smarts |Spirit,#spirit |Strength,#strength |Vigor,#vigor }[TR], [[1d6!!]][WD]}k1+?{trait mod|0}[TM]-@{target|wounds}[WND]-@{target|fatigue}[FAT]+?{Agility or Strength Check?|no,0 |yes,#encumbrance }[ENC]-4)/4) </nowiki>
+
  
 +
'''calc-raises'''
 +
<br><code><nowiki>calc raises: [[ floor( (?{Roll value} - ?{Target number|4} ) /4) ]] raise(s) (0 is success)</nowiki></code>
  
these macros must be put into the macros under the settings tab. Because of the limitation of a free account and the way roll20 parses information, I made a work around. You can't do a a multiple choice with @{target|value}
+
In Savage Worlds, some weapons have an armor piercing (AP) value which allows them to bypass up to that many points of armor. (A Glock handgun does 2d6 AP2 damage.) Character's toughness is noted as total toughness followed by armor in parenthesis, like 11 (1). The handgun would ignore 1 point of toughness, so the target has a net toughness of 10.  
  
EDIT: made some changes to make it more clear where the value is coming from
+
This <b>calc-damage</b> macro prompts for damage, toughness, armor, and armor piercing damage to calculate net damage to the target. Armor piercing damage bypasses that up to that many points of armor, so the macro subtracts the smallest of the AP damage or armor from the toughness.
agility
+
[[[[d@{target|agility}!!]]+[[@{target|agmod}]]]]
+
  
smarts
+
'''calc-damage'''
[[[[d@{target|smarts}!!]]+[[@{target|smmod}]]]]
+
<br><code><nowiki>Net damage= [[ ?{Damage|7} - (?{Toughness|5} - {?{Armor|3}, ?{AP Damage|2}}kl1) ]]</nowiki></code>
 +
<br><i>Syntax: <code>{x,y}kl1</code> returns the lower of the two values.</i>
  
spirit
+
This <b>calc-wounds</b> macro prompts for net damage and the shaken status of the target. In Savage Worlds the target gains 1 wound per raise in net damage, or if there are no raises, 1 wound if the target is shaken.
[[[[d@{target|spirit}!!]]+[[@{target|spmod}]]]]
+
  
strength
+
'''calc-wounds'''
[[[[d@{target|strength}!!]]+[[@{target|stmod}]]]]
+
<br><code><nowiki>Wounds = raises. If no raises, +1 wound if shaken.
 +
Wounds = [[ ?{Shaken|No,floor( ?{Net damage&amp;#125; /4)|Yes,{floor( ?{Net damage&amp;#125; /4)&amp;#44;1&amp;#125;kh1}} ]]</nowiki></code>
 +
{{mbox|text=When nesting queries, characters terminating innermost rolls must be replaced with HTML entities: } must be &amp;#125; , must be &amp;#44; and <nowiki>|</nowiki> must be &amp;#124;.}}
  
vigor
+
{{mbox|text=If a macro with substitutions is saved, the next time it is opened the substitutions will be gone and you will have to enter them again. Consider saving backup copies of these macros in your GM notes.}}
[[[[d@{target|vigor}!!]]+[[@{target|vimod}]]]]
+
  
Here is the Extra's version
+
For ease of reading, here's the same macro without substitutions:
 +
<code><nowiki>Wounds = raises. If no raises, +1 wound if shaken. Wounds = [[ ?{Shaken|No,floor( ?{Net damage} /4)|Yes,{floor( ?{Net damage} /4),1}kh1}} ]]</nowiki></code>
 +
<br clear=all>
  
extra-trait
+
=== Area Effect and Group Macros ===
<nowiki>/me @{target|token_name} makes a trait test
+
When we blast a group of Extras, we use this macro. The faster way to do it would be to roll two Agility dice and take the best result and apply it to the whole group. But thanks to macros, we can check each one individually very quickly.
/r floor((?{Trait to Roll|Agility, #agility |Smarts,#smarts |Spirit,#spirit |Strength,#strength |Vigor,#vigor }[TR]+?{trait mod|0}[TM]-@{target|wounds}[WND]-@{target|fatigue}[FAT]+?{Agility or Strength Check?|no,0 |yes,#encumbrance }[ENC]-4)/4) </nowiki>
+
-----
 +
'''area-effect-damage''' prompts for the damage roll and four targets, then makes the rolls for them and calculates raises. By [https://app.roll20.net/users/2108662/neilgiraffetyson NeilGiraffeTyson]
 +
<br><code><nowiki>?{Number of dice|2|3|4} ?{Dice size|4|6|8|10|12} &{template:info} {{name=Area Effect Damage}} {{Note=Each target rolls **?{Number of dice}d?{Dice size}** damage and Agility -2 to avoid. If prone, damage is -4.}} {{``@{target|Token 1|token_name}`` =[[?{Number of dice}d?{Dice size}!]] Damage; Evade [[@{target|Token 1|agility_rank}-2]] }}{{@{target|Token 1|token_name} gets wounds at=[[(@{target|Token 1|toughnesscur}-?{AP|0})]], [[(@{target|Token 1|toughnesscur}-?{AP|0})+4]], [[(@{target|Token 1|toughnesscur}-?{AP|0})+8]], [[(@{target|Token 1|toughnesscur}-?{AP|0})+12]] }} {{``@{target|Token 2|token_name}`` =[[?{Number of dice}d?{Dice size}!]] Damage; Evade [[@{target|Token 2|agility_rank}-2]] }}{{@{target|Token 2|token_name} gets wounds at=[[(@{target|Token 2|toughnesscur}-?{AP|0})]], [[(@{target|Token 2|toughnesscur}-?{AP|0})+4]], [[(@{target|Token 2|toughnesscur}-?{AP|0})+8]], [[(@{target|Token 2|toughnesscur}-?{AP|0})+12]] }} {{``@{target|Token 3|token_name}`` =[[?{Number of dice}d?{Dice size}!]] Damage; Evade [[@{target|Token 3|agility_rank}-2]] }}{{@{target|Token 3|token_name} gets wounds at=[[(@{target|Token 3|toughnesscur}-?{AP|0})]], [[(@{target|Token 3|toughnesscur}-?{AP|0})+4]], [[(@{target|Token 3|toughnesscur}-?{AP|0})+8]], [[(@{target|Token 3|toughnesscur}-?{AP|0})+12]] }} {{``@{target|Token 4|token_name}`` =[[?{Number of dice}d?{Dice size}!]] Damage; Evade [[@{target|Token 4|agility_rank}-2]] }}{{@{target|Token 4|token_name} gets wounds at=[[(@{target|Token 4|toughnesscur}-?{AP|0})]], [[(@{target|Token 4|toughnesscur}-?{AP|0})+4]], [[(@{target|Token 4|toughnesscur}-?{AP|0})+8]], [[(@{target|Token 4|toughnesscur}-?{AP|0})+12]] }} {{*More*=[Roll Again](~player-macros|area-damage)}}</nowiki></code>
 +
-----
  
Here the fighting wild card attack. target one token and have it swing at the other token.  same instruction as before put these under macros in the settings tab
+
=== Other Macro Resources ===
 +
Here are some older threads on the forum that explain more about setting up Macros in Roll20 for Savage Worlds. They may or may not work with the [[Savage_Worlds_Tabbed|Savage Worlds (Tabbed)]] sheet:
  
wild-card-melee
+
* [https://app.roll20.net/forum/post/3858800/slug%7D Some macros I made for Savage Rifts] (Necron99, 2017)
<nowiki>/me @{target|making attack|token_name} takes a swing at @{target|being attacked|token_name} whose parry is [[@{target|being attacked|bar1}]]
+
* [https://app.roll20.net/forum/post/2578013/slug%7D Easy Savage Worlds Macros] (Andrew L, 2016)
/r floor(({#fighting ,[[1d6!!]]}k1+?{skill mod|0}-@{target|making attack|wounds}-@{target|making attack|fatigue}+@{target|making attack|encumbrance}+?{skill mod|0}-@{target|being attacked|bar1})/4)</nowiki>
+
* [https://app.roll20.net/forum/post/667546/savage-worlds-macro-examples#post-671583 Example of Setting up Character Sheets and Macros] (PaladinTodd, 2014)
 +
* [https://app.roll20.net/forum/post/287162/roll20-and-savage-worlds/?pageforid=287370#post-287370 Some General Macros: Rate of Fire 3, etc. ] (John R, 2014)
 +
<br clear=all>
  
fighting
+
= Alternative Methods =
[[[[d@{target|making attack|fighting}!!]]+[[@{target|making attack|fightingmod}]]]]
+
This guide has been written around a common and proven way to use Roll20 to play Savage Worlds. This section documents other ways of accomplishing the same goals.
  
extra-melee-attack
+
== Bennies ==
/me @{target|making attack|token_name} takes a swing at @{target|being attacked|token_name} whose parry is [[@{target|being attacked|bar1}]]
+
If you are using a setting with special Bennies, you might have to create extra cards. For example, Deadlands: Reloaded uses a Benny pool made up of Poker Chips called Fate Chips. There are 20 white chips, 10 red chips and 5 blue chips in the Fate Chip pool.  
/r floor((#fighting +?{skill mod|0}-@{target|making attack|wounds}-@{target|making attack|fatigue}+@{target|making attack|encumbrance}+?{skill mod|0}-@{target|being attacked|bar1})/4)
+
here the fighting wild card attack. target one token and have it swing at the other token. same instruction as before put these under macros in the settings tab
+
  
wild-card-melee
+
Create your deck as before, upload an image of a poker chip as the background, and red, white, and blue chip images. Then create 20 new cards called White Chip using the white chip image (pull from the Art tab, don't upload again). Repeat for the red and blue chips, making 10 and 5 of each. In Deck Options make sure that "cards in deck are infinite" is NOT checked.
<nowiki>/me @{target|making attack|token_name} takes a swing at @{target|being attacked|token_name} whose parry is [[@{target|being attacked|bar1}]]
+
/r floor(({#fighting ,[[1d6!!]]}k1+?{skill mod|0}-@{target|making attack|wounds}-@{target|making attack|fatigue}+@{target|making attack|encumbrance}+?{skill mod|0}-@{target|being attacked|bar1})/4)</nowiki>
+
  
fighting
+
Extra cool: If your Bennies look like coins or tokens, create several with different rotations and offsets, so they look more like coins on the table.
[[[[d@{target|making attack|fighting}!!]]+[[@{target|making attack|fightingmod}]]]]
+
  
extra-melee-attack
+
[[https://drive.google.com/drive/folders/1r3dJk5CacNQFzIUccbhVBw_qxFTRXY8E?usp=sharing| These Pirate coin Bennies are free to use.]]
/me @{target|making attack|token_name} takes a swing at @{target|being attacked|token_name} whose parry is [[@{target|being attacked|bar1}]]
+
/r floor((#fighting +?{skill mod|0}-@{target|making attack|wounds}-@{target|making attack|fatigue}+@{target|making attack|encumbrance}+?{skill mod|0}-@{target|being attacked|bar1})/4)
+
  
wild-card-ranged-attack
+
== Tokens: Keeping Stats in Token Bars ==
<nowiki>/me @{target|making attack|token_name} takes a shot at @{target|being attacked|token_name}
+
'''Key stats'''--- Place key stats into the token and use token macros for attacks by the creature. This can be relatively fast, because you typically only need Parry, Toughness, Spirit, Fighting and Damage. Tokens can hold 3–6 stats.
/r floor(({#shooting ,[[1d6!!]]}k1+?{skill mod|0}-@{target|making attack|wounds}-@{target|making attack|fatigue}+@{target|making attack|encumbrance}+?{skill mod|0}-4)/4)</nowiki>
+
  
extra-ranged-attack
+
The ''key stats'' method stores parry and toughness in the token. You can also store spirit, and the primary attack to-hit and damage values in the token. The right balance depends on how much time you're willing to take to enter the information into the token.
/me @{target|making attack|token_name} takes a shot at @{target|being attacked|token_name}
+
/r floor((#shooting +?{skill mod|0}-@{target|making attack|wounds}-@{target|making attack|fatigue}+@{target|making attack|encumbrance}+?{skill mod|0}-4)/4)
+
  
shooting
+
Think of the tokens as art plus seven data fields, and use those fields to make combat easier without having to create a full character sheet. Each token has a name field, and three bars each with a value and a maximum value. You can fill just the two values for parry and toughness, or fill in up to all seven, as suits you.
[[[[d@{target|making attack|shooting}!!]]+[[@{target|making attack|shootingmod}]]]]
+
  
get armor value macro. use it after you have rolled damage, and pull the toughness and armor value from a token. now you dont have to bother GM.  you can do it your self.  if everyone takes a hand in determining all the values flying around, you increase the speed of your combat rounds by at least 50%  Which leaves more time for role playing
+
Wounds are not stored for Extras, but for ''wild cards'', extras that can sustain wounds, the wounds can be indicated with a red status dot and the wound value.
  
get-armor-value
+
{| class="wikitable"
/me @{target|token to get AV from|token_name} has a Toughness of [[@{target|token to get AV from|toughnesscur}]] and an Armor value of ([[@{target|token to get AV from|toughnessarmor}]])
+
|-
 +
! Field    !! Field Value  !! Example
 +
|-
 +
| Name      || Name or URL to image file || http://example.com/fjdi/soldier.png
 +
|-
 +
| Bar 1    || parry || 5
 +
|-
 +
| Bar 1 max || attack1-hit || The soldier swings his sword: &#91;&#91;1d6!]].
 +
|-
 +
| Bar 2    || toughness || 5
 +
|-
 +
| Bar 2 max || armor || 0
 +
|-
 +
| Bar 3    || spirit || d6
 +
|-
 +
| Bar 3 max || attack1-damage || The soldier's cutlass slashes: &#91;&#91;2d6!]] damage.
 +
|}
 +
 
 +
You can hide the bars so they don't obscure the token and map. If the value or max is blank, that bar will not be shown. If both values for the bar have a value, it will be visible to the GM. On the Basic tab make sure the controlling player is blank. On the Advanced tab, you can make bars invisible to the controlling player by deselecting Edit, and invisible to all players by deselecting See.
 +
 
 +
With the Key Stats method you use four macros to complete the automation:
 +
* extra-stats: <code>/desc [picture](@{target|Extra|token_name}?raw=1#.jpg) Parry @{target|Extra|bar1}, Toughness @{target|Extra|bar2(@{target|Extra|bar2|max})</code>
 +
* extra-attack: <code>@{selected|bar1|max}. [roll damage](~extra-damage)</code>
 +
* extra-damage: <code>@{selected|bar3|max}</code>
 +
* extra-unshake: <code>They attempt to unshake: [[@{selected|bar3}!]].</code>
 +
 
 +
{{mbox | text = Replace the ~ in the extra-attack with !&amp;#13;#, See note in previous section on nested macros for why.}}
 +
 
 +
{{mbox | text = If you have images stored on the web, you can use them via their URL. For images in Dropbox, remove the ``?dl=1`` code from the end of the URL. The *extra-stats* macro appends ``?raw=1#.jpg`` to the URL to make it work; this is only needed for Dropbox.}}
 +
 
 +
{{mbox | text = If you're using character sheets and an avatar, you can edit and right click on the avatar and copy that URL to use for the Name field.  Since it's using the storage Roll20 uses, it's quite fast.}}
 +
 
 +
<br />
 +
 
 +
== Area of Effect options ==
 +
 
 +
=== Tips for better AoE template art ===
 +
* Create templates for different types: Fire, Water, Lightning, Swarms, etc.
 +
* Make parts inside the blast template transparent, like the space between insects, or an inward spiral for a tornado funnel.
 +
* Set them to be about 50–30% transparent (must be a PNG for this) so you'll be able to see tokens under them.
 +
* For templates that look good even when zoomed in, make the art twice as big as necessary.
 +
* You can use animated GIFs for templates.
 +
* It can slow things down to aim (and rotate) the cone token when it's placed on the map. That's because Roll20 rotates around the center instead of the tip of the cone. If you make the art for the token 210px x 630px, but on a transparent background that is 210px x 1260px, the burst will now rotate around the tip.
 +
 
 +
 
 +
=== AoE Templates as card decks ===
 +
You can also store the templates in card decks, one deck for each template size. [https://app.roll20.net/forum/post/7404116/a-deck-of-area-templates Original discussion]
 +
 
 +
All decks will look the same size while in the player's hand, so it's helpful to have backs that are labelled small, medium, and large.
 +
 
 +
Advantages:
 +
* Players can have cards for just the types (fire, lightning) that are appropriate
 +
* Players don't have to access the Journal tab to get the templates
 +
 
 +
Disadvantages:
 +
* It takes up more screen space by their handle.
 +
* Players have to pick up their template to return cards to their hand.
 +
* While the template is covering another player's token, that player can't click on their token to access macros or other features.
 +
 
 +
Create the card decks:
 +
# Create four decks (in the <span style="font-family:Pictos;">l</span>[[Collection]]-tab): small blast, medium blast, large blast, burst.
 +
# In each deck set the size correctly.
 +
# For all decks, select Cards in deck are infinite, Allow choosing cards to GM + Players, Played facing = Face Up, and Considered = Drawings.
 +
# Drag the deck window to the left, click "add card", that window will open a little to the right. Click the <span style="font-family:Pictos;">P</span> Art Library tab and drag over the appropriate template. Repeat for each template and deck.
 +
 
 +
At the start of the session, show the decks, let the players take the cards that match their spells and trappings, then hide the decks. Players will put the card/AoE template on the table when they need it. After use, the player can right-click and select Take Card to put it back in their hand.
 +
 
 +
=== AoE Templates as Multi-sided Tokens ===
 +
{{ambox|text=This section needs more clear instructions}}
 +
You can make a rollable table with each "row" a different trapping, so when the player drags the character token onto the table they can change the token to show the fire/water or other trapping of their choice.
 +
 
 +
This makes the Journal AoE folder less cluttered, but it can slow down players when they have to right-click to select the trapping.
 +
 
 +
== Fear Table Results Only ==
 +
If you only want to see the results of a Fear Table roll, and not the entire Fear Table, you can implement the Fear table as five tables. Create tables named fear0, fear1, fear2, fear3, and fear4. Enter the weights from the +0 wt column into the fear0 table, the +1 wt column into the fear1 table, etc.
 +
 
 +
You can get the results for a fear roll by typing '[[1t[fear0]]]' in the chat box, or for fear penalty 1 type `[[1t[fear1]]]'.
 +
 
 +
You can use the t-fear macro to roll the correct table.
 +
 
 +
-----
 +
'''t-fear''' prompts for the fear penalty, then rolls on the appropriate fear table. By [https://app.roll20.net/users/2656153/mike-deboston Mike deBoston]
 +
<br><code><nowiki>Fear table (pg124) d20 + ?{penalty|0|1|2|3|4}: [[ 1t[fear[[1d0+?{penalty}]]]]]]]</nowiki></code>
 +
-----
 +
 
 +
{| class="wikitable"
 +
|+ SWADE Fear Table
 +
|-
 +
! d20+0 !! +0 wt !! +1 wt !! +2 wt !! +3 wt !! +4 wt !! Effect
 +
|-
 +
| 1-3  || 15    || 10    || 5    || -    || -    || Adrenaline surge (Joker)
 +
|-
 +
| 4-6  || 15    || 15    || 15    || 15    || 10    || Target Distracted
 +
|-
 +
| 7-9  || 15    || 15    || 15    || 15    || 15    || Target Vulnerable
 +
|- 
 +
| 10-12 || 15    || 15    || 15    || 15    || 15    || Target Shaken
 +
|-   
 +
| 13    || 5    || 5    || 5    || 5    || 5    || Mark of Fear: Target Stunned, cosmetic alteration
 +
|-   
 +
| 14-15 || 10    || 10    || 10    || 10    || 10    || Frightened: Target Hesitant for encounter, or Panicked
 +
|-   
 +
| 16-17 || 10    || 10    || 10    || 10    || 10    || Panicked: Target runs away, Shaken
 +
|-   
 +
| 18-19 || 10    || 10    || 10    || 10    || 10    || Target gains Minor Phobia Hindrance
 +
|-   
 +
| 20-21 || 5    || 10    || 10    || 10    || 10    || Target gain Major Phobia Hindrance
 +
|-   
 +
| 22+  || -    || -    || 5    || 10    || 15    || Heart Stutters: Target rolls Vigor -2. Success=Stunned. Fail=Incapacitated, dies in 2d6 rounds, Healing -4 to save life but remains Incapacitated.
 +
|}
  
  
[[Category:Guides]]
 
 
[[Category:Games]]
 
[[Category:Games]]
 
[[Category:Macros]]
 
[[Category:Macros]]

Revision as of 16:59, 12 July 2020

Savage Worlds on Roll20

The streamlined rules of Savage Worlds are relatively easy to set-up and play in Roll20, even with a free account. With little effort Roll20 can handle Bennies, special dice rolls (Acing/exploding rolls and Wild Card dice), and Action cards for initiative.

GMs can upload or create maps, upload tokens for NPCs and track their stats, and configure the Character Sheet for settings like Rifts, Deadlands, and others.

Players can enter all aspects of their characters into a character sheet for easy die rolling that accounts for wounds and other modifiers, with notes for edges, powers, and gear descriptions.

Common functions (like trait rolls and calculating raises) are easily automated with the basic scripting ability included in the free Roll20 service. Most of the automation (usually called macros) needed to play adventures and campaigns are built into the character sheet, others (to speed up or clarify things) are included in this guide.


Example of Savage Worlds play with macros and customization

Contents

Quick Start

Roll20 has more than one way to do things, Savage Worlds has many setting rule variations, and GMs have their own preferences. This guide is going to show you one way to cover the core rules, using only features in a free account. I made some judgement calls along the way to get you up and running as quickly as possible. Looking for another way? There is a section at the end of this for alternative methods and great-but-not-essential enhancements.

  1. Game Settings— Set defaults for map pages and tokens, select the Character Sheet and set its defaults.
  2. Savage Worlds (Tabbed) Character Sheet— Automates trait, weapon, and power rolls. Tracks Wounds, Fatigue, and statuses like Shaken and Distracted.
  3. A custom Benny image— Upload it as an infinite card deck and deal them to players.
  4. Translucent Blast and Cone images— Upload as a deck or as a token for a character sheet.
  5. Use a 3rd party app like Discord for sound and video if you have more than two players. There's a technical explanation about better performance, and you also gain easy in-game side-bar conversations, and out-of-game text with your group for things like scheduling.

This guide has lots of other macros and information. You probably don't need it. Call your players, tell them you need 45 minutes to set up, and start playing!

You can also speed up things and make your life easier with those macros:

  1. Stat Block Macro— Brings up a menu with all of the rolls from the character sheet, without having to open the character sheet.
  2. Target Stats Macro— Shows the Parry, Toughness and Raises for a target, so players don't have to ask the GM (again).
  3. GM Macros— Wild Card trait, Extra trait, Melee/Thrown/Range damage, and Run. For when you don't want to create a character sheet for some NPC.


Game Settings

After you create a new game, from the Game Settings menu, select Game Settings.


Game Default Settings

From the Game Settings Page, scroll down and configure this section.

  • Page Defaults
    • Page Scale: 1 grid cell = 6 ft.
    • Grid Measurement: Euclidean
  • Token Defaults
    • Bar Location: Bottom Overlapping
    • Bar Style: Compact
  • Player Permissions
    • Name: [x]See [x]Edit
    • Bar 1: [ ]See [x]Edit Text Overlay: Hidden
    • Bar 2: [ ]See [x]Edit Text Overlay: Hidden
    • Bar 3: [x]See [x]Edit Text Overlay: Hidden
    • Aura 1: [x]See [x]Edit
    • Aura 2: [x]See [x]Edit


Character Sheet Template

From the Game Settings Page, scroll down and configure this section.

Select Savage Worlds (Tabbed Layout). I recommend these Default Sheet Settings as a start so that creating NPCs takes fewer steps. You're going to do that a lot, save yourself some clicks.

  • [x] Extra
  • [x] Start Attributes at d6
  • [x] Show Soak Button
  • [x] Show Unshake Button
  • [x] Show Size fields
  • [x] Use Species
  • [x] Show Load and Encumbrance
  • [x] Show Occupation I use this field to store the URL to NPC art.


In-Game Settings: My Settings

After launching the game, these settings are under the yMy Settings-tab.

  • [x] Use advanced keyboard shortcuts
  • [x] Enable 3D dice
  • [x] Automatically roll 3D dice


3D Dice

Animated 3D dice help recreate the table top feeling
Selecting Automatically roll 3D dice, speeds up the game. Without it, when a die roll is needed it delays the game while a user drags across the table top to set the direction and velocity of the dice throw. The color of the dice will be the same as the color of your chat avatar. Click on the color box of your chat avatar to change it.
The dice color match your chat avatar color


In-Game Settings: Game Settings

After launching the game, these settings are under the yMy Settings-tab.

Token Bar Colors + Display Settings.
When you click on a token, three circles show Bar 3, Bar 1, and Bar 2.

  • Bar 1: Ivory (for Fatigue)
  • Bar 2: Purple (for Power Points)
  • Bar 3: Red (for Wounds)
  • Status Marker Position: Bottom These tiny icons indicate Shaken, Distracted, etc.


Chat Avatars

  • Player Avatar Size: Names only


Video + Audio Chat Options

  • Chat Tech: None (no video/audio) For best performance, use a 3rd party application, not something browser-based.


From the [Roll20 Video and Voice Chat Troubleshooting Guide]:

A Roll20 WebRTC call has a suggested download and upload bandwidth of 512Kbps per additional user in the chat. That means that in a six person call (five users other than yourself), you would need around 2.5Mbps of bandwidth for a stable call. If your group has members whose connections cannot support these requirements we suggest using a 3rd party, non-browser based chat option, that can make use of both hardware acceleration and data-compression to lower bandwidth requirements.


Tracking Bennies

In Savage Worlds, Bennies are tokens the players (and GM) may redeem to reroll the dice and change the story. Players start each session with three Bennies and are awarded more for good roleplaying or when a Joker is drawn during initiative.

Create a card deck for Bennies

In order to easily track Bennies, create a custom card deck.

  1. On the l Collection-tab, look at Decks, click Add.
  2. In the New Deck dialog:
    1. Name the deck Bennies.
    2. Set Cards in Deck = Infinite, Considered = Drawing.
    3. Set Card Size to 105x105 (usually a good value since the grid is 70x70).
    4. Upload an image (like a coin or poker chip) for the card back. A good size for the art is 210x210px, so it looks good zoomed up.
    5. Upload the same image for the card front.
  3. Select Show Deck.


This [poker chip art] is free to use.

You can then shuffle and deal the "deck" just like a deck of cards and the users will receive their Bennies as normal.

To play a Benny:

  1. Open the card hand window: Click on the Benny icon above your player name at the bottom of the screen.
  2. Drag a Benny onto the table top.
  3. Close the card hand window: Click again on the Benny icon above your name.
  4. Right click on the Benny on the table top and select Delete. We like the way they look on the table, so we wait until the end of the encounter to delete them.


Using Cards for Initiative

In Savage Worlds, Action cards (poker cards with jokers) are dealt to players to determine initiative order. Play order is a countdown from Ace to Two, with Jokers going first, and ties resolved in reverse alphabetical order (Spades, Hearts, Diamonds, Clubs). Some characters may get more than one card, some groups of extras may get one to represent the group.

Use the Turn Tracker to manage initiative in card order

Roll20 helps automate initiative with the Turn Tracker. Open the Turn Tracker from the menu (or by pressing 'y').

Add tokens to the Turn Tracker by selecting tokens and pressing 'u'. (If Advanced keyboard shortcuts are not enabled, you can also do this by right clicking on tokens and choosing the Add Turn options from the pop-up menu.)

Show the deck of Action cards by going to the l Collections-tab, scrolling to Playing Cards and clicking Show.

Deal a card to each token in the Turn Tracker by clicking "Deal" on the Action Cards deck, then clicking "Deal Cards to Turn Order Items" from the pop-up window. (You don't have to type anything into the number box.)

Once the cards are dealt, open the Turn Order Settings dialog (click the blue gear icon) and press the "By Card/Suit" button to sort the Turn Tracker.

If you hover over a a token in the Turn Tracker it will highlight that token on the map. If it represents a group of Extras it will only highlight one. Avoid deleting dead tokens because if you delete the one token you chose to represent a group, the group also disappears from the Turn Tracker. A better choice is to mark them dead with a token indicator overlay, or move them out of the visible portion of the Fog of War.

Level Headed Edge, Hesitant Hindrance

Characters with the Level Headed edge or Hesitant hindrance get two cards and select the one to play. (Level Headed chooses the best card, Hesitant chooses the lower card or Joker.) For this, just add their token to the Turn Tracker twice. For Improved Level Headed, add three of their tokens to the tracker so they get to choose from the best of three cards.

Quick, Tactician Edges

Characters with the Quick edge get an extra Action card if their card is a 5 or less. Tacticians get an extra Action card and may use it or give it to an allied Extra.

You can manually deal new or extra cards (or cards) to them by selecting "Deal" from the Action deck's popup menu, or you can just click on it to make a card flip up, then click and drag that card to the tracker. (And if they have access to the deck, they can do it themselves.)

You can drag cards into the Turn Tracker
You can manually deal cards to the Turn Tracker. To draw a card the GM clicks on the card sticking out of the deck; this flips it face up. (The deck must have "Show deck to players" enabled.) Then the GM drags the card onto the Turn Tracker to the card next to the character's name, and when the number turns yellow the GM drops the card.


The card on the turn tracker, or drop point, turns yellow when the mouse pointer is over it. The drop point is only activated by the mouse pointer, not the card. This is easiest to do if the GM picks up the card on the upper left corner, because then it is easier to see the background color of the number in the Turn Tracker turn yellow.



Character Sheets

Character Sheets allow you to track your character's traits, edges, powers, and gear. The creator of a game can choose a character sheet template when setting up the game, and all characters in the game will use that sheet template. Use the guides below for specific versions of available character sheets.


Statblock Macro

Stat block for a character
With the 'statblock' macro, you can access almost any PC or NPC action in three clicks: Click the token to show the token macro bar, click the 'statblock' macro to see a menu of options, then click the action. Compared to using the character sheet, this takes up less screen space and is faster to access. (This draws from info in the character sheet.) Create this as a token macro.



statblock (macro) shows stat block as chat menu with clickable actions.
/w @{selected|token_name} %{selected|fullstatblock}


Target Stats Macro

stats for Devil Bat
With the 'target-stats' macro, players can click on an NPC token and see the Parry and Toughness target numbers, and roll numbers needed for Raises. The scale modifier is based on the attacker being size 0. Output is whispered to the player in the chat window, so it doesn't clutter up the window for other players. Create this as a token macro.



target-stats (token macro) shows Size, Parry, and Toughness with calculated Raises and Wounds. By Mike deBoston
/w @{selected|token_name} &{template:info} {{item=@{target|Token|token_name} [pic](~target-pic) }} {{**Size**=@{target|Token|size}, **Scale Mod:** +[[floor(@{target|Token|size}/4)*2]]. }}{{Parry=@{target|Token|parrycur}, [[@{target|Token|parrycur}+4]] to raise damage. }} {{Toughness=@{target|Token|toughnesscur} (@{target|Token|toughnessArmor}), [[@{target|Token|toughnesscur}+4]] to wound, more wounds at [[@{target|Token|toughnesscur}+8]], [[@{target|Token|toughnesscur}+12]], [[@{target|Token|toughnesscur}+16]]. }}


Target Pics Macro

picture and stats for Giant Monkape
This is similar to the target-stats macro, but it also shows a picture of the target character. To make this work, paste a URL to the picture into the Occupation field on the Character Sheet. I've found that Google Drive and Dropbox don't work for this, but IMGUR does. Create this as a token macro.



target-pic (token macro) shows picture, Size, Parry, and Toughness with calculated Raises and Wounds. By Mike deBoston
/w @{selected|token_name} &{template:info} {{item=@{target|Token|token_name} }} {{[picture NA](@{target|Token|occupation}) **Size**=@{target|Token|size}, **Scale Mod:** +[[floor(@{target|Token|size}/4)*2]]. }} {{Parry=@{target|Token|parrycur}, [[@{target|Token|parrycur}+4]] to raise damage. }} {{Toughness=@{target|Token|toughnesscur} (@{target|Token|toughnessArmor}), [[@{target|Token|toughnesscur}+4]] to wound, more wounds at [[@{target|Token|toughnesscur}+8]], [[@{target|Token|toughnesscur}+12]], [[@{target|Token|toughnesscur}+16]]. }}



Tokens for Characters and Creatures

Tokens in Roll20 can represent PCs and NPCs (and other objects) on the map. Tokens have artwork, a name, and may also have a 3–6 attributes (like Parry or Wounds) and a link to a character sheet.

Three common types of tokens

Hints for Token Artwork

Top view token art provides the most realism but the least detail because you mostly see the top of the NPC's head and shoulders.

Side view token art provides the most complete view, but since they're displayed at 70px tall most detail is lost and they can be difficult to see on a map.

Round token art has head and shoulder portraits with a colored circle border and is generally preferred. They're easy to see and provide the most facial detail, and there are free applications and web sites that make it easy to scale and crop the portrait art into a round token. They don't show clothing, weapons, hands, and other details but these can be in the full side-view art in the character sheet, or a Journal handout, or in the q Chat tab (via a macro).

NPC token, 150px square
NPC art, 440px wide

Token Art Size: For standard-sized creatures, tokens will displayed as 70x70px, the default map grid size. To look good at 200% zoom, make the token 140x140px or larger. If you're creating a token that is the head and shoulders clipped from a larger portrait, you'll want the clipped portion to be 140 square and this generally means that the larger (source) portrait will be 300–400px wide. If you use smaller source material, your tokens will look blurry.

Methods of representing characters as tokens

There are three major ways to configure tokens and stats: Just art, character sheets with unlinked bars, and with linked bars.

  • Just art--- Place token art on the map, keep the key stats like parry and toughness elsewhere (like on paper). When you need to roll an attack, use basic dice commands like /roll 1d6!. But because players cannot see the Parry, Toughness, and Armor values, they'll have to ask the GM (over and over) and can make combat take longer.
  • Character sheet with unlinked bars--- Create a character sheet for the creature, then link the token to it. Then also link the character sheet to the token. This lets access the character sheet for special attacks, but each token has their own wounds. This is handy for Extras. Details on this method are below.
  • Character sheet with linked bars--- Create a character sheet for the creature and link the token and token bars (like wounds, fatigue, or ammo) to it. Then also link the character sheet to the token. This lets stats (like wounds, fatigue, or ammo) be adjusted on the token and update the character sheet. This is useful for Wild Cards, bosses and unique NPCs. Details on this method are below.

Token method: Character Sheet

This method ties the token to a character sheet. It's very helpful because it provides a quick reference to the Edges, Powers and all the attributes of the character. For Wild Cards, this is worth the time to set up, and possibly for commonly encountered Extras, but this depends on how much time you want to allocate to entering the data.

1. Create the character sheet. You should at least enter Parry, Toughness, Fighting skill, Strength, and the Weapon, and Spirit. If it's an extra, and they're not likely to try to soak wounds, you don't even need to enter Vigor.

2. Create a token. Size it on the map correctly. New tokens dragged from the character sheet will use this size.

3. Link the token to the character sheet. Edit the token and use the **Represents Character** drop-down menu (on the Basic tab).

4. OPTIONAL Link the token bars. Skip this step if there will be multiple tokens linked to a single character sheet, like Extras (guards), and even for Wild Cards (several captains).

You should do this step if you want adjustments to the Wounds, Fatigue, Power Points or ammo on the token to make changes on the character sheet. It's handy for recurring villains. This step connects the status bars overlaid on the token to stats on the character sheet, so trait rolls will automatically account for wound and fatigue penalties. These also link the bubbles shown when the token is selected so you can edit the values without having to open the character sheet.

Here's a setup for fatigue, power points, and wounds. This makes it easy for players to edit those values as the game progresses. If the character doesn't have power points, just leave it blank, or use it for ammo. Set the field value for each Bar on the Basic tab with the drop-down menu. Type the first few letters of the field value to find it faster.

Settings for the Edit Token box
Field Field Value Bar Color See Edit
Name Xena yes yes
Bar 1 fatigue bone no yes
Bar 2 powerpoints purple no yes
Bar 3 wounds red yes yes

Bar colors are set for the entire game; set them on the yMy Settings tab.

See and Edit, and Bar Location and Bar Style can be set on the Advanced tab of the Edit Token box but it's better to set them for all tokens in Game Settings. Use See=Yes on Bar 3 so other players can see Wounds (but not fatigue, for example). Use Edit=Yes on all bars so that the player can change the values without having to open their character sheet. Set Bar Location = Bottom Overlapping and Bar Style = Compact.)

On the token, bars without a value (no wounds, no fatigue, no expended power points) will not be shown. The player will see all three bars for their character, and the GM will see all bars for all characters, but other players will only see the wounds bar.

5. Save Changes on the Token. Click Save Changes to close the Edit Token box. You have configured the token on the map, but if you delete the token you will lose those settings. To place that token on another map you'd have to copy and paste this one. If you drag the art out onto the map again, you will be creating a new token and it won't have these settings.

In the next step you will set the character sheet to use this token with all of the settings so far. The character sheet will remember these settings, so the token can be deleted and added again at any time.

6. Link the Character Sheet to the Token. Shift-double-click on the token to open the linked character sheet. At the top right, click Edit. In that screen, remove the old default token if there is one, then click to add the selected token.


7. Save Changes on the character sheet. Test this by dragging the character sheet (by the name, not the handle icon) onto the map. Check to see that this new token has all of the correct settings.



Area of Effect (Blast & Burst) Templates

Savage Worlds uses blast (round) and burst (cone) templates to determine which characters are impacted by various area of effect spells. You can place these images on the map over the tokens.

If you upload templates as art and then drag them onto the map, they will resize to match the grid (70x70). One way around this is to configure the templates to be the right size, then link each to its own special character sheet. When you want to put an AoE template on the map, drag on the "character".

  1. Use the Savage Worlds art or create new template art.
  2. Save as PNG or GIF with a transparent background.
  3. In the PArt Library-tab, click Upload. You can drag all templates at once into the dialog box.
  4. (optional) Store them into a folder "AoE templates". Try to keep your Recent Uploads list empty by putting everything in folders.
  5. Place the art on the map.
  6. Right-click the art and select Advanced > Is Drawing.
  7. Right-click the art and select Advanced > Set Dimensions.
  8. Size it correctly; Roll20 grids are 70px per inch.
    1. Small blast is 2", 140px by 140px
    2. Medium blast is 4", 280px by 280px
    3. Large blast is 6", 420px by 420px
    4. Burst is 3"x9", 210px by 630px. In some burst templates the cone image only occupies the top half of the template. These are designed so they rotate around the caster. Set the size to 210px by 1330px.


Once your templates have been uploaded and sized, in the Journal tab, create a folder named "Area of Effect templates".

  1. Inside the folder create a character named "blast, small".
  2. Select the token, click the settings Gear, and link the token to the character sheet. (Save your settings.)
  3. Open the character sheet, link it to the token.
  4. Make the character sheet visible and editable by all players. (Save your settings.)
  5. Repeat for each token: "blast, medium", "blast, large", "burst".
  6. If you've made different tokens for different trappings you might make character sheets like "blast, medium fire" or "burst, swarm".


You start with some free Area Effect templates here.

To use the templates, find them in the Journal folder and drag them (by the name) onto the center of where you want them (usually on the spell caster for Bursts or in the crowd of enemies for Blasts).


States and tokens

A lot of bad things can happen to Savage Worlds characters, and many are represented by states. You can use Roll20's Token Markers to provide visual reminders.

Click the round button to show token markers

You can overlay a single digit on top of any Token Marker icon, to indicate things like flying height in inches or 10s of inches. Hover the mouse pointer over the wing icon and press a single digit. Fatigue and Wounds could be indicated this way, but it's generally better to use the token bars instead.

Roll20 Token Markers mapped to SW States
Token Markers have no effect on Roll20's calculations so you can use any indicator for any purpose. This convention is a good place to start. (The name of the status and the red text aren't part of the marker. Use this chart or create one like it as a handout in the N Journal-tab.


Custom Savage Worlds Token Markers


Custom Token Markers mapped to SW States
There is a free set of [Token Markers for Savage Worlds] available.

[Browse Token Markers for Savage Worlds] in the Roll20 Marketplace.

This is a lot of steps but it should only take a few minutes.

  1. Download the set to your computer.
  2. From your game launch page (before you launch it), locate the Token Marker Sets box (bottom right).
  3. Click the + button.
  4. In the 'Add Token Marker Sets' box, click "Create New Set".
  5. On the 'Token Marker Library' page, click "+Create Set".
  6. In the 'Create Token Marker Set' dialog box, type "SWADE Starter Token Markers".
  7. On the 'Add images to your new token marker set' page, click "Add Images".
  8. (finally) Drag all of the downloaded images to this page.
  9. Click to save after upload the set.
  10. Click to save after the option to rename them.


Now that the Token Marker set has been uploaded, set Roll20 to use them in your game, and to stop using the default set.

  1. Go back to your game launch page and locate the Token Marker Sets box again (bottom right).
  2. Click the + button.
  3. In the 'Add Token Marker Sets' box, type "SWADE", then select your new set and click Update.
  4. Click on the menu button next to the Default Set and select "Remove from this game".


Chases

Savage Worlds (Deluxe) Chases and Roll20 An example and explanation in the forum


Tables

Tables in Roll20 use a weight for each row instead of a die range. (Rolling a 2 on 2d6 is a 1/36 chance, so the weight is 1.) The weights are shown below.

When you create the table in Roll20, enter the Weight and the Description columns. You don't need to enter the first column.

Injury

Since a result from one table roll cannot trigger a roll on a sub-table, so in those cases (like injury), the weights have been adjusted and the sub-tables have been added to the main table.

If you name the table 'injury', you can get the results by typing '[[1t[injury]]]' in the chat box.

Injury Table for SWADE
2d6 (and 1d6) Weight Description
2 6 Unmentionables
3–4, then 1–3 on d6 15 Targeted (or right) arm
3–4, then 4–6 on d6 15 Targeted (or left) arm
5–9, then 1–2 on d6 48 Guts (Broken)
5–9, then 3–4 on d6 48 Guts (Battered)
5–9, then 5–6 on d6 48 Guts (Busted)
10–11 30 Leg
12, then 1–3 on d6 3 Head (Hideous Scar)
12, then 4–5 on d6 2 Head (Blinded)
12, then 6 on d6 1 Head (Brain Damage)


Injury Table for SWD
2d6 (and 1d6) Weight Description
2 6 Unmentionables
3–4, then 1–3 on d6 15 Targeted (or right) arm
3–4, then 4–6 on d6 15 Targeted (or left) arm
5–9, then 1–2 on d6 48 Guts (Broken)
5–9, then 3–4 on d6 48 Guts (Battered)
5–9, then 5–6 on d6 48 Guts (Busted)
10–11 18 Leg
12, then 1–2 on d6 2 Head (Hideous Scar)
12, then 3–4 on d6 2 Head (Blinded)
12, then 5–6 on d6 2 Head (Brain Damage)


Fear

The SWADE Fear table is a d20 plus a modifier of 0 to 4. Because Roll20 does not directly support modifiers, you can either implement it as five tables or as a macro. If you implement it as five tables it will roll the d20 and show you the result from the table. If you implement it as a macro it will roll the d20, show you the entire table, and you can just read down to find the result.

The macro method is the easiest so it's here. The five tables method is at the Alternatives section of this page.


fear-table prompts for the fear penalty, rolls the die, and shows the ENTIRE table. You select the result manually. By Mike deBoston
&{template:info} {{item=Fear Table}} {{+?{Fear Modifier|0} fear roll=[[1d20 +?{Fear Modifier}]]. }} {{1–3=Adrenaline surge (Joker) }} {{4–6=Target Distracted }} {{7–9=Target Vulnerable }} {{10–12=Target Shaken }} {{13.=Mark of Fear: Target Stunned, cosmetic alteration }} {{14–15=Frightened: Target Hesitant for encounter, or Panicked }} {{16–17=Panicked: Target runs away, Shaken}} {{18–19=Target gains Minor Phobia Hindrance}} {{20–21=Target gain Major Phobia Hindrance}} {{22+=Heart Stutters: Target rolls Vigor-2. **Success**=Stunned. **Fail**=Incapacitated, dies in 2d6 [[2d6]] rounds, Healing -4 to save life but remains Incapacitated.}}


Vehicles

If you name the table 'vehicle-ooc', you can get the results by typing '[[1t[vehicle-ooc]]]' in the chat box.

Vehicle Out of Control Table for SWADE
2d6 Weight Description
2 1 Major collision
3–4 5 Minor collision
5–9 24 Distracted
10–11 5 Vulnerable
12 1 Glitch

If you name the table 'vehicle-critical-hit', you can get the results by typing '[[1t[vehicle-critical-hit]]]' in the chat box.

Vehicle Critical Hit Table for SWADE
2d6 Weight Description
2 1 Scratch/dent
3 2 Guidance/traction
4–5 7 Locomotion
6–8 16 Chassis
9–10 7 Crew
11 2 Weapon
12 1 System


Vehicle Out of Control Table for SWD
2d6 Weight Description
2 1 Roll over
3–4 5 Spin
5–9 24 Skid
10–11 5 Slip
12 1 Flip
Vehicle Critical Hit Table for SWD
2d6 Weight Description
2 1 Scratch/dent
3 2 Engine
4 3 Locomotion
5 4 Controls
6–8 16 Chassis
9–10 7 Crew
11 2 Weapon
12 1 Wrecked


Finding Games



Pro Account Features for Savage Worlds

The free Roll20 service is powerful and easy enough to run a complete Savage Worlds adventure or complete campaign with the Base Account subscription. The Pro Account adds animated FX options and the ability to create and run APIs for advanced automation, including some that are particularly useful for Savage Worlds.

FX

You can add animated effects for Bolt, Burst, and Blast area effects. These macros will get you started. Many more (and custom ones) are available.


blast-spell-fx (macro) prompts for the target token and the type of blast. By Mike deBoston
/fx explode-?{type|fire|frost|water} @{target|token_id}


bolt-spell-fx (token macro) prompts for the target token and the type of bolt. By Mike deBoston
/fx beam-?{type|fire|frost|water} @{selected|token_id} @{target|token_id}


burst-spell-fx (token macro) prompts for the target token and the type of burst. By Mike deBoston
/fx breath-?{type|fire|frost|water|slime} @{selected|token_id} @{target|token_id}


APIs

This isn't a list of all of the advantages of a Pro Account or all of the API Scripts, just a selection that might be particularly helpful for Savage Worlds.

API: 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.

API: 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. Explained in Tabletop Tango Ep 21

API: Deal Init: 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. Explained in Tabletop Tango Ep 21

API: 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.

API: Token Mod: Changes token properties This enables macros to modify tokens, and even apply Wounds or change rotation.



Organizing Content

As you upload art, tokens, portraits, maps, handouts and other material, here are some tips to get the most from your storage allowance and still rapidly find things.


P Art Library tab

All uploaded art will appear in the PArt Library, even if it is directly uploaded into a card deck, handout, map, or character sheet. All uploaded art counts against your storage allowance, and it is shared across all games you create. Here are some strategies for organization. This will help you avoid duplicates and find things quickly.

Roll20's art management system can be unreliable, so it's wise to create art folders on your local computer that mirror the folders you will create on Roll20, and to keep local copies of your art so it can be uploaded again if needed.

When art is uploaded, immediately put it into a folder.

  • Bestiary for goblins, guards, etc
  • NPCs for named NPCs and Wild Cards
  • Player Characters
  • Cards and Bennies
  • Scenes
  • Handouts
  • Maps (named locations)
    • 0 Terrain (generic jungle, tavern)
    • 0 Tokens (trees, rocks, saloon tables)

If you're going to run games in vastly different settings (fantasy and science fiction), then you can create top-level folders for this and use the folders above as sub-folders.

N Journal tab

The N Journal is unique to each game. Good organization here will help you find things while playing. Items in the Journal that are shared with all players will have a blue dot after their name.

Start with a good folder system.

  • Roll20 Tips
    • Setup for audio, browser add-ons, whatever
    • Shortcuts for Roll20
    • Useful macros, how to attack, use power, take damage
  • Player Characters
  • Gear (Tip: Just paste in screen shots.)
    • Weapons, armor, and vehicles
  • Ships (if your vehicles have character sheets)
  • Handouts
  • Maps
    • Subfolders for nations, continents, realms, etc.
  • Rules (Just paste in screen shots)
    • Skills, Edges, Hindrances
    • Raise calculator
    • References for states, power modifiers
  • Bestiary
  • NPCs
    • Subfolders for locations
  • Macros
    • Character sheets (pc-macros, gm-macros, power-macros) used for storing scripts

Script/Macro/Ability Resources


Scripts are the lines of code that automate Roll20. When they are stored in the l Collection tab they are called Macros. When they are stored in the Abilities & Attributes-tab of a Character sheet, they are called Abilities.

Creating a Macro
The scripts in this guide will have a name and some code, and sometimes an explanation of the code in italics. Scripts (macros) will be shown like this:



roll-run
Run speed is [[6 + 1d6]].

Syntax: The code 1d6 rolls one d6. Surrounding the roll with [[ shows only the total. Hover over the result to see a tool tip with the values of the die roll.



Collection tab, Macros

To save a scripts as a Macro in the l Collection tab:

  1. On the l Collection tab, Macros, click Add.
  2. In the Edit Macro dialog, enter the name and script.
  3. (Usually) Set Visible to Players = All Players.
  4. (Sometimes) Set Show as Token Action = True. (These appear in a second macro bar only when a token is selected.)


If the previous example is saved as a Macro named roll-run, players can access it by:

  • Typing #roll-run in the chat window. (After typing '#ro', you can press tab to auto-complete the phrase.)
  • Opening the l Collection tab and clicking the t dice icon for the macro.
  • Selecting "Show Macro Quick Bar" in the l Collection tab, and selecting "In bar" for the macro.
  • Clicking the Macro name in the l Collection tab and selecting "Show as Token Action".


Acing (Exploding) Die Rolls

In Savage Worlds, Trait and Damage rolls can Ace. Each time the die rolls its max value, you add that value and roll again.

This example rolls a d4. You can type this script into the qChat tab and see the result there. If the die rolled a 1 the result will be in a red box. If a die aced it will be shown in a green box.

/r 1d4!

/r rolls dice. 1d4! rolls 1d4 and enables acing on the die.

This example macro prompts for the die to roll, a modifier, and some descriptive text.

roll-trait
Trait roll is [[ d?{Die type|6}! + ?{Modifier|0} ]] to ?{Reason|do nothing}

?{Question|Default} prompts the user to enter a value. Surrounding the roll with [[ shows only the result of the roll. Hover over the result to see a tool tip with the values of the dice.

Wild Card Die Rolls

When making trait rolls, Wild Card characters roll an extra d6 and take the highest of the Trait die or Wild die.

d8 trait roll with wild card die, hovered to show rolls

Here's an example that rolls a d8 and the d6 wild card die. You can type this script into the qChat tab and see the result there. If either die rolled a 1, the result will be in a red box. If a die aced it will be shown in a green box.

[[ {1d8!, 1d6!}kh1 ]]

{x,y}kh1 keeps the highest one of the two dice. Surrounding the roll with [[ shows only the result of the roll. Hover over the result to see a tool tip with the values of the dice.

This example prompts for the die type and modifier, then rolls with a d6 wild card die.

roll-wild-trait
Wild card trait roll is [[{d?{Die type|6}!, d6!}kh1 + ?{Modifier|0}]] to ?{Reason|do nothing}

?{Question|Default} prompts the user to enter a value. Surrounding the roll with [[ shows only the result of the roll. Hover over the result to see a tool tip with the values of the dice.

Damage Rolls

Damage rolls are made after a successful attack (fighting, throwing, shooting) roll, and the damage total gains an extra d6 if the attack roll was a raise. The easiest way to do this is to show the extra d6 roll and let the player add it.

Damage roll is [[1d6! + 1d8!]] and bonus damage is [[1d6!]].

These three scripts prompt for the strength die, weapon dice, modifiers and AP, and roll the optional d6 for the raise bonus. (If you hover over the raise result, the popup text will explain when to apply it.)

melee-damage (strength die + weapon die, applies to melee weapons)
The melee damage is [[?{Strength die|d6, d6!|d4, d4!|d8, d8!|d10, d10!|d12, d12!|d12+1, d12!+1|d12+2, d12!+2} + ?{Weapon die|d6|d4|d8|d10|d12}! + ?{Modifier|0}]] AP(?{AP|0}). Raise bonus: [[1d6! Add raise bonus if the fighting roll got a raise.]]

thrown-damage (strength die + weapon die, applies to melee weapons)
The range damage is [[?{Strength die|d6, d6!|d4, d4!|d8, d8!|d10, d10!|d12, d12!|d12+1, d12!+1|d12+2, d12!+2} + ?{Weapon die|d6|d4|d8|d10|d12}! ]] AP(?{AP|0}). Raise bonus: [[1d6! Add raise bonus if the shooting or throwing roll got a raise.]]

range-damage (weapon dice, applies to bows and guns)
The range damage is [[?{Number of dice|2}?{Weapon die|d6|d4|d8|d10|d12}! + ?{Modifier|0}]] AP(?{AP|0}). Raise bonus: [[1d6! Add raise bonus if the shooting roll got a raise.]]

Calculating Raises and Wounds

In Savage Worlds, a roll is a success if it is at least the Target Number (TN, typically 4), and every 4 points above the TN is called a Raise.

This script computes the number of raises on a 2d6 damage roll against a toughness of 5. The result is the number of raises or a negative number if there was no success.


/r floor({2d6!!-5}/4)
Syntax: floor(x) rounds down.

This calc-raises macro prompts for the roll total and target number, then returns the number of raises. A negative result is a failure, a 0 is a success.

calc-raises
calc raises: [[ floor( (?{Roll value} - ?{Target number|4} ) /4) ]] raise(s) (0 is success)

In Savage Worlds, some weapons have an armor piercing (AP) value which allows them to bypass up to that many points of armor. (A Glock handgun does 2d6 AP2 damage.) Character's toughness is noted as total toughness followed by armor in parenthesis, like 11 (1). The handgun would ignore 1 point of toughness, so the target has a net toughness of 10.

This calc-damage macro prompts for damage, toughness, armor, and armor piercing damage to calculate net damage to the target. Armor piercing damage bypasses that up to that many points of armor, so the macro subtracts the smallest of the AP damage or armor from the toughness.

calc-damage
Net damage= [[ ?{Damage|7} - (?{Toughness|5} - {?{Armor|3}, ?{AP Damage|2}}kl1) ]]
Syntax: {x,y}kl1 returns the lower of the two values.

This calc-wounds macro prompts for net damage and the shaken status of the target. In Savage Worlds the target gains 1 wound per raise in net damage, or if there are no raises, 1 wound if the target is shaken.

calc-wounds
Wounds = raises. If no raises, +1 wound if shaken. Wounds = [[ ?{Shaken|No,floor( ?{Net damage&#125; /4)|Yes,{floor( ?{Net damage&#125; /4)&#44;1&#125;kh1}} ]]



For ease of reading, here's the same macro without substitutions: Wounds = raises. If no raises, +1 wound if shaken. Wounds = [[ ?{Shaken|No,floor( ?{Net damage} /4)|Yes,{floor( ?{Net damage} /4),1}kh1}} ]]

Area Effect and Group Macros

When we blast a group of Extras, we use this macro. The faster way to do it would be to roll two Agility dice and take the best result and apply it to the whole group. But thanks to macros, we can check each one individually very quickly.


area-effect-damage prompts for the damage roll and four targets, then makes the rolls for them and calculates raises. By NeilGiraffeTyson
?{Number of dice|2|3|4} ?{Dice size|4|6|8|10|12} &{template:info} {{name=Area Effect Damage}} {{Note=Each target rolls **?{Number of dice}d?{Dice size}** damage and Agility -2 to avoid. If prone, damage is -4.}} {{``@{target|Token 1|token_name}`` =[[?{Number of dice}d?{Dice size}!]] Damage; Evade [[@{target|Token 1|agility_rank}-2]] }}{{@{target|Token 1|token_name} gets wounds at=[[(@{target|Token 1|toughnesscur}-?{AP|0})]], [[(@{target|Token 1|toughnesscur}-?{AP|0})+4]], [[(@{target|Token 1|toughnesscur}-?{AP|0})+8]], [[(@{target|Token 1|toughnesscur}-?{AP|0})+12]] }} {{``@{target|Token 2|token_name}`` =[[?{Number of dice}d?{Dice size}!]] Damage; Evade [[@{target|Token 2|agility_rank}-2]] }}{{@{target|Token 2|token_name} gets wounds at=[[(@{target|Token 2|toughnesscur}-?{AP|0})]], [[(@{target|Token 2|toughnesscur}-?{AP|0})+4]], [[(@{target|Token 2|toughnesscur}-?{AP|0})+8]], [[(@{target|Token 2|toughnesscur}-?{AP|0})+12]] }} {{``@{target|Token 3|token_name}`` =[[?{Number of dice}d?{Dice size}!]] Damage; Evade [[@{target|Token 3|agility_rank}-2]] }}{{@{target|Token 3|token_name} gets wounds at=[[(@{target|Token 3|toughnesscur}-?{AP|0})]], [[(@{target|Token 3|toughnesscur}-?{AP|0})+4]], [[(@{target|Token 3|toughnesscur}-?{AP|0})+8]], [[(@{target|Token 3|toughnesscur}-?{AP|0})+12]] }} {{``@{target|Token 4|token_name}`` =[[?{Number of dice}d?{Dice size}!]] Damage; Evade [[@{target|Token 4|agility_rank}-2]] }}{{@{target|Token 4|token_name} gets wounds at=[[(@{target|Token 4|toughnesscur}-?{AP|0})]], [[(@{target|Token 4|toughnesscur}-?{AP|0})+4]], [[(@{target|Token 4|toughnesscur}-?{AP|0})+8]], [[(@{target|Token 4|toughnesscur}-?{AP|0})+12]] }} {{*More*=[Roll Again](~player-macros|area-damage)}}


Other Macro Resources

Here are some older threads on the forum that explain more about setting up Macros in Roll20 for Savage Worlds. They may or may not work with the Savage Worlds (Tabbed) sheet:


Alternative Methods

This guide has been written around a common and proven way to use Roll20 to play Savage Worlds. This section documents other ways of accomplishing the same goals.

Bennies

If you are using a setting with special Bennies, you might have to create extra cards. For example, Deadlands: Reloaded uses a Benny pool made up of Poker Chips called Fate Chips. There are 20 white chips, 10 red chips and 5 blue chips in the Fate Chip pool.

Create your deck as before, upload an image of a poker chip as the background, and red, white, and blue chip images. Then create 20 new cards called White Chip using the white chip image (pull from the Art tab, don't upload again). Repeat for the red and blue chips, making 10 and 5 of each. In Deck Options make sure that "cards in deck are infinite" is NOT checked.

Extra cool: If your Bennies look like coins or tokens, create several with different rotations and offsets, so they look more like coins on the table.

[These Pirate coin Bennies are free to use.]

Tokens: Keeping Stats in Token Bars

Key stats--- Place key stats into the token and use token macros for attacks by the creature. This can be relatively fast, because you typically only need Parry, Toughness, Spirit, Fighting and Damage. Tokens can hold 3–6 stats.

The key stats method stores parry and toughness in the token. You can also store spirit, and the primary attack to-hit and damage values in the token. The right balance depends on how much time you're willing to take to enter the information into the token.

Think of the tokens as art plus seven data fields, and use those fields to make combat easier without having to create a full character sheet. Each token has a name field, and three bars each with a value and a maximum value. You can fill just the two values for parry and toughness, or fill in up to all seven, as suits you.

Wounds are not stored for Extras, but for wild cards, extras that can sustain wounds, the wounds can be indicated with a red status dot and the wound value.

Field Field Value Example
Name Name or URL to image file http://example.com/fjdi/soldier.png
Bar 1 parry 5
Bar 1 max attack1-hit The soldier swings his sword: [[1d6!]].
Bar 2 toughness 5
Bar 2 max armor 0
Bar 3 spirit d6
Bar 3 max attack1-damage The soldier's cutlass slashes: [[2d6!]] damage.

You can hide the bars so they don't obscure the token and map. If the value or max is blank, that bar will not be shown. If both values for the bar have a value, it will be visible to the GM. On the Basic tab make sure the controlling player is blank. On the Advanced tab, you can make bars invisible to the controlling player by deselecting Edit, and invisible to all players by deselecting See.

With the Key Stats method you use four macros to complete the automation:

  • extra-stats: /desc [picture](@{target|Extra|token_name}?raw=1#.jpg) Parry @{target|Extra|bar1}, Toughness @{target|Extra|bar2(@{target|Extra|bar2|max})
  • extra-attack: @{selected|bar1|max}. [roll damage](~extra-damage)
  • extra-damage: @{selected|bar3|max}
  • extra-unshake: They attempt to unshake: [[@{selected|bar3}!]].





Area of Effect options

Tips for better AoE template art

  • Create templates for different types: Fire, Water, Lightning, Swarms, etc.
  • Make parts inside the blast template transparent, like the space between insects, or an inward spiral for a tornado funnel.
  • Set them to be about 50–30% transparent (must be a PNG for this) so you'll be able to see tokens under them.
  • For templates that look good even when zoomed in, make the art twice as big as necessary.
  • You can use animated GIFs for templates.
  • It can slow things down to aim (and rotate) the cone token when it's placed on the map. That's because Roll20 rotates around the center instead of the tip of the cone. If you make the art for the token 210px x 630px, but on a transparent background that is 210px x 1260px, the burst will now rotate around the tip.


AoE Templates as card decks

You can also store the templates in card decks, one deck for each template size. Original discussion

All decks will look the same size while in the player's hand, so it's helpful to have backs that are labelled small, medium, and large.

Advantages:

  • Players can have cards for just the types (fire, lightning) that are appropriate
  • Players don't have to access the Journal tab to get the templates

Disadvantages:

  • It takes up more screen space by their handle.
  • Players have to pick up their template to return cards to their hand.
  • While the template is covering another player's token, that player can't click on their token to access macros or other features.

Create the card decks:

  1. Create four decks (in the lCollection-tab): small blast, medium blast, large blast, burst.
  2. In each deck set the size correctly.
  3. For all decks, select Cards in deck are infinite, Allow choosing cards to GM + Players, Played facing = Face Up, and Considered = Drawings.
  4. Drag the deck window to the left, click "add card", that window will open a little to the right. Click the P Art Library tab and drag over the appropriate template. Repeat for each template and deck.

At the start of the session, show the decks, let the players take the cards that match their spells and trappings, then hide the decks. Players will put the card/AoE template on the table when they need it. After use, the player can right-click and select Take Card to put it back in their hand.

AoE Templates as Multi-sided Tokens

You can make a rollable table with each "row" a different trapping, so when the player drags the character token onto the table they can change the token to show the fire/water or other trapping of their choice.

This makes the Journal AoE folder less cluttered, but it can slow down players when they have to right-click to select the trapping.

Fear Table Results Only

If you only want to see the results of a Fear Table roll, and not the entire Fear Table, you can implement the Fear table as five tables. Create tables named fear0, fear1, fear2, fear3, and fear4. Enter the weights from the +0 wt column into the fear0 table, the +1 wt column into the fear1 table, etc.

You can get the results for a fear roll by typing '[[1t[fear0]]]' in the chat box, or for fear penalty 1 type `[[1t[fear1]]]'.

You can use the t-fear macro to roll the correct table.


t-fear prompts for the fear penalty, then rolls on the appropriate fear table. By Mike deBoston
Fear table (pg124) d20 + ?{penalty|0|1|2|3|4}: [[ 1t[fear[[1d0+?{penalty}]]]]]]]


SWADE Fear Table
d20+0 +0 wt +1 wt +2 wt +3 wt +4 wt Effect
1-3 15 10 5 - - Adrenaline surge (Joker)
4-6 15 15 15 15 10 Target Distracted
7-9 15 15 15 15 15 Target Vulnerable
10-12 15 15 15 15 15 Target Shaken
13 5 5 5 5 5 Mark of Fear: Target Stunned, cosmetic alteration
14-15 10 10 10 10 10 Frightened: Target Hesitant for encounter, or Panicked
16-17 10 10 10 10 10 Panicked: Target runs away, Shaken
18-19 10 10 10 10 10 Target gains Minor Phobia Hindrance
20-21 5 10 10 10 10 Target gain Major Phobia Hindrance
22+ - - 5 10 15 Heart Stutters: Target rolls Vigor -2. Success=Stunned. Fail=Incapacitated, dies in 2d6 rounds, Healing -4 to save life but remains Incapacitated.