by Kelrugem
Description
For bug reports: https://www.fantasygrounds.com/forums/showthread.php?50895-Kelrugem-s-extensions or https://www.fantasygrounds.com/forums/showthread.php?50143-Save-overlay-extension-(idea-from-Ken-L)
How to activate: This is an extension for 3.5E/PF1; download it from the forge using the update button in the Fantasy Grounds Unity launcher after subscribing to this item using this website; afterwards, before you launch your campaign, turn on Feature: Extended automation and overlays in the extension list of your campaign, for alternative overlays turn on Feature: Extended automation and alternative overlays.
For fellow developers: My GitHub profile is at https://github.com/Kelrugem; the extensions install into the /extensions directory, and their file names are Full OverlayPackage.ext and Feature: Extended automation and alternative overlays.
Especially for long-term users: If you are interested into the most recent new features of this extension, then see the first posts here extension-thread; I will use the first posts there to list latest major updates such that you do not have to skim the following description to make out the new features :)
This extension adds overlays for wounds and saves (see below), and there are different versions for these overlays:
1. There are two versions, one with alternative icons (by our community member tahl_liadon, thanks!) and one with the original icons.
2. For versions for the homebrew StrainInjury hitpoints system, look at StrainInjury plus extended automation and overlays and StrainInjury plus extended automation and alternative overlays.
Also containing contributions of mr900rr, darrenan, phixation, tahl_liadon, bmos, DCrumb, Cristmo, SoxMax, Asgurgolas, Croddwyn, Chaiwalla, Rabidpaladin, MostTornBrain, Zarestia, rogervinc, rhagelstrom, Superteddy57, mattekure and Moon Wizard; thanks for your help :)
This
is a somewhat big extension, adding a lot of features, so, be aware of
possible incompatibilities with other extensions. Furthermore, at the
bottom of this page you will find a list of examples of effects :) In
order to use this extension it is recommended to know the basics of
effects in Fantasy Grounds. For general information about effects see e.g. here: 3.5e/PF1 effects' wiki.
Compatibility with the effect builder by SoxMax
But first of all, thanks to Soxmax: If you struggle with effects' syntax and still want to use the effects coming with this extension, then I am happy to announce that this extension is compatible with the effect builder by SoxMax. The effect builder is an effect generator/wizard which helps you building effects for automation without the need to fully know the needed syntax, and most of the effects of this extension will also show up as options in the effect builder helping you making use of the effects contained herein.
New Spell&Ability Use window:
(click the magnifying glass of a cast action to open this window)
- Added a second line in the SAVE section. This allows you to set another ability than the one coming from the spell class; the default is Base which just means that it will take the native one of the corresponding spellclass. The Stat: lists the contribution of the ability to the save DC.
- Added School (abjuration, evocation, ...) and Type (spell, spelllike, none) cycle buttons and the extra custom string box Other properties and tags. These are for adjusting the tags needed for the automation of IFTAG, see below in the effects' table. The distinguished tags in Other properties and tags
can be delimited by a space, comma or semicolon. There is also a tag
parser which will check certain entries of the spell/action for possible
tags, like spell level and school, and will automaticall add these
tags; however, not all possible tags can be found of course such that
some need to be added manually like poison and sleep.
With that there are new possible effect examples:
IFTAG: spell; SAVE: 2 racial (+2 racial bonus against spells)
IFTAG: spelllike; SAVE: 2 racial (+2 racial bonus against spell-like effects, remember to not use the - in spell-like)
IFTAG: poison; SAVE: 10 insight (+10 insight bonus on saves against poisons, poisons are not automatically parsed in the tag lines. You have to add them on their own such that FG will know which action corresponds to a poison)
IFTAG: spell; IFTAG: evocation; SIMMUNE (immunity versus spells of the school evocation)
IFTAG: spell, illusion; DC: 3 enhancement (+3 enhancement bonus to the difficulty class of spells and illusions in general, so, also spell-like illusions would be affected by that or anything else with the tag illusion, not only illusion spells. The comma between tags is like a logical (inclusive) OR)
IFTAG: spell, spelllike, poison; SAVE: 2 racial (+2 racial bonus against spells, spelllike abilities and poisons as for dwarves)
Note about tag formatting: Do not use "magic missile" as one tag, this will be read as two tags, "magic" and "missile", rather write e.g. "magicmissile" and do not use special signs like -. Therefore spelllike, not spell-like. mindaffecting, not mind-affecting. languagedependent, not language-dependent. The parser of FG may not like that :)
If I recall correctly, tags are also case-sensitive. - The cycle button in Reset of Uses can be used to define whether the uses of the corresponding spell/action resets after a long or short rest or never.
Automatic application of the effect "flat-footed" on combat start (originally by mr900rr, thanks :) ):
There is a new setting in the campaign options (in the category Extended Automation by Kel at the very bottom):
Its value is off as default. If turned on and if the round tracker in the CT is at 0, then every combatant in the CT will get automatically the effect flatfooted after rolling initiative (every option for rolling iniative taken into account); the effect will have suitable durations such that it expires when the actor has its first turn (except maybe the very first one when that actor is already the active combatant in the CT, so, make sure that there is no active actor before the combat starts (by e.g. clearing the initiative first and so on)).
Automation of Blind-Fight and (Improved) Uncanny Dodge:
Thanks to Bmos: There was a separate extension by Bmos catering for the advantage on melee miss chance rolls, if having the blind-fight feat. I incorporated this and expanded it to the full automation of Blind-Fight and Uncanny Dodge. How it works: Add Blind-Fight to the feat list of the (N)PC (do not forget the hyphen), and Uncanny Dodge (or Improved Uncanny Dodge) to the class abilities for PCs and to special qualities for NPCs. Blind-Fight gives advantage on melee miss chance rolls and negates the bonuses of melee attacks made by invisible creatures (so, no +2 and no combat advantage for the attacker). Uncanny Dodge negates own flat-footed effects and the flat-footed modifier button, and it negates the attacker's combat advantage, if the attacker is invisible or has pressed the flat-footed modifier button
Furthermore, (Improved) Uncanny Dodge negates the automatic apply of flat-footed (if turned on in the options; originally by mr900rr, see above; thanks :) ).
New modifier buttons:
There are several new modifier buttons: Advantage and Disadvantage ones in the category "General". These give advantage and disadvantage, respectively, to the next roll, regardless of any (dis)advantage effects in the CT.
The third new modifier button is Accuracy in the "Damage" category. This is similar to the opportunity button but with respect to damage rolls. The DMG(S) effects now allow a third descriptor, accuracy, and pressing that modifier button or the Ctrl key will activate such damage effects. For example, use DMG: d6 precision, accuracy, and let your rogue press Ctrl or the accuracy modifier button in order to activate such effects.
Additionally, there is also a Combat Adv. (Combat Advantage) modifier button in the "Attack"
category. This negates Dex and dodge bonuses to the target's AC and
negates dodge bonuses to reflex saves if one rolls the save manually
from the sheet. So, this button is similar to the Flat-Footed button, however it won't get negated by Uncanny Dodge (see above).
Many new effects:
If certain native effects like HEAL
are listed here, then this is due to that these are extended in some
sense; the following tables follow the style from the wiki, 3.5e/PF1 effects' wiki.
Conditions
Condition | Notes |
ghost touch | Adds ghost touch to attacks, for 3.5e; use it as damage type in PF1 |
ethereal | Like invisible, but negating blind-fight; also available in the effects' window. Useful for spells like blink. |
keladvantage* | Applies advantage to roll |
keldisadvantage* | Applies disadvantage to roll |
nodex | This
condition can be used in (N)IF(T) statements to check whether one has
lost their Dex modifier to AC: When the (opposing) actor has an effect
which leads to a loss of Dex mod to AC then this condition will return
true. Hence, one can e.g. code sneak attack with IFT: nodex; DMG: 3d6
precision. The only exception is CA, that can’t be measured and has
still to be treated manually or with other effects (e.g. having an CA
effect Will not work as a single condition. |
noblood | Prevents wound overlays and blood trails; see below. |
*
These effects are still in some sort of test mode, they will certainly
not work correctly for damage rolls when damage types are important (if
they’re not, then feel free to use that effect with damage). At the
moment this effect will affect every roll, whatever it sees first, thus,
combine it with ”Expire on next roll” and apply it just before the roll
which should be affected to avoid that this effect affects other
things, too :) See below for advantage effects just for certain actions
Modifiers
Modifier | Value | Descriptors | Notes |
Damage | |||
DMG | (D) | [bonus], [range], accuracy, [damage type]* | (T), damage rolls for weapons |
DMGS | (D) | [bonus], [range], accuracy, [damage type]* | (T), damage rolls for spells |
TDMG | (D) | [bonus], [range], [damage type]* | (T), automatic damage roll against incoming attacks like in fire shield. Use range descriptor to restrict the damage only against incoming melee/ranged attacks |
FORTIF | (N) | [damage type], all | (T), fortification with percentage N against a specific damage type |
VSFORTIF | (N) | - | (T), lowers all fortification effects of the opposed actor by the number N |
HRESIST | (N) | [damage type], all | (T), half resistance to damage type |
VULN | (N) | [damage type], all | (T), vulnerability to damage type |
REVERT | (-) | [damage type], all | (T), switches damage to heal and heal to damage; use REVERT: revheal (or REVERT: all) to revert heals |
Attack | |||
KEEN | (-) | [range]*, opportunity | (T), doubles critical threat (originally by darrenan, thanks :) ) |
VCONC | (N) | [range]*, opportunity | (T), concealment with percentage N |
TVCONC | (N) | [range]*, opportunity | (T), target treated as having the corresponding VCONC |
ACCC | (N) | [bonus], [range], opportunity | (T), armor class defense against critical confirmation only. Stacking rules with AC effects and data from sheet are with respect to bonus type stacking, e.g. ACCC: 2 deflection would not stack with AC: 1 deflection |
ADVATK | (-) | [range]*, opportunity | (T), advantage on attack rolls |
DISATK | (-) | [range]*, opportunity | (T), disadvantage on attack rolls |
GRANTADVATK | (-) | [range]*, opportunity | (T), grants advantage on attack rolls made against effects' carrier |
GRANTDISATK | (-) | [range]*, opportunity | (T), grants disadvantage on attack rolls made against effects' carrier |
Spell | |||
CL | (D) | [bonus] | Caster level; dice evaluated as random table; does not affect concentration checks (important for PF1), use COC additionally then. Does not work well with expiration on next action or roll or single |
COC | (D) | [bonus] | Concentration check, PF1 only; use SKILL for 3.5e |
HEAL | (D) | - | (T), healing rolls |
SR | (N) | [bonus] | (T), spell resistance |
DC | (N) | [bonus] | Difficulty class |
SIMMUNE | (-) | - | (T), immunity against all spells and actions; combine with IFTAG when you want to restrict it to specific actions/spells |
ADVSAV | (-) | [save] | (T), advantage on saving throws |
DISSAV | (-) | [save] | (T), disadvantage on saving throws |
Skill | |||
ADVSKILL | (-) | [skill], [ability] | Advantage on skill rolls |
DISSKILL | (-) | [skill], [ability] | Disadvantage on skill rolls |
Initiative | |||
ADVINIT | (-) | - | Advantage on initiative rolls |
DISINIT | (-) | - | Disadvantage on intiative rolls |
(N) = Only numbers supported for value attribute
(-) = Neither number nor dice supported for value attribute
(T) = Effects can be targeted to only apply to modifiers against certain opponents. We also say that these are targetable effects, and once they are targeted we call these targeted effects.
[ability] = strength, constitution, dexterity, intelligence, wisdom, charisma
[bonus]
= alchemical, armor, circumstance, competence, deflection, dodge,
enhancement, insight, luck, morale, natural, profane, racial,
resistance, sacred, shield, size; there are also new bonus types to
handle stuff like barkskin which is an enhancement bonus to natural
armor (and thus should stack with natural armor bonus):
- naturalsize
- armorenhancement
- shieldenhancement
- naturalenhancement
opportunity and accuracy: These restrict the effect just to atttacks of opportunity and accuracy damage rolls (see above), respectively.
[damage type] = acid, cold,
electricity, fire, sonic, force, negative, positive, adamantine,
bludgeoning, cold iron, epic, magic, piercing, silver, slashing,
chaotic, evil, good, lawful, nonlethal, spell, critical, precision. There are also new damage types within this extension:
- ghost touch (for PF1; use effect in 3.5e)
- bleed (special, overcomes DR)
- injury (special, for the StrainInjury variant of this extension to designate damage as injury)
- bypass (special, of phixation (thanks! :) ), overcomes IMMUNE, DR, RESIST, HRESIST)
- drbypass (special, overcomes DR)
- immunebypass (special, overcomes IMMUNE)
- resistbypass (special, overcomes RESIST, HRESIST)
- resisthalved (special, halves all related resistances of the corresponding damage die; by Rabidpaladin, thanks :) )
- vorpal (special, negates immunity against critical damage)
[skill] = any skill name
* = Multiple entries of this descriptor type allowed.
A note about REVERT with respect to heals: It won't automatically
cater for crits, and also not for injury damage if a failed save
happened (for StrainInjury version of this extension); these have to be handled manually right
now.
Reverted heals count as damage rolls having the damage types positive and spell.
REVERT regarding damage rolls: I found it the most natural that REVERT is checked for after all damage effects affecting damage rolls are checked. Therefore, effects like IMMUNE and HRESIST lower the incoming damage roll and then the damage roll becomes a heal.
Special Components
IFTAG and NIFTAG can be combined with all effects affecting spells and actions.
Special Tag | Notes |
IFTAG: [tags of actions and spells]* | Ignores
the remainder of the effect components within the effect label, unless
the action/spell, which the source or opposing actor uses, has the
specified tags. Several tags separated by a comma are to be read as an
inclusive OR. |
NIFTAG: [tags of actions and spells]* | Ignores
the remainder of the effect components within the effect label, unless
the action/spell, which the source or opposing actor uses, has not the
specified tags. Several tags separated by a comma are to be read as an
inclusive OR. |
NIF: [condition OR conditional operator] | Ignores the remainder of the effect components within the effect label, unless the source actor has not the specified condition. |
NIFT: [condition OR conditional operator] | Ignores
the remainder of the effect components within the effect label, unless
the opposing actor has not the specified condition. |
ROLLON: [same as for /rollon] | Rolls on the table at the beginning of turn, formatting is as for the macro /rollon. When the name starts with a separated number then do not use a 0 as the first digit (but something like 0A would work, but not 01, 0 A etc.) |
* = Multiple entries of this descriptor type allowed.
(N)PC Specific Note
Tag | Notes |
STR, DEX, CON, INT, WIS, CHA | Ability bonus, now respects changes through effects, too |
NdM + K | M positive or ”F”, N non-zero, K arbitrary number; die evaluated as random table when applied from actions tab |
d X {other tag} | X = 1, . . . , 9 (if none, it will assume X = 1). The other tag will get divided by X. For example ATK: [d4STR]; additional attack mod given by the strength mod divided by 4 |
{other tag} X | X any non-negative total number (also more than one digit possible). The other tag cannot be bigger than X then; this operation is after all multiplications but before a sign change |
^ {other tags} | Put
at the very beginning (or before or directly after the minus sign, if
at all); will force a rounding up instead of down. This happens before a
sign change is applies, that is, the absolute value will be rounded up.
E.g. [^-HCL] halves the CL, rounded up, then makes it negative. |
One can also combine numbers with the letter tags like in [H3STR]; first the letter, then the number, as for the new d tag from above.
Extended overlays for saves and wounds/death (original idea by Ken L, thanks :) ):
There are also other two settings in the campaign options (in the category Extended Automation by Kel at the very bottom) for save and failure overlays, defaulting to off. Turning these settings on will activate an automatic application of several overlays, see the attached screenshot, too. The wound/death overlays are self-explanatory, I think; the save overlays are three different ones, especially three colours showing a certain result of a save roll:
Green means that this target is not affected at all by that spell.
(Either due to SIMMUNE and/or due to a
miss of the attack and/or due to a failed CLC and/or due to successful
save when there is no half damage on successful saves.)
Red means that that target is completely affected by the spell.
(Due to missing SIMMUNE and due to a successful attack and due to a successful CLC and due to a failed save.)
Yellow means that the target gets halved damage.
(There was no SIMMUNE and a successful attack and a successful CLC and a successful save while there is half damage on a successful save.)
The save overlays will be erased when the turn or round changes, but you also see new buttons in the toolbar. With these buttons you can erase either the wound or save overlays. By erasing the save overlays you can start a new spell action with the same target and still profit by the overlays before the overlays got automatically erased by a change of the round/actor.
Note: You can also use the clear overlay buttons every time the overlays may not be applied, this should reset their behaviour. (It can happen after a reload of a campaign that overlay information is saved (as expected) but not shown after the reload; this can lead to that overlays are not rendered at all until something resets their behaviour like the buttons or a change of round/actor (latter with respect to save overlays)).Blood trails:
There is an extra setting in the campaign options (in the category Extended Automation by Kel at the very bottom) for setting blood trails. This means that you will see blood drops on the map below a token which got damaged. This blood is set in the campaign settings - Death markers. That is, the blood can be customized and set for specific NPC types, similarly to the native death markers.
In order to customize the blood trail: The corresponding death marker asset set's name has to start with Blood -, do not forget the hyphen. If the corresponding death marker does not start like that, the blood trail will use the default death marker defined at the very top of the death markers window; if this set's name does also not start with Blood -, then it will use the Blood - Red asset set as a standard set. Thus, in order to avoid problems, do no delete the red blood asset set.
The
mentioned setting to turn this feature on also provides a blood filter.
The percentage is the probability of a blood trail after damage is
dealt. If you use the StrainInjury variant of this extension, then there
is an extra setting for applying blood trails only after injury damage
is dealt.
The blood scales with the damage output compared to the max HP, in relation to the token image size; it cannot be bigger than the token image size itself. It is also randomly placed under the damaged token, leading to some aesthetic variety avoiding a "grid-like" bloodied battle field.
The blood can be "cleaned" by either erasing the death marker image layer or by clicking the Clear Death Marker button in the toolbar.
Additional CL approach:
All the cycle buttons with CL, even CL and odd CL (or more) now also have CL/3 which simply uses CL/3 (rounded down and minimum 1) as a number.
Healing of nonlethal/strain damage:
Additionally to the typical and the temporary heal option, the cycle options of the heal button now also offer healing options for nonlethal or strain damage (without StrainInjury or with StrainInjury, respectively). Thanks to Bmos :)Extended "Remove on Miss":
Depending on your "Remove on Miss" choice in the options targets are now also removed on misses due to miss chances like concealment, incorporeal and so on.
Attack of opportunity (AoO) tracker:
Added some AoO tracker in the CT, see the attached image. I added the AoO tracker in the defensive section of each CT entry due to space limits in the offensive section.
Both boxes can be adjusted manually.
The
first box is the number of already made AoOs, thence, it is 0 by
default and it resets always to 0 at the end of one's turn. If you make
an
opportunity attack (by pressing Shift while attacking or pressing the
opportunity button in the modifier window) this number is automatically
increased by 1.
The right box is the maximum number of allowed AoO per round and is by default of course 1. If you add an NPC to the CT (and only then) which has the feat combat reflexes, then this number is adjusted correspondingly. For PCs you have to do this manually.
Thanks to Bmos: Once the maximum number of AoO is reached or exceeded, you will see a corresponding notification in the chat which is hidden for the GM if they chose to hide their dice rolls.
Note: The maximum number does not restrict the number of the left box or your ability to make AoOs in order to avoid that this automation comes into your way.
A bit more logic in general:
- (Improved) evasion will now be ignored when the PC or NPC has one of the following conditions as an effect: helpless, paralyzed, sleeping, unconscious, petrified, bound.
- invisible, CA and GRANTCA now also work in combination with IFT (and so also with NIFT). This was not possible before, the (T) in the wiki did not imply that (so, an exception in the wiki), it was only targetable. This means that you can combine them with IFT as in IFT: CUSTOM(test); invisible. (IFT: invisible; [...] etc. should have been possible already before).
- (N)IF(T): [condition] effects etc. were returning true in the native code, if there was an effect of precisely that searched condition which was on "Skip". Now this behaviour is fixed, and "Skip" condition effects will be ignored like turned-off effects (but they will not automatically turn to on "when they would have been triggered" as usual, simply due to the the ambiguity of when such conditions would be triggered, especially outside of combat), but they do not do this even in the native code.
- Improving IF logic. The base ruleset does currently not account target information, effects like IF: invisible won't return true if invisible is a targeted effect. Now such an effect would return true.
- DR now has the correct stacking rules and reduced damage is accounted to the correct DR source effect such that following rolls are treated correctly like criticals
- VULN: (N) all as effect added; despite the wiki page, vulnerability versus everything was not possible. (Beware: VULN with a positive number always overwrites VULN without a number, that was always the case in FG)
- VULN now respects all suitable damage dice in one total damage and is not applied just once.
- There were small rounding problems in VULN and incorporeal (if pathfinder for the latter) in the base code. Fixed that to a correct rounding w.r.t. fixed damage types. E.g. vulnerability versus fire gives now a total damage of 3 and not 2 if the total fire damage is 2 = 1 fire + 1 fire (that is, if there were two different dice for that fire damage which were not collected by FG due to critical damage effects etc.). While for example VULN vs cold and fire still gives a total damage of 2 for a damage result 2 = 1 fire + 1 cold since then the vulnerabilities are applied separately (I guess this is how one should round the vulnerabilities).
- In the base code, RESIST against a damage type sometimes overwrote RESIST: (N) all which also overwrote RESIST: (N) regardless of the numbers. In this extension they are (hopefully) respected correctly.
- RESIST and VULN are stacking correctly now, so they are not applied too often as in the base code, i.e. just the biggest available modifier which is allowed is taken.
- Effects with damage types do now not just look at the first damage type, this just maters for DMG and DMGS effects. For example, in the base ruleset having the effect DMG: d6 fire; DMG: d10 fire, critical would originally lead to that the critical one will be merged with the non-crit one to fire, fire, critical dice. This leads mistakenly to that both fire damage dice will only be activated when rolling a crit. This is now fixed with this extension, avoiding erroneous merges of dice.
- The basic ruleset did not add range descriptors to the damage chat messages of spells, leading to that effects like DMGS could not be restricted to just melee or ranged spells even though the wiki lists that these effects allow range descriptors. This extension fixes this and adds automation of range descriptors w.r.t. spells.
New order of effect application:
If you have several effects like VULN, RESIST etc. affecting some damage type, then the order of application is (for 3.5e)
- IMMUNE
- FORTIF
- HRESIST
- Incorporeal, for Pathfinder
- DR
- RESIST
- VULN
For Pathfinder VULN is applied before HRESIST. FG has usually the following order as reference:
- IMMUNE
- VULN
- RESIST
- DR
- Incorporeal, for Pathfinder
Improved NPC parsing for supporting new effects:
Started to improve the parsing of NPC effects once added to the CT. Magic immunity will also parse an additional SIMMUNE effect, and immunity against charms, poisons and so on will not parse the typical informational IMMUNE effect anymore; instead there will be a collected IFTAG: [...]; SIMMUNE effect at the end of the effect's string.
For 3.5e: Added parsing of immunity against sneak attacks.
By Rabidpaladin: Additional parsing of spell and ability immunities, like IFTAG: mindaffecting; SIMMUNE for vermin. Creature ability/spell immunities are parsed for constructs, dragons, elementals, ooze, plants, undead, and vermin.
There is a new campaign option turning on automatic parsing of REVERT: heal; REVERT: negative
for undead; this option is defaulted to off, so that you have to turn
it on first. You can find this option at the very bottom, in the
category Extended Automation by Kel.
Miscellaneous:
- FORTIF is rolled for each damage die not more than once but still separately for each damage die such that there are two rolls when there is a critical and a sneak attack die but also when there are two different critical damage effects (burst and weapon critical). That is how FORTIF should work (I hope? Not really clear in the rules :D).
- The drag&drop into the nonlethal box in the character sheet didn't respect resistances versus nonlethal damage type (in the native FG code). This is now respected in this extension. Pro tip (independent of this extension): Using e.g. /mod 5 [TYPE: fire] results by the way into a dragable 5 which respects resistances versus fire, similarly change the damage type and number to get other macros. Similarly this is possible with other typical things you see in the chat like [HEAL] and so on; but be careful this is surely not an intended feature of FG, I just find that funny that this works, too.
- Critical confirmation rolls were not applied correctly to a target if the target had negative AC in the native code, I fixed this. Moreover, you will see [CC DEF EFFECTS ...] next to its message when an ACCC leads to an increased AC (but only if it is a real bonus, so, if you have an AC: 2 deflection effect and just ACCC: 1 deflection, then it will not show anything extra. Only if something gets really added to it, such that you can easily check whether the effect was correctly applied).
- The spell save view window is now a bit increased such that one can see the (H) when the damage is halved (at least it is better, couldn't increase this too much due to the position of the magnifying glass when the character sheet has minimum width).
- Evasion and Improved Evasion will now also show up as effect buttons in the effects' window, which you can access in the upper right of the sidebar.
Support for homebrew rules without affecting standard rules:
I also made a major rewrite of how damage types are treated. Do not worry, if you use standard rules, nothing changes. The following is just for an easier implementation of homebrew rules and other source books with "that one rule/effect which was never there before". Effects like RESIST already support arbitrary damage types but it doesn't work well for non standard situations. E.g. RESIST: 5 slashing works but it also still applies to daggers although the attacker could use the piercing damage type of the dagger instead. RESIST: 5 piercing and RESIST: 5 slashing also stacked in the standard FG code. And lot other things. To handle these my aim was to make the code more universal. Moon Wizard wrote
For basic damage type immunity, only applied if immune to all basic damage types; for attribute damage type immunity (critical, precision, lawful, etc.), always applied.
about how immunity is applied, according to the rules. With this extension this also applies to HRESIST, RESIST and FORTIF.
The way how FG defines basic damage types and the attribute ones in
such situations is the following table (including the new damage types
of this extension):
BASIC DAMAGE TYPES | ATTRIBUTE DAMAGE TYPES |
Acid | Adamantine |
Cold | Cold Iron |
Electricity | Epic |
Fire | Magic |
Sonic | Silver |
Force | Chaotic |
Positive | Evil |
Negative | Good |
Bludgeoning | Lawful |
Piercing | Nonlethal |
Slashing | Spell |
Critical | |
Precision | |
Ghost Touch | |
bleed | |
injury | |
bypass | |
drbypass | |
immunebypass | |
resistbypass | |
resisthalved | |
vorpal |
Effect examples:
IFTAG: spell; SAVE: 2 racial (+2 racial bonus against spells)
IFTAG: spelllike; SAVE: 2 racial (+2 racial bonus against spell-like effects, remember to not use the - in spell-like)
IFTAG: poison; SAVE: 10 insight (+10
insight bonus on saves against poisons, poisons are not automatically
parsed in the tag lines. You have to add them on their own such that FG
will know which action corresponds to a poison)
IFTAG: spell; IFTAG: evocation; SIMMUNE (immunity versus spells of the school evocation)
IFTAG: spell, illusion; DC: 3 enhancement (+3
enhancement bonus to the difficulty class of spells and illusions
in general, so, also spell-like illusions would be affected by that or
anything else with the tag illusion, not only illusion spells. The comma
between tags is like a logical (inclusive) OR)
IFTAG: spell, spelllike, poison; SAVE: 2 racial (+2 racial bonus against spells, spelllike abilities and poisons as for dwarves)
DMG: d10 fire, critical, vorpal (flaming burst which ignores crit immunity such that mummies burn even better)
NIFT: CUSTOM(seeking); invisible (treated as invisible except against combatants with an informational effect seeking, useful for stuff like true seeing)
NIFT: CUSTOM(seeking); CONC
NIFT: CUSTOM(seeking); TCONC
fortune; must decide before the first roll is made; keladvantage (Witch's fortune Hex, set to expire on one roll)
Smite Evil as a set of effects:
Foe gets: Evil to Smite
Paladin gets: Smite Evil; IFT: CUSTOM (Evil to Smite); ATK: [CHA]; DMG: [LVL]; AC: [CHA] deflection; DMGTYPE: drbypass;
and: Smite Evil; IFT: CUSTOM(Evil to Smite); IFT: TYPE(outsider, dragon, undead); DMG: [LVL];
Sneak as a set of effects on the rogue
NIFT: nodex; DMG: 3d6 precision, accuracy
IFT: nodex; DMG: 3d6 precision
(The first effect is a sneak attack which only activates if using the accuracy modifier
button or pressing Ctrl while rolling damage and only if the nodex does
return false. If nodex returns true, then the second effect caters
for the sneak attack. Due to NIFT and IFT no stacking arises)
Note about the sources of the graphics (in both versions of the overlays):
Dead/Dying overlay: Red Hook Studios.d20 in toolbar: Rafaël Massé.
KO, Staggered, Disabled icon: tahl_liadon from the community :) Thanks :)
Remaining overlays: Public Domain
In the alternative version: All graphics by tahl_liadon, thanks :)
Extension logo: Bmos, thanks :)
UUID 2efe896e-d2c0-11eb-8c52-0050562be458