Note: You are not logged in.
Automatic Wild Magic Surge

by GEONE

FREE
4.75 Avg. rating

Forum Thread
Total Subscribers: 565


Description

Forge Page:
https://forge.fantasygrounds.com/shop/items/740/view

Description:
This D&D 5E extension allows you to easily roll a Wild Magic check when using a spell by clicking or dragging the "spell cast" button next to a spell on the actions tab of your character sheet.
It will only work for spells of 1st level or higher (customizable) and only when you have the Wild Magic Surge feature on your character sheet.

It will roll a d20 and if the result is a 1 then it will automatically roll on the Wild Magic Surge table (PHB required).

The functionality is totally customizable from in-game. By changing certain parts of the Wild Magic Surge feature's description on the abilities tab of your character sheet you can change what table it rolls on, what level spell triggers a check, what number or threshold needs to be rolled on the check, and what die or dice are rolled for the check.

Here is what can be customized in the feature's text (presented in usage statement syntax):

Code:
Once per turn, the DM can have you roll [a | an] (ROLL) immediately after you cast (a | an) [sorcerer | SCHOOL] (cantrip | spell of #[st|nd|rd|th] level) [or higher | or lower]. If you roll (a | an) # [or higher | or lower], roll on the (TABLE NAME) table to create a magical effect.
or, for a saving throw rather than a roll:
Code:
Once per turn, at the DM's discretion, you must make a DC # (ABILITY) saving throw immediately after you cast (a | an) [sorcerer | SCHOOL] (cantrip | spell of #[st|nd|rd|th] level) [or higher | or lower]. On a failure, roll on the (TABLE NAME) table to create a magical effect.
and for more complicated DC calculations:
Code:
Once per turn, at the DM's discretion, you must make (a | an) (ABILITY) saving throw immediately after you cast (a | an) [sorcerer | SCHOOL] (cantrip | spell of #[st|nd|rd|th] level) [or higher | or lower]. The DC [for this [save | saving throw]] equals # [+|-] [[twice | half] the spell's level | your (ABILITY) modifier]. On a failure, roll on the (TABLE NAME) table to create a magical effect.
"[ ]" are optional terms, "( )" are required terms, choices are separated by a pipe " | ".
"#" in this case represents any number.
"SCHOOL" can be up to 8 comma-separated schools of magic (i.e. "transmutation, illusion, or necromancy" or just "evocation").
"ROLL" can be up to 3 different dice or values added or subtracted from each other (i.e. "2d6+2-1d4").
"ABILITY" must be the full name of an ability score (i.e. "Dexterity").
"TABLE NAME" is the name of the table you wish to roll on upon successfully triggering a surge. The table name is case-sensitive and must be loaded by the client that is casting the spell. (i.e. "Scroll Mishap")

Here are some example customizations of the feature that are correctly parsed.
They can be prefaced however you'd like ("Once per turn, at the DM's discretion, you...", "Whenever you...", etc) and the order of the sentences don't matter:
... roll a d20 immediately after you cast an evocation spell of 1st level or higher. If you roll a 1, roll on the Wild Magic Surge table to create a magical effect.
... When you cast a cantrip, roll 7d8. If you roll a 50 or higher, roll on the Drunk Effect table to create a magical effect.
... roll a d6 after casting a spell of 9th level. If you roll a 3 or lower, roll on the Wizard Spells table to create a magical effect.
... roll 1d4+1d8+6 after casting an illusion or necromancy spell of 3rd level or lower. If you roll an 8, roll on the Teleport Mishap table to create a magical effect.
... must make a DC 15 Constitution saving throw after casting a spell of 1st level or higher. On a failure, roll on the Teleport Mishap table to create a magical effect.
... must make a Dexterity saving throw after casting a spell of 2nd level or higher. The DC equals 10 + half the spell's level. On a failure, roll on the Teleport Mishap table to create a magical effect.
---
As of version 1.4.0 you can also specify the spell's level as the roll trigger or save DC:
... If you roll the spell's level, roll on the Wild Magic Surge table to create a magical effect.
... If you roll the spell's level or lower, roll on the Wild Magic Surge table to create a magical effect.
... If you roll higher than the spell's level, roll on the Wild Magic Surge table to create a magical effect.
... The DC equals the spell's level.
... The DC equals twice the spell's level.
... The DC equals half the spell's level.
---
Here is a short video showcasing the feature:
https://i.imgur.com/DF6lCEl.mp4

Limitations:
This currently does not work for limited-use (checkbox) spells. It would be trivial to add this functionality, but it would require creating a copy of the entire power_counter.lua script just to add a single line of code to it, which would mean this extension would likely conflict with any future update to the 5E ruleset that changes the power_counter.lua script.

Compatibility:
This extension does not overwrite any base functionality, which means it should be future-proof and compatible with any other extension.

Changelog:
- Updated to v1.4.2
- Added support for Controlled Chaos feature.
- Updated to v1.4.1
- Fixed prof bonus not being applied to saves.
- Updated to v1.4.0
- Can now specify the spell's level as the wild magic surge roll's trigger.
- Updated to v1.3.4
- Feature name now only needs to start with the phrase "wild magic surge" and can have other text after it.
- Updated to v1.3.3
- Fixed issue causing first level spells to be considered cantrips. Added compatibility with Combat Automation extension.
- Updated to v1.3.2
- Added support for multiple Wild Magic Surge features on the same character.
- Updated to v1.3.1
- Fixed issue with ability modifier not being applied to Wild Magic Surge saving throw.
- Updated to v1.3
- Added ability to specify schools of magic to trigger Wild Magic Surge checks.
- Updated to v1.2.1
-Added support for 5E ruleset update 2023-02.
- Updated to v1.2
- Added support for saving throws in place of Wild Magic Surge checks.



UUID c3986bcc-18d2-11ed-8c52-0050562be458