Active Effects
Current State
In !157 (merged), initial support for Active Effects was added to the system in the form of an effects tab on the character sheet that can be used to create and edit effects using Foundry's built-in effects sheet. The conditions Foundry provides were also overridden to match those in the rules along with providing effects on them where it made sense (e.g., a -4 penalty on attack rolls and disabling the escalation die when Fear is applied). During testing, effects that affected the same stat did not stack; only the first effect that modified a given stat applied.
Possible Features
The following features are rough ideas of potential things that could be done with active effects:
Static buffs
Active effects can be added to items such as Powers, and if we give them tranfer: true
property, they'll also apply to any actors they're placed on. This could work well for cases such as the AC increase from Bastion on the Paladin class.
Temporary buffs
If set transfer: true
and disabled: true
on the effect on an item, it will apply to the actor but be disabled by default. That could work well for the Cleric class' Hammer of Faith spell, where we could modify the melee weapon dice size to use a d12 instead.
Attack riders
Many character powers and monster actions cause statuses to be applied to the target. If we utilized transfer: false
on effects on powers, we could then use that to infer that the effect should instead be included on the chat card as a linked entity instead of as something applied to the parent actor. I don't believe Foundry supports this behavior out of the box, but if we wrote it using a format such as @Effect[mS7veuWJ2w1v6Jfi]{Status Name}
we could render it as a link and add custom drag/drop handlers to apply it to the actor on drop. We could infer the parent item's ID from the chat card itself.
Condition reminders
Now that we have conditions in the system updated to correlate to the official conditions and have effects attached to them, we could create chat messages at the start of each turn with a reminder list of conditions, and we could add a button to prompt for saves at the end of their turn.
Gotchas
- We have a small amount of support for conditions via the CUB module, so any work we do for this should be tested to see how much we're conflicting with CUB. I would like for us to include all of this functionality in the base system itself rather than relying on a separate module, so the main thing to watch out for us just that we're not causing duplicate features to appear (e.g. doubling up on the list of conditions in CUB and showing condition reminders twice).
- Compendium entries will eventually need to be updated with this information, but that should be straightforward given how simply the active effect document type is structured. Even with that simplicity, this would be a large effort and isn't a blocker for this issue; we can tackle it as time allows. The community may also be able to assist with the effort if we document the process and review MRs for it carefully.
Acceptance Criteria
-
Active Effects can be created for actors -
Active Effects can be created for items -
Actors have an Effects tab -
Items have an Effects tab -
Active Effects on Items can be transferred to Actors -
Conditions have effects associated with them -
Conditions are announced in chat during turn start and/or end -
Conditions do not have significant conflicts with the current version of CUB -
Other features listed above (nice to haves, not blockers)