Roll20 uses cookies to improve your experience on our site. Cookies enable you to enjoy certain features, social sharing functionality, and tailor message and display ads to your interests on our site and others. They also help us understand how our site is being used. By continuing to use our site, you consent to our use of cookies. Update your cookie preferences .
D&D 2024 has arrived! Pre-order the new core rulebooks now and get an exclusive pre-order bonus for free!
Create a free account
This post has been closed. You can still view previous posts, but you can't post any new replies.

Easy Savage Worlds Macros

I've seen some very basic Savage Worlds formulas, such as the simple (1d8! + 1d6!)k1 and some very complicated macros that reference character sheets. One thing I don't like about the emote macros is that I can't see what the actual dice came up as, which is something you often need in Savage Words (rolling a 1 on your Skill Die can have negative effects regardless of your Wild Die, for example). My goal with these macros was to have just a small handful of general macros that everyone uses. I narrowed this down to 6 macros for the players to have in their bar, and an additional 3 for the GM (or players with Extras in their control). I've been using this set of macros for a while, and just tonight polished them up to make them more user friendly. These are great if you're like me and don't like using the built-in Roll20 character sheets and want something that just works out of the box. I make it a very simple readout for my players- 0 is a Success, negatives are a Failure, and any positive number is how many Raises you got. I find this to be easier when counting wounds than having to subtract 1 every time. Just remember the rule that "0 is a Success" and you'll be good. Off track a bit, but a common misread rule in Savage Worlds is that if your target is already Shaken and you roll a raise, you still only do 1 wound.  Here are the 9 macros to make your life easier: Wild Card Trait Test:   /r floor({{1d?{Die Type |4}!!+1d6!!}k1+?{Modifier, include Wounds and Fatigue |0}-4}/4) This prompts the player for their die type, keeping it simple so they just have to type "6" if their skill is a d6. The field is pre-filled with a "4" to make this more apparent to players. Then it prompts them to fill out any modifiers and assumes a Target Number of 4. If the TN is 6, just apply -2 to the Modifier. I recently added the note to include Wounds and Fatigue because I often forget about those. Extra Trait Test:   /r floor({1d?{Die Type |4}!!+?{Modifier, include Wounds and Fatigue |0}-4}/4) This works just as above, but doesn't include the Wild Die. Earlier in my games, I didn't even have specific macros for Extras, I just looked at the rolls and re-calculated the outcome if the Wild Die was used. Wild Card Melee Attack:   /r floor({{1d?{Fighting die |4}!!+1d6!!}k1+?{Modifier |0}-?{Parry}}/4) Works just as the Trait Tests, but you have to input the enemy's Parry. The macro will error out if you don't enter a Parry value. Extra Melee Attack: /r floor({1d?{Fighting die |4}!!+?{Modifier |0}-?{Parry}}/4) As above, but without the Wild Die. Wild Card Ranged Attack:   /r floor({{1d?{Shooting Die type |4}!!+1d6!!}k1- ?{Range |Short, [[0]] |Medium, [[2]] |Long, [[4]]} +?{Modifier |0}-4}/4) This works as the others, but also prompts for what Range you're firing at to help keep your mental math down as much as possible. Extra Ranged Attack: /r floor({1d?{Shooting Die type |4}!!- ?{Range |Short, [[0]] |Medium, [[2]] |Long, [[4]]} +?{Modifier |0}-4}/4) As above, but without the Wild Die. Melee Damage:   /r floor({1d?{Strength die type |4}!!+1d?{Weapon die type |4}!!+ ?{Critical?| No, [[0]] |Yes,[[1d6!!]] } + ?{Damage Modifier |0}-?{Toughness}}/4) This is as simple as the other macros, and includes a drop-down for Critical damage. Beyond that, a simple Damage Modifier field is left open for any weapons such as katanas that have +2 or any modifiers from Wild Attack, or whatever else may adjust the damage dealt. Similarly, go ahead and adjust Toughness with any AP modifiers that may apply. Like Melee Attack , the macro will error out if you don't enter a Toughness value. Ranged Damage:   /r floor({?{Weapon Damage| 2d6-1, [[2d6!!-1]] |2d6, [[2d6!!]] |2d6+1, [[2d6!!+1]] |2d8, [[2d8!!]] |2d8+1, [[2d8!!+1]] |2d10, [[2d10!!]] |3d6, [[3d6!!]]} + ?{Critical?|No, [[0]] |Yes, [[1d6!!]]} +?{Modifiers |0}-?{Toughness}}/4) This one can vary a lot, so the above macro just has all the common damage dice found on ranged weapons. Another way of handling it is to fill it out with weapon calibers, which is what I've done in my game, which was necessary because I replaced the vanilla SW damage dice with the dice from Spycraft Modern Arms Guide. Use Melee Damage for thrown weapons. Shotgun Damage:  /r floor({?{Range |Short, [[3d6!!]] |Medium, [[2d6!!]] |Long, [[1d6!!]]}+ ?{Critical?|No, [[0]] |Yes, [[1d6!!]]}+?{Damage Modifiers |0}-?{Toughness}}/4) Shotguns needed their own macro because all 12g shotguns in SW deal 1-3d6 damage, ranging from 3d6 at short range to 1d6 at long range. And there you go- nine macros to throw into your Savage Worlds game that will cover every roll that you or your players need to make. You might find it best if you replace some of the default values with numbers your players use most often, such as changing " {1d?{Fighting die |4}!!"  to  " {1d?{Fighting die |8}!!" if most of your characters have a d8 in Fighting.
Forum Champion
Great! Thanks for sharing!
Andrew L. said: Another way of handling it is to fill it out with weapon calibers, which is what I've done in my game, which was necessary because I replaced the vanilla SW damage dice with the dice from Spycraft Modern Arms Guide. How has that worked out for you?  Firearms damage always felt too samey to me in Savage Worlds.
I haven't gotten to use it yet, I'm still putting my campaign together. I'll let you know when I've used it for a bit. On test roles, however, I've seen that I get a much wider range of damage with still close averages across all weapons. As a bit of a "gun nut" myself, the argument over weapon caliber is an old one, but has been just about debunked forensically. While I know that a 9mm round is going to be nearly indistinguishable from the damage of a .45 on a target, it's still important that the game have some trade-off for the rounds. Spycraft lists a 9mm as 1d10+1 and a .45 as 1d12, which gives them different damage ranges but nearly identical averages once accounting for Aces. I rolled 20 shots of each, and they both actually averaged at 7.4 damage. Then when getting into rifle rounds, you get a lot more bang for your buck, with 3d6 for a 7.62x31 and 4d4 for a 5.56. Those averaged out at 12.7 and 11.8 respectively, also making them very close but just different enough to count. Overall, the middle rounds are just slightly less damage than Savage Worlds, and the difference you'll notice most is on the outliers like .22s and .50 BMGs. I really recommend the Spycraft Modern Arms Guide if for nothing else an awesome arsenal of weaponry. The book covers weapon modifications and different ammo types as well, which is always fun. I still haven't read everything it has to offer, but it's pretty in-dept, including every imaginable weapon from a nailgun to an 81mm napalm mortar round.
I run Savage Saturday Nights on Google+. As it is a teaching game, I strive to emulate the same experience for the players as they would receive at the table. So, I have a unique way of structuring Savage Worlds macros. Players must click on their Roll20 token to access the "standard die macros". First, all the dice macros are under the Abilities tab of the character sheet. They also show as Token macros. The Attributes tab includes an entry for Wounds, Fatigue, Encumbrance, Parry, Toughness, Armor, Strength, and Vigor. This is important because the macros reference them.  I create an macro entry labeled d4, d6, d8, d10, d12 with the following macro text: @{selected|token_name} makes a Trait test... d4: /r {1d4!, d6!}k1 [Trait | Wild Die] -(@{Wounds}) [Wounds] -(@{Fatigue}) [Fatigue] -(@{Encumbrance}) [Enc] ?{Modifier|+0} [Modifier] d6: /r {1d6!, d6!}k1 [Trait | Wild Die] -(@{Wounds}) [Wounds] -(@{Fatigue}) [Fatigue] -(@{Encumbrance}) [Enc] ?{Modifier|+0} [Modifier] d8: /r {1d8!, d6!}k1 [Trait | Wild Die] -(@{Wounds}) [Wounds] -(@{Fatigue}) [Fatigue] -(@{Encumbrance}) [Enc] ?{Modifier|+0} [Modifier] d10: /r {1d10!, d6!}k1 [Trait | Wild Die] -(@{Wounds}) [Wounds] -(@{Fatigue}) [Fatigue] -(@{Encumbrance}) [Enc] ?{Modifier|+0} [Modifier] d12: /r {1d12!, d6!}k1 [Trait | Wild Die] -(@{Wounds}) [Wounds] -(@{Fatigue}) [Fatigue] -(@{Encumbrance}) [Enc] ?{Modifier|+0} [Modifier] I also include a Misc, Run, and Whisper macro. Misc: @{selected|token_name} makes misc exploding die roll. /r ?{How Many Dice?|1}?{Die Type|d?}! ?{Modifier|+0} Run: @{selected|token_name} Beats feet. /r ?{Pace|0}+?{Run die|d?} [Pace | Run Die] -(@{Wounds}) [Wounds] -(@{Fatigue}) [Fatigue] -(@{Encumbrance}) [Enc] ?{Modifier|+0} [Modifier] Whisper: /w @{target|token_name} ?{Message ?} Fighting is its own macro that requires the player to click on their token, then select a target, and input their Fighting skill die type. What's unique, is that is shows the result with the target's Parry. This means the player must compare their roll vs Parry to determine if they hit or not.   Fighting: @{selected|token_name} attacks @{target|token_name} /r {?{Fighting die|d?}!, 1d6!}k1 [Fighting | Wild Die] -(@{Wounds}) [Wounds] -(@{Fatigue}) [Fatigue] -(@{Encumbrance}) [Enc] ?{Modifier|+0} [Modifier] versus Parry [[@{target|Parry}]] I apply the same philosophy to Melee Damage with a Melee-Dmg macro:  Melee-Dmg: @{selected|token_name} strikes!!! /r ?{Strength die|d?}! [Strength] +?{How Many Weapon Dice?|0}?{Weapon die type|d?}! [Damage] [Weapon] ?{Modifier|+0} [Mod] +?{Attack Roll Raise|0}d6! ?{AP|0} [AP] versus Toughness [[@{target|toughness}+@{target|armor}]] ([[@{armor}]]) Ranged damage in Savage Worlds is typically 2d6!. The Ranged-Dmg macro allows the player to enter different die with a similar outcome to Fighting, as follows. Ranged-Dmg: @{selected|token_name}'s weapon strikes! /r ?{How Many Weapon Dice?|1}?{Weapon die|d?}! [Damage] ?{Modifier|+0} [Mod] +?{Attack Roll Raise|0}d6! ?{AP|0} [AP] versus Toughness [[@{target|toughness}+@{target|armor}]] ([[@{armor}]]) One more distinction. On the Token, set the Red Bar to Wounds, Blue to Fatigue, and Yellow to Parry. This automatically adds Wound modifiers and Fatigue penalties to any macro roll.  My two-cents. Hope its helpful. Jerrod 'Savage Daddy' Gunning