#MidiQOL

1 messages ยท Page 29 of 1

vast bane
#

You are breaking the hearts of all the ASE users hehe

scarlet gale
#

ASE was nice when it lasted

vast bane
#

pretty sure hes intending to update it

scarlet gale
#

Only thing I haven't replaced with my own macro from ASE is magic missile.

vast bane
#

Also I bet Kandashi will return in force and update his other modules

slow owl
#

ah okay, I'll maybe just leave it as is then. I think its the kandashi modules I'm haiving issue with - DAE/Midi SRD

vast bane
#

I just didn't want to remake all my premades all at once, now I feel with the work that Bugbear did, and kaelad/mrprimates work on aa/ate, its an attainable update for me.

graceful geyser
#

Without Active-Auras there was a wide swath of effects that can't be automated. The current situation, where we're passing around Primate's de-facto inheritor manifest is less than ideal. Kandashi obviously deserves to captain the ship they built, but this sort of thing (a fractured module environment) is exactly what FVTT's critics decry about the system

vast bane
scarlet gale
#

Nature of all software that allows user created content, I don't see if being any different then playing video games that need mods to get updated when the main game gets an update.

graceful geyser
#

It's not though, there are other systems on Foundry that don't see this level of module fracture surrounding the golden path for play. The reasons are complex and multi-faceted, no one person's fault, but DND5e on Foundry is uniquely tricky

vast bane
#

alot of midi srd and premades in general are probably going to be replaced over time by bab/effect macro/new midi/dae functions in v10

slow owl
vast bane
#

Its just a matter of getting a cohesive repository for us all, tposney posted about this but I saw no results whether theres some sort of work going on in the background or what?

#

I don't think midi srd is the path to take for it as theres more premades of non srd content

scarlet gale
graceful geyser
#

Yes. But why is the DnD system more simple? Answer: It's complicated. Atro's personal preference, sure, but why is it up to Atro alone? Well WOTC doesn't support it officially or unofficially. Why not? Well...

On and on, it's complicated

vast bane
#

maybe we should use like gearheads to post the premades?

scarlet gale
#

Yea, official support would likely make it better. But it won't happen because WOTC is making their own VTT.

graceful geyser
#

Ya, it's not worth getting into. The unofficial-dnd5e-automation-environment is mostly concrete around midi, dae, and itemmacro and it's good enough 80% of the time. Just unfortunate that active-auras, which would likely be the fourth addition to that list, currently needs a manifest that isn't in the official registry

vast bane
#

I actually think that Effect macro is a strong contender now too

scarlet gale
#

Alot of Zhells stuff is really nice.

vast bane
#

I love its capability to store the macros in the affect/item

molten solar
#

I tagged the release wrong. ๐Ÿ˜„

scarlet gale
#

I figured as much lol

molten solar
#

10.0.0 instead of v10.0.0 lul

molten solar
scarlet gale
#

Is it expecting the template or the document for that function?

molten solar
#

templateDoc

#

I didn't change it at all for the full release

scarlet gale
#

So if I use the template variable you passed, it should be template.document?

molten solar
#

Yes

#

I'll double check but I believe so. Try logging it

scarlet gale
#

Gonna try with less modules active

molten solar
#

Can you send me the macro?

scarlet gale
#
console.log(template);
console.log(this);
let tokens = game.modules.get('templatemacro').api.findContained(template.document);
console.log(tokens);```
#

Was just testing out how it worked and had errors right away

molten solar
#

Hm, no errors here

scarlet gale
#

ah ha

molten solar
#

Of course it does. What does it do, delete all the flags?

scarlet gale
#

hold on

#

still testing

#

I may have spoke too soon

#

oh wtf

#

Token Magic Fx?

#

Yep, it's Token Magic Fx

#

that's very weird

#

Latest changelog for that module

#

It lies

#

oh well

#

Easy enough to just downgrade a version

molten solar
#

Beta release? ๐Ÿ‘€

scarlet gale
#

It's the one that auto downloaded when I hit update modules

molten solar
#

๐Ÿ˜ฌ

scarlet gale
#

I checked the version number

#

So much for being a beta

molten solar
scarlet gale
#

Was just trying to figure out who the dev was

molten solar
#

Congratulations

#

You get to ping staff

scarlet gale
#

oh?

molten solar
scarlet gale
#

yea

#

Ah

#

I see

#

In the mean time, if you had to store whether a token has already been in a template during a specific turn, what do you think the best way to store that info is?

#

Flag on the actor?

#

Flag on the template with a list of actor ids?

molten solar
#

Since it's during a turn, maybe flag the combatant or the combat

scarlet gale
#

Oh, that's possible?

molten solar
#

They are documents

scarlet gale
#

That seems way better, and far less likely to leave a flag on an actor if something goes wrong

molten solar
#

A combat is a Combat document with Combatants as embedded documents. Flags and all.

scarlet gale
#

Makes sense

molten solar
#

With a weird quirk that players can actually update the combat - I think? They can end their turn at least. I dunno, didn't test that, but they can update their combatant, which is an embedded document of a document they don't own (the combat). Which is weird.

#

Anyway...

scarlet gale
#

Won't matter much, I'm running the template macro as GM due to processing effects on other tokens

#

So it shouldn't be an issue

molten solar
#

It should not, no

#

and getting the combatant from a token is just TokenPlaceable#combatant

scarlet gale
#

Can flags contain sets?

molten solar
#

Easy to test

#

Just setFlag("world", "steve", new Set()), see if remains a set or turns into an array

scarlet gale
#

I'll have to mess with this more in the morning, thanks for the help.

wind fossil
#

Is the Roll Other Damage workflow global only? i.e., a player with a weapon of slaying and a different weapon attack that does some secondary damage based on a save has to "pick one" to automate with midi?

vast bane
#

pretty sure theres checkboxes at the bottom of details on the items?

wind fossil
#

that checkbox reads Activation condition true required for effect activation -- I'm confused because I just tested the midi sample arrow of slaying and it worked as expected but the box isn't checked

violet meadow
#

Moto us probably talking about a different checkbox. A bit further down in the MidiQOL properties.

#

So you have set a Save on the item? And an activation condition for the Other Formula?

#

And if save fails it should apply an AE?

vast bane
#

I think he just wants an item to roll other damage formula, isn't that just a checkbox

#

wait a minute

#

what is the second weapon in your example

#

I think he doesn't realize you can drop more damage formulas in

wind fossil
#

to clarify, nothing is really "broken", im just trying to understand what these options are for

vast bane
#

both weapons you gave an example for would work with that setting, because an empty activation condition is true

#

the only time it would be a problem, is if you are trying to put like the flametongues fire damage in other instead of an additional damage formula

wind fossil
#

hmm ok so say for the ifSave, it doesnt work vs constructs or undead

vast bane
#

you would need to fill in the activation condition accordingly

#

the giant spider has a bite, that if you fail the save you take poison damage I believe, no activation condition required, its empty

#

you'd probably have to give us a use case example to understand what you are getting at, still kinda don't get what we're talkin about exactly

wind fossil
#

well let me start with this, how do you set up an activation condition to exclude raceOrType? .!includes?

violet meadow
queen comet
#

Is there a setting to allow magic weapons to full damage to those who are normally resistant to physical damage? I have some magic weapons that are auto-applying only the half damage.

vast bane
#

did you check the boxes on the items?

#

what do the monsters have for resistances setup?

opal wagon
#

Hey there! I'm trying to mod the MidiQOL sample item 'Spiritual Weapon MQ010.0.13 + Warpgate' so my players can summon a Moonbeam. I want to do this so I can have a 'Moonbeam token' that emits light (cause I don't have any idea how to do this otherwise - I want to to achieve something similar to what ASE did with spells like Darkness that came with a light source attached to a template). In principle it is easy, but I ran into an issue. I don't know how to make it a concentration spell. If I simple toggle 'concentration' in the spell sheet the effect is dropped immediately after casting. Any ideas?

queen comet
#

Yeah, its magical piercing +1 vs a normally resistant to normal piercing damage

#

Rapier +1 vs a Flameskull

vast bane
#

oh, actually, your issue is the monster not the weapon. Flameskulls are resistant to piercing. It doesn't matter if its magical or not.

#

I'm unsure if midi can handle that

queen comet
vast bane
#

I don't think you can pull off what you want, midi doesn't seem to break non magical physical up

#

but for the record, raw, that weapon should do half damage

#

so its right, but what you want, is not possible because theres no non-magical piercing resistance, wait didn't tposney just add custom damage types?

queen comet
#

i thought raw magical weapons overcome resistances

vast bane
#

they overcome non magical resistances

molten solar
vast bane
#

oh thats right v10's damage tab is different than v9

molten solar
#

That is core. Whether Midi recognises it yet is another matter.

vast bane
#

ok so zhells showing you how you can change to a non raw answer, but for the record, flameskulls are resistant to all forms of piercing

#

you are confusing the two things

#

midi does, I'm just on a v9 build, v2.0.3 dnd5e changed the damage stuff around

molten solar
#

For the better. It allows anyone to modify what weapon property is a bypass, as well as what damage type is "physical".

vast bane
#

its why theres a rule with midi in v10 where you have to have everything above a certain version, cause of the dnd5e change to that window

queen comet
#

ok so the issue wasnt midi honestly it was my bad interpretation of the rules

vast bane
#

you can make your flameskulls that way though if youwant

queen comet
#

well, RAW then I mean

vast bane
#

I think slimes have a similar thing with slashing

#

its very rare but they exist, probably why they changed dnd5e in 2.0.3

#

Elemental Spirit from tashas has a similar set of resistances, if earth form, it has resistance to piercing and slashing.

lunar notch
#

Hey Moto, I wanted to a workaround for the lack of Mob Attack --- What did you mean by this exactly?

vast bane
#

I forget what book its in but theres a way to make swarms out of monsters

lunar notch
#

Hmm okay yeah that in tandem with the Item with Spells mod I already got would be so fantastic if you're able to recall it ๐Ÿ™‚

#

I want to deploy Mob actions (within their Turn) should they be adjacent in Initiative and just need that last step.

violet meadow
covert mason
#

I'm looking to make a homebrew magic item: a bag that can convert currency into a higher variant, say, it can convert 5000 silver into 500 gold, or 500 gold into 50 platinum. Does anyone have any examples of such a thing in macro form?

molten solar
#

Click the conversion button on the sheet.

vast bane
#

probably wants a macro that handles it and reduces charges or something

#

isn't that conversion button a module?

molten solar
#

Core.

river pond
#

yo, quick question, i'm trying to configure an attack's effect to only trigger on a critical hit
i figure it's got to do with the activation condition, but isCritical by itself isn't working

(and yeah, the Activation Condition true for effect activation box is ticked)

violet meadow
#

workflow.isCritical

covert mason
river pond
# violet meadow `workflow.isCritical`

okay yeah that got it, thanks a ton
(also, side question, is there any documentation on where i can find more things like this? just so i can tinker around with more advanced effects and conditions)

violet meadow
near hare
#

So dear community, I need some help. I just updated to v10 for dnd and are using mid qql for automation. Awesome, but when I'm trying the functions, I can't get my lich to use power word kill on an acolyte. It doesn't happen anything. Other spells works but PWK don't generate the poor bastards death

violet meadow
#

How do you go about doing that though?

vast bane
near hare
vast bane
#

Midi doesn't automate things unless you make them

#

theres a few modules with premade stuff you can pull from, but dnd5e's basic stuff typically does not automate in midi

#

PWK is pretty easy though, basically make it apply the dead status to target token, undo it if the dudes got more than 100hp

#

could pull that off with a dfreds macro pretty easily

#

I am sure one of the macro gurus knows how to filter out creatures above 100hp too

near hare
vast bane
#

you need to make the item to work with midi. have you done this for anything else yet? How long have you been using midi?

near hare
#

I used midi for v9 and it worked flawless with my players and monsters with swords. Now when I updated to v10 I wanted to check if the spells like PWK worked.

#

so I have used midi for like 1 week

vast bane
#

You need to move a power word kill spell to the sidebar, once its an unattached spell there, edit it and add an active effect with the following key:

Statuseffect | Add | Dead

have the first tab of the effect have no boxes checked

#

you may want to save the sidebar spell in your own custom compendium and start moving all the automation you make to these compendiums so you have them for future reference

#

Additionally, if you have dfreds Convenient Effects, you could just make a CE of Power Word Kill that does the same thing that way it works for all your monsters as well as the players when they all cast their own versions of the spell.

graceful geyser
dark canopy
#

not in core

vast bane
#

there are problems when editing owned items in DAE that a new player will get lost trying to figure out

graceful geyser
vast bane
#

(And we don't know if they even have dae yet)

graceful geyser
#

Ignore me

near hare
#

I have had enough with crashed and lost journals and s*** so I don't have the patience for anymore troubles lol ๐Ÿ™‚

vast bane
#

it got alot safer to edit owned items in dae when he turned off the default of checking that box for apply on eqip

#

but its still wise not to tell the new guys about it lol

opal wagon
violet meadow
opal wagon
#

I was testing with an NPC, so unlinked

#

Is that a factor?

violet meadow
#

Yeah, seems with the latest MidiQOL update something might be off. Are you on v10.0.21?

opal wagon
#

. 20

weak hamlet
#

I see in the Midi Sample items, it uses an active effect to set a permanent effect. Is there a reason to do that instead of an actor update macro to set the flag permanently?

opal wagon
#

Thanks for the tip

vast bane
#

@violet meadow
My newest createitem use case, that I cannot wait to setup:

Using dfreds CE, you can setup humanoid archetypes where some are casters, some are crosbow experts, others are bow experts, 2 weapon fighters, sword and boarders and heavy weapon specialists.

#

just spawn your basic minions, and then toggle on whatever dfreds CE you want and they suddenly gain all the items

violet meadow
vast bane
#

Not my own idea, it was @lunar notch who sparked my genius plan lol

#

I bet you could also create ae's that randomize the stats too

violet meadow
violet meadow
vast bane
#

I mainly just want to have the weapons/armor/spell loadouts setup, its on my todo list lol

chrome gale
#

I currently have an item macro which I want to have trigger after a failed save (the attack its on has a dex-save roll), but it's triggering after all saves whether its sucessful or not... is there an easy solution?

hot flower
#

is there a way to code damage resistance to any damage that does 10 or less? I seem to remember there being a discussion on that, but I can't for the life of me find it.

vast bane
#

probably use the Damage reduction key but do some funky math with it. 5 or half damage total whatevers lower.

molten solar
dark canopy
vast bane
dark canopy
#

probably would need to use ac.bonus

vast bane
#

yep, great minds man, thats immediately where I went after I typed that

swift scaffold
#

Hello, Im not sure how to do this but I want to make versatile damage be the only one to trigger the saving throw. Any way to do that? Thank you

coarse mesa
#

@vast bane I'm pretty sure it works for Versatile too (despite what it says), since that's how the SRD creatures are set up?

swift scaffold
coarse mesa
#

Ah sorry I misread... idk about that ๐Ÿค”

swift scaffold
#

No worries haha I'll just do -100 on mod whenever it comes up on the 1d6

vast bane
#

if you want a seperate ability that damages on save, then make a seperate ability, if you want it to be a typical "on hit" save then put it in other and turn on the setting in midi.

swift scaffold
#

Yeah might have to do that. Thanks

swift scaffold
scarlet gale
molten solar
#

ehhhhhhh

#

could just use EM

scarlet gale
#

See I thought that too

#

But

#

Having to embed an effect macro on a token to handle template stuff seems clunky.

#

Plus, I feel like it would be better to have it trigger every turn, not just the "caster's" turn.

#

Alternatively I could try to put a hook in the template creation part to do that

dark canopy
#

Combat turns would be a system specific concept as well

scarlet gale
#

oh true

#

Although, Effect Macros has that

dark canopy
#

Well, their usage of the round and turn numbers

#

Which could be none... But then it doesn't matter.... So nevermind me

scarlet gale
#

The big thing is that I need to make a way to trigger a specific part of a macro to do some cleanup on keeping track if a token has entered the template during the current turn

#

I could just put another effect on the character that only lasts a turn

#

And do checks around that I guess

dark canopy
#

Stamp the turn and round number in the affected tokens flags

#

Read that back and look for a change before the application

scarlet gale
#

hmm

#

Not a bad idea

dark canopy
#

Or record it in the template itself, for permissions issues

scarlet gale
#

I'm already running the macro as GM on the template macro due to making effects on other tokens

#

So I'm not too worried about permissions

violet meadow
#

Hook on updateCombat?

scarlet gale
#

That's a potential way too

#

Can tokens be flagged separately from actors?

molten solar
#

Token documents are documents

scarlet gale
#

That might just be best then

#

Store the round and turn as a flag unique to the template id

#

Since that can just be handled in "When Entered"

molten solar
#

The correct answer is "Great shame"

violet meadow
#

(I just levelled up in my session so it will soften the blow)

molten solar
#

babonus doesn't block the unconscious paladin's aura... on the paladin.

narrow saddle
#

Hello this is happening when I roll damage at the moment in console -

The only modules I have active are -

socketlib
TidyUI -- Game Settings
Libwrapper
MidiQol
DAE

I did find the culprit and it said it was PDF pager?!? So that didn't help.
I have restarted the server twice.

#

Please can anyone help?

scarlet gale
#

midi left in a stray console.error in it's release.

#

I noticed that too, it doesn't break anything

narrow saddle
#

I got a bit concerned because is was an error. It isn't doing anything in the game.

scarlet gale
#

Guessing it was done to debug something and accidently left in

vast bane
#

last version added custom damage types right, makes sense

scarlet gale
#

yea

vast bane
#

just an oopsie

scarlet gale
#

One of the addon modules to dragruler in v9 has a debugger line left in it

#

That was fun to find out

vast bane
#

midi always has that advantage thing in console

#

in v9 atleast

scarlet gale
#

Had console open when I was moving a token and the whole screen turned grey

violet meadow
molten solar
scarlet gale
#

If you're trying to do something like flags.world?.spell?.cloudkill[template.id]? is that right or should the last question mark be before the brackets?

molten solar
#

flags.world?.spell?.cloudkill?.[template.id]

scarlet gale
#

ah

molten solar
#

or rather:

#getFlag("world", `spell.cloudkill.${template.id}`);
violet meadow
#

@vast bane did you try the delete when empty thing yet? Trying to figure if it works with your MidiQOL settings ๐Ÿ˜„

vast bane
#

I can't fiddle with v10 this week, we're doing a wednesday session and a saturday session, my tables doing some really intense stuff in campaign and they are all desiring more play time lol

#

only thing I play differently with is fast forward though

scarlet gale
molten solar
#

I would have expected an array

scarlet gale
#

oh well

#

Just means I have to do it in a dumber way

molten solar
#

You can definitely save arrays tho

scarlet gale
#

Yep, I'll just have to check in the macro if the token is already in the array

molten solar
#

Not really

#
const array = [...new Set(...)]
dark canopy
#

Set#toObject works as well

#

(does the same thing under the hood, effectively)

#

Set just doesnt have a toJson function

scarlet gale
#

So now I have an interesting issue, I need to pass the cast data to the template macro, I'm using item macros and midi-qol to set a flag on the template in it's workflow. The issue is that "When Created" is running before I can set a flag on it.

#

@molten solar Any ideas how I could work around that?

#

Maybe there's a better way to get the cast data?

molten solar
#

Hook onto preCreate

#

and use updateSource

scarlet gale
#

I just realized I can just do the initial stuff in the item macro

#

Probably easier then trying to mess with hooks

vast bane
#

@violet meadow Hideous Laughter macro version in midi srd ON V9 is throwing an error:

(is it meant to roll saves when damaged?)

scarlet gale
#

@molten solar I'm getting a weird error when having any sort of "When Deleted" template macro.

#

Does it will only template macros active.

molten solar
#

Day 1 patch time!

scarlet gale
#

Does the template still exist when the deletion part is being done? Trying to figure out if I can read flags off of it before it goes poof.

molten solar
#

The template document being passed to the hook can be used as much as you like

#

It was the _refresh I added which needs the placeable

scarlet gale
#

I'm getting pretty close to having cloudkill setup in a way I like. Need to wrap up cleaning up flags when it gets deleted.

#

Then figure out having it automatically move the template during the spellcaster's turn, that'll be interesting.

molten solar
#

Oof, actually I see now that since it's the placeable being passed to the deletion hook...

#

or rather all macro calls

#

Maybe in hindsight it's best to just change that to be the document

#

Yeah that's what I'm gonna need to do. template will be the TemplateDocument instead, otherwise the deletion macros just plain will not work

#

For people who still need the placeable, they can just do template.object

scarlet gale
#

Works for me

#

That's a change for all the events right?

molten solar
#

Yes

#

update out

scarlet gale
#

How would you guys handle a cloudkill running into a wall in terms of gameplay?

#

Just chill there and stop moving right?

scarlet gale
#

Everything is done except for making the template move on it's own. I'm interested in seeing if anyone can break this. Requires Midi-Qol, Template Macros, and Template Macros.

molten solar
#

You can store an entire object when you setFlag rather than doing multiple operations

scarlet gale
#

Oh

molten solar
#

eg template.setFlag("world", "cloudkill", {spellLevel, spelldc})

#

Looks good to me tho

scarlet gale
#

Next up is just having an effect macro that runs on the caster's turn to move the template relative to where the token is currently at. Hopefully wall collision detection isn't too hard.

molten solar
#

famous last words

violet meadow
late fractal
#

@violet meadow thought I would update you on my continued struggles with Spiritual Weapon, maybe you have ideas for better fixes. The version from your midi-srd seemed to work at first, but after a few casts it bugs out again. By "bugs out", it seems to try to run the Item Macro on every Actor, throwing lots of errors and giving everyone a copy of the summoned spiritual weapons. I cant seem to figure out why it changes to run for everyone. I was able to "solve" it by changing the passive effect, checking the "Apply to self when item applies target effects". This seems to stop the item script from executing on every actor.

violet meadow
#

@vast bane find in your local MidiMacros.js the Hideous macro and change this js if (args[0] === "on") { if (actor.system.abilities.int.value < 4) actor.deleteEmbeddedEntity("ActiveEffect", lArgs.efData._id) RollHideousSave(target) } to ```js
if (args[0] === "on") {
if (actor.system.abilities.int.value < 4) actor.deleteEmdeddedDocuments("ActiveEffect", lArgs.efData._id)
RollHideousSave(token)
}

#

That deleteEmbeddedEntity was not seen cause it is not common to target a creature with less than 4 INT ๐Ÿ˜„
target is not defined so I think token will do it.

violet meadow
late fractal
violet meadow
#

I am not using Argon. Does it remember last targets or something? Could that be an issue?

violet meadow
#

When recasting the spell?

late fractal
#

I will try turning off Argon, i am also going through various modules turning them off. Recasting generally means removing the effect from the caster (which deletes the template) and then casting it again. But thats not even really necessary sometimes. I can't nail down a pattern besides 9 times out of 10 it breaks. I have tried various reloads or different actors, etc without much luck.

violet meadow
#

Linked/unlinked actor?

#

Can you make sure that you have the DFreds Don't apply convenient effect checkbox checked (if its there) in the Spiritual Weapon's details page, down close to the bottom?

#

I cannot reproduce ๐Ÿค”

late fractal
#

unlinked actor, and I for sure have the Don't apply convenient effects checkbox checked. Still disabling various modules to see if I can isolate one

#

my repro is now better. After a reload I can cast the spell 1 time and it works. Subsequent casts fail until i reload. I noticed in the log that on the first cast i do see an error, perhaps that is related

dark canopy
#

you have likely left a hook enabled, but the callback function has gone out of scope

#

be sure you are managing hook lifetime correctly if you are creating them inside macros

violet meadow
late fractal
#

yeah nothing changed except clicking the Don't Apply Convenient Effect

violet meadow
#

MidiQOL version?

late fractal
#

10.0.15

violet meadow
#

The Hooks.once("createMeasuredTemplate", MidiMacros.deleteTemplates("SpiritualWeaponRange", actor)); Will probably be failing to get the correct target actor and thus never deleting and creating a mess

#

Update DAE too

late fractal
#

Updating MidiQOL seems to have fixed it ๐Ÿ™‚ Still see a hook error but it doesnt bug out

violet meadow
#

Yeah I will take a look for the hook error

late fractal
#

The measured template is cleaned up when the effect is removed. Not sure what the Hook is for? I want to keep the template until then

violet meadow
#

Not that one. Its the one that indicates the range within which you can create the Spiritual Weapon

late fractal
#

oh thats the "flash" that happens when it casts. Seems to disappear right after it appears for me

#

a cast range template would be nice

hot flower
#

could someone help with a web macro? I'm adapting the @scarlet gale's cloudkill series macros for Web... but I can't seem to figure out how to apply the Restrained condition. it's not applied when the spell is cast... it's checked against a saving throw at the start of each target's turn or if they enter the web on their turn. ```You conjure a mass of thick, sticky webbing at a point of your choice within range. The webs fill a 20-foot cube from that point for the duration. The webs are difficult terrain and lightly obscure their area.

If the webs aren't anchored between two solid masses (such as walls or trees) or layered across a floor, wall, or ceiling, the conjured web collapses on itself, and the spell ends at the start of your next turn. Webs layered over a flat surface have a depth of 5 feet.

Each creature that starts its turn in the webs or that enters them during its turn must make a Dexterity saving throw. On a failed save, the creature is restrained as long as it remains in the webs or until it breaks free.

A creature restrained by the webs can use its action to make a Strength check against your spell save DC. If it succeeds, it is no longer restrained.```

I think the overtime effect would be turn=start, rollType=save, saveAbility=dex, saveMagic=true, actionSave=true, saveDC=@attributes.spelldc, but how would I work in the restrained condition at the right time?

#

here's the item macro that I adapted from Cloudkill... js let template = canvas.scene.collections.templates.get(args[0].templateId); if (!template) return; let spellLevel = args[0].spellLevel; let spelldc = args[0].actor.system.attributes.spelldc; template.setFlag('world', 'spellLevel', spellLevel); template.setFlag('world', 'spelldc', spelldc); let effectData = { 'label': 'Web', 'icon': 'icons/commodities/materials/material-webbing.webp', 'changes': [{ 'key': 'flags.midi-qol.OverTime', 'mode': 5, 'value': 'turn=start, rollType=save, saveAbility=dex, saveMagic=true, actionSave=true, saveDC=' + spelldc, 'priority': 20 }, // { // "key": "macro.CE", // "mode": 0, // "value": "Restrained", // "priority": 20 // } ], 'origin': args[0].itemUuid, 'duration': { seconds: 86400 }, 'flags': { 'effectmacro': { 'onTurnStart': { 'script': "let combatTurn = game.combat.round + '-' + game.combat.turn;\nlet templateId = effect.getFlag('world', 'spell.web.id');\nif (!templateId) return;\ntoken.document.setFlag('world', `spell.web.${templateId}.turn`, combatTurn);" } }, 'world': { 'spell': { 'web': { 'id': args[0].templateId } } } } }; let tokenList = []; for (let i = 0; args[0].targets.length > i; i++) { if (!tokenList.includes(args[0].targets[i].id)) { tokenList.push(args[0].targets[i].id); await MidiQOL.socket().executeAsGM("createEffects", { actorUuid: args[0].targets[i].actor.uuid, effects: [effectData] }); } } template.setFlag('world', 'tokens', tokenList);

#

i guess the issue is the linking of the restrained condition to the overtime effect

molten solar
#

How many scripts do you want firing on the start of a turn? ๐Ÿค”

#

You got both DAE and EM

hot flower
#

well, like i said, I adapted this from @scarlet gale's macros above.

#

so not sure how to answer that

molten solar
#

Hadn't realised it used both, nvm me ๐Ÿ‘

hot flower
#

hm. maybe i need to call the initial saving throw in the effect macro?

molten solar
#

That is pretty easy to do

celest bluff
#

You have the Dae effect run on start of turn. On each is where you'd place a check to see if they're restrained, if not, then have them make a saving throw. Then if failed, then apply the condition.

narrow saddle
#

Anyone know anything about a problem with Dfreds or Midi? When I am casting a spell the active effect isn't being auto applied to the token. e.g. Mage Armour, no icon on the token and no increase in AC.

Yet when I apply direct from DFreds CE it is being applied.
All the correct settings are set in DFreds and Midi. (In fact I haven't changed any settings and it was working perfectly well yesterday)

Nothing in console and FTC isn't revealing anything.

scarlet gale
#

The overtime effect can be setup to remove itself on a save

vast bane
vast bane
narrow saddle
vast bane
#

those happen to all be spells that are noteworthy broken if you are using dnd5e's versions of them....

vast bane
#

midi settings, workflow tab(or whatever v10 does with that stuff) the specials section of it

#

should be a drop down like apply ce before ae or some weird stuff like that

#

and I wanna see the details tab of the mage armor spell on the actual actor

narrow saddle
vast bane
#

ok, so now show us the details of mage armor on the actual actor

#

If theres no issues with the details tab, then my last idea is that you have installed another roller who is rolling the items which then makes midi unable to detect and apply effect transferrals...very often its usually a ready set roller.

narrow saddle
vast bane
#

I think you have the dnd5e versions and theres an inactive shield on the actor and dfreds won't apply

#

oh it was RSR after all?

narrow saddle
#

It is OK, complete schoolboy error. In fact Kindergarten error.

#

Can you believe I wasn't targeting the token I wanted to effect.

I am going to walk away now and come back some other time. ๐Ÿ˜•

However with you conversing with me, made me realise, so thank you. @vast bane

scarlet gale
vast bane
#

well shield should work as a self/self fwiw but yeah shield of faith would have that problem

#

but a bad import may have the target/range unset which then makes midi think its not self

narrow saddle
#

I shouldn't be left alone with technology. I can't be trusted lol

vast bane
#

we all do weird stuff, not too long ago I edited a line in a macro, and reported it being broken only to realize after sharing it that the line had // in front of it and that was why it wasn't working so we all do dumb things from time to time.

weak hamlet
#

When Midi applies an effect from a spell, the castdata is saying this no matter what level it's cast at

coarse mesa
violet meadow
violet meadow
#

I will take a quick look

violet meadow
weak hamlet
violet meadow
#

OK yeah I found the issue, I think. Let me double check

steel apex
#

How did you set this up? It is asking for at least 1 filter and I have not idea what to put in it. The midi qol sample item appeared blank to me so am having to set it up from scratch.

errant cosmos
#

I have a character with Adamantine armor (immune to critical hits). If use "flags.midi-qol.fail.critical.all | Custom | 1" do I also have to specify "Transfer to actor on item equip" ?

scarlet gale
#

Yes

errant cosmos
#

And that's because I want the ACTOR to be immune to critical hits, not the ITEM, right??

#

(I suck at Javascript and can barely wrap my head around the classes and objects involved)

scarlet gale
#

More or less yes

coarse mesa
#

If you donโ€™t tick that, the effect will be applied to the target, not the owner

scarlet gale
#

You want it to act as a passive effect essentially

#

Instead of something the person needs to actively click on to use.

errant cosmos
#

LOL, so ... if I have a PC with Adamantine armor, and he targets a Troll or whatever, the Troll would be immune to criticals if I didn't check that?

scarlet gale
#

If they had them targeted and clicked on that item

coarse mesa
#

Yeah that tickbox has been one of the single biggest points of confusion in DAEโ€ฆ itโ€™s getting better though, it used to be ticked by default and there was no description ๐Ÿ™‚

errant cosmos
#

Tim Posney is an amazing programmer and a invaluable community resource, so please take this 'complaint' with a grain of salt, but I feel like the descriptions of these checkboxes are bewildering at best:

#

Like, is there an easier way to state that? Perhaps: "Apply to Target | Apply to Actor when Equipped | Apply to Actor when Used" ...?

scarlet gale
#

It's not only for "items"

errant cosmos
#

I dunno... I honestly don't know the first thing about the object model, but I will say I have a hard time parsing those sentences.

scarlet gale
#

A feature is technically an item and you don't equip those

errant cosmos
#

Oh, like a class feature like a Paladin aura or similar?

scarlet gale
#

But if you put the effect on an item, you can equip those or attune to them

#

changing how that part works

scarlet gale
#

If you have an item set to require attunement for example, the effect will be suspended unless they're attuned to it

coarse mesa
#

Imo it could definitely be a bit clearer, itโ€™s effectively evolved that way as Tim has added features. Heโ€™s very open to suggestions though

errant cosmos
#

Okay so here is the thought experiment: Imagine you could rewrite those sentences to be as clear as possible. How would you go about it?

coarse mesa
#

Iโ€™ve recently logged a git issue with minor suggestions to clean this window up a bit (make the descriptions more discrete like core settings). Perhaps any suggestions could be added to that

coarse mesa
#

Itโ€™s too late in the evening here for me to wrap my brain around it fully but I feel like certain tickboxes could be mutually exclusive, so either radios or hide the other options?

#

Iโ€™m not sure Iโ€™d fully understand the ramifications though

errant cosmos
#

So I think that first line should read:
"Apply this Effect: " [Dropdown][1. to the owner when it is equipped][2. to the target when it is used]

scarlet gale
#

That would be misleading when done on a feature

#

Since you don't equip those

coarse mesa
#

Iโ€™m not sure I fully get the other tickbox but I think it might only apply the effect to the user if the item also successfully applies other effects to a target?

errant cosmos
#

Yeah, it's late. Sorry, I've been drinking, worked for ~7 hours and DMed for ~6 hours. I'm going to table this. Perhaps I can chat with Tim about it at some point in the future. I'm not an expert in this system and these "novice" eyes might be an asset if we're trying to make it more understandable.

scarlet gale
#

Apply on self I think always works

errant cosmos
coarse mesa
#

Maybe the whole window should look different for equipment and features? Cut off confusion at the stem

scarlet gale
#

Spells would can also have them

coarse mesa
#

You never equip spells so remove that option

scarlet gale
#

But you can prepare them

#

I haven't found the need for it, but if you want a passive effect active while a spell is prepared? (I don't even know if that would currently work)

coarse mesa
#

Well if you had an AE kick in on spell preparation (maybe a new subclass thing) then show that tickbox with a different description

#

I think tailoring the window more depending on item type would go a long way

errant cosmos
# scarlet gale Spells would can also have them

Is it weird that the question of "who is affected by this effect" is handled in a different tab than the effects list?

I could see a magic item that grants +1 AC to the wielder, but when you "use" it imparts some penalty to the target.

What I'm suggesting is that each Effect should indicate whether it should be applied to the wielder (or actor, in the case of a feature) or the target.

scarlet gale
#

Just because I was curious, I checked spells always apply the transfer on equip whether or not a spell is prepared

errant cosmos
#

Like this:
Wielder: +1 AC (Passive)
Target: -1 AC (when Used)

scarlet gale
#

You can have a DAE do both.

#

Have a passive ability and a targeted one

#

On the same item/spell/feature.

coarse mesa
#

Even just a summary pane at the bottom describing what youโ€™ve selected in clearer wording? Starting to sound a bit like babonus lol

errant cosmos
#

Alright, I'm tired and tipsy - I suspect Tim could sort this out in a single conversation and I'm just going to squander my time trying to brainstorm fixes for a system I don't truly understand.

Thank you for your help Lukas and Chris, I got my Adamantine Armor and Cloak of Protection working so I'm good for today. ๐Ÿ™‚

narrow saddle
vast bane
molten solar
#

You can put an entire novel in there.

vast bane
#

@violet meadow not sure if this is srd or not, but the fighting stance for martials and the sidekick stance which is:

When a creature you can see attacks a target other than you that is within 5 feet of you, you can use your reaction to impose disadvantage on the attack roll. You must be wielding a shield.```

My idea for this, but I don't know how to make the reaction really, is to use a 5ft aura around the fighter/martial with the ability, that is a `createitem` key that gives allies within 5ft the reaction feature and on being targetted for an attack, they are prompted with some sort of macro that interrupts the workflow and imposes disadvantage.  Think this is possible?
#

I also have a really frikkin cool idea using the same process, that is for the upgraded Emboldening bond for the Peace Cleric:

6th-level Peace Domain feature

The bond you forge between people helps them protect each other. When a creature affected by your Emboldening Bond feature is about to take damage, a second bonded creature within 30 feet of the first can use its reaction to teleport to an unoccupied space within 5 feet of the first creature. The second creature then takes all the damage instead.```

Using the same idea for an aura that pulls an ally and transfers the damage to them on reaction.
violet meadow
# vast bane <@547736620649021450> not sure if this is srd or not, but the fighting stance fo...

This is not doable (impose disadvantage on an already initiated workflow), at least as things now stand with MidiQOL.

You cannot impose disadvantage after the fact when you've reached the reaction processing phase.

What you could do, and it might be a PITA, is to have the reaction roll another dummy attack and, depending on the result, try to pass to the attacking client a workflow abort command.

If, at some point, midi makes the triggering workflows available to all clients, these things could should be done easier.

violet meadow
#

I have it almost ready in another ability

#

Will double check and let you know

vast bane
#

what if on damaged, a new d20 is rolled, and then takes the equation of if the lowest of the original and the newest is less than the AC, the damage dealt becomes no damage?

#

a pseudo disadvantage kinda?

#

would probably still cause weird on hit effects to happen

violet meadow
#

This is essentially what I was proposing.
A secondary roll.

The issue is that you need to be able to"reach" the initial workflow to alert it and that due to being in a different client is tricky

vast bane
#

Another idea would be to rewrite the reaction to simply give 5 ac to the defender, very awful but a neat alternative

violet meadow
#

Your can always give immunity to the attack's damage though

vast bane
#

hahahaha

#

I think I'm more inclined to just give the 5 ac instead

#

and rewrite the ability, its not like its not the first time I've changed something just to make it work with foundry hehe

violet meadow
#

Use the alternative advantage rules? Yeah why not

vast bane
#

yeah cause mathematically isn't it why they do 5's to passives

#

I think the 5ac has the least odd interaction alternative, cause then it would impose a miss causing all the on hit shennanigans to not happen if we instead did immunity

#

plus the other added benefit of doing just a simple 5ac is that then you are off the hook cause I can totally make that myself lol

#

basically shield without spell type, or parry with more ac

#

can you expire a reaction on the very hit its happening on, I forget, like if you set special duration to the next is damaged or is attacked, does it count the attack thats prompting it?

violet meadow
#

The issue I still have when trying to create the Cloud Rune, is that you can give a 99 boost to AC to emulate miss, but if the attacker rolls a critical that is thrown out of the window (with my midi settings)

vast bane
#

I think you can still manually solve that if you play with my settings 8)

#

I leave the button in chat

#

you can always force damage even on a miss that way I believe

molten solar
#
Hooks.on("dnd5e.preRollAttack", (item, config) => {
  /* pseudocode */
  if ( target has specific effect ) {
     config.critical = Infinity;
  }
});
vast bane
#

so it would probably break for your settings cause you auto roll/delete buttons/and fast forward, but for me cause I left the button there, he can just roll it on a miss

molten solar
#

Crits are determined by the critical threshold, not the ac.

vast bane
#

(and cause I don't fast forward he can hit crit)

#

awww why can't I react to you

violet meadow
molten solar
#

Can't it use the core system hooks or?

violet meadow
#

Its already started. The hit has already been registered at that point

molten solar
#

Oh it's a reaction or something?

violet meadow
#

Yes

vast bane
#

how does shield handle things in midi then

#

is shield just suffering the same problem?

#

and parry for that matter

#

and its really only an issue for full automators right...cause in my game the player can just choose to roll damage and choose crit

#

I'm checkin that now actually

molten solar
#

Of course. If you don't have a module forcing you to roll damage, critical or otherwise, then you can just choose not to roll.

vast bane
#

I think our problem is that if shield goes above the nat 20 roll, it somehow prevents critical in automated form

#

Yeah you can manually crit with non fast forward in midi, but you have to use the core method for damage application

#

I forgot to hit crit there but it was available to press, so not a solution for automators, but totally possible for me

violet meadow
#

@vast bane OK so workaround for no critical damage too! Needs an executed as GM secondary macro (and will not work if other players have attacked the player)
Needs:

  1. a feature set as Reaction with an ItemMacro | Before Active Effects and a simple macro ```js
    await game.macros.getName("Reaction to Critical").execute(this.workflowOptions.sourceItemUuid)
2. the same feature applies an AE `system.attributes.ac.bonus | Add | +99` with a special expiration of `isAttacked: Expires if the character is attacked`

3. The execute As GM script macro named `Reaction to Critical` in my example will be ```js
let origWorkflow = MidiQOL.Workflow.getWorkflow(args[0])
setProperty(origWorkflow,"isCritical",false)
#

is changed to

#

Could be used in an Active Aura (creating the Reaction No Critical on allies with DAE macro.createItem) for the Grave clerics ability me thinks ๐Ÿค”

Yeah, just get rid of the +99 bonus to AC and you are golden. Cherry on top, update the right character to use their reaction and ๐Ÿ’ฅ

violet meadow
#

Though it will be triggered during every attack and not only critical hits ๐Ÿ˜ฉ

devout rampart
#

I have a macro that stopped working after upgrading to v10. After some digging I could reproduce the error with a simple macro.

I have two script macros, macroPlayer and macroGM.
macroPlayer is called by Midi-QoL in a spell (OnUse, After Active Efects)
macroGM flagged to "Execute Macro As GM"

MacroPlayer is:

let macro = game.macros.find(i => i.name === "MacroGM");
macro.execute(args[0]);

MacroGM is:

console.log(args);

If I, as the GM, roll the spell, the macro executes flawless and args is outputted to the GM console.
If my player roll the spell nothing is outputted to the GM console. The player console gets an error:

Advanced Macros | RangeError: Maximum call stack size exceeded
    at gt (is-binary.js:24:17)
    at gt (is-binary.js:45:63)
    at gt (is-binary.js:45:63)
    ... repeats dozens of times
    at gt (is-binary.js:45:63)
    at t.value (index.js:40:17)
    at s.value (manager.js:247:45)
    at i.value (socket.js:173:17)
    at i.value (socket.js:132:18)
    at executeResponse (Macros.js:271:16)
    at new Promise (<anonymous>)
    at FurnaceMacros.executeMacroAsGM (Macros.js:268:33)
    at async Macro.executeMacro (Macros.js:239:12)

@molten solar suggested that may be a serialisation problem. I did two test, changing only macroPlayer:

let macro = game.macros.find(i => i.name === "MacroGM");
macro.execute("test");

and

let macro = game.macros.find(i => i.name === "MacroGM");
let transfer = {actor: args[0].actor, concentrationData: args[0].concentrationData};
macro.execute(transfer);

Both work fine and the variables are outputted to the GM console.

Would this be a bug in Midi-QoL or Advanced Macros?
Many thanks in advance for the idea to the workaround.

Versions and modules:
FoundryVTT 10, build 288
DnD5e 2.0.3

Advanced Macro 1.17.3
DAE 10.013
Find the CUlprit 1.4.6
liwrapper 1.12.10.0
Midi QoL 10.0.21
Socketlib 1.012
Times Up 10.0.2

dark canopy
#

you are trying to serialize a recursive object (Actor)

#

or...something, your execution workflow is quite complex

9 times out of 10 "Execute as GM" is the cause of all of your woes

vast bane
#

I use execute as GM in v9. Its used specifically to fix a problem with midi:

The taunt/skill challenge macro bugbear built that I've repurposed for like 5 things now

#

I use it for taunt, shove, shield bash, hide, distract, and a custom counterspell ability

#

The players have an on use macro that says this:

game.macros.getName("TauntIntimidation").execute(args[0]);

and then I have a folder macro that executes as GM, that is the actual macro pulling their args so it works on the right targets with GM permissions to edit/do stuff.

#

I'm on v9 so I doubt my syntax works for you

late fractal
#

Hello again! Today's project for me was to adapt midi-srd spiritual weapon to something similar for flaming sphere. I have hacked apart the code from @violet meadow to make a functional flaming sphere (a few bits of cleanup in the item script are still due). One feature I can't make work so far is concentration though. The spell is marked as concentration and it is applied, but Midi doesn't pick up the roll when the actor gets hit to check if it is maintained. Suggestions welcome, thanks!

violet meadow
violet meadow
#

OK so that is what changed. The workflow has been added in the args[0] recently

#

Could you create an issue in MidiQOL repository, about that specific usecase and the error?
You might just be able to get the args[0], delete the args[0].workflow from it and pass the rest.
Do you need the whole args[0] available? Probably not. So either that, or only pass the data you need

devout rampart
vast bane
#

its even midi inspired

late fractal
#

yes I have the warpgate one, but i really like the way midi-srd works. For a few reasons:

  1. doesnt require a new actor(measurement template instead), which messes with other mods that I have enforcing no movement during combat
  2. creates a weapons to roll damage during combat, so damage rolls and resistances are automated
vast bane
#

yeah mine uses an actor but I don't have issues with resistances and stuff

#

I actually don't think it should be a template if you have an actor, its an ae around the actor, a template will be slightly off because its not a circle template, its an "all creatures within 5ft of the sphere" which is different in dnd.

violet meadow
#

The caster?

late fractal
#

unlinked

violet meadow
#

Try linked quickly

vast bane
#

I don't think hes doing an actor

late fractal
#

i think its unlinked, thats dragged into the scene or am i forgetting

violet meadow
#

Wait I mean the caster of the Flaming Sphere spell, is it a linked or an unlinked token?

late fractal
#

my bad, it is linked

#

actor is casting Flaming Sphere

violet meadow
#

Do you use MidiQOL concentration only?

late fractal
#

I don't use anything else for concentration (CUB I think does it too? I dont use CUB)

violet meadow
#

Auto rolling saves?

late fractal
#

The issue is concentration is not being rolled when hit

violet meadow
#

Wait does it work for other spells?

#

Other concentration spells?

late fractal
#

it did last week, but i did update MidiQOL for the other issue. I will go test it

#

pizza delivery is here, get back to you after ๐Ÿ•

short cedar
#

has anyone noticed midiqol interacting strangely with Ready Set Roll for D&D5e? Our rolls usually are just one click with RSR, but with Midi installed it then prompts you to roll damage, as well as shows the RSR formatting afterwards. See screensshot

molten solar
#

Yes, of course. They are incompatible. ๐Ÿ™‚

short cedar
#

ok then! thanks

scarlet gale
vast bane
#

is your flaming sphere spell checked for concentration?

scarlet gale
#

It'd need to double check, but it effectively stops the attacks. Or at least prevents it from rolling damage

lean holly
#

Is there a way to tell midi to ignore resistance? IE Blood hunter Crimson Rite self damaging necrotic damage cannot be reduced in anyway per the ability. Can you tell midi to ignore necrotic resistance that if it exists?

scarlet gale
vast bane
#

change the damage type to a ridiculous thing

#

thats been a notorious problem with midi from the start, if you put a weird flavor in it breaks resistances

#

you can also kill a workflow if you put 2 flavors into an attack

violet meadow
violet meadow
lean holly
#

Thank you.

violet meadow
lean holly
violet meadow
# lean holly Not yet, I'll give it a go when I have time at my computer. I did pass the info...

As an actor onUse macro After Attack Roll ```js
//bypass a specific damage resistance by adding an Active Effect for damage vulverability, with a special duration of 1Attack.

//v10 macro. Change <actor.system> to <actor.data.data> and <system.traits.dv.value> to <data.traits.dv.value> for v9 compatibility.

if (!args[0].hitTargets[0].actor.system.traits.dr.value.includes("necrotic")) return;
const effectData = {
changes: [
{
"key": "system.traits.dv.value",
"value": "necrotic",
"mode": CONST.ACTIVE_EFFECT_MODES.ADD,
"priority": 20
}
],
flags: {
"dae": {
"transfer": true,
"specialDuration": [
"1Attack"
],
}
},
origin: token.actor.uuid
}
await MidiQOL.socket().executeAsGM("createEffects", { actorUuid: args[0].hitTargets[0].actor.uuid, effects: [effectData] });

late fractal
#

@violet meadow all concentration checks seem broken. I am trying to see if there is a pattern why

celest bluff
#

make sure you're using midis and not some other modules

late fractal
violet meadow
celest bluff
#

CUB has concentrator, make sure that is disabled. if cub

late fractal
#

no CUB. Let me check other 2

late fractal
#

i have Monks Tokenbar and LMRTFY, but disabling both had no effect. testing with this spell, i will try disabling more stuff

violet meadow
vast bane
#

did you rename concentrating in dfreds?

#

or....are you auto applying dfreds...is that even a thing? does dffred ce's not lose when concentration is lost?

violet meadow
#

this was an issue of something like your // Moto ๐Ÿ˜„

vast bane
#

oh boy, I got the feels guys

#

Welcome to the club Balrog! I feels for ya

late fractal
#

i can confirm that it was 100% user error and @violet meadow is amazing for putting up with it. Also that gif is frightening

#

(actually applying the damage to an actor helps if you want them to roll concentration. fyi)

#

tested again with my setting and a player, all worked perfectly. thanks again for the help

meager fable
#

... I'm now making a Club Balrog in my world... thanks for the inspiration

coarse mesa
#

IDK what's going on... feel like that must have been some fever dream, but I swear it was working perfectly when I tested it back then but for the life of me I can't get it to work now. Now it's not rolling if they enter on their turn or someone else's ๐Ÿค” I tried reverting back to the sample SG and switching your macro again but still no luck. Probably not worth worrying about though, it's v9 after all

#

We'll just stick to manual for a bit until we go v10

violet meadow
vast bane
#

it requires combat active

#

and I think v9 SG breaks if an npc casts it

#

a good backup incase it fails is to leave the core method available, don't delete your buttons and pop out the chat card with the damage button on it for future use

weak hamlet
#

Is there a way to have it auto roll fast forward damage all the time except when versatile is filled out?

vast bane
#

there is a button you can hold down for versatile and a button you can hold down to toggle the opposite settings for a singular roll in midi

weak hamlet
#

Yea... my players will not remember that, so I'll just put the versatile in the other and have it roll that.

vast bane
#

you could also turn off fast forward if your players are prone to forget things

#

and install advantage reminder to reinforce their memory

weak hamlet
#

They are kids, I would rather them focus on the fun, I'll take care of the minutia.

#

But speaking of advantage reminder, I do not have auto roll Fast forward attack, saves, and checks, but the advantage button does outline red when they have it. Is that just part of Midi now?

violet meadow
weak hamlet
violet meadow
weak hamlet
vast bane
weak hamlet
vast bane
rugged sequoia
#

I did the cardinal foundry sin and didn't test with my player's account. Only GM. If I run as GM then it seems to work okay but if my player runs the macro it pops up a syntax error, multiple card show up in the chat and the macro goes off infinitely. I have this in Item Macro settings.
game.macros.getName("Hidden").execute(args[0]);

And this in the macro folder

let results;
const hider = canvas.tokens.get(args[0].tokenId);
const {object: target} = await fromUuid(args[0].hitTargetUuids[0]);

const skilltoberolled =  target.actor.system.skills.ste.total < target.actor.system.skills.prc.total  ? "ste" : "prc";

results = await game.MonksTokenBar.requestContestedRoll({
    token: hider,
    request:`skill:${skilltoberolled}`
},{
    token: target,
    request:'skill:prc'
},{
    silent:true, 
    fastForward:false,
    flavor: `${hider.name} attempt to hide from ${target.name} `, 
    callback: async () => {
        const hiderTotal = results.getFlag("monks-tokenbar", `token${hider.id}`).total;
        const targetTotal = results.getFlag("monks-tokenbar", `token${target.id}`).total;
        if (hiderTotal >= targetTotal) {
            if(!game.dfreds.effectInterface.hasEffectApplied('Hidden', hider.actor.uuid)) {
                await game.dfreds.effectInterface.addEffect({ effectName: 'Hidden', uuid: hider.actor.uuid});
                ui.notifications.info(`${hider.name} Successfully hides from ${target.name}`)
            }
        }
        else ui.notifications.info(`${target.name} has keen eyes and ${hider.name} was unsuccessful in hiding`)
    }
});

I also noticed it shows up in the Macro section under Monk Token Bar. Any help would be much appreciate.\

violet meadow
vast bane
#
const otherItem = actor.items.getName("(Snack Buff)Monstrosity's Liquor");
const {value, max} = item.data.data.uses;
const {total} = await item.rollFormula();
const toAdd = Math.ceil(total/5);
await otherItem.update({"data.uses": {value: value + toAdd, max: max}});

This is a midi on use macro meant to take the roll of the item its on, and divide it by 5 rounding up and then add that rounded value to another item, but its math is totally screwed up and I have no idea why. Anyone have a solution? A 26 adds 12 charges.

violet meadow
#

You should take the args[0].workflow out of the args[0] you pass

rugged sequoia
#

I am on v10 MidiQOL. I think I have seen that stack exceeded error. It just goes on ad infinitum.

violet meadow
#

Just do ```js
delete args[0].workflow;
game.macros.getName("Hidden").execute(args[0]);

dark canopy
violet meadow
#

What's your Formula?

vast bane
#

console.log(total, value)?

violet meadow
#

You will not be able to roll like that

vast bane
#

max doesn't matter I just didn't know how to remove it without breaking the macro

#

its an ability check

#

is my console.log thing what you guys recommend I put in?

violet meadow
#
const otherItem = actor.items.getName("(Snack Buff)Monstrosity's Liquor");
const {value, max} = item.data.data.uses;
console.log(value, max)
const {total} = await item.rollFormula();
console.log(total)
const toAdd = Math.ceil(total/5);
console.log(toAdd)
await otherItem.update({"data.uses": {value: value + toAdd}});
dark canopy
#

yes, every single symbol you use, log it

#

console.log('This item's uses:', value, max)

#

the string helps add context for debugging ๐Ÿ™‚

vast bane
dark canopy
#

now dig into any strange numbers you see

vast bane
#

ok I think I figured it out actually

violet meadow
#

more than the max?

vast bane
#

value and max are the items charges, not the other items

violet meadow
#

You should clamp the uses to max anyways if that's what you want

vast bane
#

the roll was a 22, 22divided by 5 is 5, and its adding the original items charges

#

OH

#

is it cause we're using value twice???

#

yeah I think thats it!

violet meadow
#

?

vast bane
#

we need to change the first const value to a different word

#

cause its adding the original items value into the new items value see

#

what IS Item.data.data.uses?

violet meadow
#

Try something. ```js
const otherItem = actor.items.getName("(Snack Buff)Monstrosity's Liquor");
const {value, max} = item.getRollData().item.uses;
console.log(value, max)
const {total} = await item.rollFormula();
console.log(total)
const toAdd = Math.ceil(total/5);
console.log(toAdd)
await otherItem.update({"data.uses": {value: value + toAdd}});

violet meadow
molten solar
vast bane
#

the item.data.data.uses needs to be the otheritems uses not the rolled items uses

#

am I still trying that bugbear?

violet meadow
#

Try that. I am confused anyways rn with what you mean by otheritems uses and rolled items uses

molten solar
#

Item A rolling a formula and adding to item B's limited uses.

vast bane
#

what I'm trying to do, is I have a homebrew cooking skill challenge, they roll their ingredient, which expends a singular charge, and then depending on how well they roll, they make X charges of another item

#

but it seems the value in the final line is pulling the value of the original item

#

because the mystery additional charges are always 9 more than intended

violet meadow
#

You have Item A as item and Item B as otherItem

#

what you want to do to which one

vast bane
#

I want the toAdd added to the charges of item B, but apparently that value+ toadd is pulling the original items charges Item A charges instead of Item B's current charges

violet meadow
#
const otherItem = actor.items.getName("(Snack Buff)Monstrosity's Liquor");
const {value, max} = otherItem.getRollData().item.uses ?? {};
const {total} = await item.rollFormula() ?? {};
const toAdd = Math.ceil(total/5);
await otherItem.update({"data.uses": {value: value + toAdd}});
vast bane
#

this works

#

perfect thanks guys!

#

and fwiw, the reason why I didn't catch it till now, is cause value was always 0 when I tested hehe

#

serves me right for not better testing it, I was rolling and unchecking the resource boxes lol

violet meadow
#

Oh that Babonus update ๐Ÿค

molten solar
#

if @opaque current is still intimidated by this UI, I will officially give up

dark canopy
#

rookie numbers

vast bane
#

Now I'm kinda curious what midi's look like

#

he's on vacation though we'll not find out for a while right

opaque current
#

Haha, I was not expecting the otter icon

#

It sure is cute tho

violet meadow
vague relic
#

How would I go about having this macro abort before it runs that actor.update if the targeted creature is an undead, construct, or the attack deals no damage?

#

the last one's not as important to implement as the first two

molten solar
#

Remove that first data and replace the next two instances of data.data with system

#

That's old pre-v10 syntax. ๐Ÿ™‚

vague relic
vast bane
molten solar
vast bane
#

I'm gonna be doing a bunch of this soon so trying to lock that advice down

#

well I been only knowing about the data.data, that single data tip seems new to me, but I do have a horrendous memory

molten solar
#

The first data is completely gone. Any instances of data.data is how you find system-specific data, but that's just called system now.

vast bane
#

k, and this is not a rule to follow with for instance AE keys cause those are data is replaced by system

molten solar
#

Only caveat is that updates were relative to the first data, meaning you might see actor.update({"data.etc.etc": someValue}), which should be actor.update({"system.etc.etc": someValue})

vast bane
#

k I'll probably still come back here for help, but that wont' start happening till thanksgiving day weekend

molten solar
vast bane
#

yeah understood thanks

coarse mesa
violet meadow
vague relic
#

Hey, can anyone tell me why this is dealing damage to the source token instead of the target token, and how I might go about capping the temp hp gained to 15 (+10 to the cap for every spell level above 2nd)

violet meadow
vague relic
#

The item description for reference. Implementing this Grimhollow stuff is kicking my ass q.q

violet meadow
#

you tell it to do damage to the sourceToken

#

The target goes here new MidiQOL.DamageOnlyWorkflow(sourceActor, sourceToken, othDamageTotal, "temphp", [TARGET], necroDamageRoll, {flavor: "Theft of Vitae", itemCardId});

vague relic
#

I'm using the same thing for this basically. Is the fact that the necrotic damage is in other affecting it?

#

The latter is dealing the damage to the target token, and then healing the source (my goal for the former)

violet meadow
#

Log the args[0] and check the ones you are using.

#

In the first item you have it as Target Self

#

The second item with no target, but I guess you are targeting a creature manually

#

args[0].tokenId will be the caster anyways.

#

You will need to go into args[0].hitTargets to get the targeted one (after a successful hit)

vague relic
violet meadow
vague relic
# violet meadow If you could share the description of the item I will take a look later. Makes i...

*"As part of casting this spell, you must expend two hit dice or the spell automatically fails. If you do, roll the hit dice and the creature takes necrotic damage equal to the result, then you gain a number of temporary hit points equal to the triggering damage plus this necrotic damage you dealt, to a maximum of 15.

At Higher Levels. When you cast this spell using a spell slot of 2nd level or higher, the maximum number of temporary hit points you can gain from casting it increases by 10 for each slot level above 2nd."*

Thank you for the help so far, I really appreciate it

violet meadow
#

OK I will ping you when I am at my desk again, if noone else picks that up in between ๐Ÿ˜‰

lunar notch
#

What are some useful things I can do with this field under Item Details?

violet meadow
#

The onUse macros?

lunar notch
#

Yeah

violet meadow
#

Execute a macro when you roll the item

#

Sky is the limit ๐Ÿ˜„

lunar notch
#

I assume I have a Macro made, and then it prompts anyone that has this Item to do a AE?

#

So it could be like idk 100 NPCs that could trigger from it?

#

Macro -- Blowup Village

violet meadow
#

The linked macro is executed only when the specific Item is rolled.

What that macro does, more or less is up to the imagination of the user ๐Ÿ˜„

lunar notch
#

Oh man a rabbit hole I shall have to climb later, lol obv I'm tryna use this as a workaround to generate NPC stats somehow haha. And I know others have already put up their Macros on that use-case ๐Ÿ™‚

vague relic
violet meadow
#

To 15?

vague relic
#

15, plus 10 for every level of the spell above 2nd

#

though i'd settle for just 15 at this point lmao

violet meadow
#

Math.max(temp,15+10*(@item.level)) ?

#

Hmm how do you calc the tempHp again?

vast bane
#

+15 + (@item.level*10)

vague relic
#

where would that formula go?

molten solar
#

attributes.hp.temp

vague relic
vast bane
#

you should always lead with a plus if its an ae value

#

oh its temp hp it better not be an ae

violet meadow
#

Math.max(necroDamageRoll.total,15+10*(@item.level))

vague relic
violet meadow
#

Probably not correct. I am watching basketball at the same time so...

vague relic
#

getting invalid or unexpected token error

violet meadow
#

extra space before .total

#

delete that space

#

But you want to clamp it between what numbers?

#

Probably need min too

vast bane
#

I think the space is on the otherside of the period

molten solar
vague relic
#

I think maybe I need it for othDamageTotal instead of necroDamageRoll?

violet meadow
#

So you want it to be max of the othDamageTotal?

vague relic
#

It's pulling the damage from the item card, and then using that value in the new workflow to heal the source token

#

so I'm assuming that's what needs to be capped

dark canopy
#

Math.max(necroDamageRoll .total,15+10*(@item.level)), this is just invalid syntax

violet meadow
#

OK so also check damageApplied and damageTotal

vague relic
violet meadow
#

Math.min(othDamageTotal,15+10*(args[0].spellLevel)) ?

vague relic
#

now i'm getting "Cannot read properties of undefined (reading 'length')"

#

deleting the first line doesn't fix it

violet meadow
#
if (!args[0].hitTargets.length) return;
const {tokenId, damageTotal, itemCardId} = args[0];
const sourceToken = canvas.tokens.get(tokenId);
const sourceActor = sourceToken.actor;
const othDamageTotal = damageTotal;
const necroDamageRoll = await new Roll(`${othDamageTotal}`).evaluate();
const damage = Math.min(necroDamageRoll.total,15+10*(args[0].spellLevel));
new MidiQOL.DamageOnlyWorkflow(sourceActor, sourceToken, damage, "temphp", [sourceToken], necroDamageRoll, {flavor: "Theft of Vitae", itemCardId});
#

Does this work?

vague relic
#

perhaps it's because the 10*spelllevel would evaulate to 20 since the spell is cast at level 2 by default?

#

so the minimum would be something like 15+20

violet meadow
#

Yeah that sounds about right

vague relic
#

15+(10*(args[0].spellLevel)-2)?

vast bane
#

isn't the args assumed if its an item macro?

#

oh ok weird

violet meadow
#

15+(10*((args[0].spellLevel)-2))?

dark canopy
vague relic
vast bane
#

define the spell level above and use its variable in that equation

violet meadow
#

Yeet the damageOnlyWorkflow. do await sourceActor.applyTempHP(damage) for v10 and create another message

#

or use the MidiQOL.applyTokenDamage()

violet meadow
#

Construct the roll to be a min if you want to do the damageOnlyWorkflow otherwise

vast bane
#

@violet meadow living the meme:
A good copilot for us all!

vague relic
#

Thanks for all the help! Luckily it's only half of this Grimhollow bs that's this hard to implement

violet meadow
#

We are Bugbear

vast bane
#

I need to add sunglasses to that

errant gull
#

Is there a way to give ammunition weapon properties that it will pass on to the ranged weapon? For instance giving Arrows the Silvered property so that they'll pass that property over to the Bow?

violet meadow
#

tposney did add something in the last MidiQOL v10 version for that I think. Not sure if all the properties get picked up though.

#

Have you tried with v10.0.21?

covert mason
#

What does flags.midi-qol.absorption.acid do?

#

Does it just reduce acid damage by a set amount put in the Effect Value?

#

I'm trying to automate Body of the Astral Self, specifically this:
When you take acid, cold, fire, force, lightning, or thunder damage, you can use your reaction to deflect it. When you do so, the damage you take is reduced by [[/r 1d10]] + your Wisdom modifier (minimum reduction of 1).

vast bane
#

yeah those aren't in the readme at all, maybe search the changelog, its as old as v9 so its gonna be old when he added them

covert mason
#

Also, trying to modify Crymic's divine strike macro into Body of the Astral Self Empowered Arms ability.
Once on each of your turns when you hit a target with the Arms of the Astral Self, you can deal extra damage to the target equal to your Martial Arts die.

Trying to turn this

    let numDice = level > 14 ? 2 : 1;
    let damageRoll = new game.dnd5e.dice.DamageRoll(`${numDice}d8[${damageType}]`, {}, { critical: args[0].isCritical }).evaluate({ async: false });```
into something that uses Martial Arts die.

I found this dice expression for the martial arts dice.
```1d(4+2*floor((@classes.monk.levels + 1) / 6))```
#

I'm just not sure how to impliment it ๐Ÿ˜…

molten solar
#

Make a scale value in the class or subclass item.

covert mason
#

Oh

#

This? 1d(4+2*floor((@classes.monk.levels + 1) / 6))

molten solar
#

Do you know what a scale value is? ๐Ÿ™‚

#

Or how to make one?

covert mason
#

I'm afraid not sad_cat

molten solar
#

There's a playlist in the FAQ thread by Alaustin on how to make them, I'd encourage you to check those out. Gonna make your life a lot easier.

covert mason
#

Oh. I'm using v9 right now. Still waiting on Advanced Spell Effects to update. Not sure how much of this would apply to v9

molten solar
#

Scale values were implemented in 1.6.0.

vague relic
#

Is there any way to make the absorption flag absorb only half of the damage dealt?

#

i tried putting /2 in the field, but it didn't work

lunar notch
#

I assume these fields as long as the Condition is true add the Effects? Like idk if you had a Weapon that Crit and it gave you Bless or something?

#

Or your HP hit 0, it put Sanctuary on you?

#

Curious if there is like a Midi Sample item I can refer to off the bat that uses the Activation Condition

vast bane
#

many

#

but also the readme has a pretty decent writeup on how to do activation conditions

lunar notch
#

I notice like some of them see mto be 'Abilities' or 'Spells' as an Item

vast bane
#

no idea what you mean

lunar notch
vast bane
#

activation conditions are for things like "If undead or a fiend, do an extra 1d8"

lunar notch
#

But I guess Spells are Items too?

vast bane
#

items in foundry are all things added to a character

#

items in dnd5e are items

#

its just unfortunate that they both use the word differently

lunar notch
#

Yeah I was looking for a simple string like AC = 10 or something to play with. Would I be looking at the Midi Readme?

vast bane
#

I don't think thats what its for

#

its usually when the item is rolled

#

its usually X=true and X can be just about any attribute on either source or target and it assumes target unless you put source I think

lunar notch
#

Yeah I was looking at some reddit stuff like this one

vast bane
#

thats a different animal than activation condition

lunar notch
#

Yeah the OP wanted to have Weapon Restrictions based on ASIs

#

I guess they were going Dragon Age with it, you need 21 STR to wield this, etc.

#

That seemed interesting, something I'd probably be down to integrate in tandem with my existing goal lol

#

Only this Class can use/activate this or w/e

#

Be a bit more mysterious with Items, if like I don't use Attunement and people just gotta try a thing out to test it haha

vast bane
#

you can always use an item in dnd5e, its a matter of proficiency/attunement for the extras

lunar notch
#

Yeah I was just curious if anyone ran a super gritty system and was doing something like that, perhaps in another World setting.

covert mason
#

Do you still have this macro?

scarlet gale
violet meadow
violet meadow
#

Taking a deep dive to Template Macro + Effect Macro shenanigans. Let's see
๐Ÿ› ๐Ÿป ๐Ÿคฟ

lunar notch
#

Looking at you Fable, treasure of RPGs ๐Ÿ™‚

violet meadow
#

It can be done, but you would be over-complicating something that could be just a you cannot use it as you are CG and it needs LG ๐Ÿ˜„

lunar notch
#

Oh yeah for sure, I think moreso I'd use it for random Objects I place in a scene, that I simply don't give context to and demand attention from players like an easter egg thing.

#

Because I do plan creating most of my assets in Unreal, and hopefully learn a great deal of FX stuff I can apply to Foundry.

#

But say in the instance, Ogre Gloves, a magic thing that gives you 19 STR got depowered somehow or a Physical stat that was necessary for Combat Automation/Rolls. It'd be nice if it just happened haha

#

I know someone was doing a thing where someone could take 75% less damage or something or increase healing by %. Very videogame, like Cursing an Archer's Aim by a Warlock.

scarlet gale
covert mason
violet meadow
molten solar
#

(doesn't need DAE)

violet meadow
#

If you toggle it off you're done

#

(indeed)

scarlet gale
#

Just remembered I've started putting my macros on my GitHub. V10 version here: https://github.com/chrisk123999/foundry-macros/blob/main/Features/Class Features/Monk/Focused Aim/Chris-FocusedAim.js

You'll need to swap out some references from system to data to make it work in v9. When I'm home from work later tonight I can do that if you're unable.

GitHub

Contribute to chrisk123999/foundry-macros development by creating an account on GitHub.

lunar notch
#

Oh definitely haha, but there's not a Prereq Item use thing that's transparent, I'm looking into creating a Macro since it sounds possible to do a Preroll Activation effect with Midi + Item AEs.

covert mason
scarlet gale
#

Sure, just have my full work shift ahead of me so it'll be a bit

violet meadow
#

Wherever you see .system. replace with .data.data.

#

and if you see a system.something.something in an update replace with data.something.something

covert mason
covert mason
#

Is this an ItemMacro?

violet meadow
#

The thing is that specific macro from @scarlet gale has a sister macro executed as GM apparently. So you will need to grab that as well.

#

I imagine that the shared one is an Item Macro before Item Roll or something

covert mason
#

Ah

scarlet gale
#

Setup info

violet meadow
#

(or just read a level up ๐Ÿ˜„ )

scarlet gale
#

I'm just lazy and hate making warpgate menus so I have a macro that makes it less dumb

#

I can embed the function when I edit it down to v9

violet meadow
#

Also I would suggest to change the Focused Aim.md to a Readme.md maybe to make it more visible ๐Ÿ˜…

scarlet gale
#

Oh does that change how it works on GitHub?

violet meadow
#

I mean you can just change the title. Do you have it doing something automatically?

scarlet gale
#

Nah

#

I originally planned on linking to all the setup files on the main readme. Just didn't get to it

covert mason
#

Huzzah! It works!

dark canopy
vast bane
#

I think either fotoply or chris wrote me a cool dialogue for lesser restoration that I really liked, reused it a bunch now

scarlet gale
#

Not me I think

vast bane
#
if(game.user.targets.size !== 1 ){
    ui.notifications.warn("You must have one token targeted.");
    return;
}

let VALID_EFFECT_LABELS = ["Blinded", "Deafened", "Paralyzed", "Poisoned"];

let [targetedToken] = game.user.targets.values();

let availableValidEffects = targetedToken.actor.effects
    .filter(e => VALID_EFFECT_LABELS.includes(e.data.label))

if(availableValidEffects.length < 1){
    ui.notifications.warn("No conditions exist on this creature which are removeable by Lesser Restoration.");
    return;
}

let dialogButtons = availableValidEffects
    .map(e => Object({
        label: e.data.label,
        callback: () => {e.delete();}
    }))

let dialog = new Dialog({
    title: "Lesser Resoration Condition Selection",
    content: ``,
    buttons: dialogButtons
})

dialog.render(true);```
#

its not a drop down its like a button choice and I really like the concept

dark canopy
vast bane
#

yeah I like this one, I also use the drop downs cause thats like what everyone builds, but this one was a neat take on it

scarlet gale
#

I have a Twilight sanctuary that does something similar

vast bane
#

yeah that removes things too I forgot about that one

#

I basically repurpose it for tons of removal things

molten solar
vast bane
#

I really need to start labeling these things

vast bane
#

I wish you could search the code in discord search but it specifically excludes things in codes

kind cape
#

Tbf, the author should put a comment at the top saying who wrote it, not that I do that myself either ๐Ÿ˜‚

molten solar
dark canopy
#

(they are just gonna get a proper overhaul with more flexibility)

molten solar
#

or surprise your users by stealing from my Absorb Elements macro instead

vast bane
#

oooh I like that

scarlet gale
#

I've just always used the midi sample item for that

#

But it looks nice

celest bluff
#

If you tossed in stuff from animate css, you could have it do more things when hovered on and off

#

have the buttons slide in from the left or fade in

vast bane
#

shape it like an itunes EULA

molten solar
covert mason
#

I have an item that grants a buff that lets melee weapon attacks deal 1d4 cold and 1d4 necrotic on normal enemies, but 2d4 cold and 2d4 necrotic on undead. Is there a way to apply the extra damage to undead on an active effect?

As an action, you can expend one charge to imbue your strikes with death energy. While imbued, for the next minute, whenever you hit a creature with an unarmed attack, the attack deals an additional 1d4 cold and 1d4 necrotic damage.  If the target of your attack is undead, the attack instead deals an additional 2d4 cold and 2d4 necrotic damage, and the creature has disadvantage on attacks against you until the start of your next turn.```
vast bane
#

probably a warpgate mutate, OR just cause I love this key....createitem and make another unarmed strike with an activation condition for undead

#

just like steal the activation condition from mace of disruption or something

covert mason
#

Trouble is the monk is a Way of the Astral self monk, who uses an Astral Fists item that's given to tem when they manifest their arms

vast bane
#

the createitem would just make a new attack item, mirror whatever that is and add on top of it

#

for the disadvantage thing, thats gonna be something complex that I can't figure out how to do

covert mason
#

As well as another item for unarmed strikes that deals bludeoning damage, +2d4 cold +2d4 necrotic.

vast bane
#

no it would be force damage+ 1d4 cold +1d4 necrotic

#

and then in the OTHER field do the other d4's and then the activation condition would be something like the mace of disruptions activation condition

#

Roll other if true

#

make sure you check the box for critical other

#

incase they crit

covert mason
#

So two other items. One variation for their Astral Arms, and one for their Unarmed Strikes

vast bane
#

is the astral arms considered an unarmed strike?

#

and sure you can create multple items this way

covert mason
#

Not techincally the same, 'cause the arms do force damage and use wisdom instead of dex.

vast bane
#

you could also do a warpgate mutate, that is more macro centric but cleaner looking

covert mason
# covert mason Not techincally the same, 'cause the arms do force damage and use wisdom instead...

Unarmed strikes do bludgeoning damage and use dex. Whenever the monk manifests their astral arms, an item I call 'astral fists' is created in their inventory, which deals force damage and uses wisdom for its attack. So they then have two items. One for the unarmed strike, one for the astral fists.

I'm not sure I want to clutter up the inventory with two more items for that extra cold and necrotic damage ๐Ÿ˜‚

vast bane
#

do you fast forward?

covert mason
#

I fast forward damage, yes

vast bane
#

darn, was gonna suggest AR then

#

if all they do is unarmed strikes

#

just use the same thing that rage uses in an ae

#

hmmmm but bonus against undead would not work nm

vast bane
#

you could maybe do something like if undead, vulnerable to cold/necrotic or something

celest bluff
#

or you can do a preItemRoll

vast bane
#

but thats not the same as 2 dice

celest bluff
#

but you said you wanted on an activated effect

covert mason
#

Aye

celest bluff
#

damagebonus it, have it detect the target's details, then form your formula that way

covert mason
#

This is pretty much the item in question

celest bluff
#

then return the final damage

#

gimme a couple of minutes I can write it

covert mason
#

I've been using something like this for when using a weapon that deals specific damage to certain types of creatures, but this is for the weapon, not an item that gives you a buff to damage.
IE: If I used this, I'd have to attack with the bracers, which kinda defeats the purpose of a monk's unarmed attacks.

if (!["mwak"].includes(args[0].item.data.actionType)) return {}; // weapon attack
if (args[0].hitTargets.length < 1) return {};
actor = await fromUuid(args[0].actorUuid);
let target = await fromUuid(args[0].hitTargetUuids[0]);
if (!actor || !target) return {};
let PC = target.actor.data.data.details?.race ?? null
let npc = target.actor.data.data.details.type?.value ?? null
const isType = ["undead"].includes(PC ? PC : npc || "");
if (!isType) return {};
const diceMult = args[0].isCritical ? '1d4 + ': '1d';
const damageRoll = await (new Roll(`${diceMult}4`)).roll();
new MidiQOL.DamageOnlyWorkflow(actor, token, damageRoll.total,"Radiant", [target], damageRoll, {flavor: "Extra damage against undead (Radiant)", damageList: args[0].damageList, itemCardId: args[0].itemCardId});
 // if (game.dice3d) await game.dice3d.showForRoll(damageRoll);```
celest bluff
#

I have the damage part written out.. the next bit about disadvantage on attack

vast bane
#

I think chill touch does that doesn't it? the disadvanatge to undead

celest bluff
#

disadvantage only to you

violet meadow
#

damageBonusMacro is better I agree

celest bluff
#

i have it rewritten just need to test it

steel apex
#

Hi all, can anyone help me understand why my overtime effect isn't working? I'm trying to set up Conquering Presence which should end when the affected token passes a wisdom check but the roll isn't even being triggered. Here's how I have it set up:

celest bluff
#

missing a comma first line

steel apex
#

Thank you very much!

#

Always (usually) the simplest thing....

celest bluff
#

yup it's either the . or , that mess you up

coarse mesa
#

Itโ€™s unforgivingโ€ฆ we need an overtime builder ๐Ÿ˜†

molten solar
#

Would just be a dialog (or FormApplication).

#

First module project for you, Lukas

coarse mesa
#

What would it take for Z to do a DAE PR of this magnitude?

molten solar
#

Money.

coarse mesa
steel apex
#

Donโ€™t ask me for a macro then lol

molten solar
coarse mesa
#

Word on the street is Mr Primate may have fixed AAs most pernicious issue, so balance could be restored to the midi ecosystem. Our group is considering doing House Divided as a side adventure โ€“ so there wonโ€™t be any going back to v9 after that ๐Ÿ˜…

vast bane
#

I won't believe it till you run a session with it, that bug was reliant on lag, hard to test that without a live session

#

but it was also playable, atleast it is currently in v9

coarse mesa
#

I live in hopeโ€ฆ but expect the worst. We had one of our players with a 11500ms ping last week (heโ€™s out of town for a bit)

vast bane
#

They land on the moon?

coarse mesa
#

One would think so, itโ€™s only a 2hr drive though. Heโ€™s staying with a couple of fossils so itโ€™s probably dialup

#

No amount of primate magic is going to fix that

#

Heโ€™s also our Shepherd Druid ๐Ÿ˜ฉ

steel apex
#

Hi all, I'm looking at trying to set up Heat Metal using the new Create Item and wondered if it was possible to have it based on an activation condition where it only fires / applies the active effect if the targe passes the CON save. Is that possible? Maybe with @workflow.saveResults (saw that in a post from back in September) but don't know the right syntax.

steel apex
#

Think I've managed to get it to work with @workflow.saveRoll.total > 15 where 15 is the save DC, but is there anyway to make that value dynamic where it will increase with the player's save DC when it increases? Would it be @attributes.spelldc where the 15 currently is?

vast bane
#

I wouldn't bother with that, its an ability that is player choice to use. I'd just give them the feature with createitem and if they choose to use their action on their turn, then have the feature induce a save and deal damage. If the creature drops the weapon or somehow gets rid of the armor, just put a +100 in the situataional bonus of the save.

noble solar
#

what module can I use for DND5e that can subtract health automatically when they take damage

scarlet gale
#

Midi-Qol does that.

noble solar
#

so I have that module on, how do I set tht?

scarlet gale
#

Looks through the options, or use the quick settings.

#

Settings -> Module Settings -> Midi QOL -> Workflow Settings

#

Select an option you like, you can further finetune it after that if you want

noble solar
#

ty

vast bane
# noble solar ty

theres more to it than just an on off switch, but most of its settings are obviously going to be in the workflow/damage section.

steel apex
vast bane
#

they take the damage regardless if they maintain contact with the metal

#

but only if the player uses their action to apply it

steel apex
#

I read it as the save is for dropping the heated item or not, and if they pass it they hold on to it and get the disadvantage.

vast bane
#

oh its bonus action not action my bad

steel apex
#

The original casting would give the damage, then if they pass the save a bonus item is created and they get the disadvantage.

vast bane
#

That would not work, because whether they save or not, if the caster targetted armor, the damage happens no matter what and the disadvantage happens no matter what

steel apex
#

Yes but there is still the โ€˜apply active effectsโ€™ button on the chat message (at least when I tried last night) that could be used to add the effects.

#

Or so I thought.

vast bane
#

they do not have disadvantage endlessly, they only have it whenever they take fire damage

#

I would attach it to the item that does the damage, and forget about a saving throw, that has to be handled at the very beginning and has very little sway in all this unless the player chooses to target a weapon, and players rarely do inefficient things

steel apex
#

And it only lasts one turn, which is why the bonus action would also need the same disadvantage effect.

vast bane
#

so I'd have the spell use createitem and make a feature that does fire damage and appllies a disadvantage ae that lasts until the start of your next turn.

#

you could also just apply the save on the spell cast I guess but have it have no sway in anything, just to cover all bases.

steel apex
vast bane
#

I dunno if putting the save on the spell will mess up the createitem ae

steel apex
#

Cheers, thanks for taking it through.

solid mountain
#

Is it midi or DAE that adds the ability to add spells and items with the active effect?

#

I can't seem to find the documentation

vast bane
solid mountain
#

An item... that adds a spell, that adds an effect... that adds an item....

obtuse magnet
#

I need some help with Midi QOL if anyones willing to give me a hand.
Midi is the only module I have enabled rn, Im on Forge Recommended v10 stable - patch 5 (build 290), dnd 5e version 2.0.3 and with midi enabled it does nothing like none of the features are even showing up with default settings. Not sure what to do

shy oar
#

Are you being literal about Midi being the only module enabled? I ask because it has a couple of others it depends on.

violet meadow
shy oar
#

Like socketlib and lib-wrapper

obtuse magnet
#

i mean those are the only two others lol

shy oar
#

whew

#

And are you saying in game settings, it's not showing up?

obtuse magnet
#

One sec trying some things

obtuse magnet
#

modules installed

#

this shows up

#

when i click the roll button or any button nothing gets outputed to chat

#

if i uncheck this. Just the basic attack and damage buttons appear in the chat when you click on an item to roll

#

meaning this

shy oar
#

What are you wanting it to do? Auto roll the attack and damage?

obtuse magnet
#

Id like to start there

shy oar
#

You need to go into the Workflow Settings.

#

You can fine tune nearly everything in there, but for a quick setup, go to the QuickSettings tab on the far right in the Workflow Settings menu.

obtuse magnet
#

I did the quick settings for them

#

The problem is, when i enable role animation support. I cant role anything. Nothing works.

vast bane
vast bane
#

if clicking the attack does nothing, its probably because your midi is set to "require target"

#

which is somewhere in v10 settings that I'm sure some v10 user will chime in with

#

its kinda at the top in workflow tab in v9

#

and if requires target is on, then when you click attack without a target, nothing will happen. No error, no warning, nothing.

cobalt sandal
#

is there a way to turn off the (fast) damage buttons and such

vast bane