Code Monkey home page Code Monkey logo

adv-reminder's People

Contributors

kaelad02 avatar kharmans avatar nildran avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

adv-reminder's Issues

Support Inline Roll Commands in messages

Using /rollItem in the damage dialog I can create consumables that can add to the current roll, in a slightly roundabout way, using /rollItem to consume the charge of the item, and then the bonus damage in a regular deferred inline roll.
Could also be useful with #38 for example with Sanctuary, grant a reminder on attack rolls that has a [[/rollSave wis]] so the attacker who forgot to roll beforehand gets a prompt to do so

image

Support messages that are displayed on specific items

Hello,

I think we can easily add the following keys to the message feature:

  • flags.adv-reminder.message.attack.${this.itemName}
  • flags.adv-reminder.message.damage.${this.itemName}

It would allow us to handle such feat:
Pounce. If the tiger moves at least 20 feet straight toward a creature and then hits it with a claw attack on the same turn, that target must succeed on a DC 13 Strength saving throw or be knocked prone. If the target is prone, the tiger can make one bite attack against it as a bonus action.

The effect on the Pounce would then be: flags.adv-reminder.message.attack.claw ➡️ Pounce. Don't you forget this feat while making a claw attack!

Request: Allow limited macro functionality

I was wondering if it could be possible for a macro to be written and linked into the attack or damage popouts that when pressed, does things and then if applicable abandons the current workflow, closing the popout and starts an entirely new one, or an advanced macro that asks for things from the user in dialogs and after the choices puts a custom situational bonus formula in based on the choices. Example Chaos Bolt and Divine Smite.

Add a grant message flag when targeted

There are flags that can grant advantage when that token is targeted by an attack (e.g. the Blind condition). There aren't any flags that can grant messages when that token is targeted. Consider adding something like flags.adv-reminder.grants.message.attack.all to add messages when targeted by an attack. Same would go for the damage rolls.

Feature Request: With Midi QOL, add Advantage Reminders for advantage attribution in workflow.attackAdvAttribution

It would be great if Advantage Reminder could parse a Midi workflow's attackAdvAttribution object and display what it finds on the roll dialog. For example, some Chris's Premades features (such as the Armorer Artificer's thunder gauntlets) add advantage by directly setting workflow.advantage = true, and then calling workflow.attackAdvAttribution.add('descriptive string') (see lines 101 and 102 of this file: https://github.com/chrisk123999/chris-premades/blob/master/scripts/macros/classFeatures/artificer/armorer/armorModel.js). This string is displayed on Midi's chat card after the attack is resolved, and the roll dialog shows that the roll is being made with disadvantage, but Advantage Reminder currently doesn't display why.

I looked at the code very briefly and the biggest issue seems to be that Advantage Reminder would need the workflow object, and I didn't immediately know how to solve that problem. But I thought I'd open the issue here and see if it's a possible enhancement for the module!

Disable tracking failure flags if midi is enabled

Midi's auto fail saves flag is failing to progress workflows while Advantage Reminder is enabled. You can replicate this with 10.0.23 midi, 10.0.13 dae, and any v10 build of Advantage reminder. Set a starter hero to have the autofail dex flag from midi and then attempt to sacred flame them.

[BUG] Fail falgs not working as expected

Hello,

FVTT 9.242
adv-reminder 0.2

Thx for this module. This is awesome.
I, like you, play with a little automation but not as much as Midi Qol.
This module really comes in handy. I was surprised to find this module working like a charm with BetterRolls5e.

When I set a Fail Midi Flag, only the saving throws are affected.
Actually, always the saving throws, never the skill throws or ability throws. (tested with & without BetterRolls5e)

EDIT: tested almost all Midi Qol Flags with BetterRolls5e. The only one not working is CriticalReminder.

Feature Request: Show message if quick rolls are enabled

If quick rolls are enabled, either via midi-qol, ready set roll, or some other module, display in the roll card any message from flags.adv-reminder.message.*** that would apply.
This would help with some conditional effects like 'Advantage on saving throws against fiends`

DAE also handles impose stealth disadvantage

DAE added support for armor with stealth disadvantage. The original implantation was for all heavy armor but looks like that's going to be fixed in version 0.8.82 (see issue link below). It does it by adding flags.midi-qol.disadvantage.skill.ste to the actor data.

https://gitlab.com/tposney/dae/-/issues/263

For now this is just a reminder since this module reads the active effects directly rather than any applied versions to the actor data. If, however, that implementation changes we'll have to account for the fact that if DAE of a certain version is loaded, it will add the flag and we don't have to check ourselves.

Support armor that imposes stealth disadvantage

Armor has a checkbox titled "Imposes Stealth Disadvantage." Instead of requiring an active effect to enforce it, the module should check if the actor has armor equipped with this option.

[BUG] Suppressed effects with Midi Flags are still active

Hello,

FVTT 9.242
adv-reminder 0.2

When an active effect with Midi Qol Flags is suppressed, this module still applies the Midi Qol Flags effects.

To create a suppressed effect, just create an active effect on an item that grants effects on equip.
Then give this item to a PC or NPC & make sure the item is not equipped

Advantage on tool rolls don't work

I'm not sure exactly when, but the dnd5e.preRollToolCheck changed the arguments it passes. It means that checking for advantage doesn't work anymore. I didn't test messages yet, but it might affect those too.

Add messages to the short and long rest dialogs

The short and long rest commands also pop up a dialog that we could show messages on. There are other modules that enhance rests to automatically do other things (e.g. handle Arcane Recovery) but this could be another way to handle that. Show messages just above the buttons, like the roll dialogs, to remind people to do something on a short or long rest.

Revise the Readme: adv-reminder is useful for Midi QOL without Fast Forward enabled

Hi!

Advantage Reminder readme ...

This is useful if you want to be reminded to roll with advantage on a Strength saving throw while Raging, for example, but you do not want to use Midi QOL. Midi QOL is great at automating combat with its workflow, however not every game group wants that level of automation. If all you want is a reminder but remain in control of the die rolls, then this module is for you.

Midi-QOL readme ...

If you don't fast-forward rolls [Advantage Reminder for dnd5e] does a good job of highlight the default advantage/disadvantage/critical status of a roll. Reminders also lets you highlight when a saving throw might meet advantage which midi can't process (e.g. advantage on poison saves). Thanks to @kaelad for highlighting a midi problem, as of 0.9.11 midi is compatible with Advantage Reminder for attack and damage rolls.

Feature Request: Source Information

Hello, I have just started using this module as I always have Midi-QOL set to not fast forward rolls in case of specific changes needed. I use Convenient Effects to handle features/spells and also use custom dynamic active effects for custom created features or items. It is nice that the reminder is there, though the messages feature seems a bit clunky. For one, it would require me to update all of the my effects that are already there to have the message. Is it possible to add a setting to have source information before the reminder.

Currently this is what Guiding Bolt looks like when a creature is targeted:
image

Is it possible to get the effects name so that the message could automatically look like this:
image

Saving throw advantage flag not working with better rolls for 5e on version 9

I'm in version 9, and using the better rolls for 5e seems to work great for ability checks, but the saving throw advantage flag doesn't seem to work on saving throws, nor does adding on additional stuff for NPCs, player's saving throws still don't get advantage but their saving throws do display the +0[rage] label I added. Any ideas on how to fix this?

image

image

Issue with Midi-qol damage rolls

When using midi-qol, unable to roll damage, as it gives the following error.

Uncaught (in promise) TypeError: Cannot read properties of null (reading 'shiftKey')
[Detected 4 packages: adv-reminder, lib-wrapper, more-hooks-5e, midi-qol]
    at isFastForwarding (modules/adv-reminder/src/module.js:269)
    at isFastForwardingDamage (modules/adv-reminder/src/module.js:286)
    at Item5e.onRollDamage (modules/adv-reminder/src/module.js:244)
    at Wrapper.🎁call_wrapper [as call_wrapper] (modules/lib-wrapper/lib-wrapper.js:1)
    at Item5e.rollDamagePatch (modules/more-hooks-5e/scripts/item/damageRoll.js:8)
    at Wrapper.🎁call_wrapper [as call_wrapper] (modules/lib-wrapper/lib-wrapper.js:1)
    at Item5e.🎁CONFIG.Item.documentClass.prototype.rollDamage#0 (modules/lib-wrapper/lib-wrapper.js:1)
    at Workflow._next (modules/midi-qol/src/module/workflow.js:472)
    at async Workflow.next (modules/midi-qol/src/module/workflow.js:245)

Request: Reminder for when wearing armor without proficiency.

Reminder could be able to tell when wearing armor without proficiency that we have disadvantages.

As per rules:
"If you wear armor that you lack Proficiency with, you have disadvantage on any ability check, saving throw, or Attack roll that involves Strength or Dexterity, and you can’t cast Spells."

my function purposal:

function _armorIsNotProficient() {
    if (this.abilityId === "str" || this.abilityId === "dex") {
      const item = this.items.find(
        (item) =>
          item.type === "equipment" &&
          item.system?.equipped &&
          item.system?.proficient == false
      );
      debug("equiped item that imposes disadvantage on ability, savings and attacks using str and dex", item?.name);
      return item?.name;
    }
  }

Damage Enrichers cause an error to be thrown

To reproduce: put a damage enricher like [[/damage formula=1d4 type=fire]] in a journal or chat card and then click it. The TypeError "Cannot read properties of undefined (reading 'actor')" is thrown. Only occurs with Advantage Reminder enabled. Results obtained on Foundry version 11.315 (node.js+chrome), dnd5e 3.1.2, adv-reminder 3.4.1 and 4.0.0, no other modules enabled.

image
image
image
image

Feature: Chat Message Reminders

Right now I use effect macro to make macros that write a chat message on actors turn or every turn. I think this'd be a great feature addition to this module, maybe like an active effect key that we can put the message in the effect value for actors turn, every turn, and then a whispered version of both of them.

Option to show source of advantage/disadvantage flags.

It would be nice to have to option to add a message in the pop up that tells the player where a source of advantage comes from.

I understand this module did this before, but in a more technical way:
image

Since midi now has castdata in effects, it might be worth reconsidering this feature? It possible could, for example, tell the player that they have advantage from standing to close to an enemy when shooting, or any othe reason midi added advdisadv.

[FEATURE] Consider supporting advantage with a condition

Hello,

Some items & features grant advantage, but only on certain conditions.

For example: Keen Smell. The tiger has advantage on Wisdom (Perception) checks that rely on smell.

Maybe this module can implement some kind of reminder about that?
Since we can't automate this, possibly a simple chat message? Or a message before rolling?

Add a message on a critical hit

Define a new flag, flags.adv-reminder.message.damage.critical, that shows messages when a critical hit happens. Would be useful for some of the new feats like Crusher that can do something extra if a critical hit occurs.

Right now, the only way to detect that a critical hit occurred is either with flags for certain statuses or if using Midi and it detected the crit. The way things are ordered in Advantage Reminder is the flags are done after messages, making the first one harder. Nothing that can't be switched though. The tougher problem is that Advantage Reminder runs before Midi so it won't know that a nat 20 was rolled since Midi would set the critical flag for that. There's an upcoming system feature that adds a bunch of hooks that I might switch over to. That would make this possible, assuming Midi will call those hooks too when it overrides the rollDamage function.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.