-
Notifications
You must be signed in to change notification settings - Fork 8
Target Helper
Whenever a damage message is created, currently targeted tokens are added to it, allowing you to apply damage directly to the token's actor without having to select them.
Important
This feature requires a GM to be online to function.
Note
You can mouse over a target row header to highlight the associated token on the board.
Note
You can drop foundry items (i.e. conditions, effects, equipment) on a target row header to simulate the behavior of dropping it on the token itself. You can also [Click] on the header to select the token and [Double Click]
to open its sheet.
If the message has a save, each row will be accompanied with a way to roll/reroll the save, an exhaustive tooltip giving all the details about the save can be seen when hovering over it. The details shown in the tooltip will respect the system's metagame settings.
Basic saves will color the different damage buttons to make it easier to recognize which button to use. Rows will be blurred after damage is applied (or if the saves was a critical success).
A GM can roll an inline save privately, in which case its result won't be shown to the players, a save can be private by:
- Having your global roll mode set to private/blind/self at the time of rolling the save
- Having your modifiers window roll mode set to private/blind/self
- Holding
ctrl
while clicking on the inline save
Note
Re-rolled saves will keep the private state of the original roll.
Because some spells don't have damage but still have saves, those will have the extra rows directly injected in the spell message, you will be able to roll targeted saves from there.
If you use the regular save button of the message, the module will first try to roll the inline save for the selected tokens that are also targets to the message and have yet to roll.
Prompted messages are ones that only[1] includes a save inline link, those messages [before
] will be reformatted and contain extra rows to manage target saves [after
].
If you use the big save button, the module will first try to roll the inline save for the selected tokens that are also targets to the message and have yet to roll.
Depending on the origin of those messages, more details will be shown than normal respecting the different metagame settings and ownership rights.
The system generates two types of those:
- when clicking on
Post prompt to chat
icon of a inline link - when using the
Generate Check Prompt
macro
[1] The message can actually have more than just the inline link: a flavor text or a preceding label to the link. Those are not only taken into account but also reused to generate the new layout.
A Set Targets
button will appear in the message for the GM or owner of the message, using it will reset the targets to the current ones. Re-adding a previous target will put its save and applied damage to the state they were before.
On messages with a splash roll, an extra Set Splash Targets
button is added, it isn't required to use it but it can be helpful for the user to make it obvious which targets should be affected by the main damage and which should be affected by the splash.
A Roll NPC Saves
button will appear in the message for the GM if the message has any non-player owned target that have yet to roll its save, using it will roll all the remaining saves for those targets.
Some non-spell damage messages are supposed to make use of a save, there is no way to directly link inline saves to a message for such cases but the module allows you to drag & drop any inline save onto a damage or action (ability & feat) message, adding the save to it.
- One must be the author of the message (or a GM) to drag & drop a save onto it.
- A save cannot be dropped onto a message that already contains a save.
The feature calls two custom hooks when a save roll/reroll is made.
// pf2e-toolbelt.rollSave
type RollSaveHook = {
roll: Rolled<CheckRoll>,
message: ChatMessagePF2e,
rollMessage: ChatMessagePF2e,
target: TokenDocumentPF2e,
data: MessageTargetSave,
};
// pf2e-toolbelt.rerollSave
type RerollSaveHook = {
oldRoll: Rolled<CheckRoll>,
newRoll: Rolled<CheckRoll>,
keptRoll: Rolled<CheckRoll>,
message: ChatMessagePF2e,
target: TokenDocumentPF2e,
data: MessageTargetSave,
};
Enables this feature in your world.
Will add extra targets to chat messages where damage can be applied and saves can be rolled.
Reduce the size of damage buttons for the extra targets.