PDA

View Full Version : 5E - Undead Fortitude



JustinFreitas
May 26th, 2023, 15:14
This is an extension for FGC/FGU that automates the Undead Fortitude constitution saving throw. If the target succeeds the save, an amount of damage will be done that leaves the target with one hit point. On a failure, the target damage is handled as normal resulting in the loss of consciousness. In my Tomb of Annihilation game, I was spending sooooo much time dealing with Undead Fortitude that I decided to write an extension for it to help me. I still run my ToA game in Classic, so that compatibility is important to me. I hope this saves other DMs time when running hoards of zombies too! :)

Undead Fortitude Features:

Automates the Undead Fortitude constitution saving throw for actors with Undead Fortitude in their Traits section (NPC or PC).
On a successful Undead Fortitude save, the target is dealt an amount of damage that will leave them with one hit point.
The radiant damage type or a critical hit will forgo the saving throw automation, per the Undead Fortitude rules.
There is a Radial Menu (right click) option to apply Undead Fortitude to an unconscious actor in the Combat Tracker.
Works as a chat command with either /uf or /undeadfortitude, specifying the actor's name to affect.
Change the way the mechanism works by removing the queue and using the roll to pass data directly. Add the ability to customize the behavior based off of the PC/NPC trait name. For example, Undead Fortitude (MOD 10) will use 10 instead of 5 when processing Undead Fortitude DC calculations. Something like Death Fortitude (DC 11) will trigger the behavior with a static DC of 11 and no radiant damage restriction because the word Undead isn't before Fortitude. Another example is Undead Fortitude (Mod 8, no mods) which will trigger the behavior with a DC modifier of 8 instead of 5 and not have the radiant damage or critical hit restrictions. Use the name of the fortitude trait specified on the creature in the saving throw text and the matching of that saving throw text. That way, customized fortitude trait names will show instead of hardcoded Undead Fortitude. The modifier values now support negative values (i.e. MOD -5). Multiple UF targets were not being accounted for correctly... fixed.



Current Version: 2.0.4, get it from the Forge if you are a Unity user (automatic deployment and update with FGU update) or GitHub releases if you are a Classic user (drop the ext file into the extensions folder). The version history is available at either link, FG Forge or GitHub.

FG Forge Link: https://forge.fantasygrounds.com/shop/items/1215/view
GitHub Link: https://github.com/JustinFreitas/UndeadFortitude

Raddu
May 26th, 2023, 18:09
Fantastic! Never knew I needed this until today!

JustinFreitas
May 26th, 2023, 18:40
Fantastic! Never knew I needed this until today!

I know, right?!? I was in my game the other day suffering through managing Undead Fortitude on a hoard of zombies about ready to pull my hair out... then I thought, "Sure would be nice to have an extension for this." And there ya have it! I hope it saves you time and frustration. If you notice issues, just say. There were some differences in the FGC/FGU implementations that are combined in there.

Raddu
May 26th, 2023, 18:56
Yeah, and I've ran combats with creatures that I gave a version of undead fortitude (replicating warforged) and kept forgetting to apply it!

JustinFreitas
June 10th, 2023, 13:59
Updated the Undead Fortitude extension to have a Radial Menu (right click) option to apply Undead Fortitude to an unconscious Combat Tracker actor. It also works with the chat commands /uf or /undeadfortitude, passing the name of the CT actor to affect. It's version 1.1 now and has been updated on Forge and GitHub.

MrDDT
June 17th, 2023, 18:36
Is there a way to denote the DC save other than being DC 5 + damage on the skill or anything?

JustinFreitas
June 17th, 2023, 18:38
Is there a way to denote the DC save other than being DC 5 + damage on the skill or anything?

Not currently, but I can make that happen for ya. Probably a DC modifier spinner in the options that will default to 5 or something equivalent.

JustinFreitas
June 17th, 2023, 18:44
Is there a way to denote the DC save other than being DC 5 + damage on the skill or anything?

Or... maybe have five be the default but if a number is specified in parens after Undead Fortitude in the traits, then use that modifier. Something like: Undead Fortitude (DC 10)

I'll think about it more and come up with something decent.

MrDDT
June 17th, 2023, 18:46
Not currently, but I can make that happen for ya. Probably a DC modifier spinner in the options that will default to 5 or something equivalent.

Thanks for the reply, let me know if you want more info. But what I like to do is custom some creatures to have UF trait but give the DC differently, sometimes only a set DC.

JustinFreitas
June 17th, 2023, 18:53
Thanks for the reply, let me know if you want more info. But what I like to do is custom some creatures to have UF trait but give the DC differently, sometimes only a set DC.

Ok, I'll account for adjustment of the modifier and also setting a static DC. So how about (DC 10) for the static DC, defaulting to normal non-static, modified version. Then for modified/normal behavior we can do (MOD 10), defaulting to five. Any incorrect syntax won't be recognized and the defaults will be used.

So some examples would be:
Undead Fortitude
Undead Fortitude (DC 11)
Undead Fortitude (MOD 10)
Undead Fortitude (BAD XX) <-- Bad syntax, defaults will be used.

MrDDT
June 17th, 2023, 18:54
Ok, I'll account for adjustment of the modifier and also setting a static DC. So how about (DC 10) for the static DC, defaulting to normal non-static, modified version. Then for modified/normal behavior we can do (MOD 10), defaulting to five. Any incorrect syntax won't be recognized and the defaults will be used.

So some examples would be:
Undead Fortitude
Undead Fortitude (DC 11)
Undead Fortitude (MOD 10)
Undead Fortitude (BAD XX) <-- Bad syntax, defaults will be used.

Thanks sounds EPIC!

JustinFreitas
June 17th, 2023, 18:58
Thanks sounds EPIC!

That makes me happy. :) I can also make it work with the word Death instead of Undead so that it applies to more use case scenarios... just in case your creature isn't undead. Here are some examples of (future) working trait names:
Undead Fortitude
Death Fortitude
Death Fortitude (DC 11)
Undead Fortitude (MOD 10)

MrDDT
June 17th, 2023, 19:07
That makes me happy. :) I can also make it work with the word Death instead of Undead so that it applies to more use case scenarios... just in case your creature isn't undead. Here are some examples of (future) working trait names:
Undead Fortitude
Death Fortitude
Death Fortitude (DC 11)
Undead Fortitude (MOD 10)

What about Death Ward, Strength of the Grave and Reckless Endurance or am I getting crazy? Sounds like it's in the same wheelhouse.

JustinFreitas
June 17th, 2023, 19:10
Yeah, that came to my mind also. Lemme do the static DC and modifier first... then I can mess with the wording later on. I remembered about the radiant damage thing too. Undead Fortitude accounts for that, but some of the others you mentioned don't. So yeah... let's do the DC/MOD stuff first.

JustinFreitas
June 19th, 2023, 02:33
Those changes made it in. I also made the extension much more reliable and fix a ton of bugs I found along the way. Lemme know if you have any issues. Basically, it supports those modifiers now... DC to set a static DC, MOD to override the DC modifier used in damage calculation, which defaults 5 for Undead Fortitude, and a way to disable all of the restrictions/exclusions like 'radiant' going thru 'Undead Fortitude' and Critical Hits going thru, etc... that is: no mods. For now, the word Fortitude must be in the trait name, although, the prefix and suffix can vary.

So some usage examples might be:
Undead Fortitude <-- Normal Undead Fortitude, DC 5 + DMG
Undead Fortitude (DC 15) <-- No damage calculation... DC 15 every time.
Creature Fortitude (MOD 10) <-- Note, this one would ignore radiant because it's not Undead Fortitude proper.
Undead Fortitude (no mods) <-- radiant damage and critical rolls would still get save in this case.

MrDDT
June 19th, 2023, 02:43
Those changes made it in. I also made the extension much more reliable and fix a ton of bugs I found along the way. Lemme know if you have any issues. Basically, it supports those modifiers now... DC to set a static DC, MOD to override the DC modifier used in damage calculation, which defaults 5 for Undead Fortitude, and a way to disable all of the restrictions/exclusions like 'radiant' going thru 'Undead Fortitude' and Critical Hits going thru, etc... that is: no mods. For now, the word Fortitude must be in the trait name, although, the prefix and suffix can vary.

So some usage examples might be:
Undead Fortitude <-- Normal Undead Fortitude, DC 5 + DMG
Undead Fortitude (DC 15) <-- No damage calculation... DC 15 every time.
Creature Fortitude (MOD 10) <-- Note, this one would ignore radiant because it's not Undead Fortitude proper.
Undead Fortitude (no mods) <-- radiant damage and critical rolls would still get save in this case.

Very awesome! Thank you, I will test it out and let you know if I have issues.

kreppulun
June 30th, 2023, 19:50
This is an awesome extension, first off. I was messing around with it today and had a hiccup. I didn't know if it was me or the ext.

When I apply the trait to another NPC and they fail the save, it applies what was rolled on the d20 for the save as damage instead of the original damage roll. See Image 1. It will kill the NPC if the "new damage" is high enough, but won't if it isn't.
58023

JustinFreitas
July 1st, 2023, 00:42
This is an awesome extension, first off. I was messing around with it today and had a hiccup. I didn't know if it was me or the ext.

When I apply the trait to another NPC and they fail the save, it applies what was rolled on the d20 for the save as damage instead of the original damage roll. See Image 1. It will kill the NPC if the "new damage" is high enough, but won't if it isn't.
58023

Thanks for the bug report! I'll try and fix it over the weekend.

JustinFreitas
July 1st, 2023, 15:53
Hey kreppulun... I pushed up a fix for that issue with the damage on FGU. The problem was that I was incorrectly cobbling together the damage roll, so instead, I now use the original and just modify it before damage application. It's up on the Forge and it's v2.0.1. I really appreciate you taking the time to report the issue. Sorry for causing you problems and I hope the extension serves you well. Lemme know if you have any more problems.

Farratto
August 29th, 2023, 14:03
Really like the addon by the way. Huge time saver. I just wanted to report some unexpected behavior I found. I don't want you to think this is a complaint or me asking for a fix. I can work around this problem easily by rolling manual saves (or doing the math in my head). I just thought that if I had written this extension, I would want to know about this.

So I DM with a combination of players, some of which like to use real dice IRL and some like to use the FG interface. So often what I end up doing is that they tell me what they rolled for damage, and I type the number into the "Modifier" box in the lower left corner, and then drag it on to the "Wounds" category on the appropriate NPC on the combat tracker. FG understands this as damage being done to that NPC.

When I do this to a creature with Undead Fortitude, with your extension running, and it is enough damage to down the creature: It sets off the con save as expected. It sets the DC of the con save correctly. BUT it adds the damage as a bonus to the con save roll.

For example:
Zombie has a Con modifier of +3.
Zombie has 5 current hit points (with a max of 22).
PC hits Zombie for 7 dmg.
Undead Fortitude extension sets off DC12 Con save and rolls 1d20+10.
(Expected in this situation would be 1d20+3).


Thank you very much for your time and consideration.

JustinFreitas
August 29th, 2023, 16:02
Thanks for the report! I'll look into it ASAP. :)

MrDDT
August 29th, 2023, 18:45
Really like the addon by the way. Huge time saver. I just wanted to report some unexpected behavior I found. I don't want you to think this is a complaint or me asking for a fix. I can work around this problem easily by rolling manual saves (or doing the math in my head). I just thought that if I had written this extension, I would want to know about this.

So I DM with a combination of players, some of which like to use real dice IRL and some like to use the FG interface. So often what I end up doing is that they tell me what they rolled for damage, and I type the number into the "Modifier" box in the lower left corner, and then drag it on to the "Wounds" category on the appropriate NPC on the combat tracker. FG understands this as damage being done to that NPC.

When I do this to a creature with Undead Fortitude, with your extension running, and it is enough damage to down the creature: It sets off the con save as expected. It sets the DC of the con save correctly. BUT it adds the damage as a bonus to the con save roll.

For example:
Zombie has a Con modifier of +3.
Zombie has 5 current hit points (with a max of 22).
PC hits Zombie for 7 dmg.
Undead Fortitude extension sets off DC12 Con save and rolls 1d20+10.
(Expected in this situation would be 1d20+3).


Thank you very much for your time and consideration.

2 ways you can fix this currently with low effort.

1) You can put the 7 dmg in modifier, then drag it to chat, then drag it onto wounds, instead of into modifier to wounds. Adds one step of doing to chat first, then wounds.

2) You can have the player use "manual roll" and them put in the amount themselves and it will just say manual roll in chat.

JustinFreitas
August 29th, 2023, 20:45
I think I have a fix for it where I clear out the Modifier just before issuing the UF saving throw. Since that saving throw is really independent of the Modifiers applied to the damage (the DC isn't but the saving throw itself is), I think that should work to not modify the save (but having already used the modifier for damage). Anyway, I'll keep testing with this to see if it works in all cases and doesn't break other things. More soon...

JustinFreitas
August 30th, 2023, 02:56
Ok, go ahead and update (or get it from GitHub if you are FGC). Lemme know if you have any more issues. Thanks!

MrDDT
August 30th, 2023, 21:14
Ok, go ahead and update (or get it from GitHub if you are FGC). Lemme know if you have any more issues. Thanks!

Update is working as intended for me.

JustinFreitas
August 30th, 2023, 21:16
Thanks for double checking MrDDT. I did forget to mention, it's 2.0.4 now.

Farratto
September 2nd, 2023, 14:25
Apologies for delayed response. I was expecting to get email notifications of responses. I need to check my settings. This works great. Thank you so much for your swift replies and actions!

MrDDT
April 15th, 2024, 05:51
So I'm having a pretty niche issue, where this is conflicting with Requested Rolls suppressed roll option.

I was wondering if you could look into it.

When a creature has UF, and you trigger it by doing enough damage to kill it, it rolls a save, the rolls get output into chat correctly, however, when using Requested Rolls "Suppress Dice Animations: On" option, this does not trigger the death on a failure.

Suppress Dice Animations, make it so that you don't see dice rolls anymore.

Now I think this issue lies where I had issues with another ext, that it was not converting the roll to a string or something, and the Author of RR said to have the other author make sure to convert the rolls that are done to strings before rolling them. (like called rolls not the ones that players or the GM's do but the ones that happen on a trigger like UF does, only this was an issue with Rolling Mirror.)


You can see the post here about it, but I think its the same type of issue. I don't know how much work this would be for such a small user base using this option and both of these exts together, but if you could I would like to see if we can get it fixed.

https://www.fantasygrounds.com/forums/showthread.php?70407-5E-Requested-Rolls&p=707838&viewfull=1#post707838

JustinFreitas
April 16th, 2024, 01:21
I'll give it a look. Thanks for the report.

JustinFreitas
April 16th, 2024, 04:46
I would like to see if we can get it fixed.

Get the new one from the Forge, v2.0.5. Lemme know what you think. -J

MrDDT
April 16th, 2024, 06:24
Get the new one from the Forge, v2.0.5. Lemme know what you think. -J

Wow nice work that was fast.

So glad I can suppressed rolls again, speeds up my games greatly!!!