#MidiQOL
1 messages Β· Page 18 of 1
And just to check if it works for you, how about "@target.details.type.value".includes("undead")? That's the official example
It don't work for me but maybe I'm the problem
I don't really know the pro answer here, but thats not what tposney writes for "if undead" in his activation conditions
["fiend", "undead"].includes('@raceOrType')
when in doubt, plagerize
Mace of Disruption
Still thinking about this echo... if I'm warpgate summoning it in, would there be a clever way so that it's auto dismissed when hit?
But if you want tims help with that ping, to speed it up, send him the item export, and your midi rules export, cause 9/10 of the time thats his first request when diving in
You full auto? Could have a reaction item with a Warpgate.dismiss macro in it on when damaged, or a worldscript hook to check for if it's hp reaches < 0...
are there two effects with differing checkboxes on the item though? I swear there is an issue for wonkiness with that
I just have the players hit dismiss on the sheets
you could probably utilize cub or a macro to auto dismiss at 0 hitpoints
Full auto baby... yeah reaction item is a good idea
doesn't cub let you set stuff to fire when a creature hits 0 hitpoints?
I don't use CUB.... but maybe an Actor OnUse macro or something could do it?
You could also modify CE to do that too
Assuming you want dead/unconscious to always set aflame
For the echo, yeah dead/unconscious needs to auto dismiss
Or better yet, on hit (since I'm going to make it immune to everything)
So maybe reaction is the way to go
I know you can do that with actor on use cause bugbear gave me one that returned damage on hits
Thanks for the tips folks, will look into it
target.details.type.value.includes("fiend") This works for v10
I think you have to include target probably because of the self roll part
This too "@target.details.type.value".includes("fiend")
It does not for me, hmmmmm...
I still would like to confirm if the monster that is being tested on has "Undead" instead of undead, or worse, no creature type. Always rule out the obvious.
No luck unfortunately - will make a simple macro
I have Fiend as type. It uses a lowecase function
Ah, I had the wrong checkbox checked, evidently.
this setup and the line should work
I had "Apply to self when item applies target effects" checked
wow that tab is gettin busy in v10 lol
Don't show Zhell that
No luck -
Eh, I actually like that change bugbear, I do like having tabs instead of looooong settings sections
though workflow is kinda always going to be long
You got a missing " at the start, does adding that change anything?
target.details.type.value.includes("undead") or "@target.details.type.value".includes("undead")
It does not unfortunately
start finding the culprit then cause it works for bugbear and Krig
What's your effect details window?
Is the target an undead? π€―
On the item?
It is π
Does this work?
['undead'].includes('@raceOrType')
I said this 20 minutes ago and got no answer
can you show us the data instead of confirming, like we're troubleshooting this, we need our eyes on it, not yours, otherwise you would have solved it by now, thats how stuff works here. Show your work.
I just uploaded the screenshots that show the item and effect...
show us the npc you are hitting
and your activation condition settings in midi for that matter
if you guys have undead in "" how is the case gonna work?
The effect is not still suspended, right? On the item?
isn't the whole point of "" to make it literal, case included?
No it's not
then yeah, I'm out of ideas and an issue on gitlab is probably the best course
does it not work for you two with v10? helping him?
cause if it works for them and not Vestium, then find the culprit on that instance of foundry, start with versions, then modules, then user error rule out
is the imported creature, setup with actual Undead or Custom: Undead
Actual undead
check versions, check module conflicts, then have someone watch you use it in screenshare
I don't think it works for them
are you editing a canvas actor/sidebar actor and expecting the other to update?
This?
an effect that rolls to self when hitting an undead right?
Yep - I'm just rolling the item- nothing else
Ah my b, I meant the effects... effects window? lol
but that doesn't matter after all
Yeah it's this
Does it work for you you said?
fwiw its not working in v9 but I'm still going down the ideas for the condition
oh actually no, it worked first try
I just didn't notice the effects icon till I went to edit
ermegerd I think I got it, is the item equipped @neon pike ?
@neon pike it's working fine.
Can you choose in the target details of the item 1 | | creature?
in V9 it fails if the item is not equipped, it succeeds if its equipped
I am missing info so I don't think I can actually help. I might be making things worse.
If you want, create an issue in the MidiQOL (better) or a detailed post here for easy reference.
Now it's like all over 100 messages and not easy to follow π€·

Is that a crown of thorns?
Pretty sure it's from darkest dungeon iirc
No dice unfortunately
No luck unfortuantely - but it works for you?
I'm on v9, a basic macro.ce applies to self if attacking an undead
with a bow attack
if its not equipped, it fails to apply
Actually I wonder if I can just pop a bit extra on my Unconscious CE macro so that it recognises WG summons and auto dismisses them? π€ Then it would not just work for the echo but also any druid summons (so they'd disappear when downed as they're supposed to, not litter the battlefield with corpses)
Yeah no luck on my end - it's equipped - the setup is what I would expect it to be - I did just confirm even without the "put on self" it also doesn't seem to apply to the target (although the "other damage" works as expected) - so it dseems like activation condition effects aren't working for me?
use another creature
Export Midi settings and the actor with the feature and DM them if you want. I could take a look later
drag out a dnd5e creature don't use an imported one
@molten solar how would I do the check to see if it's a WG summons? I could prob figure the rest out
my druid summons poof on conc loss
echos are not conc though
flags.
Yeah I already have that working
they also poof on duration ending
Flags dae deleteUuid works a treat for that
But do they poof on 0 HP?
oh good point
You can insert logic in dead and unconscious conditions with EM
Thank you - sent!
Tried changing creature no luck
send the actor to bugbear or any other v10 tester who wants to check it
I don't have v10
No worries - thanks for your help!
I already have my unconscious peeps going prone thanks to a tposney macro I jammed in there
Just to be clear DAE can also do that but EM makes it easier
Same principle in the same macro field
Different cases etc
almost like that was the idea π
If WG summons, get out... if not, go prone β I think I can finagle that
No way! 
Zhell replacing DAE bit by bit.... am still thinking about Active Auras vs Babonus for pally auras in v10 βοΈ
Did I tell you about the babonus stress testing?
as soon as I see the premade compendiums I'll switch over π
Well did I tell you about the second babonus stress testing?
1000 tokens all running their own auras or some such hyperbole
1600 tokens, each having 4 auras.
on a dotmm sized scene?
BUT active auras puts an AE icon on the recipient so they can SEE when they're protected
babonus is sync π
and works out of combat with zero latency too
No hooks on token movement because... I simply don't need to. π
Is the babonus stress testing when we ask you MIDI related question on the discord? π
and babonus is being actively maintained
Now someone needs to try to use the API for more stuff...
I opened the babo ui and it just looked scary and I closed it.
I wrote 300 lines of css, how dare you
That's a valid first reaction
π§Ή
are there presets in that? Just as an example of what is possible. (woops)
You are in the MIDI channel, don't broom me! 
much less taxing when midi is opt-in rather than opt-out
plus, you guys need me.
Was just testing that module on my v10 environment. Is there a way to have an ability check bonus with it? I'm specifically trying to get a +10 to people around the caster for Pass Without Trace.
In v9, I did this with active auras.
case in point... what do I type in console to look at flags on a token?
_token
If it's just the currently selected one
Or does making the effect an aura also apply the flags from the effect?
I have plans to add ability checks, skill checks, and tool checks all in one when the ability used is actually passed into the hook
Ah cool
But the system devs seem to be arguing over it. π€·
Oh not my issue for sure
https://github.com/foundryvtt/dnd5e/pull/1854
Pretty sure it's actually on the actor, but could be wrong. _token.actor.flags.warpgate
"Most recently selected," not currently.
Different from a macro's pre-declared token
Thanks for that β I can't really think of a situation we wouldn't want it to disappear on 0 HP if WG summoned
If someone ever makes a WG frontend that would be a nice tickbox π
All need to start using getRollData() more
Just an offtopic mention π
Very true, but since it was specifically for console and I was on phone I did not elaborate π
Arbron's Summoning?
I'm still on v9... but yeah I hear good things
Guy literally updated WG for v10 to make his module lmao.
I've sowed the seed for auras to be considered for core in v12... maybe I'll start on WG next
I'm nearly ready to update to v10... Mostly waiting for DF modules to update. And active auras, or a good replacement for what I'm using it for.
You can get around Pass Without Trace with a short world script
Or babonus API, MidiQol and warpgate π€
The patch that was made for AA seems to work fine in V10, through I have not done super extensive testing of it yet
Babonus thread when?
Need a #babonus subchannel.
lol please.
Since it seems to be getting some attention.
It's not even my most popular module.
A #Zhell thread?
Sure, but I have seen the download stats
Is it effect macros?
Effect macros so crazy useful tho
Requesyor
NOPE
RG?
I would be adding to the stats but still holding on to v9 since it works for my game.
Requestor is -- and do not consider yourself shat upon -- my least popular module.
It scratches an itch for us midi lite users
Concentration notifier?
Just behind bab
It's Simple Loot List. π
https://foundryvtt.com/packages/simple-loot-list
Simple Loot List, a Module for Foundry Virtual Tabletop
This is all lies!!!
Huh, that one is pretty new right? Surprised its up there
Speaking of loot
Anyone know how to make monk's journals stop popping up with loot after combat?
It doesn't do that in v9
But does in v10
released day 1 of v10. I think people flocked to it due to the name and a lack of Item Piles
Probably best asked in #513918036919713802 or even #modules
oh true
Ah, makes sense
I wouldn't worry too much about posting here. This thread gets off topic real quick, haha
Honestly, it should just be called the automation channel or something
Pretty much everything here is for automating stuff more than just the basics
Can't go off topic if no topic was ever present
Tststs check the pins π
Quick q. Regarding this, on v9 can you use pipe delimiter for saveAbility? And does that work with LMRTFY? Can't test myself rn
Who looks at the pins??? /s
That is v10 afaik
V9: Using Midi/DAE/CE/Effect Macro/Monk's Token Bar.
How do I auto-query players to make a saving throw from a lasting effect and if the save is a success, it removes the effect. If they fail, the effect persists?
I imagine that you would need to create a feature that transfers the effect to the targeted creature, I just don't know how to make them roll for a save each round.
Check MidiQol readme for overtime effects
v10 makes that method even better
Effect Macro has end-of-turn triggers built in.
Just place the macro there.
on v9, just open midi srd's compendium of spells and look at Hold Person, then go to the midi readme for any further questions on what you do to make overtime effects. For the most part, alot of your solutions can be had by plagerizing all of the midi srd items and the midi sample items compendiums.
This is why sample compendiums are a huge helper for endpoint users, readme's especially huge ones, can be daunting, but a sample/example can do amazing work to getting people workin faster on their own content.
anyway it's two lines of code, and--
Dae is a UI where the user can just follow a readme, without the need for a javascript tutorial
Oh boy.
I was literally just thinking about Hold Person and seeing if there was an item macro in the Midi SRD compendium.
its not an item macro, as stated above, its all possible in dae alone without needing to write an additional bit
Oh, wow. I will look. Thank you.
on v9 you can just copy the midi srd items, in v10 before you update, copy midi srd's items into a world compendium, then bring it over with you to v10, but understand alot of midi srd will not work right till you seek out help fixing them in v10
This is why I am sticking with V9 for a while.
You totally should definitely bookmark the midi qol readme too though, cause sometimes you want a couple extra bits mentioned in there that isn't on the samples.
ctrl F is your friend with the readme
midi srd so good it imprisons you on v9 /s
I just don't see a value in updating yet. I'm following the guidance of the foundry dev staff. Waiting for modules to be more stable. As I'm an endpoint user looking to keep my two tables happy with a nice comfy stable play experience.
I'm sure someone will migrate it over at some point. 1/3 of it already is functional in v10, basically anything that isn't a macro.
Yes, there is a setting on the active effect details page there is a setting "apply effect to self".
I've given it a look and there's a bug that when no world macro is called
args[0].actor = actor.data
but set as
args[0].actor = actor
Which is inconsistent. I'll fix that so both do args[0].actor = actor.data
In v10 args[0].actor = actor in both cases
Anyone here familiar with activation conditions?
Trying to use the following as the condition, but I'm having trouble figuring out where I should be putting any quotes around it.
@workflow.actor.effects.find(eff => eff.data.label === 'Freezing Strikes')```
Or if there is a better way to have the activation condition only work when an effect on the attacker is found.
I think the hunters mark sample item does something like that
eh its all in the macro nothing in the condition
@novel light Your main problem is going to be that all damage is dealt client side. However the gm can see all damage via hooks. If you're looking for a single target solutions, you use DAE with Times up to monitor IsDamaged. If you're looking for a global solution, then world scripts would be better.
I have decided to reconsider this after finding a personal use case for it. However, you can use the new API functions to open the bab for any document meanwhile. Use at your own risk, but it works fine for spells at least.
v10.288, dnd5e 2.0.3, MidiQOL 10.0.15, DAE 10.0.9.
I think there is an issue when having in a feature, 2 DAE effects.
One that should apply only to self and one transferable to target.
The apply to self is applied to both self and target.
The other one correctly applies to target only.
@vast bane <#1010273821401555087 message>
It will be fixed in a future version π
"@workflow.actor.effects".find(eff => eff.data.label === 'Freezing Strikes')
This should do it
Can you use Babonus for Spirit Guardians? Does it work like AA so when the token moves out of the 15β area it stops affecting them. And at the start of the enemy creatures turn, if theyβre within 15β, they take the damage?
Can it work in conjunction with Overtime?
Ah, Babonus isnβt available for v9, right?
Babonus cannot do SG, it only deals with straight bonuses. And also yes its V10 only
Can't as in the module in its current state π
And won't ever be able to. π
nor will it - ever - do once-per-turn bonuses like Sneak Attack. I have already refused a feature request for that (though it is easily doable with a combination of babonus and EM)
Something complicated I successfully accomplished with just babonus and ET though: marking a target such that it takes additional damage from the next attack against it (except from the caster).
ET?
Effective Transferral, for transferring effects.
(I don't use Midi in case you forgot.)
I forgot ET was a thing tbh π
ok wow rude
Well shorthands for a module I don't use isn't something I work hard on memorizing π
Why are you in the Midi Qol chat?
Never has an innocent smiley face looked so sinister! π
Hey π could someone point me to example of writing macros with MidiQL? I am looking at applying effects from DAE when a save check is failed
the reponse from the promise doesn't have such data
Any particular reason you want a macro for this? Cause that sounds doable without a macro
Like what is the final end goal you are going for here
I couldn't fin a way of doing this without a macro
and if you already use a macro, just share so as we know that you're working with
but can be done without as fotoply pointed out
Just make an Item a save action and then create a DAE on that item
I want to code parry => deals 1d8 damage, save check => if it fails then set the prone status
ok i will look
I also wanted to do another one where an effect from DAE passively increases damages on a specific active class feature
The Parry sounds straghtforward as an Item
Then add the effect you want in effects tab
Is it an attack though? Like a reaction?
It can be straight a Save in the Action Type (with Full damage on save).
For this one, a bit more context is needed π€
ok the parry works, thanks guys, didn't know this type of action
For the other case: I created a Halo of spores action and a symbiotic entity DAE effect. I want to make the effect add damage to halo of spores specefically
Core system scale value in the subclass. No module needed.
It is an effect that you turn on or off
IT has a cost and duration so it will not always be on
Sorry I am a bit of a noob, is there some doc/guide somewhere I could use to get better at this without spamming the discord? :p
Check the pins up top for MidiQOL readme as a start
If that's what you meant.
And DAE https://gitlab.com/tposney/dae
For the Feature, you can create a feature with a duration of 10mins and a DAE for extra weapon damage
system.bonuses.mwak.damage | Add | +1d8[necrotic]
or if you use DAE module:
system.bonuses.mwak.damage | Custom | 1d8[necrotic]
Ah now what I am re-reading it might be a bit more difficult. need a different solution.
the extra weapon damage i was able to do it
it's more adding to a specific spell and not to every spells
So when you use Halo of Spores, after you've activated Symbiotic Entiry, the spores damage is increased?
Activation condition from MidiQOL settings set to activation condition.
(Midiqol settings => Workflow settings => Workflow tab)
π It is under Roll Other Formula for melee/ranged and Roll Other Formula for spells π
Then put in Other Formula the extra damage and an activation condition of
workflow.actor.effects.find(eff=>eff.label === "Symbiotic Entity") or whatever the condition is called that gives the extra damage.
betchu an effect could override the value of a Scaling Value
then just set the damage to @scalevalue1 + @scalevalue2
Parry doesn't damage, Riposte does
you can't automate halo of spores because its not a reaction from a hit thattargets the druid. I have mine setup as a manual reaction, and you cant scale it because it goes up when another active effect is active on the druid. So I have it do one set of damage without that ae, and then doubles with the ae.
Ah yes sorry, it was tripping attack
I will look for halo of spores
I appreciate the help thx
how can I make a macro that is being called by midi to not output a card in chat?
Macro
dnd5e.documents.macro.rollItem("Damp Bag Of Tricks Summon")
what card?
if you just don't want the description, its at the top of one of midi's workflow settings
when I use the Item it does this:
The midi part is the on use macro
Is that really how v10 looks for midi though? Why is the trashcan there lol?
thats the chat panel
What do you want not to show up?
As sad as this sounds, thats totally a macro polo thing, but Zhell lurks, he may respond
you just want an item to roll, but not display its card
Then why would you direct me to here? lol
because I thought you wanted the description hidden
I dont want it to display the macro's effect card
midi will hide descriptions, but to silently run something, thats macro territory
yeah.. I want the description
Well now you make no sense lol
you don't want the card, but you want the description...on what?
ok so like
It's a Bag of tricks I am trying to automate
so I, as the GM, dont have to do all the work every time.
but it looks like crap having the "On use" macro to push out the info into chat when my players dont need to see it.
Everything you want will be possible in a macro. but the effort and work to get it, to me, seems not worth it, unless you are running a pay to play campaign in foundry, your players can learn to live with an extra chat card.
but obviously thats all opinion, your answer though, is best solved by asking for help making a macro in #macro-polo just cause most those guys don't hang out here.
Can you describe exactly what you want to happen step by step?
Player Clicks on the Use Item, it casts the spell and gives item description in chat. (Edit for clarity)
Ok and what is currently happening?
its important to note that TWO items are being rolled -- the original one, and the Magic Item spell attached to it
It casts the spell, gives the item description AND puts the spell into chat in a separate card.
if Magic Items itself doesnt provide an option to suppress the chat card, you are going to have a hard time
why can't the player just cast the spell?
thats what my players do with magic items module
right but they show up at the bottom of the spellbook
its not what I am looking for
how are they activating the first item, replace that step with just using these
I am trying to get this working again. It stopped working
downgrade to v9 /shrug
You're not helping. That video is in V10
If you DM me I can assist you in about an hour or two to set this up the way you want - @vast bane is right this is more macro territory
its also a bug for the other two modules than, if it used to work. Automated evocations or Magic Items module.
the midi on use macro was a bandaid to get you working again
I assumed it was breaking because you just updated to v10, so maybe try the original setup, and use find the culprit to find the module breaking your situation
knowing now what I didn't know then, my first thought is Item macro setting, and possible roller conflicts for why the macro stopped working
Kaelad had said the macro syntax was wrong, zhell said the syntax worked if you had a specific version of magic items module. So did it break when you updated past 2.4 magic items module, if so, downgrade magic items module to 2.4 and check to see if it works
So take your original macor, before you started using midi, and paste that into #macro-polo polo and ask them there how to fix it so it works again is your quickest solution. Well second quickest, cause the midi on use works, its just ugly, but faster.
I fixed it
I removed the macro entirely and renamed the Automatic Evocations binding and it works exactly like I want it to now.
This seems v9 not v10, right?
No, this is in v10
my dude
but if it works π
V10 bar
But I drop it here. No reason to drag it if it works
Yeah, it works so alls good
The video was from v9 but after upgrading it stopped working (if I follow correctly)
no, it worked in v10 too.
it wasn't midiQOL at all.. I was overcomplicating the Automated Evocations mod because I wasn't aware of an update.
TLDR, I didnt need to run an Item Macro any longer due to changes with Automated Evocations.
I'm looking at the mummy's Dreadful Glare, and it has two examples of things I'd like to automate but am not sure how.
- Failing save by X or more results in additional effect
- Succeeding on save confers immunity to abilityName for next X hours
Are either of these possible with midi/DAE currently? Or is this overcomplicated macro territory?
there are activation conditions for this somewhere, and I even have one, but I can't remember where it is lol for failing by more than 5
For the second point I would imagine that it might be something that in could be suggested for v10 of MidiQOL.
@gilded yacht When you are immune in a condition, MidiQOL "disables/supresses" the application of that condition on the actor.
What would be interesting I think is if Custom Immunity conditions were getting the same treatment from MidiQOL.
eg I create a Custom DFreds CE Bugbears are friendly and use the same label in the Custom Condition Immunity of the actor. From a quick test its not getting picked up as is now.
for future reference DFreds
π (as a sidenote, if you keep applying the same condition from DFreds CE again and again on a token that is Immune to it, they will keep getting added in the actor effects as Inactive Effects) π
Hmmm, I think this is working in v9, I have this setup for my wizard whose immune to stat draining, I prety sure I tested it...now I'm curious
I just did a quick test cause I thought it would be picked up, but didn't, in v10. I am starting a session so no time to check π
yeah also failing in v9, thats a pain for me, wow
MidiSRD has a forked version that can be installed in v10 FYI
I was taking a look to make them compat
that one was already cheesable by just duplicating the compendiums, the problem is like 2/3 rely on ate/AA or depricated ways
but one of the flaws of premade compendiums is its still going to require the DM's to go find all the uses in the sessions and update manually, probably just gonna wait for a new campaign to update so I don't have to edit existing stuff
That is why MidiSRD's way was golden
Well the way MIDI SRD does is to register the macro's in a global context, so no need to actually update the items
It just handled all the macros internally
yheah I tried both a random AE named like the immunity, and then I made a status effect in CE named like the immunity, and both still applied
yeah did the same, to test with a status Effect in v10 too. Nope
seems only the pre established condition immunities are working right in midi
Activation condition for the effect that is set detect an effect that the item macro places on the token if they pass the save.
Hey there,
Just faffing about in a cloned server to see if I am ready to move to V10 and I am getting a message to say the Midi needs DAE installed, yet when DAE is installed I am getting a critical error?
Anyone know anything about this malarkeyness?
remove them from your modules directory and reinstall. Sometimes it gets weird and won't even let you update to v10 versions
If you're 100% sure you've updated both modules, you may just need to force update them.
Has anyone made a Booming Blade macro by any chance? (V9)
Crymic might have one on his Patreon I think
Oof. It's for a one-shot, so I guess I'll just do without the automation π
The DDB importer comes with a well working one.
If I'm on v9 and don't have it, can I download the module? Or is it "hidden"?
Even better, might you be able to send me the .json of it? :-3
Spell isn't SRD, so no.
Gotcha π
We can't share macros for non-SRD items? π€
Oh, I'm sure we can
I just couldn't share my exported item since it has the full description
This looks like the item macro.
@manic tendon
Thank you π
Do I add the script as the item macro?
And then put an effect that reads flags.midi-qol.onUseMacroName | Custom | Booming Blade?
Let me check
Mine imported as just being in the On Use Macro Field
That might not be correct, I don't actually have any players using this spell
Seems to be correct
Target is self, and at the bottom the On Use Macros is set to ItemMacro
Excellent, thank you for the help π
I very much appreciate it
I did look at this in the past and the problem is that there is no structure to the custom conditions, it relies on you remembering to match the names. With core conditions you can create drop down lists that will always match. Adding a condition to foundry is pretty easy, CONFIG.DND5E.conditionTypes["bugbearFriendly"]="Bugbear Friendly" and then it works everywhere. I'll have a look at processing the custom conditions as well.
For the duplicated effects, if you change the blinded condition to effects do not stack by name you only get one applied.
Would the custom work if the dfreds is setup as a status effect?
V9: When setting up "Over Time Effects", is there a way to have a calculation in the saveDC section or does it only allow numerical values? Also, what does the saveMagic section do? *Figured the saveMagic part out.
label=Dazed,turn=start,saveDC=???,saveAbility=con,savingThrow=true,saveMagic=true
Hey, not sure if this is the right place to ask this but I am playing about with V10 in a cloned server (so I can't destroy anything).
And Spiritual Weapon isn't being spawned on to the canvas, however it is in my V9 version.
I am using the base information from Midi Qol Spiritual Weapon special item, however I have changed it to Spiritual Sphere (for flavour) and changed everything I need to change for it to work including an actor called Spiritual Sphere.
If I manually drag it on to the canvas it works ok.
Not sure where the fault lies. π
I believe saveDC takes math equations, and it definitely takes the spelldc entry shown in plenty of sample items.
It's an array of objects. But it is indeed quite easy to add a new fully functional condition.
(CONFIG.statusEffects)
the spiritual weapon from v9 has data in the macro, that probably is suppose to be system
but there should be a midi sample item for v10 in midi v10
Grab the v10 version to make sure
I have literally just been looking at the V10 version. ha ha π
However I am not 100% sure what to change in the macro now so it will spawn the Spiritual Sphere.
Just simply rename anything that says Spiritual Weapon to Spiritual Sphere I assume. The weapon in the sphere is called Bludgeon though, so maybe I need to change that too.
Would someone be able to help me in fixing an issue where the reaction effect applied to characters that used their reaction on that round, is not being toggled off when the next round pops? I believe this is a DAE/Midi issue.
the v9 weapon creates if the weapon is absent fyi
Hmmm I think I need to bug @marsh ferry to maybe change the way that CE defines the conditions.
Would changing the default do not stack by origin to do not stack by name impact something else?
Starting point of the conversation: <#1010273821401555087 message>
I imagine the v10 is no diferent
Create an actor in the sidebar named as you see fit with the attack/weapon you like.
Then go into the ItemMacro and change the name to match the name of the attack here:js const updates = { Item: { "Spiritual Weapon Attack": { and here: ```js
await createdToken.actor.items.getName("Spiritual Weapon Attack").update({"data.proficient": false}); //change this data to system to be thorough
Also the name of the actor you created here: ```js
const result = await warpgate.spawn("Spiritual Weapon", {embedded: updates}, {}, {});
I asked in Module Discussion but it's tumbleweeds up there... if I'm using Drag Ruler, is there a way for an ability in 5E to cost movement? Thinking of the echo knight swapping places with the echo. I found a sequencer macro so it looks awesome, but it would be great if it also deducted 15' of movement for that round (otherwise the player is just gonna go with what Drag Ruler says and move another 30') π
Follow-up on this: I am trying to use a reference point added by "Crash's Tracking & Training (5e)" in the calculation of the DC.
The reference to the custom data is:
CrashTNT.getActivity(actor.name, "Wound Points").progress
Is this possible? If so, how so?
It actually is. Needs explicitly a premade actor on the sidebar.
I changed most of it, and when I cast it just now, I got an error regarding the weapon. I will try yours and see what happens.
So if mine is called Spiritual Sphere, change the Spiritual Weapon Attack to Spiritual Sphere Attack, right?
But it did spawn.
What does happen if you create an AE that changes movement with the triggering of the ability?
You can call the attack Steve for all that matters on the character sheet and then use that name in the macro. No need to contain specifically the name of the spell
Yeah I might need to try that, I'm thinking it would get messy if he moved a bit first then did it
I wonder if that will be depicted fine in drag ruler. If it just reads the .movement.walk of the actor with every update, it shouldn't have an issue
If it caches someway that, then it might not pick up the change
also doesn't the movement.all key not work, make sure you use walk
what's the error?
How do you calculate the DC? And what does CrashTNT.getActivity(actor.name, "Wound Points").progress return? A number?
Yes, it returns a value of the number of "Wound Points". The DC would =10+Wound Points
oh well! Post the macro in full too
const version = "10.0.13";
try {
const origin = args[0].itemUuid;
if (origin) {
const removeList = actor.effects.filter(ae => ae.origin === origin && getProperty(ae, "flags.dae.transfer") !== 3).map(ae=>ae.id);
await actor.deleteEmbeddedDocuments("ActiveEffect", removeList)
}
const updates = {
Item: {
"Spiritual Sphere Attack": {
"type": "Weapon",
"img": args[0].itemData.img,
"system.actionType" : "msak",
"system.properties.mgc": true,
"system.attackBonus": ${Number(args[0].actor.system.abilities[args[0].actor.system.attributes.spellcasting]?.mod) + Number(args[0].actor.system.attributes.prof) + Number(args[0].actor.system.bonuses.msak.attack)},
"system.proficient": false,
"system.damage.parts":[[${1 + Math.floor((args[0].spellLevel-2)/2)}d8 + ${args[0].actor.system.abilities[args[0].actor.system.attributes.spellcasting]?.mod || ""},"force"]]
}
}
}
const result = await warpgate.spawn("Spiritual Sphere", {embedded: updates}, {}, {});
if (result.length !== 1) return;
const createdToken = game.canvas.tokens.get(result[0]);
await createdToken.actor.items.getName("Spiritual Sphere Attack").update({"data.proficient": false});
const targetUuid = createdToken.document.uuid;
await actor.createEmbeddedDocuments("ActiveEffect", [{
label: "Summon",
icon: args[0].item.img,
origin,
duration: {seconds: 60, rounds:10},
"flags.dae.stackable": false,
changes: [{key: "flags.dae.deleteUuid", mode: CONST.ACTIVE_EFFECT_MODES.ADD, value: [targetUuid]}]
}]);
} catch (err) {
console.error(${args[0].itemData.name} - Spiritual Sphere ${version}, err);
}
And you use that to call a save. Just try ```js
const DC = 10 + CrashTNT.getActivity(actor.name, "Wound Points").progress
console.log(DC)
is the weapon on the actor actually a weapon?
If its what you need you are off to the races
@narrow saddle is the weapon an actual weapon or a feature/action?
Use to better format your code
It is an attack in the features section of the spiritual sphere actor.
either that or is v10's warpgate choices not "weapon" but something similar?
show us the item's details?
use weapon
returns: 11 because the actor has 1 wound point
@narrow saddle try weapon instead of Weapon
that might fix the other two errors
but can't a type also be feature, they kinda sounded odd in defining what it actually was
weapon has worked.
Its the Weapon that is not a valid choice
yeah, lookin at the v9 version, it is infact a weapon not a feature
However now my problem is, that it isn't bringing up a damage button on the card. π
I am sure the macro prompted that in the V9 version.
what card?
the automated spiritual weapon is a seperate actor, you select it and fire the attack it has via sheet, combatbooster, or TAH
dnd5e's basic spiritual weapon behaves the way you are looking for
Yeah I am attacking with the actor that is spawned on to the canvas.
right, and you roll the weapon, do you have a target set 8)?
The damage should be automatically adjusted when casting the spell, using that spell slot
Yeah I have the target set, in fact looking in the actor it has created a weapon in there alongside "Bludgeon" called "Spiritual Sphere Attack".
Maybe I need to change the macro to "Bludgeon" instead of Spiritual Sphere Attack?
bludgeon is unrelated to your macro, spiritual sphere attack is what you made in the macro
if you roll spiritual sphere attack, it should roll an attack in midi on the target
The Spiritual Sphere Attack isn't appearing on TAH, but I can roll it from the character sheet.
I think that is the weirdness of combatbooster/TAH referencing proto actors instead of the canvas actor?
Delete the spiritual weapon token
Go to the actor on the sidebar, click prototype token and make it Linked
I wasn't aware TAH did that btw, so I'm kinda guessing it behaves like combat booster, makes sense for npcs honestly, and spiritual weapon is actually an npc.
When I do this
label=Dazed,turn=start,saveDC= 10 + CrashTNT.getActivity(actor.name, "Wound Points").progress,saveAbility=con,savingThrow=true
The DC is set to -1
Yeah done all that, but it still isn't creating a damage button for bludgeon. But it is creating a new weapon in the features called Spiritual Sphere Attack that isn't appearing in the TAH.
Should I change the name of Spiritual Sphere Attack to Bludgeon in the macro?
could try bracketing maybe?
Yes if you want to match it. Otherwise Warpgate will continue creating a weapon name Spiritual Sphere Attack
{} or ()
[] around a mod usually does interesting cool stuff in dae with effects in ae's
but I'm way out of my league here for ya
like maybe +[tntstuff]
just try putting it in parentheses ()
worse case scenario couldn't he also just turn all of that into a macro?
and define the crash thing as a const?
That worked π
Thank you for your patience and help.
You too @vast bane π
Thanks for clearin the way for the cowards like me still on v9 8)
My main campaign is still on v9. I have cloned my server and this weeks game is cancelled so I am playing with v10 on this server.
So far it is looking good.
I was awaiting Drag Ruler, and I can wait for Active Auras and ATL to catch up.
Could someone please help me figure out which settings I need to do to get MIDI Reaction Dialog to appear. I am trying to figure out how to fix the CSS for my Theme, but from everything I can see, I am either missing something or doing something wrong. I Just want to see this dialog so I can see what I have to do to fix the image in the button.
you need reaction not set as manual, turn on reactions in midi workflow, and then target the actor with the non manual reaction to have it pop up?
Parry should already be an automated reaction, so you just need to find the reactions in workflow which is I believe at the top of a tab
Thats not my image, its the image sent to me.
ok, in the item details of the actual reaction on the character, theres a drop down for type of action I believe, and you choose reaction, or reaction is damaged, just not reaction manual cause then it would be ignored
What do you mean by "reaction not set as manual"?
label=Dazed,turn=start,saveDC=10+(CrashTNT.getActivity(actor.name, "Wound Points").progress),saveAbility=con,savingThrow=true,saveMagic=true
Still returns -1 as the DC. How would I do this in a macro script?
just make sure its not manual, now go to workflow settings in midi and turn on reactions, its at the top of one of the tabs but you may be in v10 and its different tabs for you than me I think
but also automated reactions only happen when the guy is targeted by an action
I targeted them with a longsword attack.
counterspell is not going to trigger automatically fyi, shield would
counterspell is only going to trigger as an option if the caster is the target
That was silvery barbs. But I just added shield from the SDR and still not getting the dialog.
I am just going to go and find it in the code, cause this is starting to make me insane
are you using multiple rollers?
if RSR is doing the rolling, then midi can't check for reactions till it sees a midi roll
Pretty sure I am not...
genuine bug I guess, unless it is cause of the challenge mode thing, why is midi !?
Oh that is jsut some module I made for someone else. All it does is add the Challenge rating details to the character sheet. that setting is turned off in MIDI, I could disable it as I don't use that optional feature
you could check that box for allow all spells but I don't have that checked and get all the wizards stuff as options
dnd5e's srd spell does show up in midi's reaction prompt
I don't think its a bug, I think I am stupid and missing something. lol As clearly someone has it work aas they were able to report the issue to me. lol
is the player logged in and not YOU but some bloke afk ignoring their reaction prompts?
No I logged in as the test player. Cause I was curious if that was the issue
Do I need a seperate module to get that to work, like lmrtfy?
not if its shield
delete the fluff activation conditions, just out of pure curiosity
on the items
What do you mean?
nah that wouldn't do anything, are you actually hitting save in the workflow window?
It can sometimes be misleading to think to just close it
That screenshot was taken with me opening the workflow without changing anything, so they are the set options.
oh if they have no spell slots, make sure that box is checked for allow any spells, cause if hes out of slots, it won't prompt
Fresh test character, 4/4 1st level spell slots
find the culprit time at this point I think
you are absolutely sure the reactions are not setup as "Reaction manual"?
Dragged Shield fresh out of the SDR Compendium.
I think that you cannot reference it there like that.
Is this CrashTNT.getActivity(actor.name, "Wound Points").progress a flag on the actor or something?
These midi settings with the SRD Shield spell on the targeted actor should work.
is the actor on the canvas linked?
The SRD spell is not correctly set up for Midi execution
like is that the actor with all the right spells, if its unlinked and you dragged to the proto actor than that dude on the map is still barren of reactions
It has a transfer to actor on equip DAE and also disabled
PRetty sure it was importing this, but I also deleted the actor and readded him
So one of those two things I finally got the freaking reaction window
make sure the actual actor, double click the actor token on the map, has a reaction that is not set to manual
if the actor was unlinked and you were dragging onto the proto it probably wasn't working cause the target had no reactions
Thank you all very much. This was making me insane for the last 2 hours
Will MIDI geneate a button for all reactions? What if a player has 10 reactions?
It's almost like a Resource. But represented in a progression bar.
it will prompt all reactions that are not set to manual
worth pointing out I'm on v9 but I don't think that matters for you
And it has not specific class so I can't even style it nicely. This will just always look ugly with my UI... crap.
could always shoot tim a message
theres probably another window that will look ugly with that skin, the late targetting window
though I don't think its really that bad
Yeah, looks like I am going to have to do that. For now I can hide the image and it should look fine on 3 or less reactions
If you find the path in the actor data you might be able to reference it with @something, otherwise it needs a macro
with 5 buttons it looks like this:
I had to throw the srd on for the sake of making sure it prompted.
So if the name is short, it can do 4 fine.
See, that looks good to me.
late targeting window requires a few settings if you care to take a gander at that midi prompt
I'm such a NOOB. I'm sure I would find it in the console, but how?
It covers the text, if the dialog had a special class, I could hand craft it so the buttons never overlap the content.
initial guess check if it's added to the resources
_token.actor.getRollData().resources
you need to enable "requires target' in midi's workflow, then theres 2-3 spots where the late targeting setting is, theres an overall toggle and then 1 in gm and one in player
I could look at trying to get the dialog via JS. It'll be a little tricker. Reaching out to tim to see if hell add a class is by far the easier solution.
Either way, really thank you all for the awesome help.
open up that 0 in the training items
still getting a DC: -1
label=Dazed,turn=start,saveDC=@flags['5e-training']['trainingItems'][0].progression,saveAbility=con,savingThrow=true,saveMagic=true
I think its suppose to be progress not progression
yes
Go to an item on a character with that trainingItem progression. Open a weapon and in its details page go to its damage formula and add a +@flags.... (IIRC you have the autocomplete inline properties module active)
Can you navigate to the above path?
I don't but I can
hello people... can you help me?... I have my MidiQoL working, buuuut, my player cant roll attacks if they have no token in the scene... how can I allow that?
set targeting rules in midi workflow to not require target
mmm i have it on not require in the workflow
and when they try to roll an attack on their sheet nothing happens in chat?
are there any errors?
Bummer... so Drag Ruler keeps the token's history right from where the teleport starts... so in most cases you use your movement up with the teleport. So without going into depth adjusting the DR history, I'm out of luck. Oh well! π€·ββοΈ
No you cant as is right now
Midi tries to the speaker from at least an ActiveToken on the scene
nothing at all... it just dont post anything and got no error or anything
and it errors out if no token on the scene
you could place the tokens on the map and hide them?
mmm got it, so I will have to keep some token there hidden... and is there a way for the scene not to auto center in the controlled token?
active token might mean it has to be unhidden not sure
I'm surprised midi can't play off the assigned actor in the player list
Ignore that... I think a refresh fixed it.
I'm pretty sure center on token is actually a module doing that
if you mean pan to speaker, thats a core setting, and so obnoxious, should be off by default imo
I don't know what I'm doing wrong with the module, but when I try to do the @ whatever, it's not doing anything. Figured it out.
OK so it can work without a token on the scene, but you will need to go into the MidiQOL settings=>Workflow settings=>Misc and make sure that Chat cards use token names is unchecked.
Thanks!
Now I cannot decide if that is something that tposney might need to address and if we should bring it on his radar π
No, it does not seem as though I can navigate to @fickle arrowags.5e-training...
could just make the whole ae in an item macro, and define the flag as a const can't you?
So is there a specific reason that you are using that module to track that stuff?
I mean does it have a UI or something?
I have never used it π€·
No, it requires script to manipulate.
let actorName = actor.name;
let itemName = 'Wound Points';
let item = CrashTNT.getActivity(actorName, itemName);
let newProgress = item.progress + 1;
CrashTNT.updateActivityProgress(actorName, itemName, newProgress);
^^^ for example
hmm let me double check something
I am using it as a reference for when to apply certain effects and hopefully set Save DCs related to those effects.
FWIW β if you move, then teleport, then move β Drag Ruler counts the distance you teleport as part of the total. I guess it's setting waypoint history for each step and not realising the space between two of them shouldn't be counted. So an AE isn't going to help β rummaging around in the guts of the movement history seems like the only answer. A problem for another time π
What is that Resource tab?
You could use the normal resources of the actor's character sheet. Name for instance the Primary one Wound Points and use that value
Guys I have a problem and I don't what caused it. It just started happening today.
-actors dont update unless I close them and reopen
-I click the dice icon on items and they no longer roll, or sometimes they do or sometimes they happen minutes later
- now have a problem where an effect is not adding +3, updating until minutes later, or just dissapears.
Please help.... it just started going crazy.
everything will work fine... then minutes later nothing works at all. I have tried on 3 computers at 3 different locations
Tried rebooting the server?
ill try that again
Or name the first primary resource as Wound Points/Fatigue and use the 0/0 for wound points and fatigue points respectively.```js
let actorName = actor.name;
let actorD = game.actors.getName(actorName); //actor might already be defined.
//let itemName = 'Wound Points'; // you can use that to find the relative resource if its not the primary one
let currectWoundPoints = actorD.getRollData().resources.primary.value; //the currenct fatigue points would be actorD.getRollData().resources.primary.max in this example
let newProgress = currectWoundPoints + 1;
await actorD.update({"data.resources.primary.value":newProgress});
Then you should be able to reference that in the DC as `@resources.primary.value`
I've been had caching issues sorta like that. Do any plug in updates? Maybe try disabling everything and see if updates happen correctly
The problem I have there is that NPC's don't have those resources on their sheet and the effects apply to both NPCs and PCs
~~Oh well you can create a Feature named Wound Points and give it to all.
Same for Fatigue.
Use the item uses to track that or quantity.
Or a stackable effect.~~
Going in circles, these wouldn't work probably
what about the sanity and the other thingy dnd5e offers
ah I was gonna suggeest that lol
honor
since iits a toggle in the system, everything gets it instantly and you can probably css the name to whatever you want
So resetting it fixed, this time. Thank you
they do have resources, just not the same resources as actors
however you could just update the npc actor to have them
thats actually probably a priority issue, one in a hundred
two keys affecting the same thing in the same ae?
why two keys though, just put the +3 in the override
How does one do that?
token.actor.update("system.resources.primary.value" : 1);
you would add each one
or you can export the json file and add them all in, whatever is easier
That's a script that will add a resource to an NPC?
To me it seems like I should be able to make an Effect Macro that triggers on the start of the Actors turn that queries a saving roll. Based on the roll, it either deletes the effect or it does nothing waiting to activate next round on a fail? The Macro can reference the resource from the training module to add to the 10 to create the DC... What I need to know is how to smith this macro to make that happen:
for (const target of game.user.targets) {
const effect = target.actor.effects.find(e => e.data.label === "Dazed");
if (!effect) continue;
const { total } = await target.actor.rollAbilitySave("con", { fastForward: false });
if ( total < (10 + CrashTNT.getActivity(actor.name, "Wound Points").progress) continue;
await effect.delete();
}
Specifically on how to make it focus on the actor who's turn is starting.
If you use it inside an Effect Macro at turn start, token will be defined, as well as actor (read: https://github.com/krbz999/effectmacro).
So if you reference actor it will be the one who's turn starts currently. ```js
const effectCheck = actor.effects.find(e => e.data.label === "Dazed"); //effect is already defined.
if (!effectCheck) continue;
const { total } = await actor.rollAbilitySave("con", { fastForward: false });
if ( total < (10 + CrashTNT.getActivity(actor.name, "Wound Points").progress) continue;
await effectCheck.delete();
I think this is the best solution because I can't find a way that allows them to roll this themselves when it's not their turn.
I was hoping that I could get an effect to activate based on a successful save because I wanted the save to be at the top of the round, but I couldn't figure how to apply effect after they succeeded. This is the next best option that allows the player to roll the save.
Yeah you will need Requestor. https://github.com/krbz999/requestor
MidiSRD v10 compatible fork https://github.com/thatlonelybugbear/midi-srd/releases/download/10.0.1/module.json
Please test so that I can create a PR
Because it circumvents Midi? I'm using Monk's Token Bar for roll requests.
Sorry that is not for your case. Its a general ask for the users here π
Requestor can do what you want though. It can ask from other clients to perform tasks, like asking another player to make a save (the one that is the owner of current combatant for example)
Hello, i'm new to Foundry VTT, my players and me just move from r20 to foundry.
We are running a dnd5 with some homebrew and I wanted to automated some mechanics with midiqol.
My players can extract resources from enemies base on the damage roll.
I have created a feature with an effect to change the tertiary resource to automatically change their maximum dynamically and change the label of this resource.
Now the part I have issues is I want that when my player make a damage roll, i want to add 1/3 of their damage to the tertiary bar (floored). I do not know how to access the value of the damage roll
You could try #macro-polo or #1010273821401555087 for that since its only possible with macros.
Do you have the actor on use and item on use macros settings in MidiQol checked?
Create a script macro with just ```js
console.log(args[0])
With the actor on use setting on, open the actor's character sheet and locate the Actor on Use Macros button below special traits.
There set `name of the macro you created | After Active Effects`.
Afterwards make an attack.
All the arguments that are available through MidiQOL's as ~~workflow ~~ `args[0]` should be now logged in the console.
From there you can locate the damageList (or damageDetails? Not on pc rn) which will include the appliedDamage.
You then get that damage, divide it by 3 and update the actor's tertiary value
Done π₯³
OH WOW
This will help with many things, that exactly what I was looking for, thx
I just forgot my basics in code, a good old console.log() X)
@manic tendon pinging you here for future reference. Disadvantage on concentration checks when Hostiles are 5ft away from the token. Its supposed to be a world script (for v9 only as v10 has another solution implemented already).
MidiQOL needed surprisingly π
edit: Grab the one couple of messages below: π
Thank you so much β€οΈ
That should do it π€ ```js
Hooks.on("midi-qol.preCheckSaves", async (workflow)=> {
if(!workflow.item.data.name === "Concentration") return;
const token5e = canvas.tokens.get(workflow.tokenId);
const creatures = MidiQOL.findNearby(CONST.TOKEN_DISPOSITIONS.HOSTILE,token5e,5);
let validCreatures = arrayRemove(creatures, token5e);
if (validCreatures.length === 0) return;
const conditions = ['Dead','Incapacitated','Paralysed','Paralyzed','Petrified','Stunned','Unconscious'];
for (let validCreature of validCreatures) {
if (conditions.some(i=>validCreature.actor.effects.find(eff=>eff.data.label === i))) {
validCreatures = arrayRemove(validCreatures, validCreature)
if (validCreatures.length === 0) return;
else continue;
}
else continue;
}
const effectData = {
"changes": [
{
"key": "flags.midi-qol.disadvantage.concentration",
"mode": CONST.ACTIVE_EFFECT_MODES.CUSTOM,
"value": "1",
"priority": "20"
}
],
"disabled": false,
"duration": {
"rounds": 1,
"startTime": game.time.worldTime
},
"flags": {
"dae": {
"specialDuration": ["isSave"],
},
"core": {
"statusId": ''
}
},
"origin": token5e.actor.uuid,
"icon": "icons/creatures/tentacles/tentacles-thing-green.webp",
"label": "Disadvantage concentration because of enemies in proximity",
"tint": "",
"transfer": false
}
await token5e.actor.createEmbeddedDocuments("ActiveEffect", [effectData])
function arrayRemove(arr, value) {
return arr.filter(function(ele){
return ele != value;
});
};
})
i want to use this macro for Booming Blade and the workflow is perfect. the only flaw is that the damage dealt when the target moves is dealt to the source actor.... anyone know a fix for that?
I do plan on supporting this in the v10 update for the 5e integration by adding an optional teleport movement that you can specify a range and cost for (if I can get that to work in time).
Amazing
Does anyone know of a way to add the application of a condition to an overtime macro?
I want to automate an ability that forces creatures within 5 ft of the enemy to make a Con save at the start of their turns, becoming poisoned for 1 round on a failed save, and this to repeat every round.
https://gitlab.com/tposney/midi-qol#flagsmidi-qolovertime-overtime-effects
Did you try this, like the example of Hold Person?
v9 or v10? Simple overtime effect, but the aura part would need to be v9 unless Active Auras is v10 ready which I don't think it is
v9, and I'm using Active Auras nod
Really easy to do. Homebrew effect or not? If it's not what's the name and I can make it in a few
Just in a meeting rn
Just as a reminder beforehand, AA needs seen active AND in combat
Homebrew effect is fine π I can (hopefully) edit it from there π
And yep, both of those are enabled
Sounds good, if you get stuck just post here
Is there a way to make a workflow fumble after the attack roll?
I'm setting the property to true during the "preCheckHits" step but it doesn't seem to be working, with an item macro in the macroPass
You want to make an attack miss?
yeah
The attack is being made at advantage but I want it to auto miss if ANY of the die values is below a certain number
I can get it to check the dice just fine, but idk how to make it automiss
You can create a message with the rolls etc and then do a ```js
this.setAttackRoll(await new Roll('1').evaluate())
worked like a charm o7
Amazing, thank you! Another nail in the v9 coffin for me
Anyone can tell me the setting to display Spell Tooltip on v9
Spell Tooltip?
I want the Chat message showing the Ability Tooltip, example casting Firebolt it shows the effect
I think you are gonna need to show us what effect is and what spell tooltip is.
My first assumption is spelltooltip is description, and spell effect is attack workflows
Sound about right
description can be set clientside to always collapse, and then midi can be setup to hide the DM's descriptions, you need to sus out which one you are dealing with
click on the big icon line of the ability:
if it expands and shows a description then you are dealing with a client side setting that your players very very likely aren't setup with so your issue is a non issue
cause by default, chat cards do not collapse, the player has to elect to turn it on
Guess the DM did it
If its not expandable, then its the midi DM setting set too strongly
some DM's have a module that sets the player settings for them, I don't use it. You can change the setting but I think everytime the server restarts your settings will revert.
i've using midi qol for concentration automation or it should be. I can see al the settings are ticked in midi qol for it.
I can see that I have the spells ticked as concentration in both the main bit and the midi qol bit. However, it doesn't seem to be applying a 'concentrating' status to my players nor triggering a check when they take damage. Any ideas what this could be?
I'm on the latest version of foundry and it should be fully up to date. I can't see any modules it could be conflicting with
Can you post all the actual module, foundry and system versions?
as in all modules i have?
Foundry version, dnd5e, MidiQOL at least
Okay I am back with trivial questions. How does one abort a workflow. I can't find a method to do it and setting the property also doesn't seem to do it.
Midi QOL 10.0.15 (I did have the challenge armor thing installed but i've just uninstalled that to see if it helps as i'm not using it)
Foundry 10 Build 288
DND5e is 2.0.3
Do you use Better Rolls or its replacement maybe?
I do have that one installed. Is that conflicting?
Yes try with only MidiQol
Go to MidiQOL settings => Workflow settings => Misc tab, click export MidiQOL settings and DM me the exported file, so I can take a quick look
So with a quick test your settings work in my instance
Can you test with only MidiQOL and its dependencies? DFreds, DAE are fine too to keep up
righto
disabling all of those except the ones mentioned allows it to work. strangely and i have no idea why this would be it seems to be simplecalender that is causing the problem. As soon as I disable that and leave everything else as is...it works.
version of Simple Calendar?
v1.3.75
its not a big deal as its not a module I actively use. Think I just installed it as it was one of the recommended ones
uninstall it and reinstall from scratch
righto
Should be 2.1.27
i guess because its old but interacts with midi qol its causing some kind of conflict
aye that seems to have fixed it
small bump
At what stage are you trying to cancel the workflow?
Depending on what stage it is, you just return false.
preitemuse stage
and return false does work but it throws a ui notification, which is slightly annoying but ignorable
so I was hoping there was another way
Oh, strange that it does that
Always in the preItemRoll hook, there is a notification that it was aborted
or stopped (something like that)
so if I bumped it down to preamble then problem solved?
another quick one from me. A player has an item that gives them advantage against charm and fear effects (and to end them) is there a way to automate that? I can see how to give wisdom save advantage but not specifically fear and charmed
Not easily, midi-qol doesn't have a built in way to do advantage vs conditions.
Don't think so
thats fair. he'll just have to remember XD
I don't remember which ones can be cancelled rn
I made a worldscript for myself to do condition advantage, but it's complicated to setup.
Hooks on preSave would be needed
yeah the answer was no sadly
<#1010273821401555087 message>
Gives disadvantage on concentration checks if enemies are within 5 ft
Also v10 has a nifty way to do that too with just a DAE
You can check if the item is Charmed or Fear or something like that and give advantage
hmmm. mind dming me the details and i'll have a look tommorow?
Here's my (probably not the greatest) worldscript for it. It requires making a convenient effect that gives advantage on all saves.
I should probably just make the effect in the world script, but oh well.
Okay so if there's no way around it is there a way to swallow ui notifications instead?
Depending on what you're trying to do, you might just be able to make the specific target save or not get hit depending on what you're trying to do.
yeah just some 1hit or 1save AEs are doing wonders π
So:
It's a firearm weapon. You haveto spend an action to load it and then an action to fire it. I'm trying to make it so that the player only has to press one button for both using the ItemMacro.
Currently it works. When not loaded it sets a flag that marks it as loaded and then aborts with return false;. I'm doing this in preItemRoll mostly so I can avoid the MidiQoOL card from being sent so I can replace it with my own flavour message for the loading action
I made my firearm have item uses
and the macro fill it back up
so once the it's out of "ammo" you get stopped from not having any uses left
Assuming this is the Gunslinger class, it's also just one of your attacks from the attack action to reload.
I have a feature with a item macro that "reloads" the gun.
let itemName = args[1];
let actor = args[0][0].actor;
let itemFeature = await actor.items.getName(itemName);
let usesMax = itemFeature.data.data.uses.max;
await itemFeature.update({
'data.uses.value': usesMax
});
oh yeah that's what I was trying to avoid, having multiple buttons
ah
You can change the item on the fly in the preItemRoll hook
make it do something else π
Oh, that's not a bad idea
Change it to a feature that just says you're reloading and has nothing to do for targets
if uses = 0 change stuff around
I am unsure of what you mean
if not continue to roll attack
Hi, all. I want to set an activation condition for the other damage (1d8) on a weapon to only go off if creatureType=undead (I think that is the correct code right?)
But where do I specify that activation condition? π€·π»ββοΈ
babonus supports target roll data.
if (args[0].macroPass === "preItemRoll") {
if (args[0].item.system.uses.value === 0) {
foundry.utils.setProperty(this.item.system,"actionType","other") //this is the workflow, same if you defined it as const workflow = MidiQOL.Workflow.getWorkflow(args[0].uuid).
//etc change the item around to do something else and just update the quantity or the uses instead
}
}
Thank for the quick reply, Zhell. ππ»
I will by all means give that a go if it's the best way but I'm having a bit of a module/macro crisis and feel like I'm barely keeping up with the configs that I'm already using so, if it can be done in Midi, I'd rather do so to keep things somewhat familiar. If not thought then I shall get Babonus installed! π
in the Item's details tab
In the activation condition field
Ahhhhhh, it's up there!
But check the MidiQOL readme for the correct activation condition π
How did I miss that... Thank you...
"@target.details.type.value".includes("undead") ????
or "@raceOrType".includes("undead")
This takes care of situations when the target is a character actor, which has a different data path
also ['fiend', 'undead'].includes('@raceOrType') for more types
Amazing, thank you.
@undone sorrel if you go that route (changing the actual workflow), you might need to flag the original values of what you change and restore in an After Active Effects macroPass.
That is to be safe. Cause sometimes the changes are getting committed to the server (needs some sort of update happen when the change is on or something π€ )
I figured as much
But needed to step away from my pc for my sanity so I haven't tested it π€£
Always a good idea π
Actually I have decided that's it's too much work for something that already works. Maybe the me that wakes up in the morning will feel differently
Thanks for the help either way π
is it possible to have the flanking rule of midi to auto apply the effect "flanking" for the metric system? Mine seems to apply flanking effect from 5meters away π
What would be a good way to get an effect to trigger a "Never Automatically" macro every set amount of seconds? I'm trying to come up with a way to make an effect (that regenerates health) work out of combat.
I'm guessing it would be something tied to timesup or simple calendar?
Might just be easier I guess to just assume the player will have time after combat for it to just heal up to it's limit.
@errant cosmos put this in the activation condition
['undead'].includes('@raceOrType')
So, I'm looking for a way to add a "+1d4 damage" bonus vs Undead creatures to a Melee Weapon.
Then put the extra damage in other formula and you're pretty much set
If I want to do 1d4 radiant damage is the syntax 1d4['radiant'] ?
No quotes
you do have to make sure the activation condition setting is turned on in midis settings as well.
Workflow part I believe
Thank you, that worked perfectly!
Here is the item (a magic rapier that does 1d4 bonus radiant damage vs undead) for future reference:
Does anyone know of a way to create a magic item (gloves) which allows the PC to cast "Fear" when they score a critical hit (using any melee weapon attack)?
I have a lot of control over this particular magic item, so i could just make up an item with a different effect that is easier to automate...
About Time API
This is doable but it just depends how much you want to automate. Is the Fear spell on the person they hit?
I'd most likely just use one of the magic items modules and embed the Fear spell into the gloves, tell the player they can use it when they crit, most flexible solution
I'd be fine with "yes, the fear spell is on the target they hit" or "place a template", whichever is easier.
Honestly, I just downloaded the Magic Item module and that does seem remarkably easy. There doesn't seem to be a way to cause it to trigger the spell when a critical hit is rolled (probably need MidiQOL for that), but manually casting the spell is adequate.
Similarly, the same item is supposed to have the effect, "When you roll a 1 on a melee weapon attack, you take 2d6 damage from the gloves." (Thematically, they help you when you're doing well and they turn on you when you're doing poorly). I can't figure out how to trigger spells on Critical hits or misses though (20 or 1)
Yes its doable. I would get the Items with Spells module.
Put the Fear spell (maybe give it a unique name if the PC has other spells too) on the Item in the sidebar and do all the setting up there.
Then drag it on the character.
An item OnUse macro on that item which would be executed as ItemMacro | After Active Effects ```js
if (args[0].isCritical) {
const item = token.actor.items.getName("name of the spell you put on the item");
await MidiQOL.completeItemRoll(item)
}
I think nat 1 is args[0].isFumble?
I just realized they said gloves, does this work then? Doesn't it have to be the thing triggering the workflow?
yes I used the Critical in this instance
oh yeah I just added
Ah didn't see the whole conversation. But it can be an Actor onUse macro instead triggering when needed
So Actor on Use with the same exact principle, but something like: ```js
if (args[0].isCritical && args[0].item.actionType === "mwak") {
const item = token.actor.items.getName("name of the spell you put on the item");
await MidiQOL.completeItemRoll(item)
}
The good thing is the the Item with Spells module is adding the spells on the item you create on the character sheet.
So you can call them easily to roll them
if (args[0].isCritical && args[0].item.actionType === "mwak") {
const item = token.actor.items.getName("Fear");
await MidiQOL.completeItemRoll(item)
}
if (args[0].isFumble && args[0].item.actionType === "mwak") {
// do 2d6 damage to the player (not the target)
await MidiQOL.completeItemRoll(item)
}
So I can just put something like that in the "Item Macro" on the Magic Gloves?
After I get the "Items with Spells" Module and put "Fear" on the Magic Gloves?
I started using the "Magic Items" module (https://gitlab.com/riccisi/foundryvtt-magic-items) just this evening, I could ditch that for "Items with Spells".
You put that in the ItemMacro of the Magic Gloves item, yes.
But you need to create a DAE on the Magic Gloves, with:
a. Transfer to Actor in Item equip box checked in the DAE Details tab,
b. flags.midi-qol.onUseMacroName | Custom | ItemMacro.Magic Gloves, postActiveEffects in the Effects DAE tab.
I am not using Magic Items so not sure how to do that with that module rn.
I have examples on my gitlab
I dont' mind switching to Items with Spells. I already downloaded it....
For the second part ```js
if (args[0].isFumble && args[0].item.actionType === "mwak") {
const roll = await new Roll('2d6[piercing]').evaluate();
const msg = await roll.toMessage({flavor: "You fumbled and hurt yourself. I wonder why!"});
game.dice3d?.waitFor3DAnimationByMessageID(msg.id) //available in v10 only
await MidiQOL.applyTokenDamage( [{type: "piercing", damage: roll.total}], roll.total, new Set([token]), null, new Set(),{});
that's gonna say necrotic is undefined
Should I create this as a "Passive Effect"?
This particular item deals "piercing" damage.... which of the two lines referencing necrotic damage are you expecting to throw an error?
No worries it was for the code above. When its a fumble what type of damage do the gloves deal?
edited
and 2d4 no 2d6? Change in the code above to what you need π
On the Gloves of the Great Wolf Item you created, click on the DAE button on its title bar
I wouldn't use those 
yay I nat 20'd everybody is feared
technically the wording in that text, even the user should roll too. Should be a cursed item.
yeah it sounds like it π€·
Yeah, I know. π It's weird. The item is from Pyram King's Curse of Strahd module. I'm not quite sure what to make of the fact that the fear effect should entangle the wearer. On one hand, we could say the item is cursed, and like "holy shit spectral wolves just leaped out of my hands", but on the other hand it is probably meant to be a strictly beneficial effect and he probably meant to write that the Fear affects only hostile targets.
Oh actually, it's NOT from PyramKing, it's just a random item I found on the internet. I don't recall the true source.
Hmm now that I come to think about it, depending on your MidiQOL settings, you might need to move that macro execution forward. Like ItemMacro | After Attack Roll instead of ItemMacro | After Active Effects
My Midi QOL is set to maximum automation.
OK give it a try and let us know. Will take it from there π
Got to run for now π
is there a way to implement lucky footwork? it should be triggered on a failed dex save and give a bonus to the throw afterwards
Maybe an optional flag in midi. You can add optionally a 1d4 to Dex saves when you see the roll and the DM says you failed it.
Or a world script to make it more robust with the conditions and also trigger the reaction used condition if you use it
This was an interesting non error last night in our session, and I say non error cause it was not yellow or red lol:
Do you have the Times UP debug setting on for some reason?
Ah probably not. tposney logs some arguments for some reason
I'm commuting, that paste was from my notes last night in another discord lol I can check in a few when I get to my cubicle from hell
I think it was a dfreds CE that I have made for a MPMM creature
One of the MPMM's humanoids has a spell attack called Arcane Burst and instead of making it on the character I made it a dfreds ce, its basically on hit, apply help action, but for some reason it does that in the log sometimes
if I recall, it has a special duration of next attack on target, and it also has 1 round/6 seconds duration as well, maybe that has something to do with it
those perfect vision errors in module troubleshooting, I say PV cause the second PV gets turned off they stop showing up, when it happens, the actor is usually doing attacks, the attacks behave like they are not done with the midi roller until they start a new workflow, no errors of midi, just the roller defaults back to core for a few seconds.
It has something to do with that ugly ass massive warpgate/wildshape macro you made for me looooong ago, its got like contributions from you, zhell, flix, freeze. Its the thing that summons a special actor and hides the druids token but doesn't delete it. And whenever she does a few select things with the new token the error flies often not even for her character, she may be just trying to do a reaction on another turn, and another attack suddenly uses the core roller.
Hmmm does it have a DAE special duration set?
Ah yes next attack
yeah, the ends after next attack, I assume thats dae not times up but come to think of it...are those actually times up?
This is an "error" log when combatUpdate.js from TimesUP cannot delete an effect
its literally a carbon copy of the help action but its applied on hits with arcane burst
could it possibly be because a player attacks and the effect is on a npc?
oooh hol up, I do recall in the session the npc, which is a escort mission npc so on the side of the players, had it on the bad guys, and none of the players actually did an attack so she attacked again, and it applied it again while it was still on it and thats when that happened
Should be fine. The only problem would be if two different items both applied the same condition and you wanted it to stack, but not if it was the same item twice, which is pretty out there.
Yeah, I had forgotten to add her to initiative, so she took a turn at init 0, and then her init roll put her at the top so she took two turns back to back
next attack is adjudicated by midi-qol, not dae/times-up.
I was ultimately just trying to capture this insidious PV bug error messages and this thing popped up in the log while playing
since it wasn't yellow or red I figured I'd snippet it since it was unique
It is this essentially combatUpdate.js:112 ```js
try {
await removeOrDisableEffects(targetTurnActor, expiredEffects, "times-up:duration-special");
// await targetTurnActor.deleteEmbeddedDocuments("ActiveEffect", expiredEffects);
}
catch (err) {
log("effect delete failed ", err);
}
so maybe some sort of wonkiness cause she acted at init 0 temporarily, then benefited from her own effect for the next turn too?
cause when she hits shes the one that applies the offended ae maybe confused things?
I think for that error to be thrown, there must have been a turn start/turn end special duration and the actor for the turn was mucked up, but guessing here.
If anything, I think reporting this error taught me I mucked up the ae, as its suppose to special expire on next attack and I have the wrong setup:
I think its suppose to be the next time ITS attacked since its a debuff on the target(grants advantage on)
ooooooh I think I got it and why it got screwy, she wasn't in the initiative but the attacked was
cause I had forgotten her and rolled her init after the attack?
I can't replicate it, chalkin it up to weird live session weirdness
Yeah an edge case most probably.
Actual real-life seconds or in-game seconds? Make a while loop.
let {value, max} = actor.system.attributes.hp;
let active = effect.modifiesActor;
while ( value < max && active ) {
await actor.applyDamage(-1);
await new Promise(r => setTimeout(r, 1000));
({value, max} = actor.system.attributes.hp)
active = effect.modifiesActor;
}
@gilded yacht
DAE breaks core hooks. It is impossible to read the previous state of an item directly off the item when using preUpdateItem for example. π
Call lightning seems broken π
(That was after casting it once and failing the save, a save which should not have been present π€ )
I haven't actually changed the spells at all from what they were.
There could be another issue with the foreground/background what was yeeted in v10. I will take a look
Looking at the code right now, not entirely sure why it failed this way
Also another note, seems some of the embedded items (E.g. from the sub-spell for call lighting) still use the old paths for icons
Also the deleteItems function seems to be referencing _id, which in turn means it does not actually delete anything
Hello again - I am tinkering with MidiQOL currently, specifically with autoroll of attacks and damage. I've found that weapon attack damage calculates for a rather long time ~30 seconds after it confirms a hit. Is it normal? Is there a way to speed it up?
Hey, so I just updated Midi-QoL and now I'm having trouble rolling my attacks
Still on V9
Foundry - 9.269
DnD5e - 1.6.3
What midi version?
But the items do have an ._id so no issue there π€·
Hmm, well item deletion is borked, lemme try and run it through a debugger
Might be the flagging issue. DM me if you find something
ah, seems to be the filtering thats borked, it does not pick up the item correctly
Hmm is it an unlinked token by any chance?
Its not π
Check your Midi settings => Workflow Settings => Rules tab (v10) / Optional Tab (v9) for reaction handling timeout.
Or Misc Tab in both versions for Saving throw timeout.
These settings wait for the players input before continuing the workflow
Oh, that makes a lot of sense. The long pauses were on two players who have such reactions available. I'll check that, thanks!
posted this in "module-troubleshooting" but it seemed this was a better place for it
Hey guys, is anyone else having an issue with Midi-QoL where the module is always excluding item details in the chat cards? For example, spells don't say what they do in chat, they just have the name and a couple buttons to press.
I assume this is meant to be tied to the "Show Item Details in Chat Card" setting in the Midi configuration, but no matter which option I select in the dropdown the result is the same.
When I disable the Midi-QoL module the chat card details return, so I'm fairly certain the issue stems from this module.
Any advice?
What do you have for your system setting for Collapse Item Cards in Chat?
Also can you show a pic of the misc midi settings tab, the top section
This is mine
For "Collapse Item Cards in Chat" I've tried both settings (and verified that the details weren't simply collapsed) but currently I don't have it checked.
As for misc midi settings:
I've tried all of the dropdown options for "Show Item Details in Chat Card" and seemingly nothing changed.
What character are you rolling from?
I'm rolling from a player character.
I'm signed in as the Gamemaster if that matters - though I've also tried signing in as a regular trusted player and the result was the same.
Does it work when you swap to this?
Also can you test with a brand new character and an item from the SRD compendium
Actually, yes, swapping to NPC + PC made it work. I could have sworn I'd tried all the options but maybe I had some other setting different at the time.. odd. Thanks for the sanity check.
Does that result make sense though? I would expect that with just PC selected it would have shown details for a player character.
Β―_(γ)_/Β―
What happens with your settings and then from incognito, rolling from a player user
v0.9.83
That's what I'm on and I don't get that error
Do you get the error from rolling an SRD item?
Let me check
Just checked. The result is the same. Really seems like the PC option just doesn't work.
Thankfully I can make PC + NPC work for my game. Thanks again!
Ok. I found the issue. I had targeted a token that no longer had an actor associated with it.
Ideally, that shouldn't occur. But might want a better error message for that scenario.
Hi! I am setting up MidiQOL for the first time (V10 foundry, latest QOL release) and its been going great. One thing I have been searching for is what is the best way to do Magic Missiles? When I cast it with MidiQOL i just have the one missile. I can re-apply the damage manually, is that recommended solution?
I am also curious about Concentration spells that continue to do damage like Witch Bolt or Heat Metal, is there automation for it or should I just plan to handle it on my own?
MidiQOL OverTime effects can help with that.
The Witch Bolt case is better handled by creating a separate item for the Witch Bolt damage that the player can use if they elect to spend their action like that
*Maybe an Other Formula damage applied if the player is actually concentrating (with an activation condition of the effect Concentrating is active!) π€ *
There is a pretty cool Advanced Spell Effects setup for this, with animation and everything
It prompts the player to assign missiles
ASE is v9 only
Yeah. They are working on a v10 update, but it's not there yet
I'm actually waiting on v10 for exactly that reason
Hey everyone. I'm trying to create an effect for the Fire Rune of the Rune Knight 5e subclass. The only thing I am having trouble with is setting the save DC for the end of turn check to be equal to the "caster" DC. Using the standard 8+@prof+@abilities.con.mod takes all the data from the target of the effect, not the caster. Is there a way to do this without a macro? I tried copying the Hold Person MidiQoL sample item, but in the case of the Hold Person spell it takes the Spell DC of the target, not the Spell DC of the caster. I apologize in advance if this question is answered somewhere else. I actually don't know if this stuff is technically a macro. What I mean is I want to do this within the effect definition and not in a formal complex macro.
This is my hold person but it uses caster dc for it
label=Hold Person,
rollType=save,
saveAbility=wis,
saveDC=@attributes.spelldc,
saveRemove=true,
saveMagic=true```
I handle magic missile manually via the core method of applying damage when multiple targets are chosen
I'm sure someones got a macro but I just don't got the energy to find and write it only to have to rewrite it in v10
ok sounds like I will wait for Advanced Spell Effects and do it manually until then π
Is there any setting or way to have the DM provided with more information on the reason for midi qol determining advantage or disadvantage. (IE - I spent hours trying to determine why my testing was roll dis everytime, only to realize that my targe was in an unlit area, flagging it as hidden) If I could see the info on a card then at least if it comes up in session I will have an answer at hand? Thanks in advance.
I think you can use the optional label flags
Wait no, I lied. Ignore that
V9 or v10?
V10
I think Effects Panel is v10 ready (on v9 myself) which will show any on AEs and a description (if used from Convenient Effects). There's also a @molten solar module that does the same thing if not very similar. Idr what that is though so either they can mention it or someone that knows
Thanks
You can use the Tooltip in midi qol with advantage attribution.
Midi settings, workflow settings, misc tab I think.
That was exactly what I needed! Cheers
Visual Active Effects and Effects Panel overlap in functionality. Major difference is, I suppose, the formatting and css.
I also purposefully made all settings global rather than client-side.
and VAE will use flags.convenientDescription as a fallback, so really, you can probably use either.
isn't the conditional invisibility thing in v10 not an ae though?
Foundry v10 288, Dnd5e 2.0.3
When a creature hits a character that has a shield spell, it doesn't offer me a dialogue prompt to choose a reaction from, only a message in chat as a reminder to do so manually. Is there anything I am missing?
Is Shield spell set as reaction?
Yes, pretty much a default shield spell, it does say 1 reaction in an appropriate field
It is also prepared
And available spell slots?
Yes, 4/4
All status conditions are ActiveEffects.
Is the token being struck a linked actor?
if it isn't, does that specific canvas actor have shield?
Also, just cause it looks like dnd5e's, did you fix the dnd5e's version of shield to be setup for midi?
Otherwise, drag out midi srd's shield or fix the inactive effect on dnd5e's
(and the fact it binds on equip)
Hm. How do I check that?
Afraid I am not familiar with the terminology
double right click the token on the map, if the actor data is linked(checkbox) in the first tab, then you are fine
Oh, let me try that
alot of dnd5e's stuff out of the box behaves weirdly in midi, thats kinda why midi srd existed I think
but its only in PR form in v10
Midi probably thinks you already have shield activated if its dnd5e's as dnd5e's applies an inactive version to the actor
also make sure the inactive shield is deleted in the effects tab of the actor
