#MidiQOL

1 messages ยท Page 96 of 1

vast bane
#

the items have no durations on item details, its in the dae duration tab

violet meadow
#

Did you delete the effect from the character sheet's effects tab or did you delete it from the shillelagh item by chance?

#

I mean initially

north ocean
vast bane
#

DAE 23

violet meadow
#

Wait in this one I cannot see an icon on the token for Mace of disruption.

#

I thought that was the issue.

short aurora
#

It's in core dnd5e.

vast bane
#

I deleted it cause it was not needed for the test since I can reproduce on any item

short aurora
#

No modules, it will show that active effect on the token if it has a duration, even if it's unavailable.

#

This might be related to the fact monsters don't really have equip/attune stuff, I did see that was added for next release

scarlet gale
#

Could anyone with tidy sheet tell me what version of tidy sheet your game updates to?

scarlet gale
#

Trying to figure out why my copies won't update past 0.8.20 unless I do a manual install

short aurora
tepid dock
vast bane
#

thats going to happen no matter what

#

I guess remove the duration

#

it also shows with force show

#

you can use TVA to exclude the ae

#

the ae's settings don't really matter cause the second it goes from unavailable to active its deleted

#

just is weird it shows like that

short aurora
#

Inactive effects doesn't, so I assume it's a bug or oversight and I'll post an issue

vast bane
#

TVA has a setting where you can set specific ae's to never show on token, it fixes it:

short aurora
#

Scratch that, seems to already be reported, they'll get to it

vast bane
#

but really you can just shut off duration/force show on it, its not going to actually be on the actor for more than a few milliseconds as the automation deletes the starter item as soon as its attuned/equipped

#

fyi DAE starts ticking down the duration of unavailable ae's

#

*in combat

#

wait no thats effect start not duration lol

short aurora
#

Moto's item doesn't need a duration, just remove that. I don't like how the item's not dynamic though thinking cap

north ocean
#

The hold person spell from the Sample items doesnt apply the Paralyzed on a failed save. Is this correct?

north ocean
vast bane
#

you sure about that?

north ocean
#

it works if i apply it from the chat card

scarlet gale
#

That dialogue looks very wrong

vast bane
#

I suspect you have mixed up DAE srd with Dynamic Effects using Active Effects

#

DAE SRD is garbage, delete it, Dynamic Effects using Active Effects is the right module to have and that item won't work till you have the real DAE

north ocean
#

I got it from here

vast bane
#

yeah but you don't have dae

#

This is what dae looks like:

north ocean
#

this one?

scarlet gale
#

Make sure it's enabled

north ocean
vast bane
#

0_o

#

I guess dae has a master switch like midi does?

#

you have a default setting set to off hehe

scarlet gale
#

At this point I would check for errors in console after using hold person

north ocean
short aurora
#

... slight note of that should fail

vast bane
#

you have effect transfer to manual or you have another module installed

short aurora
#

Is the spell set up to ignore non-humanoids already? I can't recall

#

might be the issue

vast bane
#

the apply active effect button looks sus

#

I bet they have effective Transferral installed

short aurora
#

Looks like mine with a swaggy CSS overhaul for the ui on

#

but Hold Person does not work on anything non-humanoid and skeletons are not, is there an activation condition on the item or something?

north ocean
vast bane
short aurora
#

A player is most likely also not set to humanoid, lol

#

Try to remove that from your item and see if it starts working, I think that check evaluates to false on both players and skeletons alike

vast bane
#

does it even evaluate when effect transfer is set to off?

#

why would it automate when he has it on manual?

short aurora
#

... wut? You can keep the button even if it does auto also

vast bane
#

but does he have that setting on, occams razor

#

workflow button, workflow tab, special section, first drop down

vast bane
#

he has effective transferral or ready set roll installed

short aurora
#

Fair call, you should not be able to see that button

north ocean
#

None of them, I removed all the ones Midi said not to use in the wiki

violet meadow
#

Could be Argon too

vast bane
#

Rippers moved into the automation department lol?

#

share your module list with me in a DM

#

bugbear did you add the list to the wiki 0_o?

violet meadow
#

I didn't have time to do anything yet. I was completely off for the past few days. Tomorrow I'll have access to my PC again

vast bane
hot flower
#

know this isn't a VAE chat, but what's the benefit of VAE over Dfred's similar module?

vast bane
hot flower
#

yup

vast bane
#

if yes, that is the benefit

scarlet gale
#

You would want both

#

VAE doesn't replace CE

violet meadow
#

I think they meant the DFreds effect panel

scarlet gale
#

oh gotcha

vast bane
#

I assume Callbritton meant dfreds effect panel

scarlet gale
#

(I didn't know that was a thing)

vast bane
#

its pretty much the exact same module minus the ability to put buttons in it

scarlet gale
#

I recently added a feature to my module to autofill the VAE details from all effects

north ocean
#

ok...i just used the midi quick setting to turn on the no automation and then back on again and its working ๐Ÿ˜•

violet meadow
#

Not sure if Effects Panel enriches text for descriptions

vast bane
#

k, according to what you showed us you should of had one of the two other modules installed for the images to make sense hope you cross checked the list with your mod list

#

you can enrich the actual spell description of the item for dfreds

violet meadow
#

Now yes

#

I think it was recently added

short aurora
#

Enabling Argon does add that button for me as well, overruling the setting... ๐Ÿค” no is wrong'

violet meadow
#

I thought so ๐Ÿ˜„

vast bane
#

wow Rippers moving into the effect transfer game?

#

do we need to add it to the list?

#

can you screen grab the setting in argon to shut it off for me?

short aurora
#

It's just the core dnd5e button, I think Ripper might be letting it escape somehow not argon's

#

Worth noting is that Argon does actually have an active effect apply setting, but changing that did nothing to the button

vast bane
#

is it a setting you can shut off in argon?

north ocean
#

Does it remove it on a fail?

short aurora
#

Not the button in response to Moto

vast bane
#

its problematic but probably not the cause of their hold person fail, they were casting on skeleton and hold person only works on player character sheets and humanoids

north ocean
#

argon on for both

#

the button went on a failed save

violet meadow
#

Oh FFS my server back home is off due to power cut and I cannot access remotely my latest MidiSRD dev version... I knew it that not updating my git dev branch would come back to haunt me... Now I am waiting for power to be back on...

vast bane
#

I had a weird one last night, everytime any of my npcs would use their reaction, the reaction CE would delete any temp ae's that were on the actor

#

only way I could fix it was to remake the CE from scratch

#

my reaction CE does have a delete an effect effect macro but it shouldn't be deleting anything, just a specific thing

short aurora
#

Vallant's right, I can repro this with just Midi as well

#

Ripper did nothing wrongโ„ข

violet meadow
#

So if you apply via the button, you cannot delete it?

short aurora
#

If you have this setting, it will apply effects on failure and remove the button, if they succeed, the button is there and will remain forever.

violet meadow
#

Ah ok there is an issue for that, correct?

short aurora
#

I don't think so actually

hot flower
vast bane
#

I just ran a whole session and never saw that

violet meadow
#

probably misremembering the issue ๐Ÿค”

vast bane
#

maybe its caused by your save settings?

#

Im using MTB what are you two using?

#

Vallant looks like auto

short aurora
#

I put mine to nothing, so could be that, yeah

north ocean
#

I put mine to auto everything

short aurora
#

Can you do a pull request on gitlab? I want to redo tposney's readme so bad every time I look at it - edit: will just google

violet meadow
#

yes you can

short aurora
#

by email what is this 2012

violet meadow
violet meadow
short aurora
#

Those say by email to me, but I think I'm just doing that workflow wrong and if I fork the project, do changes, I can do it without an email?

violet meadow
#

I started writing some things up, but didn't have the time. I might give it another try soon

short aurora
#

Just jest, I'm doing the exact same thing after all (merge request)

violet meadow
#

Yeah I know ๐Ÿ˜„
Just meant I had the same idea

dark canopy
violet meadow
#

Removing the jankyness. What a party pooper ๐Ÿ˜›

#

Moto doing warpgate will be a killer combo!

vast bane
#

The billiance of mine is that its a prefab, you copy it, drag X item to its effect value and its good to go

short aurora
#

cough the effect macro has item names hard coded cough

dark canopy
#

mine is the same, you can just export/move the masked item

vast bane
#

oh shit thats right

#

the new macro.createitem was suppose to fix it but its backwards ๐Ÿ˜ฆ

violet meadow
#

No need for the hardcoding of names though ๐Ÿ˜„

vast bane
#

it runs the macro on the created item instead of the dummy item

dark canopy
#

dont even need the source item once masked -- completely self contained

vast bane
#

half the magic items have item macros for their own automation on them so the macro.createItemMacro thing is kinda a deal breaker since you'd have to append a macropass to the magic items

#

which it ran the unidentified items item macro

vagrant wharf
#

is there a globe of invulnerability from MIDI or CPR that I'm missing? trying to figure out how to get that automated

scarlet gale
#

I haven't made one (yet)

vagrant wharf
#

oh ok

#

also for the call lightning one from MIDI srd spells I think, it asks the caster for saving throw when cast

vast bane
vagrant wharf
#

idk I didn't change a thing just dragged it from midi SRD

scarlet gale
#

As an alternative, my module has that spell too.

vagrant wharf
#

oh you're not the author of both? I lose track of all these things

scarlet gale
#

Nope

vagrant wharf
#

alright i'll try yours and yes moto its a self buff

scarlet gale
#

@violet meadow is Midi-SRD

vagrant wharf
#

but I dont know if changing that will fuck up the spell so I'll try the CPS one

violet meadow
#

remove the Save DC set in the spell

#

actually the saving throw entry

short aurora
dark canopy
#

(gotta document it first ๐Ÿ˜˜ )

vagrant wharf
north ocean
#

Does anyone have a forumla for green flame blade for a shortsword and add fire damage into the roll?

vast bane
#

mrprimate has that Im sure

scarlet gale
vagrant wharf
#

ok

#

thanks

scarlet gale
#

copy line 4 -> 81

tepid dock
#

Thanks

vagrant wharf
#

wait how do I copy the macro from out of the module

scarlet gale
#

That reminds me, I need to update this to just add the targets after targeting instead of using a synthetic item.

vagrant wharf
#

er, and that goes where

scarlet gale
#

as an item macro

vagrant wharf
#

actually I'll just make do with the lightning as is instead of trying to tamper with its guts

#

this grants advantage to saves vs spells?

north ocean
digital lagoon
#

Hey I am trying to make the Sentinel Raven feature from the Warlock: The Raven Queen UA class. I'm using ATL for the darkvision part, but idk how to add the bonus to perception nor how to toggle it on and off on feature use.

wide crystal
#

Also, what's the feature description?

spice kraken
#

Delete that

#

Share only relevant info

#

@digital lagoon

#

system.skills.prc.bonuses.check | Add | +1000000

#

make sure to always use + in the effect values. Without it, if you have 2 bonuses that both add 1, it'll be +11 instead of +2. You will see ++2 but that's normal. You want that

wide crystal
#

Also system.skills.prc.bonuses.passive for the passive Perception.

digital lagoon
#

this is what i am using for the dark vison btw

wide crystal
#

And it works for you?

digital lagoon
#

as a item yes, not as a feature

#

or atleast i'm not sure how to add it to a feature as a toggle

spice kraken
#

Easy way, create the AE, and drag it to your macro bar

#

Now you have a toggleable AE

digital lagoon
#

That works like a charm, thanks

buoyant minnow
#

After an attack the token is deselecting the target. Where is this setting in the mid?

whole bolt
#

Heya, im trying to make the 5e Dyrrn's Tentacle Whip - Is there any way I can automatically apply disadvantage on attacks made against abberations?
"You gain a +2 bonus to attack and damage rolls made with this magic whip, but attack rolls made against aberrations with this weapon have disadvantage."

molten solar
#

VAE does not touch what shows on the token

#

All issues with effects are ALWAYS dae

#

It is the only module that modifies effect behaviour.

vagrant wharf
#

thanks for the bestow cures chris

molten solar
short aurora
molten solar
#

I think that's a core issue tbh

#

But yeah, effects always applying to unlinked actors was fixed in 2.1.0

short aurora
#

It is a core issue, yeah. Something about unavailable/suspended not technically being disabled/inactive.

molten solar
#

Well no, it doesn't apply

#

It just shows on unlinked tokens regardless

short aurora
#

This particular issue? On linked as well with my testing, just doesn't seem to care about its' "unavailable" status as long as there's a duration.

molten solar
#

Do its effects apply?

short aurora
#

Nah, just a visual

molten solar
#

Right

gilded yacht
#

workflow.setDamageRoll should not affect dice so nice at all. If the dsn dice have been display setDamageRoll won't redisplay them. Or is something odd happening?

scarlet gale
#

While I could try to clobber in edits to the roll, it seems cleaner to me to just grab the old formula (make any changes) then re-roll it.

#

However this results in the displayed dice being totally wrong.

short aurora
#

Hey bugbear, trying to help out with a macro for disadvantage against aberrations, where did you find this conditionData again? I can't seem to find it in neither the arguments nor the workflow when trying to make a macro for checking if = aberration.

short aurora
whole bolt
scarlet gale
#

That will get the first item in the set

whole bolt
#

Any idea how to override the current number of hit die on a 5e character?
Here I have an AE setting attributes.hd to 0 and it shows as 0 just below the portrait and prevents spending any hit die during short rest. But when you click the 0 under portrait it opens the shown dialog allowing the use of the actual 3 hd remaining.

scarlet gale
#

Hit dice available is stored in each class, so you may need to overwrite those too

#

I would look into rest recovery if you're trying to do some homebrew changes to hit dice usage. There might be a setting in there that takes care of what you're trying to do.

whole bolt
#

It's more the effect of a magic item. Reduces your HD to 0 in order to grant you the bonuses.

molten solar
whole bolt
vast bane
molten solar
#

Idk I'm convinced it's a core bug

umbral basin
violet meadow
umbral basin
#

How do I do that?

violet meadow
#

Foundry right sidebar, User Management in Game Settings tab sidebarsettings

umbral basin
#

ah, thank you!

violet meadow
#

Then Configure Permissions

umbral basin
#

You are truly a bugbearic angel ๐Ÿ˜„

violet meadow
#

Such a friendly bunch we bugbears are

umbral basin
#

You sure are, you got them long limbs for good hugs

umbral basin
#

@violet meadow
Could I ask you for some more assistance? Remember the other day when I asked here about a macro for a save ability? The one that deals damage to multiple targets and then heals the user.

I still cant get the thing to work๐Ÿ˜ญ Iv been trying to Frankenstein some code but I dont know any script at all.

violet meadow
umbral basin
# violet meadow share the code you have and how you set the macro up
async function wait(ms) {return new Promise(resolve => {setTimeout(resolve, ms);});}
if (args[0].failedSaves.length === 0 && (args[0].failedSaves[0].value.actor.system.attributes.hp.value >= args[0].failedSaves[0].value.actor.system.attributes.hp.max)) return {};

const tokenD = canvas.tokens.get(args[0].tokenId);
const actorD = game.actors.get(args[0].actor._id);
const target = canvas.tokens.get(args[0].failedSaves[0].id);
const itemD = args[0].item;
const gameRound = game.combat ? game.combat.round : 0;
const halfDamageHealing = Math.floor(args[0].damageTotal / 2);

await MidiQOL.applyTokenDamage([{damage: halfDamageHealing, type: "healing"}], halfDamageHealing, new Set([tokenD]), itemD, new Set());
const effectData = {
    label: "Blood Spray",
    icon: "icons/skills/wounds/blood-drip-droplet-red.webp",
    origin: args[0].uuid,
    changes: [{
        "key": "system.attributes.hp.max",
        "value": `-${args[0].damageTotal}`,
        "mode": 2,
        "priority": 20
    }],
    disabled: false,
        }
    }
};
await wait(600);
ChatMessage.create({
    user: game.user.id,
    speaker: ChatMessage.getSpeaker({ actorD: actorD }),
    content: the_message,
    type: CONST.CHAT_MESSAGE_TYPES.EMOTE
});```
violet meadow
#

```js
code here
```

umbral basin
#

There we go

violet meadow
#

OK so this is meant to be used against 1 target

#

and this feels wrong args[0].failedSaves[0].value.actor.system.attributes.hp.value

#

the first value in there

#

args[0].failedSaves[0].actor.system.attributes.hp.value should be

#

but that conditional doesn't make much sense

umbral basin
#

Well this one was originally made to be used for an attack roll.

violet meadow
#

Probably would need OR instead of AND, meaning || instead of &&

#

OK so what is the intended result?
Get the damage dealt to targets that didn't save and heal for that amount the caster?

#

The sum of the damage, or the damage rolled?

vast bane
#

why even bother checking the save?

#

just heal for the damage applied?

violet meadow
#

I can see a world that it would get the essence of targets that failed to save ๐Ÿ˜„

umbral basin
#

So ye, its an instantaneous aoe aura around the caster. A save is half damage, but no matter if the targets fail or not the user heals for half the total damage dealt.

vast bane
#

if save doesn't matter to the heal then it doesn't matter to the macro?

#

just play off the damageApplied

umbral basin
#

"You swing your flail in a wide motion around you. Necrotic energy streaks around you to a distance of 15 feet for the duration.

A creature within the area must make a Wisdom saving throw DC 15. On a failed save, the creature takes 4d8 necrotic damage. On a successful save, the creature takes half as much damage. This ability has no effect on undead or constructs.

You regain hit points equal to half the sum of the necrotic damage dealt."

This is the ability I was trying to create.

vast bane
#

or will that create an error if require target isn't on

umbral basin
#

The save and damage is on the Spell sheet.

violet meadow
#

half of the sum of damage dealt

#

that is a bit more involved

vast bane
#

I actually have this already

umbral basin
#

You do? ๐Ÿ˜ฎ

vast bane
#

its the lifesteal I shared whenever people ask for it

#

we zero in on damageApplied and just do a damageOnlyWorkflow of temphp or healing

#

remove the first line for your aoe

#

maybe put in an If statement for if no targets are found

#

incase the user pops it with nobody around them

violet meadow
#

This still will not get the whole damage dealt. You need to go through the damageList and sum the sums up ๐Ÿ˜„

vast bane
#

oh shit

#

yeah multiple targets

#

wouldn't it though?

#

it'd just be like 10 heals

#

it'd be janky, but thats my middle name

#

problematic if its meant to be temp hp though

umbral basin
umbral basin
vast bane
#

Someone might help with summing them up but my linked macro will do tiny individual heals to the source actor

#

I think you need a target count chck incase the user pops it with nobody around

umbral basin
vast bane
#

bring back the first line but change it

#

have the statement be If targets are zero, return

#

unless midi accounts for null as zero

#

I think appliedDamage also requires midi damage automation to be set to any drop down other than No

umbral basin
#

Ye I have no clue how to do any of this xD

violet meadow
#
if (args[0].targets.length < 1) return;
let dmgSum = 0;
for (const d of args[0].damageList) dmgSum += d.appliedDamage
if (!!dmgSum) {
    const damage = Math.floor(dmgSum/2);
    const sourceToken = args[0].workflow.token.document;
    await MidiQOL.applyTokenDamage([{
        damage,
        type: 'healing'
    }], damage, new Set([sourceToken]), args[0].item, new Set());
}
vast bane
#

beat me to it

#

I was gonna do ! =0

#

errr that would have been wrong lol

umbral basin
#

You guys are heroes without capes๐Ÿ˜ฑ

vast bane
#

I'm just a hero Cosplayer

molten solar
frigid zinc
vast bane
frigid zinc
#

it just uses the items as if you click on them on the sheet

vast bane
#

we had some confusion last night around a setting related to disabling an apply active effects button in it

frigid zinc
vast bane
#

so if midi exists it will show midi's apply active effect button, and if its just core, core's version?

frigid zinc
#

doesn't touch anything else

vast bane
#

gotcha ok, thats what we eventually got around to discovering but since I don't have the module I was curious if it did something like effective Transferral where it gives the user a button to apply ae's with

vast bane
#

Help action gives advantage against a target or advantage to a target depending on how the DM interprets it

frigid zinc
#

@vast bane i wanted to test something and you probably know, where do i get a warpgate-misty step item?

umbral basin
vast bane
#

we all use automated animations

#

its like the only non animation thing that sequencer/aa does

frigid zinc
violet meadow
umbral basin
violet meadow
#

Details tab of the Item. Activation condition field

#

But you will need to be using Activation conditions in the MidiQOL settings

umbral basin
#

Hmm

#

Didnt work

violet meadow
#

Can you screenshot the Item's details page?

#

How do you set it up?

#

Just a damage formula?

umbral basin
#

Also, the user took damage this time even though the range was set to special

#

@violet meadow Is this what you were after

violet meadow
#

Activation conditions will not work for you

#

do you want to not damage undead and constructs at all with this spell?

umbral basin
#

Ye

#

Undeads and constructs should take no damage

vast bane
#

that target/range is wrong for the macro

#

change radius to creature

#

or enemy depending on whether he can suck on his allies

umbral basin
#

It can hit allies, thats the fun part xD

vast bane
#

then change radius to creature and the second drop down in workflow tab should be set to this:

#

Levels maps will have issues with these typs of spells targetting through floors without level auto cover module

vast bane
#

the filter for undead/constructs has to be in the macro since its not an ae or other formula

umbral basin
vast bane
umbral basin
umbral basin
vast bane
#

I'm sure bugbears already writing the right syntax

#

its going to be an if statement and then return

#

If !(["construct", "undead"].includes(raceOrType)) return; bugbear?

#

wait no

#

you need the macro to exclude all targets that are construct/undead

#

this would kill the macro if any target is one

#

Thats above my paygrade

#

then again, I could use my crazy sculpt spells macro as a template...

umbral basin
#

Crazy sculpt spells?

vast bane
#
if (!token.actor.items.getName("Sculpt Spells") || args[0].item.system.school !== "evo") return;
game.user.updateTokenTargets(args[0].targets.filter(tok=>tok.disposition !== canvas.tokens.get(args[0].tokenId).document.disposition).map(i=>i.id))

I'm not sharing this for you Mrtoyama, its for @violet meadow

#

could the macro utilize this way of filterig the targets?

#

just a matter of removing the disposition filter and putting in race/type instead

#

for anyone interested in the macro just above, its my answer to my player whose an evocation wizard and hates having to micromanage how sculpt spells flag works in midi. His evocation spells just literally ignore all allies by default.

#

then we manually account for any allies who go over his allowed amount but it hasn't happened yet

violet meadow
#

@umbral basin change the onUse macro to be executed on All instead of only After Active Effects
Add this at the top of the macro```js
if(args[0].macroPass === "preambleComplete") {
game.user.updateTokenTargets(Array.from(game.user.targets
.filter(function (tv) {
if (['undead','construct'].some(v=>tv.actor.system.details.race?.toLocaleLowerCase().includes(v)) || ['undead','construct'].some(v=>tv.actor.system.details.type?.value.includes(v))) return tv
})
.map(t=>t.id)));
}
if (args[0].macroPass === "postActiveEffects") {
//put the rest of the macro in here.
}

umbral basin
# violet meadow <@307506121361457152> change the onUse macro to be executed on `All` instead of...

So like this?

if(args[0].macroPass === "preambleComplete") {
    game.user.updateTokenTargets(Array.from(game.user.targets
    .filter(function (tv) {
        if (['undead','construct'].some(v=>tv.actor.system.details.race?.toLocaleLowerCase().includes(v)) || ['undead','construct'].some(v=>tv.actor.system.details.type?.value.includes(v))) return tv
     })
    .map(t=>t.id));
}
if (args[0].macroPass === "postActiveEffects") {
   //put the rest of the macro in here.
if (args[0].targets.length < 1) return;
let dmgSum = 0;
for (const d of args[0].damageList) dmgSum += d.appliedDamage
if (!!dmgSum) {
    const damage = Math.floor(dmgSum/2);
    const sourceToken = args[0].workflow.token.document;
    await MidiQOL.applyTokenDamage([{
        damage,
        type: 'healing'
    }], damage, new Set([sourceToken]), args[0].item, new Set());
}
}```
violet meadow
vast bane
#

rare you get to use all in an on use lucky you

umbral basin
vast bane
#

I just don't see many that do is all, you don't want to use all when its not necessary generally but this time it is

umbral basin
#

Something didnt like this

vast bane
#

missing or extra ( or {

#

he edited it, make sure you didn't grab it before the edit, I always do that hehe

violet meadow
#
if(args[0].macroPass === "preambleComplete") {
    game.user.updateTokenTargets(Array.from(game.user.targets
    .filter(function (tv) {
        if (['undead','construct'].some(v=>tv.actor.system.details.race?.toLocaleLowerCase().includes(v)) || ['undead','construct'].some(v=>tv.actor.system.details.type?.value.includes(v))) return tv
     })
    .map(t=>t.id)))
}
if (args[0].macroPass === "postActiveEffects") {
   //put the rest of the macro in here.
    if (args[0].targets.length < 1) return;
    let dmgSum = 0;
    for (const d of args[0].damageList) dmgSum += d.appliedDamage
    if (!!dmgSum) {
        const damage = Math.floor(dmgSum/2);
        const sourceToken = args[0].workflow.token.document;
        await MidiQOL.applyTokenDamage([{
            damage,
            type: 'healing'
        }], damage, new Set([sourceToken]), args[0].item, new Set());
    }
}
umbral basin
#

๐Ÿค”

#

So missing a ")" somewhere?

vast bane
#

I was told a while ago that the error like that can also mean }

umbral basin
#

oh

vast bane
#

I don't see any errors when I checked it

violet meadow
#

Simplified it a bit, but it shouldn't have an error syntax

#

Copy paste again

#

Maybe you left out the last }

umbral basin
#

Hmm

#

Well lets see!

#

I got the same error again

#

Hmm...

#

I copied everything though

vast bane
#

Do you have any actor on use macros already or CPR installed?

umbral basin
#

CPR = chris premades?

umbral basin
vast bane
#

my only thought is that maybe this actors got a bad actor on use?

violet meadow
#

Can you export the item and send it to me

umbral basin
#

How do I export an item?

violet meadow
#

Move it to the sidebar in the Items Directory and right click export

umbral basin
#

So, the item in question is that the Ability?

violet meadow
#

The one that has the macro onUse

umbral basin
violet meadow
umbral basin
violet meadow
#

Use this

pseudo turret
#

Hi, I'm working on an onUse macro with a preCheckHits trigger and I'd like to update the attack roll card at the end of it.

...
    let newContent = `<hr><p><b>Luck Points Used</b></p>You have used ${useFeature} Luck points`;
    const chatMessage = game.messages.get(args[0].itemCardId);
    let content = duplicate(chatMessage.data.content);
    const searchString =  '<div class="midi-qol-attack-roll"></div>';
    const replaceString = `<div class="midi-qol-attack-roll">${newContent}</div>`
    content = content.replace(searchString, replaceString);
    chatMessage.update({ content: content });

I don't get any error but also the card is not updated. What am I doing wrong?

violet meadow
#

remove the data in the chatMessage.data.content

pseudo turret
#

I tried now but it doesn't seem to make a difference/

#

btw, I do have merged cards enabled.

violet meadow
#

is the content updated at all?

#

log it before updating the chatMessage

#

is there the searchString present?

hollow atlas
#

Hi, I have an issue where MidiQOL automatically applies disadvantage for a ranged attack when in melee with a hostile token, despite that token having the incapacitated condition. Other effects it seems to apply properly though :/
Any ideas where I should check if some setting is messed up, or is that just not a feature (yet)?

umbral basin
# violet meadow

Okay, Iv imported the new version of the ability. I can see that you changed the name of my macro into "ItemMacro". Should I do the same?

Also it seems to only target Undead and constructs now xD

violet meadow
violet meadow
#

Does it work?

violet meadow
#

I made them included not excluded by mistake ๐Ÿ˜ฉ

umbral basin
#

LOL

#

I suppose I just need to change "Include" to "Exclude" in

(['undead','construct'].includes(tv.actor.system.details.race?.toLocaleLowerCase()) || ['undead','construct'].includes(tv.actor.system.details.type?.value)) return tv
#

Is it that easy?

#

Okay that made no difference

vast bane
#

turn on attribution and sus out what is actually going on

#

also beware that dfreds CE has a ranged disadvantage CE that if placed on a linked actor will carry over to all scenes causing disadvantage if the combat dummy is next to them in the landing page

violet meadow
#

It's reproducible @vast bane . Needs an issue to disregard incapacitated from NearbyFoes

vast bane
#

I'm scarred

north ocean
#

Does any one know if itโ€™s possible to make a formula for green flame blade which then allows you to select the second target for the splash damage?

#

The splash damage would need to be within 5ft of the original target

umbral basin
north ocean
vast bane
#

but its useful for some items incase you can't guess how the item should be setup

#

that ones probably a good case for that, so maybe a ddb importer user can share the details of green flame blade

#

my guess is that macro is meant to be an on use macro in midiqol, probably stored as an item macro

#

it might be a dae macro.itemmacro I dunno

north ocean
#

Itโ€™s been a while since I used macros, but you need to make a new item for it?

vast bane
#

do you have item macro and midiqol?

north ocean
#

The latter only

vast bane
#

install item macro, in its settings once its enabled, uncheck the box related to character sheet hooks

north ocean
#

Ok

vast bane
#

If you haven't made Green Flame Blade yet, make it, then setup an on use macro for it via midiqol and then paste the macro in the url into the Item Macro at the top of Green Flame Blades window

north ocean
#

Awesome thanks so much

vast bane
#

this'd be a neat way to give item macros to novice users who don't have it

#

you have to guess how the macro is called, my first guess is midiqol on use, second guess would be dae

#

If you give the item an action type, then you gain access to the bottom half of item details:

violet meadow
# umbral basin So how do I exclude them instead? xD

Got sidetracked```js
if(args[0].macroPass === "preambleComplete") {
game.user.updateTokenTargets(Array.from(game.user.targets)
.filter(function (tv) {
if (!['construct','undead'].filter(v=>tv.actor.system.details.race?.toLocaleLowerCase().includes(v)).length && !['construct','undead'].filter(v=>tv.actor.system.details.type?.value.includes(v)).length) return tv })
.map(t=>t.id))
}
if (args[0].macroPass === "postActiveEffects") {
//put the rest of the macro in here.
if (args[0].targets.length < 1) return;
let dmgSum = 0;
for (const d of args[0].damageList) dmgSum += d.appliedDamage
if (!!dmgSum) {
const damage = Math.floor(dmgSum/2);
const sourceToken = args[0].workflow.token.document;
await MidiQOL.applyTokenDamage([{
damage,
type: 'healing'
}], damage, new Set([sourceToken]), args[0].item, new Set());
}
}

north ocean
vast bane
#

its so that you didn't have to install item macro though most advanced midi users have it installed

#

if you don't shut off character sheet hooks in its settings it will wreak havoc on midi

north ocean
#

If it will benifit me in the long run, Iโ€™ll probably get it anway but Iโ€™m very much a novice

pseudo turret
# violet meadow is there the searchString present?

The string was not matched, but I checked some of Crymic's recent public macros and saw a better way to search for the div. I was using the example in midi's readme. Now I have:

...
    let newContent = `<hr><p><b>Luck Points Used</b></p>You have used ${useFeature} Luck points`;
    const chatMessage = game.messages.get(args[0].itemCardId);
    let content = duplicate(chatMessage.data.content);
    const searchString =/<div class="midi-qol-attack-roll"">[\s\S]*<div class="end-midi-qol-attack-roll"">/g;
    const replaceString =  `<div class="midi-qol-attack-roll""><div class="end-midi-qol-attack-roll">${newContent}`;
    content = content.replace(searchString, replaceString);
    console.log(content);
    chatMessage.update({ content: content });

The content is replaced from:

      <div class="midi-qol-attack-roll">
        <div class="end-midi-qol-attack-roll"></div>

to

      <div class="midi-qol-attack-roll"><div class="end-midi-qol-attack-roll"><hr><p><b>Luck Points Used</b></p>You have used 1 Luck points</div>

The card does not change however

umbral basin
#

or.. is it the js.length?

north ocean
static sparrow
#

Is there any way to make an item roll and apply its damage automatically without pressing the button or having the GM press any buttons on a per-item basis (when the general settings are to not fast-forward and not auto-apply)?

violet meadow
umbral basin
#

Still only damages Constructs and Undead

#

I think Foundry hates me

violet meadow
#

Did you change the macro on the actual Item on the character sheet, or the sidebar?

umbral basin
#

I imported the new Blood Spray.
Then I made a new Character and gave it the new Blood Spray.

short aurora
violet meadow
#

๐Ÿค”

umbral basin
short aurora
violet meadow
#

Use that ๐Ÿคท

umbral basin
violet meadow
#

Just Import the Item. DO NOT change anything. Do not even open it ๐Ÿ˜„

Put it on an actor. Use it

#

Does this work?

violet meadow
umbral basin
#

I might have found the problem

#

Nothing changes when I import the item :I

violet meadow
#

Do you want me to connect to your world quickly to take a look?

If yes, send me a temporary user/pass for a GM account by DM

umbral basin
#

Lets try that

vast bane
#

make a basic spell

#

then import his spell on top of the basic spell

#

somehow since dnd5e 2.1 we've needed to import over the same item type now

violet meadow
#

<div class="midi-qol-attack-roll"">[\s\S]*<div class="end-midi-qol-attack-roll"">

#

and the replace String

pseudo turret
violet meadow
fringe crag
#

Hello,how woud you set up something like that?:

Two Birds, One Stone.

When you make a ranged attack using the quarterstaff's sling, you can expend 1 of its charges to cause the sling bullet to transform into a pair of birds mid-flight. The birds then attack the target. Make an attack roll for each bird, using either your ranged weapon attack bonus or Wisdom (Animal Handling) bonus instead, whichever is higher. On a hit, the birds deal piercing damage, instead of bludgeoning. If you used your Wisdom (Animal Handling) bonus to make the attack, you add your Wisdom modifier to each damage roll, instead of Dexterity. The birds disappear immediately after the attack.

violet meadow
#

That is a PITA... Just create separate items...

fringe crag
#

PITA?

spice kraken
#

Pain in the ass

pseudo turret
fringe crag
#

ah, yea I figured. Was my first thought too, Thought maybe you could do it via versatile and a flag. Is there a flag for linking abiility values?

#

or just @mod + @prof

#

oh damn I pinged someone

spice kraken
#

Put those inside `text here`

violet meadow
#

did it a bunch of times testing some things ๐Ÿ˜…

static sparrow
#

Can anyone help me understand midi's over time action save stuff? From the documentation, it seems like it should listen for whatever I have it set up as, but with the following "effect value":

rollType=skill,
saveAbility=athletics,
saveDC=13,
actionSave=true```

the effect isn't removed when the affected target rolls athletics and gets at least a 13. Am I missing something?
violet meadow
#

ath instead of athletics

static sparrow
#

That was the first thing I tried, I changed to athletics because I thought I may have gotten the wrong abbreviation and didn't want to look it up XD

violet meadow
#

Are you in combat?

static sparrow
#

Lemme give it another shot because I think I had a different typo as well when I was using ath.

#

Yep, that was it, thank you.

#

@gilded yacht Minor documentation quibble, but for the overTime saveAbility stuff, the documentation says that full skill names are acceptable but apparently they are not XD May be worth changing.

vast bane
#

the ones with // in front of them means if you don't do anything in that sub group in the overtime, that is the default, if a group has no default its optional.

#

and the way I setup the cheat sheet the last one has no comma cause 99.9% of all overtimes use label anyway, I made it the last one so beware of commas, always put the label last in my sheet and you will be fine.

#

I personally just have it as a notepad++ tab when I'm making new items

#

easy to copy and paste from

hollow atlas
pseudo turret
hot flower
vast bane
violet meadow
vast bane
#

I kinda base the pin off what are most commonly the easy answers here.

north ocean
#

@vast baneHey, im home now and first attempt didnt go well. Could you take a look at what im missing?

vast bane
#

If anyone saw my comments on pondering if Heartbeat is incompatible with midiqol, I discovered the cause of my constant spam errors. There was a token on the canvas that was an improperly setup vehicle sheet and heartbeat module has a stroke over that throwing errors galore whenever the combat tracker advances turns.

vast bane
#

Does anyone have the details for green flame blade? NOT the description

#

from DDB

north ocean
#

not quite sure where to add the extra splash damage

vast bane
#

it looks like you are pasting in an imported items contents into an item macro

#

Once you have pasted his macro in, at the very bottom of that item you have, there is a blank field to the left of "After Active Effects" change that blank field to ItemMacro

vast bane
north ocean
vast bane
#

Its kinda required for midi I think

#

pretty sure this macro you are pasting needs it

north ocean
vast bane
#

I gave you the item import cause I thought you didn't have the spell yet

#

you clearly have the spell, so take that macro and paste it into the spell instead

north ocean
#

The actual spell from the SRD?

vast bane
#

its not SRD

#

its a SCAG/TCE spell

#

your actor has Green Flame Blade with a dope icon, might as well use whatever that is

#

and delete mine, but copy/paste the macro into the that green items item macro

#

and at the very bottom of that green item, hit the + so that you create a new on use macro field and put ItemMacro in and choose After Active Effects for the drop down.

north ocean
vast bane
#

the macro is not going to workunless you have Dynamic Effects Using Active Effects Module installed, its wrench is notably absent from your top bar

#

unless you cleared its wrench setting out of its settings

north ocean
#

Defo have it

vast bane
#

k just an abnormal setup, no biggy. I think the macro is ok, but the problem is neither you nor I know what MrPrimates version of the item looks like on the details tab

north ocean
#

So it kinda works

#

but doesnt add the splash damage

vast bane
#

my first thought is it doesn't want it to be a melee weapon attack, but I have no idea, it'd be super awesome if someone with ddb's green flame blade could share the item details to us.

north ocean
#

and no idea what it will do at later levels

vast bane
#

I think I'm good with deleting that pin then honestly

violet meadow
#

Nah, don't delete the pin. Change it to a link maybe, but still it is helpful to have it here too.
Though maybe the full text makes the pins a bit less informative?! ๐Ÿค” ๐Ÿคท

raven holly
#

Done!

violet meadow
#

oh well ๐Ÿ˜„

raven holly
#

haha oops

vast bane
#

nah I was fine with it being unpinned

#

right under it is the link to the wiki

#

I'll just point people to that post

violet meadow
vast bane
#

hmmm isn't the link in his post the main category?

#

I like the wiki anyway, the post is kinda tedious

violet meadow
#

I mean it sounds better to have it available there too (the link I mean)

vast bane
#

and doesn't look great on our phones

dark canopy
#

pointing to the wiki link with that link being obvious upon click through i think is good

#

if you really want the link, i can add though

vast bane
#

but I'm still sharing the attribution instructions here lol cause I got a quick link to the last time I ran someone through it

#

I wonder if theres a way to get the wiki to open the discord links in discord instead of browser?

#

or is that my fault with my discord settings?

dark canopy
#

it should give you a choice, but I would transfer that information to the wiki itself. Having important data relevant to the article hidden in some other service isn't terribly helpful

violet meadow
#

I have no mental capacity rn to think about what would be better. I trust you all ๐Ÿ˜„

languid wave
#

Is there a recommendation for handling combat on maps that are non-standard sizes (10ft grid, etc). I think midi assumes maximum distance between the squares, so melee attacks don't happen.

dark canopy
#

using 10ft scales gets rough

languid wave
#

10 ft isn't even the biggest. Storm King's thunder has 50ft maps IIRC

#

๐Ÿ˜…

#

Was more a mental excercise than an actual problem

#

wondering to myself "what to do" if the scenario ever pops up

#

I guess the solution would be to just use them for reference, and use a regular battlemap of similar style if you had to run combat

dark canopy
#

in that case, about 50 tokens can occupy the same square...so have fun with that

languid wave
#

๐Ÿ˜‚

languid wave
vast bane
#

gawd I cannot stand how hard it is to deal with tokens on top of tokens

languid wave
#

also it's 100 medium sized. way more if you go to tiny โค๏ธ

vast bane
#

I've been kinda avoiding adding a module solution

#

I had a mount module butit was too clunky

languid wave
#

the worst one I've run into recently for needing stacked tokens

#

is Dragonheist Xanathar's lair

vast bane
#

I never ran them through it hehe

#

my party's villain was the Cassalanter's

#

and I didn't do the alexandrian version, I did a homebrew one instead as I tied it directly to dotmm

#

I think the suggested module is tokenz

languid wave
#

That room has four spores and a zombie beholder

violet meadow
#

token z

#

it just works ๐Ÿ˜„

vast bane
#

I have 2 small race characters and they have medium sized mounts, a Tabaxi with a robot(its a Roomba) and a Gnome with a Mastiff

languid wave
#

This 1-cell-wide jail cell has a half-ogre, a minotaur and some medium sized character

#

and this is canon -- per the book

violet meadow
#

Cut the map to pieces, blow it up and create the correct amount of grid squares per map square

vast bane
languid wave
dark canopy
vast bane
#

use Tych's Maps they are the best for alexandrian and regular dragon heist and also if you go into Dotmm hes one of the best for map art there too, so your players won't notice any artwork differences

languid wave
#

thinking about making a third party enhancement to go with DDB Importer's adventure muncher

vast bane
dark canopy
#

which is why this macro does all that work for you -- with the identifiers set up appropriatly, its one click to mount, one click to unmount

vast bane
languid wave
#

LOL

vast bane
#

They also bought the Gralhund estate when it was at auction. The last time the manor burned down it took all the other buildings in its clump minus the bent nail with it so they bought the other plots and are currently constructing an adventuring guild in it and now reside in Gralhund

dark canopy
#

let's try to stay on topic ๐Ÿ™‚

vast bane
#

sorry lol

vast bane
#

I'm like a grandmother getting a call from a son/daughter, I will jump at any chance to talk about my campaigns lol

pseudo turret
violet meadow
#

Oh I was

#

But still it shouldn't be strictly needed ๐Ÿค”

north ocean
#

How does spiritual weapon + warpgate work?

dark canopy
#

many approaches ๐Ÿ™‚

#

(unless you are speaking about a specific macro)

north ocean
#

How do i link it to my "weapon actor"

dark canopy
#

generally by name

north ocean
#

Ive got it working for me but my player is getting the message "lacks permision to create the token"

dark canopy
#

give them core permissions to create tokens

vast bane
#

there is a premade item in midi sample items all you need to do is make an actor named "Spiritual Weapon" though its recommended you drag out the jb2a actor as its already made

dark canopy
#

(players still need permission to create tokens)

north ocean
#

Sorted, thank you

vast bane
#

I prefer the v9 warpgate macro rather than the v10 one, only cause the v10 one had growing pains its probably sorted by now

quiet solar
#

I keep hoping to find somebody asking about magic missile so I can link to this innocently... but I'm just going to suck it up and call it what it is (shameless self promotion)
https://github.com/w15p/w15ps-srd/wiki/Demo

Hopefully the Magic Missile at least will be useful for somebody - thanks to everyone here for all the help so far!

mighty pier
#

How to write on the attack the activation condition "if the creature is not immune to cold"?

gaunt python
mighty pier
#

No, I want the effect to not apply if the creature is immune to cold

violet meadow
gaunt python
violet meadow
#

Actually I haven't checked if that will do it. Going off memory ๐Ÿ˜

north ocean
#

How can i add an aura to Channel Divinity: Twilight Sanctuary? or do i need another module?

mighty pier
#

Hmm.. Well, it should work.. It seems to me that I did something wrong

#

No, everything seems to be correct. There is immunity to cold, a condition too, a check in "The condition must be met too" in the box too, but the effect is still applied to a creature with immunity to cold

violet meadow
#

put a value after di

#

Actually log the target actor and checkn

#

I will be at my pc in a bit

mighty pier
violet meadow
#

!target.traits.di.value.has('cold')

mighty pier
#

Ah, literally "value"

violet meadow
#

Don't forget the !

#

Edited

mighty pier
#

Oh great, now it works. Thank you ๐Ÿ‘

north ocean
#

Is there anyway to automate those 2 choices if the player ends their turn in that aura?

violet meadow
#

I wouldn't use an aura for this.
I would create an item which when this channel divinity ability is active, can be used by the player and trigger a dialog to..

#

Ok then go for Moto

gaunt python
vast bane
#

I highly recommend all of these:

Sources of premade stuff for Midiqol:

Midi Sample Items Compendium(comes with the module)

Midi SRD's compendiums
https://foundryvtt.com/packages/midi-srd

Mr.Primates premade macros:
https://github.com/MrPrimate/ddb-importer/tree/main/macros

Chris' Premade macros:
https://github.com/chrisk123999/foundry-macros

Chris' Module form of his macros:(CPR)
https://foundryvtt.com/packages/chris-premades

Dfred's Convenient Effects:
https://foundryvtt.com/packages/dfreds-convenient-effects

Activation condition and other useful info:
https://github.com/thatlonelybugbear/FoundryMacros/wiki

w15ps's Module
https://foundryvtt.com/packages/w15ps-srd

#

and twilight sanctuary as well as its other features are in CPR

north ocean
#

its ok to install all the dependencies i take it?

dark canopy
#

i would recommend adding modules as you find that you need them

#

rather than that whole list at once

vast bane
#

I personally would preinstall them, when I first installed CPR I got errors in 3 of the dependencies, I think cause foundry/github didn't expect that many installed at once

#

I think Vallant is referring to CPR's dependency list

north ocean
#

I'm just installing CPR's

vast bane
#

you can try but if you see an error uninstall that one and reinstall

#

I personally had 2 error out saying they couldn't find the manifest prolly due to throttling at github

north ocean
#

ill just prerinstall

vast bane
#

once you installit go through its settings,you don't have to have it all on but I personally saw no performance degredation. I left off the things that didn't matter to my campaign

#

if you have unautomated versions of stuff, you should see a lil medkit/chest icon on the top bar, you can click that to have it update it, make sure you turn on synergy with midi srd/other compendiums so that midi srd's items also update

#

Need to ask tposney if he can move the version numbers off the names of the sample items so that his compendium plays well with CPR

dark canopy
#

(imo, the module using the other's resources should be the one to adapt -- assuming what its adapting to isn't straight up wrong, which its not, here)

vast bane
#

its not like that. CPR has a feature where you can feed it your own custom compendiums to update off of, and it has the side benefit of letting us feed it other modules compendiums too but tposney puts the version numbers on the end of the names of the items and CPR checks vs the name of the item to sus out to update with them or not so all of the samples get ignored.

dark canopy
#

sounds like its exactly on CPR -- to match substrings

vast bane
#

pretty sure he only started putting them in the name in v10

#

you convinced me, instead I'll just unlock my own and rename them hehe

gaunt python
north ocean
#

@vast bane Ok so i added Twilight sanc to me players sheet and used it, got the animation etc but no prompts when players end their turn

vast bane
#

also did you actually update it to his version?

modern badger
#

how do u code max damage?

#

with MidiQOL

#

I wanna do the Pugilist's Haymaker feature ;3;

gaunt python
#

do you mean, how to get the roll formula in the macro to return a max roll? in that case: .roll({maximize: true})

modern badger
#

yeah but

#

Is there a way to set an active effect that gives the actor the maxroll property?

#

this, basically

#

I could give them an alt. weapon that deals max damage but I'd prefer if it could be an effect

north ocean
#

Do i need to manually add all the compendiums?

#

@vast bane

vast bane
#

I already have every item so I just use the update button on the top bar to get his version/updated versions

north ocean
vast bane
#

each item should say what it requires too of his global settings

modern badger
#

.3.

vast bane
#

I dunno if this is true or not, but I think all of those are hooks, so you have to restart after you check them in his settings

north ocean
#

I already updated it

#

Ok. doing a foundry restart

gaunt python
vast bane
modern badger
#

:0

#

so that flag should maximize all damage?

coarse mesa
# north ocean

Nice UI! Someone needs to style those inline links tho ๐Ÿ‘€

vast bane
gaunt python
vast bane
pseudo turret
#

I'm trying to write a onUse macro for the isSave trigger. What I want to do is to give the target of the save the option to add +X to the saving throw after the roll, but before knowing if the save was successful. Are there macros you can point me to to understand how to have the client of the target show a dialog and make a choice?

modern badger
#

nicenice

#

thank u!

vast bane
scarlet gale
vast bane
#

is DF chat cards the folder name for DF chat enhancements?

gaunt python
scarlet gale
vast bane
#

Whenever I need things to pop up between the roll and the declaration of success, I'm always using optional.something

scarlet gale
#

They should just be able to do an optional bonus

#

No need for a macro for that

mighty pier
#

I have another question: I need a condition like "if the target has an effect with such and such a name" and "if the target has more than 10 effects with this name" (yes, I know, it sounds strange)

scarlet gale
#

Activation conditions

#

Or a macro

mighty pier
#

Btw, where to watch it? Where to look for everything that can be written in the condition? Or is it a collection of information from different parts of the entire foundry and/or MidiQoL documentation?

vast bane
#

how can you tell how many stacks there are though?

vast bane
scarlet gale
#

Activation conditions are just evaluated JavaScript

mighty pier
scarlet gale
#

What are you trying to make?

vast bane
#

I assume theres something in the workflow you can check against, I just never have seen how to tell the difference between 5 stacks and 1 of an ae set to stack

scarlet gale
#

A flag on it most likely

vast bane
#

I'm guessing the stacking drop down is a Dfreds or DAE feature right since its kinda hard to apply a stack in core?

scarlet gale
#

DAE I think

mighty pier
# scarlet gale What are you trying to make?

I need it for two things. First, there is a mob that applies effect A if the target has effect B. There is also a mob that applies effect A only if the target has at least five charges of effect B (charges are made through "each addition increases the amount by 1"). Secondly, there is a mob that applies a C effect to itself with "Stacking effects apply multiple times" selected, as long as it has less than ten C effects. The second one sounds strange, it's easier to do it through a macro, as it seems to me, right?

mighty pier
mighty pier
pseudo turret
vast bane
pseudo turret
#

right, ok, I've used focused aim to create a macro for attack rolls. That's fine. I have it now and it works - it's attached here. (I am trying to implement the Luck Points rule from Kobold Press and its applies to attacks, saves, and all skill/ability checks). Now I've started working on saves, but here I'm using isSave as trigger and this.actor obviously is not the target of the save. Also I imagine the menu won't pop up for the target unless the macro deals with that specifically.

mighty pier
vast bane
violet meadow
mighty pier
#

Btw, I realized what the error was, I wrote ...eff.data.label... instead of ...eff.label..., and I was given a warning that this is an outdated thing or type of that. I understand correctly that this would work on V9?

vast bane
#

I doubt the shim works in activation conditions

#

it prolly would have worked in v9, give it to super he can test it for us ;p

pseudo turret
violet meadow
#

hmmm is that an ability on the defender?

pseudo turret
# violet meadow Oof too late to wrap my head around that one now ๐Ÿ˜…

yeah, it's getting late for me too ๐Ÿ˜น.
It is in a sense an ability on the defender.

It's a mechanic called Luck Points. You have a pool of points and every time you roll an attack, skill check or save you can decide - before evaluatjng the result - to use points to add to the roll or spend 3 points for a reroll. For attacks it was easier to automate, now I was trying to do saves rolled as per of midi workflows.

scarlet gale
#

I'm still pretty sure they can just be done with optional bonuses

#

There 100% is one for saves

violet meadow
#

yeah it sounds like optional bonus

#

The issue is how to insert the amount of points to use

#

You can trigger a macro off an optional bonus

#

hmm oh well can you?! I need sleep

pseudo turret
pseudo turret
violet meadow
#

yes that was what I saw and seemed that it couldn't help you ๐Ÿค”

#

So instead preTargetSave trigger and do everything in there

#

That will be a macro onUse on the actor that has the ability

gilded yacht
scarlet gale
#

Post damage roll @gilded yacht

uncut citrus
#

Heys guys

#

I'm using Mid with the Moken Token Bar. Wanted to make all enemies/allies within an action's template automatically selected. Currently it is selecting only who is marked as a target. I haven't found an option that causes everyone inside the AOE to be tagged. Is there such an option?

vast bane
uncut citrus
#

oh, ty

scarlet stump
#

Not sure if this already exists and I've missed it, so I'm going to ask here before opening a feature request...is there a way to have a "reroll" button displayed on the chat card for an attack/feature? When pressed, it would roll back any changes applied by the automation (similar to what the undo button does) and then immediately re-use the same attack/feature against the same targets.

It would be mostly useful in case someone forgets to roll with advantage/disadvantage, or when some automation is missing (IE: halflings racial skill that allows allies to reroll ones) or other cases like that.

violet meadow
#

That is not easy. There are too many changes that might have happened in between.

Concentration failing upon being damaged is namely a huge one (that can be disabled though), but effects etc being triggered or deleted or ...

#

Your best bet is to try to catch most common cases of such things before hand or just deal with it later ๐Ÿคท ๐Ÿ˜…

spice kraken
#

The way I do it, I tell my players I'll automate what I can. I'll make a journal for you on what is automated, what isn't, and how automated. It's your job to remember all this. If you had advantage or disadvantage and forgot well too bad, remember for next time

#

Makes life easy

violet meadow
#

The best thing is to not auto apply damage for me

spice kraken
#

I'm the same way

violet meadow
#

I always use No + Damage Card as the option of choice ๐Ÿ˜„

spice kraken
#

And don't remove chat buttons

#

We are one

violet meadow
#

hahah almost. I yeet all chat buttons before even rolling ๐Ÿ˜„

spice kraken
#

You also left me behind in v9 land ๐Ÿ˜‚

north ocean
vast bane
#

I full auto damage cause I hated having to keep track of players hp

violet meadow
#

I don't remember the different combinations available

whole cobalt
#

I am look at the new item macro function calls. In the older versions there was code for get a tractor (token actor?) from the tokenUuid or the game actors how should this be replace using the function args.

violet meadow
scarlet stump
scarlet stump
#

It's a qol change more than anything, although it's not a big one since undo exists

violet meadow
#

What do you mean Undo exists?

whole cobalt
scarlet stump
violet meadow
scarlet stump
#

Can't take a screenshot now but it's after the damage card, it uses the usual "round arrow" design that undo normally has

#

Actually here's a pic (sorry for the picture of a monitor lol)

whole cobalt
violet meadow
#

Same with concentration deletion. If a spell drops cause you fail the con save, nothing you do will get back the effects etc associated with that

violet meadow
#

So either use args[0].workflow.token.actor or fromUuidSync(args[0].tokenUuid).actor when tokenUuid is available.

#

I would think tposney safeguards against unlinked tokens and gets the args actor from the relevant token.actor, but not sure right now

scarlet stump
violet meadow
#

Dead and the likes when a token hits 0 would be reverted yes, but not anything else afaik

regal igloo
#

Hello, I'm having an issue with Magic Items and Midi-Qol. Specifically when a spell associated with an item calls for placing a measured template. When casting the spell from the item it automatically allows for placing a measured template, but when the template is placed, the target does not get prompted for a saving throw, and the spell effects are not applied. A chat card is created with two buttons: Place Measured Template, and Apply Active Effects. The Place measured template button will just place another template, but has no other effect. Using the Apply active effects will apply the effect on the target without a saving throw, except if it's a damage spell, it will throw an error saying there is no template placed.
I've double checked that the actor is properly targeted by the template.
I have found a work around that if I right click when prompted by the first auto measured template canceling out of the template placement, and then go to the chat card and use the Place Measured Template Button, Midi-Qol will work as expected - prompting a saving throw, and applying effects or damage as normal.
So there is obviously something getting caught with that first measured template placement.
I have disabled all modules except Midi-Qol, Magic Items, libWrapper, socketlib, and lib - Color Settings, and have found the same issue still exists.
v10 291, DnD5e 2.1.5.
Has anyone else experienced something like this?

dark canopy
#

i dont think Magic Items plays nicely with Midi? I could be wrong, but there are at least caveats

wide crystal
regal igloo
#

according to GitLab - it mostly plays nice. With the excetion of looking for passive / transfer effects

regal igloo
wide crystal
#

I agree. Alas.

violet meadow
wide crystal
#

I tried it recently and I found it rather lacking... I believe upcasting was missing and the UI seemed a bit odd to me. Just using it felt like I was doing something wrong ๐Ÿ˜„

languid wave
neon lava
#

Hey y'all is there a setting on core foundry or midi-qol that allows you to click on an attack/feature/spell to allow you to roll damage without needing to roll attack? Most of my players enjoy rolling physical dice for the attacks when called for, but prefer to keep damage on foundry due to wild calculations and otrher bonuses. Thank you!

molten solar
#

That is core to the system and something midi has removed for you.

gaunt python
vast bane
regal igloo
vast bane
#

As for upcasting in items with spells, it is a bummer that it doesn't handle it but you can do it manually in the module this way:

#

Now if only we can get collapsible spellbook tab categories 8)

neon lava
#

now i no longer have ot edit initiatives for folks who prefer rolling physical dice on the combat tracker

tardy root
#

Concentration in particular doesn't seem to be ending with TimesUp for me, is there a setting I may have mismanaged?

vast bane
#

Any guru's feel like checking my work?

const duration = duplicate(args[0].item.system.duration);
let newDuration;
if (duration.units==="turn") newDuration = { turns: dvalue, startRound, startTime, startTurn };
else if (duration.units==="round") newDuration = { rounds: dvalue, startRound, startTime, startTurn };
else if (duration.units==="minute") newDuration = { seconds: (dvalue*60), startRound, startTime, startTurn };
else if (duration.units==="hour") newDuration = { seconds: (3600*dvalue), startRound, startTime, startTurn };
else if (duration.units==="day") newDuration = { seconds: (86400*dvalue), startRound, startTime, startTurn };
else if (duration.units==="month") newDuration = { seconds: (2592000*dvalue), startRound, startTime, startTurn };
else newDuration = { seconds: (946080000*dvalue), startRound, startTime, startTurn };
//const [spawnedCreature] = <Your whole warpgate macro here and remove the slashes at the start of this line and the <> around this>
const token = canvas.scene.tokens.get(args[0].tokenId).object;
const actor = token.actor;
await MidiQOL.socket().executeAsGM("createEffects", { actorUuid: args[0].tokenUuid, effects: [{
    "changes":  [{
        "key": "flags.dae.deleteUuid", "mode": 5, "value": spawnedCreatureUuid, "priority": "30"
    }],
    "label": "Summon Bestial Spirit", //rename this to the actor you are summoning
    "duration": newDuration,
    "origin": args[0].itemUuid,
    "icon": args[0].item.img,
    }]
}); 

This is meant to tie the summons to conc, lets you just paste in the summon macro into the area in the middle? I know I'm defining token and actor but thats ok, this requires advanced macros which lets you 8)

short aurora
vast bane
#

this deletes the actor when conc ends

short aurora
#

It should immediately delete it

#

Actually sorry, unfamiliar with that flag in particular

inland tendon
#

Anyone know of a good premade effect that can reduce a creature's max hit points by the amount of damage taken? Maybe a chris or midi premade that's out there alreay?

vast bane
#

effects should never be used to mod hp or max hp unless you are absolutely desperate

#

multiple CPR items reduce max hp, shadow attack in particular

#

Here is my updated macro after some one tested it:

const token = canvas.scene.tokens.get(args[0].tokenId).object;
const actor = token.actor;
const duration = duplicate(args[0].item.system.duration);
const startRound = game.combat ? game.combat.round : 0;
const startTurn = game.combat ? game.combat.turn : 0;
const startTime = game.time.worldTime;
const dvalue = duration.value;

let newDuration;
if (duration.units==="turn") newDuration = { turns: dvalue, startRound, startTime, startTurn };
else if (duration.units==="round") newDuration = { rounds: dvalue, startRound, startTime, startTurn };
else if (duration.units==="minute") newDuration = { seconds: (dvalue*60), startRound, startTime, startTurn };
else if (duration.units==="hour") newDuration = { seconds: (3600*dvalue), startRound, startTime, startTurn };
else if (duration.units==="day") newDuration = { seconds: (86400*dvalue), startRound, startTime, startTurn };
else if (duration.units==="month") newDuration = { seconds: (2592000*dvalue), startRound, startTime, startTurn };
else newDuration = { seconds: (946080000*dvalue), startRound, startTime, startTurn };
const [spawnedCreature] = await warpgate.spawn("Your Actor Name", {}) //edit this line
const spawnedCreatureUuid = `Scene.${canvas.scene.id}.Token.${spawnedCreature}`;
if(!spawnedCreature) return;  //in case it was cancelled.
new Sequence()
    .effect().file("jb2a.misty_step.01.blue").atLocation(spawnedCreature)
    .wait(300)
    .animation().on(spawnedCreature).opacity(1.0)
    .play()
await MidiQOL.socket().executeAsGM("createEffects", { actorUuid: args[0].tokenUuid, effects: [{
    "changes":  [{
        "key": "flags.dae.deleteUuid", "mode": 5, "value": spawnedCreatureUuid, "priority": "30"
    }],
    "label": "Your Actor Name", //edit this line
    "duration": newDuration,
    "origin": args[0].itemUuid,
    "icon": args[0].item.img,
    }]
});
#

This will link the deletion of the summoned to the conc of the actor

#

(requires advanced macros unless you go and fix token/actor definitions and their usages below it)

short aurora
#

In my summons, I do something like this. This is using an effect slot on the item itself, but you can still create the effect programmatically if you'd like, just include a flag that triggers this macro.

if (args[0] == "on") {
    // Warp Gate spawn macro.
    // Name your spawn something more clever and you can retrieve it from your feature, so it's truly dynamicโ„ข.
    const tokenId = await warpgate.spawn("Burny Ball");
    if (!tokenId) return;
    // We save the ID in a flag on this effect, so when the effect is turned off either manually or by expiry, warpgate.dismiss has a tokenId it can dismiss.
    // If you have multiple Warp Gate spawns of different types, say Summon Demons or something, gather all their tokenIds in an array and put it on the flag.
    const effect = game.actors.get(args[1].actorId).effects.get(args[1].effectId);
    await effect.setFlag("world", "tokenId", tokenId)
};

if (args[0] == "off") {
    // Checking if we actually summoned something, as to not generate errors if not.
    if (!args[1].efData.flags?.world?.tokenId) return;
    
    // warpgate.spawn generates an array with tokenIds of spawned tokens, dismiss expects 1 tokenId, so we loop over the array and dismiss each of them.
    const summonArray = args[1].efData.flags.world.tokenId;
    for (const tokenId of summonArray) {
        await warpgate.dismiss(tokenId);
    };
};```
vast bane
#

I think the main benefit of mine is that I feel its simply a copy/paste and edit two fields and every summon will work, just a matter of pasting in the right warpgate command if the attacks/actor changes details

dark canopy
#

(to be clear, the part me not liking is a result of how warpgate works, not how you used it)

short aurora
short aurora
#

I still want to improve mine to make it truly dynamic, but I think that would involve me flagging the actors I spawn with any change data, like scaling abilities, and figuring out a way to put actor names in spells to summon and that sounds boring

dark canopy
#

A loop dismissing them all is basically all I would end up doing under the hood. They all get queued internally and handled sequentially, so no real need to await the dismiss either

wide crystal
#

Hey guys, would you be able to advise on the necessary change to the below bit, so that the target/result list in the chat card displays the token thumbnails correctly?

continue;
    } else {
        console.log(`Sleep Results => Target: ${target.name} | HP: ${targetHpValue} | HP Pool: ${remainingSleepHp - targetHpValue} | Status: Missed`);
        slept_target.push(`<div class="midi-qol-flex-container"><div>misses</div><div class="midi-qol-target-npc midi-qol-target-name" id="${find_target.id}"> ${find_target.name}</div><div><img src="${get_target.document.texture.src}" width="30" height="30" style="border:0px"></div></div>`);

I have an old (I assume) Sleep spell script and you can see the issue on the first screenshot. As per Bugbear's advice from Feb that I found here somewhere, I tried changing <img src="${find_target.data.img}" to <img src="${get_target.document.texture.src}", but I believe that simply breaks the function altogether, as instead I get nothing (2nd screenshot). Any thoughts?

raven holly
#

Im not sure, but I would try ${get_target.texture.src}

wide crystal
#

I'm afraid that doesn't work.

vast bane
dark canopy
#

You aren't using them in that function if they are needed

vast bane
#

I thought the actoruuid was using actor my bad

raven holly
wide crystal
#

Yes!

#

Sorry, I'm completely unaware of how these things work, as of yet.

#

Thanks so much.

modern badger
#

Is there a way to automate blood frenzy?

#

'3'

spice kraken
#

What's it do mechanically (don't just drop the whole description here)

gaunt python
#

IIRC, adv if the target current hp < max hp

modern badger
#

ye, adv. vs creatures missing HP

wide crystal
#

First thought would be:

flags.midi-qol.advantage.attack.all >> Custom >> @target.attributes.hp.value < max

#

No, that's not correct.

short aurora
wide crystal
#

That doesn't seem to work, though. I still get adv no matter the target HP.

modern badger
#

;3;

wide crystal
short aurora
#

HMM, does it still require a macro?

gaunt python
# wide crystal That doesn't seem to work, though. I still get adv no matter the target HP.

Thats because you shorthanded the max part: target.attributes.hp.value < target.attributes.hp.max

@modern badger If you are looking specific for Sahuagin, make that '.mwak' instead of '.all'

Editted, for future searches:
5e Sahuagin Blood Frenzy missing hp automation
flags.midi-qol.advantage.attack.mwak Custom target.attributes.hp.value < target.attributes.hp.max

modern badger
#

thanks!

atomic badge
#

Does anyone if it is possible to make Midi simulate "stack" mechanics?
Example being: If you take X amount of damage, you gain half of that as stacks.
Example 2: You gain a stack upon being hit by this attack.

atomic badge
#

Oh and does anyone know how to set vulnerabilities through status effects using DAE + midi?

atomic badge
#

Another thing, but does anyone know how one automates on-turn/on-enter persistent AoE effects?

spice kraken
spice kraken
#

AOE things you'll need another module in conjunction to an overtime effect (active auras, idk if babonus can do it)

atomic badge
#

I do have active auras enabled ftr.

spice kraken
#

What's the OT you wanna make?

#

I'll let you try and make it first but I'll make it myself too to help if/when you get stuck

atomic badge
#

Well, the main one I'd like to make is just a simple 1d8, 10ft aura, on-turn/enter.

I could definitely make an attempt on making automation for some of the other OT effects but I think they'd be far too complicated to make so I'll simply apply those manually.

spice kraken
#

Do you have Active Auras?

atomic badge
#

I do.

spice kraken
#

Also this Aura, is it something homebrew or actual spell (just so I can read it)

spice kraken
# atomic badge I do.

Good. Keep in mind this is a combat thing only and idk how it'll handle it outside combat so personally don't bother there

atomic badge
#

So I guess some context should be given.

Whenever I make boss fights I do one of two things, I either create something from scratch (this takes a lot of time and can get very frustrating for me), or I take a Raid Boss from an MMO and translate it to D&D.

One of my most common MMOs that I steal from are WoW and FFXIV, as they have the best documentation on them that I know of.

In this case the overtime effect is from pillars that the boss summons at one point that appears after a status has expired.

Initially I wanted to make an effect macro to automate this but remembered my troubles in the past trying to make a Death Ward effect that expires upon hitting 0 hit points.

#

I do have everything already written down, it is not a pure stat block as I did all my work on Foundry specifically.

spice kraken
#

Got it

#

So basically an aura that does 1d8 at the end of a turn (I say end cause if it's start and they enter the aura during their turn, they will not be dealt that damage)

#

What kind of damage

atomic badge
#

Fire damage specifically.

spice kraken
#

What happens if they save?

#

No damage or half

#

Also does that mean they are now immune to said aura damage?

atomic badge
#

No saving throw.
Just this damage upon fulfilling the conditions for being inflicted it. (That being inside of the aura)

spice kraken
#

Oh better question, is there even a save

#

Beat me to it

#

What is the name of this damage that you want to see in the chat?

atomic badge
#

Just "Overboiling"

spice kraken
#

No name will pop up something like DamageOvertime

#

Cool

#

Everything look fine (this is just my notes, not finished)
1d8 fire, turn end, on the boss, no save, label Overboiling

#

Oh, and 10ft aura

atomic badge
#

1d8 fire, turn end, on the pillars*, no save, label Overboiling, 10ft aura.

spice kraken
#

On the pillars?

#

Oh and 1 last thing. Is the aura always active or something you activate

atomic badge
#

Yeah, uh, so certain mechanics will spawn "pillars", these are the source of this aura.

Only the boss is capable of destroying these "pillars", these pillars spawn a "pool" that deals heightened damage upon death.

spice kraken
#

And is there a duration

atomic badge
#

Always active.

spice kraken
#

So no duration, got it

atomic badge
#

Aye. ๐Ÿ‘๐Ÿป

spice kraken
#

I'll start making it so give me a few to make sure everything works fine

#

Keep in mind, you will need an actor for the pillars and them to be in combat for it to work

atomic badge
#

Oh okay!
Well yeah, I know that, haha. ^^

spice kraken
#

Last things, are you using Token Magic and want an animation when they enter the aura (as another visual note of being in the aura)?

Also, do you want an icon like this when in the aura or no

atomic badge
#

I am using Token Magic, an icon can be left out if an animation is playing instead.

spice kraken
#

Cool

#

Making it now

atomic badge
#

Highly appreciated! ๐Ÿ™‡๐Ÿป

spice kraken
#

Soooo

#

If we do the animation, it'll also be on the pillar

#

Is that fine?

atomic badge
#

That's fine yeah.

spice kraken
#
  1. Create a passive AE on the Pillars actor (you can give the Effect Label a name like Fire Aura just for your internal reference)
  2. Create 2 Keys. 1 is macro.tokenMagic | custom | fire (you can change it to be anything else but it's a fire aura so why not)
  3. Other key is flags.midi-qol.OverTime | Override | the stuff below
damageRoll=1d8,
damageType=fire,
label=Overboiling```
4. Auras tab, copy the picture (a grid needs to be on the scene)
#

These 2 in the AE can be changed to whatever you want

#

Or just leave them as default

atomic badge
#

Alright, thanks a bunch! Finished setting it up based on your instructions.

queen raptor
#

"Tale of the Avenger. For 1 minute, any creature that hits the target with a melee attack takes force damage equal to a roll of your Bardic Inspiration die."

Is there a way to make this happen with a custom effect and midi? I'm not sure whether there's some kind of flag for dealing damage to targets who attack the actor. It doesn't necessarily have to be able to pull the bard's inspo die, I'm happy to enter/change that manually

scarlet gale
#

You can have a bonus damage set to the bard dice scale

#

As a DAE effect

queen raptor
#

It's not bonus damage

#

Unless I'm misunderstanding what you mean

scarlet gale
#

oh

#

I misread what you said

queen raptor
#

It deals X damage to creatures that hit the target

#

(With a melee attack specifically)

scarlet gale
#

macro territory honestly

queen raptor
#

I gotcha

oak mulch
#

Hello everyone! I'm starting with automated combat and need some help. I want to change the way Exhaustion Works with MIDI + Combat Utility Belt + DAE. The idea is to make every level of exhaustion substract -1 to Attack Rolls, Ability Checks and Saving Throws. Since I don't find a flag for that on MIDI, what would should I type on "Attribute Key" field?

scarlet gale
#

That would just be the core attributes

#

Not a flag

#

For example: system.abilities.cha.value

oak mulch
#

Is there a sheet that includes all of these? I found one for Midi, but nothing for core stuff.

scarlet gale
oak mulch
#

Tyvm

short aurora
#

@woeful topaz For your blood hunter Crimson Rite question, there's a few people who've made the features already. I recall Crymic has Crimson Rite somewhere on his Patreon and Chris' also have some Blood Hunter features available in his module https://foundryvtt.com/packages/chris-premades, I know Hybrid Transformation and Crimson Rite is in there somewhere.

short aurora
# queen raptor "Tale of the Avenger. For 1 minute, any creature that hits the target with a mel...

@queen raptor I noticed the chat in #macro-polo and for what it's worth, I am 99.9% sure Chris did not intent to lead you over there, I believe they just directly answered the question "is this possible with a custom effect and midi". :p It is macro territory, but as you've noticed, still also Midi territory. Can you share how your world is setup in terms of automation? How much are you looking to get this feature automated?

queen raptor
#

So, I already have a way (with a rolltable and world items) to have the bard roll on the spirit table, grab the item to add to his sheet, and then fire it at somebody - the item then destroys itself on use. I can make an active effect on the item I made for this Tale that lasts for 60 seconds, but I'm not sure how to write a macro that checks for that active effect and then applies the damage to people that hit the affected actor with a melee attack.

short aurora
#

Roger, tposney (dev of midi-qol may only good things come their way) actually has a sample item with something like this called Retribution and that seems to work. Can you do me a favor and test if that'd work with your setup? It should be in MidiQOL Sample Items, just drag it onto a test actor and try to attack them. If that works for you, then we can tinker it to fit your ability

queen raptor
#

Oho, I didn't realize there was a sample item for this

short aurora
#

It's a rare one but also utilizes a bit of macroing, but if this works, we should be able to make yours work as well, it'll just change how we go about it

queen raptor
#

Looks like it works. The Hill Giant has Retribution, Sam hits the Hill Giant, the Hill Giant does damage back. (Don't ask me where the hill giant got 1500hp)

short aurora
#

Great! For some reason, most of my intellect just seeped out somewhere, so we'll do a dirty version and then I'll come back with a better version later ๐Ÿ˜„ Do you keep a copy of this item somewhere for reuse? Like a compendium or the sidebar? The one the bard consumes to cast this

queen raptor
#

I don't keep it in a compendium (I'm betting doing so would be more efficient wrt data, though?). I keep the bard's spirit items in the sidebar. When the bard rolls Tales From Beyond, he can drag the item from chat to his sheet to get a temporary item to roll it.

short aurora
#

It's definitely better data-wise to keep it in a compendium. You should still be able to drag from the compendium onto the rolltable if you want to change that in the future, but for now, we'll just use the sidebar item. Create a script macro and fill it with this, where you change the damage roll to your Bard's bardic scale and the damage type to fit whichever it was;

const actor = args[0].options?.actor;
const token = args[0].options?.token;
const target = fromUuidSync(args[0].tokenUuid);
    
if (!actor || !token || !target ) return;
if (args[0].item.system.actionType === "mwak" || args[0].item.system.actionType === "msak"){
const damageRoll = await new Roll("1d8").roll({async: true}); // Change the roll to your Bard's scale
await new MidiQOL.DamageOnlyWorkflow(actor, token, damageRoll.total, "force", [target], damageRoll, {itemCardId: "new", itemData: game.items.getName("Tale of the Avenger")}); // Change "force" to whatever your damage type is, remember the " around the damage type
};
#

whoops, forgot to actually edit the item name in >_> get this one

#

Once you've made the macro, edit the item and on the effect that it applies to its' target, create a line with
flags.midi-qol.onUseMacroName | CUSTOM | WriteWhatYouNamedTheMacroHere, isDamaged

#

I just realized I assumed it was on hit, but you mentioned attack. Do they need to get hurt or just get swung at?

queen raptor
#

They need to be hit, specifically with a melee attack

short aurora
#

Right, we need to edit the macro a little bit afterwards to filter for that

queen raptor
#

Force damage is already correct, die is changed to the bard's d8, effect added

short aurora
#

Yush, give it a shot then, this should work like the Retribution sample item and just return damage to whoever deals damage to the effect's owner/the target of the bard's tale

#

I'm digging out the "melee attack" filter in the meanwhile

queen raptor
#

Yup, looks like that works.

#

Bard used his Tale on Sam, the Hill Giant hit Sam, Sam did 1d8 of Force damage to the Hill Giant.

short aurora
#

Good stuff, I found what we need to filter on but it's not doing what I want, bear with me here

queen raptor
#

No rush, I appreciate your time and effort.

short aurora
# queen raptor No rush, I appreciate your time and effort.

There, edited the original macro, give it a shot. We just enclosed all the damage dealing in an if checking for the item that attacked us' action type. You said melee attack, so I assumed both melee weapon attack and spell attack was ok.

queen raptor
short aurora
#

fack, 2 sec

queen raptor
#

No worries lol

short aurora
#

There ๐Ÿ˜„ Re-copy, re-paste and try again

queen raptor
#

Perfect!

#

Haven't tested the spell attacks part, but the Giant takes damage when he hits with his club, but not with his rock (as expected).

#

Just confirmed for spell attacks

#

Many thanks, Krig

short aurora
#

๐Ÿ‘ No problem. I know it can be improved so might have a look later, for now, remember to edit the damage if the bard levels ๐Ÿ˜„

queen raptor
#

Yeah he's gonna upgrade his die next level so I'm gonna have to go through and redo a lot of d8's lmao >.>

#

I know I can do the scaling for the effects that the bard is rolling himself, but for the Tales where he grants it to other people I had to manually do a d8 because I didn't know how to pass the bard's scaling dice to other people

short aurora
#

Yeah, when the effect is on someone else, you lose a lot of info of the "caster". I can think of a few ways that it can be done though, I'll have a peek later when brain is less lukewarm

queen raptor
#

No worries, thank you again for your assistance.

If you do end up revisiting Spirit Tales, the only other thing I'm missing is the part of Tale of the Phantom where the recipient's next hit causes fear on the target - I can make the recipient invisible and give them extra damage for a single strike, but the Frightened transfer is beyond me.

Right now my janky solution is, like with some other Tales, giving the recipient a one-use item that lets them cause the Frightened condition on a target.