#MidiQOL

1 messages Β· Page 97 of 1

violet meadow
#

Use a @scale.bard.die or whatever instead of the 1d8

queen raptor
#

That'll work when the effect transfers to an actor other than the bard?

violet meadow
#

It should be evaluated when the effect is applied

queen raptor
#

Ahhh okay

#

Thanks for the heads up

violet meadow
#

If you use ##whatever instead of @whatever this will be evaluated using the rollData of the recepient

#

just as a sidenote πŸ˜‰

queen raptor
#

❗

#

That is most helpful, thank you again

#

Now I can go through and hopefully futureproof these for when he levels up lol

violet meadow
#

scale is a blessing

#

For the Frightened condition you could potentially add it in the same AE as a onUse Actor macro

queen raptor
#

I'm not really sure how I would go about doing so, but I don't want to presume upon your time if you're just offering the thought

violet meadow
#

flags.midi-qol.onUseMacroName | CUSTOM | link the item's itemMacro,postActiveEffect

To link the item's itemMacro, drag the item from the character sheet onto the effect value field directly.
It should generate something like Actor.xxxxxxxx.Item.yyyyyyy.
Put the ItemMacro. in front and add a ,postActiveEffects after

queen raptor
#

Ah, I'm not using an Item Macro to proc the Frightened effect

violet meadow
#

The macro it self should be something like ```js
const condition = "frightened";
const aeData = CONFIG.statusEffects.find(ae => ae.id === condition);
if (aeData) await MidiQOL.socket().executeAsGM("createEffects", {actorUuid:args[0].hitTargets[0].actor.uuid, effects:[aeData]});

#

It can be another macro from your macro folder

#

just use its name instead

name it Frighten that poor baby and call it with that name

vast bane
#

Why do you define condition there in the macro? Can't you just put "frightened" where condition is in line 2?

#

the very simplified warpgate.spawn example on its wiki does the same thing and I've successfully used just 1 line myself avoiding it

queen raptor
violet meadow
#

hmm lol

#

just I used : instead of ; at the very end πŸ˜›

queen raptor
#

I changed that

violet meadow
#

ok let me try it on a server to see what I missed

queen raptor
#

That is

#

I just changed that

violet meadow
#

ah ok

queen raptor
#

Now the attack goes off, no error

#

But also no Frightened on my Giant 😦

#

Is it case-sensitive?

violet meadow
#

give me 5 to test it

queen raptor
#

The onUse macro goes in the same effect that the actor gets to turn invisible/have extra damage, correct?

queen raptor
#

I am using Dfreds

violet meadow
#
const condition = "Frightened";
const aeData = CONFIG.statusEffects.find(ae => ae.label === condition);
if (aeData) await MidiQOL.socket().executeAsGM("createEffects", {actorUuid:args[0].hitTargets[0].actor.uuid, effects:[aeData]});
vast bane
#

you are using statuseffect for the invis not macro.ce fwiw

#

in the drop down for invisible look at what your world calls frightened, maybe it not "frightened"

queen raptor
#

It is case sensitive

#

That capitalized one fixed it

#

(Assuming that's all that changed)

violet meadow
#

its also searching label instead of id

#

for the id it should be "Convenient Effect: Frightened"

vast bane
#

is it applied via CE? the invisible isn't right?

queen raptor
#

The invisible functions correctly? I don't know if that's despite my best efforts πŸ˜…

#

Is there a way to limit the duration of the Frightened til the end of the creature's next turn?

violet meadow
#

oh yes

#

the frightened creature's end of next turn?

queen raptor
#

Correct

#

"...[T]he creature it hits takes necrotic damage...and is frightened of the target until the end of the frightened creature’s next turn."

violet meadow
#
const condition = "Frightened";
const aeData = duplicate(CONFIG.statusEffects.find(ae => ae.label === condition));
aeData.flags.dae.specialDuration = ['turnEnd'];
if (aeData) await MidiQOL.socket().executeAsGM("createEffects", {actorUuid:args[0].hitTargets[0].actor.uuid, effects:[aeData]});
queen raptor
#

Perfect πŸ‘

#

Thank you very much

#

And I believe all the other effects he gets from now on are easy to do without macros, so πŸ˜… Much appreciated for helping with the hard stuff, group

violet meadow
#

@queen raptor I just saw the conversation in #macro-polo . Did you solve the reactive damage ask?

#

The take damage if you hit a specifc creature?

queen raptor
#

Yes, Krig helped me with that one.

#

When it comes to using the scaling values, is there a better way to roll multiple bardic dice than @scale.bard.bardic-inspiration * 2 ?

oak mulch
#

I've just created a feature to add extra damage, thanks to the help i've received in the main channel. But i was wondering If i can make this, in an easy way, to auto target the character that has the feature using midi + dae. I was giving the buff to monsters while i was testing it, and players might to the same.

vast bane
#

often stuff instructed upon in normal dnd5e doesn't fly well in a midi environment they might have taken you down the wrong path

oak mulch
#

Sure. sorry. The idea was to create a scalable feature that deals 1d4 damage on the first attack (d6 = lvl 6 | d8 = lvl 14). The idea is to be able to use only in the first attack of the turn, but it will last for 10 rounds. Also player can only use it times = proficiency bonus.

vast bane
#

pretty sure thats going to be macro territory in midi unless you just make a dae that the player assigns to themselves on their turn

#

if thts what you already have, the problem is probably just that you have the items details set to anything other than self/self for range/target

oak mulch
#

I've done the feat effect using dae. But just wondering if there was something i have missed to auto target self

short aurora
#

Putting the target to self on whatever is applying the effect should do it

oak mulch
#

Yeah

#

I missed that

vast bane
#

you could put that dae in macro form in the item macro of the feature then use a dae that is macro.itemmacro and use the run macro each turn

oak mulch
#

Just saw it

vast bane
#

make sure the dae has a special duration of 1 attack

oak mulch
#

Thank you guys! Starting with automated combat and i keep missing this kind of things

vast bane
#

if you don't have times up go get it

oak mulch
#

Okay ill try that aswell!

vast bane
#

special duration is feature on the duration tab of the dae

oak mulch
#

Yeah i downloaded times up for that

vast bane
#

if you can find a place where a dae is shown how to make it in macro form this is totally possible

#

I just shared a macro with a createeffect function...

oak mulch
#

But the idea is the 1st attack of each turn. So if i make that to expire on 1st attack

vast bane
#
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,
    }]
oak mulch
#

They will spend charges

oak mulch
vast bane
#

I don't know what special durations look like in this though

#

ok then that should be good what you have

oak mulch
#

I will make it toglable

vast bane
#

you should be fine by just setting a special duration on the duration tab no need to toggle

oak mulch
#

and that make it easy

vast bane
#

I was trying to get you the automated once per turn thing

oak mulch
#

Okay

#

Ill try special duration and let you know

#

Thank you again πŸ˜‰

vast bane
#

also automated once per turn assumes the word "Can" is not in the items description.

#

if its player choice then what you are doing is the only way it can be done

#

unless you use optional.name stuff inwhich case then the player will always get prompted to use it and would be annoying for a martial

#

Special Duration location:(use a different one than mine)

#

just above it would be the thing we'd utilize for automating once per turn but we'd need to tap a smarter person than I for that

#

I feel like the emboldening bond premade pretty much can be plagerized for it though

oak mulch
#

I put it to Expire after 1 attack

vast bane
#

what is the key you are using?

oak mulch
#

And it auto removes

vast bane
#

show me the effect tab of your effect

oak mulch
vast bane
#

Cub usage in midi nowadays has my eye a twitchin hehe

oak mulch
#

What do you suggest instead? I've read about dfred

#

I was trying to learn Midi + Dfred + DAE.

vast bane
#

if your world already has a ton of stuff setup for cub it'd be too painful to switch now but a ton of people here who share stuff are using only dfreds CE mainly cause it has more updates, alot of premade stuff and more exposed documentation for macros.

#

plus dfreds and midi have collaborated features

#

the strong point for CUB is that its system agnostic so other systems can use it where dfreds couldn't be

oak mulch
#

I started yesterday, only have set up conditons (on spanish) and a few feats. I wouldn't mind to change, and I will do if that's how ppl work.

vast bane
#

is this item you are making a spell or a feature?

oak mulch
#

Feature

vast bane
#

is it favored foe?

oak mulch
#

Yea

#

TGC updated version

vast bane
#

surprised nobody has tweaked hunters mark for it

oak mulch
vast bane
#

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

#

If you are running dnd5e with very little homebrew, having midi srd+CPR are imo must haves. Saves you a ton of work and the update button on CPR works with midi srd

#

ddb importer probably complements both of these modules further

velvet raptor
#

Oh wise Moto I come again seeking your guidance! πŸ˜…
Am just trying to write a quick macro that autodeletes concentrating from the temporary effects of my character without having to go into the char sheet in case Midi bugs out on me or I have to do it manually like stopping to concentrate on a spell. I looked at the character object but am not getting any wiser...πŸ˜…

vast bane
#

I'll share my general delete in a sec, outside in main menu installing something

#

I give this to my players too:

const tokenActor = token?.actor ?? game.user.character;
const effects = tokenActor.effects.filter(i => i.isTemporary).reduce((acc, e) => acc += `
  <div class="form-group">
    <label for="${e.id}">${e.label}</label>
    <div class="form-fields"><input type="checkbox" id="${e.id}" /></div>
  </div><hr>`, ``);
const content = `<form>${effects}</form>`;
const title = "Delete effects";
const buttons = {del: {
  icon: `<i class="fas fa-check"></i>`,
  label: "Delete!",
  callback: async (html) => {
    const selected = html[0].querySelectorAll("input[type=checkbox]:checked");
    const deleteIds = [];
    for(let s of selected) deleteIds.push(s.id);
    await tokenActor.deleteEmbeddedDocuments("ActiveEffect", deleteIds);
  }
}};
new Dialog({content, title, buttons, default: "del"}).render(true);
#

hotbar macro

#

(This is not mine, Zhell made it)

velvet raptor
#

Ooooh nice! Thank you!

#

Should be able to work from there to autopick concentration.

#

Thanks again!! πŸ™‚

vast bane
#

that macro will only look at temp effects not passives, which is what I like about it, players can't accidentally delete features by the same name or passives they shouldn't have

velvet raptor
#

Yeah I saw. That IS pretty neat!!

short aurora
#

@scarlet gale ngl your VAE description export function is dope, considering running your module in my low auto world or snagging it for a world script

vast bane
torpid kestrel
#

I tried this under Macros but got pointed over here. I have this handy itemMacro for Aura of Vitality but I would like it to work with Blessed Healer. I'm hoping I just need to add a spell level clause in the system area of the macro. Can someone share the correct syntax for this? const version = "10.0.10";
try {
actor = await fromUuid(args[0].actorUuid);
const itemData = {
name: args[0].itemData.name + " Cure",
type: "feat",
img: args[0].itemData.img,
system: {
actionType: "heal",
activation: {type: "bonus"},
damage: {parts: [["2d6", "healing"]]},
target: {value: 1, type: "creature"},
range: {value: 30, units: "ft"}
}
};
const items = (await actor.createEmbeddedDocuments("Item", [itemData])).map(i=> i.uuid);
let removeUuids = getProperty(actor.data.flags, "midi-qol.concentration-data.removeUuids") ?? [];
removeUuids = removeUuids.concat(items);
if (removeUuids.length > 0) actor.setFlag("midi-qol", "concentration-data.removeUuids", removeUuids);
} catch (err) {
console.error(${args[0].itemData.name} - Aura of Vitality ${version}, err);
return {}
}

vast bane
# torpid kestrel I tried this under Macros but got pointed over here. I have this handy itemMacr...

Before we head down the road here on making your item, are you aware of the interaction of both blessed healer and spells that don't heal instantaneously? If you are ok with going somewhat into the grey area and allowing them to interact, then you need to edit Blessed Healer to allow features too and then Aura of Vitality from CPR should work with it. (Hopefully). I think you need to edit the 3rd line of blessed healer to include feature too

violet meadow
#

Quick descriptions of the abilities involved also help a great deal

#

I would be less inclined to go search for it and see what needs to be done tbh πŸ˜„

vast bane
#

aura of vitality places a buff on self and then the healer can heal X amount as a bonus action for 1 minute. Blessed healer:

Beginning at 6th level, the healing spells you cast on others can heal you as well. When you cast a spell with a spell slot and it restores hit points to any creature other than you this turn, you regain hit points equal to 2 + the spell's level.```
#

casting aura of vitality does not heal anyone

#

however if they want to allow it, the problem is that the midi sample item for blessed healer checks for spells only, and then the other problem is that most premades for aura of vitality use a temp item that is not a spell, nor stores the spellLevel in the feature either.

#

(99% of the time a caster is not upcasting aura of vitality anyway as it has no upcast enhancement, so you could just ignore the upcasting and give a flat level 3 bonus self heal)

violet meadow
#

I wouldn't allow that to be used with each bonus action!

#

Only for the first time after casting

vast bane
#

I came here for my own question so:


I'm trying to automate

Melee Weapon Attack: +7 to hit, reach 5 ft., one creature. Hit: 15 (2d10 + 4) psychic damage. If the target is Medium or smaller, it is grappled (escape DC 15) and must succeed on a DC 15 Intelligence saving throw or be stunned until this grapple ends.

How would you have the attack success apply grappled but the save apply stunned on fail? My first thought is a simple item macro that uses a secondary save item on hit?

violet meadow
#

But still its grey as Moto said

vast bane
#

Also fyi, disciple of life should and does apply to aura of vitality and its all hinging on the wording of either feature

torpid kestrel
violet meadow
molten solar
vast bane
#

and if hit

#

I think I can pull it off if I make two items, one that is an attack for grapple, and then a save for stun and then I just need someone to tell me the item macro to plop into the attack to roll the save attack right after only on hit

violet meadow
#

@queen raptor forgot the duplicate in the Frightened condition snippet...

#
const condition = "Frightened";
const aeData = duplicate(CONFIG.statusEffects.find(ae => ae.label === condition));
aeData.flags.dae.specialDuration = ['turnEnd'];
if (aeData) await MidiQOL.socket().executeAsGM("createEffects", {actorUuid:args[0].hitTargets[0].actor.uuid, effects:[aeData]});
modern badger
#

my elemental adept broke :c

#

any help?

violet meadow
#

call AA? πŸ˜›

#

might need a bit more info than that 🀷

modern badger
#

basically, I need to program a wep to ignore certain dmg resistance :<

violet meadow
#

I mean which is the macro that broke, MidiQOL/DAE versions, what is the error etc

#

There are a few elemental adept macros shared

modern badger
#
    console.log('no Cold');
    return;
}
if(args[0].macroPass === "preDamageRoll") {
    const effectUpdate = {
        changes:[{
            key: 'data.traits.dr.value',
            mode: CONST.ACTIVE_EFFECT_MODES.CUSTOM,
            value: "-cold"
        }],
        label: "Ignore Cold Resistance",
        icon: `${item.img}`,
        flags: {dae: { specialDuration: ['isHit']} }
    }
    await MidiQOL.socket().executeAsGM("createEffects", { actorUuid: args[0].targetUuids[0], effects: [effectUpdate] }); 
}```
#

this!

violet meadow
modern badger
#

yes

violet meadow
#

Replace includes with has in the first line

modern badger
#

oh

#

thank!

violet meadow
#

also the key:'system.traits.dr.value'

modern badger
#

what's wrong with that

#

'3'

violet meadow
#

v9 vs v10 syntax

modern badger
#

ohokie

#

shakes fist in frustration

#

thanks

vast bane
# scarlet gale Does it?

I dunno if thats where you saw it or not, but I think Bugbear and I got attached to the concept after seeing a screenshot from Zhell

#

Zhell would know for sure though

molten solar
molten solar
vast bane
#

when CN is enabled I think?

molten solar
#

VAE has a hook anyone can use to add buttons. It's detailed on the module page.

#

I did initially have it in CN, but I moved it to VAE entirely.

vast bane
#

I was just trying to sus out the origin of our idea of making buttons in the vae's, I feel like it was a screenshot from you that got us doing it

molten solar
#

Yes

lofty kindle
#

Does anyone have a working Celestial Revelation (Radiant Consumption) item they'd be willing to share? Having trouble getting mine to work with DAE and Midi.

scarlet gale
#

No

#

Different one

vast bane
#

lol darn

violet meadow
scarlet gale
#

But can likely be copied and adjusted when I get a chance

violet meadow
#

I think I have shared that πŸ€”

#

Now does it work? hmmm

#

some data instead of system hmmm what else

vast bane
#

Ok who wants to save me trouble here:

I need an easy on use item macro that checks if the attack hit from the item, and if yes, rolls an item named "Tentacles(Save)" using the same target/args?

#

When the attack is made, on success, grappled is applied, Then if the macro is setup right it will roll the other item which is a save, on fail stunned. Both end if the target makes a str/dex check to escape.

lofty kindle
vast bane
scarlet gale
#

It's my module, but Moto was mistaken

violet meadow
#
const lastArg = args.at(-1);
let tactor;
if (lastArg.tokenId) tactor = canvas.tokens.get(lastArg.tokenId).actor;
else tactor = game.actors.get(lastArg.actorId);

if (args[0] === "on") {
    await tactor.createEmbeddedDocuments("Item", [
    {
      "name": "Radiant Consumption damage",
      "type": "weapon",
      "system": {
        "equipped": true,
        "identified": true,
        "activation": {
          "type": "special",
        },
        "target": {
          "value": 10,
          "type": "creature",
          "units": "ft"
        },
        "range": {
            "units": "self"
        },
        "ability": "",
        "actionType": "other",
        "damage": {
          "parts": [
            [
              "ceil(@details.level/2)",
              "radiant"
            ]
          ],
        },
        "weaponType": "simpleM",
        "proficient": true
      },
      "flags": {
        "DAESRD": {
          "RadiantConsumptiondamage":
            tactor.id
        }
      },
      "img": "icons/magic/fire/beam-jet-stream-spiral-yellow.webp",
      "effects" : []
    }]
  );
  ui.notifications.notify("Weapon created in your inventory")

}

if (args[0] === "off") {
    let removeItem = tactor.items.find(i => i.name === "Radiant Consumption damage")
    if(removeItem) await tactor.deleteEmbeddedDocuments("Item", [removeItem.id]);
}
vast bane
violet meadow
#

That should do it

vast bane
lofty kindle
#

Thanks thats great!

violet meadow
#

and the macro from above

#

Let me know if it works

scarlet gale
#

Isn't that the old Aasimar one?

#

Unless that's the one they want

vast bane
#
If this.workflow.hitTarget > 0 {
Find an item by the name of X and use it
}
#

lol Rule out there spotting my suggested changes to midiqol+stealthy and employing them hehe.

violet meadow
#
if (!!args[0].hitTargets.length) await MidiQOL.completeItemUse(token.actor.items.getName("da name"), {}, {targetUuids:args[0].hitTargetUuids[0]})
vast bane
#

the new item will use the previous targetting right?

#

what happens if untarget dead happens?

violet meadow
#

This will be run as an ItemMacro | After Active Effects

vast bane
#

is the untarget after the macro fires?

violet meadow
#

should be fine

vast bane
#

thats what I thought too

violet meadow
#

I imagine the untarget is triggered after RollComplete

vast bane
#

this is my idea for how to handle that mind flayer attack from earlier

#

I don't know how to make a whole item in a macro and figured it'd be more work for anyone I asked so 2 item solution is fine

violet meadow
#

You could add the Stunned condition After Active Effect I think, after checking if the target has the Grappled condition

vast bane
#

they have to fail the save though

#

its grappled on hit, stunned on failed save

violet meadow
#

Ah ok

vast bane
#

the other annoying part, which I'm going to handle manually, is that they technically are overtimes

violet meadow
#

So do the Stunned on fail and after AE add the Grappled

vast bane
#

they both end if a successful athletics/dex check are made

violet meadow
#

You can remove Conditions with an OT so that should be easy to do

vast bane
#

yeah but my items re two items so there would be 2 overtimes

#

actually, can I make it where the stunned ends if grapple doesn't exist anymore?

lofty kindle
vast bane
#

Help Durango, I think I got this all set

violet meadow
vast bane
#

I need this to be a DAE macro.itemmacro I need this to fire when args are off but don't know the line for args off?

if (args[0] === "off") {
game.dfreds.effectInterface.removeEffect({ effectName: 'Stunned', this.uuid });
}
#

the "this.uuid" is a guess

violet meadow
mental mantle
#

Hey guys, is there a way to automate spell/attack damage redirection? I want to make a creature that when damaged redirects all damage to one of their minions, is it possible or should I just tell the players to not target them?

violet meadow
vast bane
#

I use the janky third party aura, but I don't redirect, instead all damage is prevented, and with the legacy buttons on, you can manually take the damage for your ally

#

@violet meadow does the macro have to be a folder macro for the overtime macro=? can I not do an item macro?

#

or am I not even using that actually? willl the dae's macro.itemmacro do it on its own?

violet meadow
#

will need to double check if linking an actual item in there would help. When that ability was made that was not the case for sure

#

@lofty kindle there are some issues with the item you sent me, which I will fix and send it back in a bit

lofty kindle
vast bane
#

Can someone give me the pros and cons of making a synthetic item via warpgate and making one via dae args on/off? My next cheatsheet project is to make a theoretical item with 3 ae's on it that have every bell and whistle defined so that a person could just copy/paste the template and clear out what they don't want.

#

One ae will be normal transfer setup, the other two will be the two different self roll checkbox ones

#

I guess 4 ae's as I could do transfer on equip too

violet meadow
#

Cool factor
vs
Inventory clatter and a couple of database interactions to create the item

#

I say create it πŸ˜„

#

There are some specific cases that an item in memory only helps, but if you don't know what these are, no need to go through it !

vast bane
#

when you create an item, how do you know what all the various attributes are of the item, what do you type in the console to get the item details? isn't it fromuuidsync or something?

violet meadow
#

define the item to be the one you created

vast bane
#

is Item in your example the uuid of the item?

#

and I assume that would be an on use macro?

#

wow if I do this, then I could just share the item

violet meadow
#

console.log(duplicate(_token.actor.items.getName("name of the created item you want to check"))

#

and yes you can just share it

vast bane
#

eh I'll still make the cheat sheet cause the whole point is to make an easy copy/paste

violet meadow
#

or you can use an item's JSON export too

vast bane
#

my overtime cheat sheet has saved me so much time I feel this item creation cheat sheet would do the same

#

is the item export literally the formatting of it too lol?

#

if so thts hilarious

violet meadow
#

check the MidiQOL sample Flaming Sphere

#

Granted it's an actor's JSON but you get the gist

vast bane
#

you always use find label for checking ae's, why not use dfreds version of it?

#

await game.dfreds.effectInterface.hasEffectApplied('Bane', uuid);

violet meadow
vast bane
violet meadow
#

what's the itemMacro?

vast bane
#
if (!!args[0].hitTargets.length) await MidiQOL.completeItemUse(token.actor.items.getName("Tentacles(Save)"), {}, {targetUuids:args[0].hitTargetUuids[0]})
if (args[0] === "off") {
  const targetActor = canvas.tokens.get(args.at(-1).tokenId).actor;
  await game.dfreds.effectInterface.removeEffect({ effectName: 'Stunned', actorUuid: targetActor.uuid });
}

Would these be ok? one is an on use after active effects, the second if is via dae?

#

do I need macropass lines?

violet meadow
#

The off will only be triggered when the DAE effect which calls macro.itemMacro is deleted

vast bane
#

k so after active effects is fine in the on use part on item right?

violet meadow
#

But the rest should be inside a ```js
if (args[0].macroPass === "postActiveEffects")

#

or if its an onUse you could also do a ```js
if (args[0].tag === "OnUse") {}

#

This should be enough```js
if (!!args[0].hitTargets.length && args[0].macroPass === "postActiveEffects") await...
if (args[0] === "off") {}

#

@lofty kindle changed the item quite a bit. Sending it back to you πŸ˜‰

vast bane
#

The setup does not apply stunned and this is all that shows up in the console

violet meadow
vast bane
#

It is

violet meadow
#

yeah that warning/error was DAE saying you tell me to look into args[0] and find hitTargets and evaluate that the length exists, but hitTargets doesn't exist you dum dum

vast bane
#

something seriously fucked up about this cause its also rarely applying anything

violet meadow
#

wweeeeeelllll

vast bane
#

grappled should apply for sure on hit

violet meadow
#

send me the item cause I cannot bother to make it now πŸ˜„

vast bane
#

reloading the instance, things are also taking a while to resolve I think my pc had been logged in to long

#

Is this suppose to have anything in the value?

dark canopy
vast bane
# violet meadow send me the item cause I cannot bother to make it now πŸ˜„

ok discovered some of the issue, I had forgotten to take off the saving throw of the attack item, so it was inducing the save an additional time misleading me to think it was ok when it wasn't, now I'm dealing with a bunch of pending int saves that are triggering the ignored things before so trying to clear everything and start fresh

violet meadow
#

Oh I read it totally differently, what Moto asked before!

#

I was thinking about an ephemeral item vs an item that is being created in the inventory facepalmpicard

dark canopy
#

i would imagine a warpgate centric approach would be "lighter" overall than a chain of macros through DAE

vast bane
#

ok, so I got the two tentacles to work together, but I think that dae error is telling me that I shouldn't combine them and that I should use macro.execute instead for the dae, unless I can somehow execute the macro as the never automatically in effect macro to keep it self contained?

violet meadow
#

Do you still get a warning? πŸ€”

vast bane
#

oh shit, I could do on delete efffect macro can't I?

#

On deletion, find and delete stunned

#

then the item is all self contained, doesn't rely upon a folder macro

#

the warning happens cause if the on use is reading the if args off thing

violet meadow
#

ok just add else if instead of just if

#

on the second one

#

but it shouldn't make a difference or I am too tired to think clearly

vast bane
#

honestly if it doesn't work in the next attempt I think its just as simple to leverage effect macro here

violet meadow
#

Just make sure to clear any effects before as deleting any that are currectly linked to the itemMacro will trigger it

vast bane
#

how the hell does actionSave= work in overtimes?

violet meadow
#

what's your OT ?

vast bane
#

I think I need the Zhell friendly version of this:

const targetActor = canvas.tokens.get(args.at(-1).tokenId).actor;
await game.dfreds.effectInterface.removeEffect({ effectName: 'Stunned', actorUuid: targetActor.uuid });
violet meadow
#

for actionSave=true you can do this
actionSave=true,saveAbility=dex|str,saveDC=100 //change to what needed but you get the point

vast bane
#

I feel like Zhell missed a good opportunity with this error message to include a pirate joke for args:

violet meadow
#

The macro is DAE related πŸ˜„

#

just use token for EM

vast bane
#

so targetActor = game.user.targets.something?

#

oh shit yeah token

violet meadow
#

await game.dfreds.effectInterface.removeEffect({ effectName: 'Stunned', actorUuid: token.actor.uuid });

#

or actor.uuid

vast bane
#

its all working perfectly now

#

I did forget the DC though

opaque patrol
vast bane
#

since we have a puter doing so much why not leverage it for a more chance related encounter

#

plus when I prep and roll their stealths, If they roll a nat 1 it motivates me to write a blurb for when they encounter them

opaque patrol
vast bane
vast bane
#

Edited the cheat sheet yet again as I had a typo in the edit

#

After moving the second half of the macro to EM, the first half is no longer working and throws the same dae warning:

if (!!args[0].hitTargets.length) await MidiQOL.completeItemUse(token.actor.items.getName("Tentacles(Save)"), {}, {targetUuids:args[0].hitTargetUuids[0]})
#

@violet meadow ⬆️

#

the item also doesn't roll

violet meadow
#

You don't have the changed one

#

hitTargets?.

vast bane
#
if (!!args[0].hitTargets.length?) await MidiQOL.completeItemUse(token.actor.items.getName("Tentacles(Save)"), {}, {targetUuids:args[0].hitTargetUuids[0]})
#

was the period intentional and I left it off stupidly?

#

oh shit now I get it

vast bane
#

no errors in console, does not fire second item

violet meadow
#

The itemMacro and the name of the second item?

vast bane
#

I feel like cause theres no error, it means the if statement wasn't true

violet meadow
#

Also you have the activation condition true for the effect when there is none

vast bane
#

empty=true?

#

I thought you need that or it will apply even on misses?

violet meadow
#

I am afk so cannot check it properly now

#

Put a console.log(args[0].hitTargets?.length)
at the top

violet meadow
#

I will confuse you more now, I will take a look later when I am back at my PC

vast bane
#

I thought you need that on or the effect transfers regardlessof hit/save results

#

If I take out the if statement and just run it, it works

violet meadow
#

If an attack doesn't hit, the effect will not be transferred

scarlet gale
#

What are you making?

vast bane
# scarlet gale What are you making?

Melee Weapon Attack: +7 to hit, reach 5 ft., one creature. Hit: 15 (2d10 + 4) psychic damage. If the target is Medium or smaller, it is grappled (escape DC 15) and must succeed on a DC 15 Intelligence saving throw or be stunned until this grapple ends.

violet meadow
#

Did you log what shared above?

vast bane
#

I didn't know how to do one item so I made two items and I need a check on hit to fire the second item

scarlet gale
#

No need for a macro for that

vast bane
scarlet gale
#

Just a regular attack with a save

#

Make the duration a day

vast bane
scarlet gale
#

Oh gotcha

vast bane
#

hit grapples, save stuns

vast bane
violet meadow
#

It seems that there is an issue with which itemMacro is being run?

vast bane
violet meadow
#

Ok so you had a miss a hit and a miss

#

That should be fine

#

Ah no

vast bane
#

I never missed thats 1 workflow

violet meadow
#

What is data sanitizer?

vast bane
#

I have no clue

#

AA left a debugger on

scarlet gale
#

function.chrisPremades.macros.monster.generic.autoGrapple as an on use macro

#

Will auto grapple hit targets, ignoring the save

vast bane
#

then I can save apply stunned?

#

using the checkbox for evaluation true

scarlet gale
#

Yep

vast bane
#

then its 1 item 8)?

scarlet gale
#

No evaluation needed

violet meadow
#

Delete [0] from the hitTargetUuids

vast bane
#

I'm gonna try chris's real quick

scarlet gale
#

Look at the tentacle attack from my mind flayer automation

vast bane
#

you didn't make one

#

I only saw mind blast

scarlet gale
#

There 100% should be one

#

Unless I forgot to include it

vast bane
scarlet gale
#

Rip

#

I'll include it next update lol

#

That's why I have this generic auto grapple

vast bane
#

I assumed since you didn't have it in the folder, it wasn't worth automating so I thought I could pull it off lol

#

the elder brain has a tentacle but its different

scarlet gale
#

Nah, I thought I included it

vast bane
#

frikkin glitch ass UI just does not want to work with me today, I can't delete any EM macros

vast bane
#

no errors, cannot delete or edit this actors Effect macro

#

well I can open it, and edit it, but saving does nothing

scarlet gale
#

Reopen foundry?

vast bane
#

relaunched the server and everything, I think its cause I'm making a unique canvas actor

scarlet gale
#

Edited my above function thing btw

#

If you already copied it

vast bane
#

I'm still trying to make a functional mind flayer as the canvas actors were both having strokes

scarlet gale
#

Not at PC to actually check

#

But I'm pretty sure that's the right location

vast bane
#

I added a lil tidbit to your concept, I added an On Combat turn starting effect macro:

ChatMessage.create({content:`Because you are stunned, you cannot break free from the grapple.`})
#

because if you are stunned, you are incapacitated, and if you are incapacitated you cannot succeed on any str or dex checks so therefore the only way to escape a mind flayer is to be pulled away from them

scarlet gale
#

Β―_(ツ)_/Β―

#

Could just have that in the VAE description

vast bane
#

I kinda like rubbing it into the player when their turn starts ;p

#

Evil would be so proud of me

scarlet gale
#

Pretty sure they can't do anything while stunned

#

Not just can't remove the grapple

#

May as well have it auto advance the turn lol

vast bane
#

they can speak falteringly

#

I like to shame my players lol

#

hmmm, it does not seem to be working

#

I think its a dfreds or midi bug though

#

By this image's logic, you'd think the zombie got stunned and grappled

scarlet gale
#

Looks grappled to me

vast bane
#

it was suppose to be stunned too

#

function.chrisPremades.macros.monster.generic.autoGrapple

#

that right?

scarlet gale
#

Yep

#

It doesn't handle the stun

vast bane
#

I know exactly what this is, and I really need to report this to dfreds

scarlet gale
#

Have the item do that

vast bane
#

stack by name is not working right in dfreds now

scarlet gale
#

???

vast bane
#

its picking up partial positives in the ID's since all of his CE's start with "Convenient Effect"

scarlet gale
#

I have this exact ability setup fine

#

With the current updated versions of my dependencies

#

You using a macro.ce for the stun?

vast bane
#

Works perfectly with statusEffect for stunned:

scarlet gale
#

When are you having the macro run?

vast bane
#

If the CE is on the custom item in the side bar, then the stacking breaks and only one custom can be on an actor

#

after active effects

scarlet gale
#

Shouldn't you just be doing no stacking by origin

vast bane
#

if both ce's are on the custom item in the sidebar(dfreds item) then dfreds stacking has a stroke and only one can be on the actor

#

the origin is apparently the sidebar item

#

your stunned isn't the conflicting CE

#

the enhanced monster was

scarlet gale
#

What does a sidebar item have to do with an item on the npc?

vast bane
#

either way, I have it working with statusEffect atleast

#

because all the ce's that are custom start on that item, I honestly don't get this bug, its almost always when the actor has the enhance monster on it

#

parry also fails to apply when the monster has enhanced monster custom ae on them, it will shut off the lowe rpriority ae and apply the higher one

covert mason
#

Do you have a link to the v10 version of Fluid Canvas?

vast bane
scarlet gale
#

What is an enhanced monster ae???

vast bane
#

Look away if your stomache for crazy foundry shennanigans is weak:

covert mason
#

I found the module.json, but I get an error when trying to install it on Forge.

vast bane
#

@celest cradle do you have that zip of fluid canvas handy lol? I can't find your post for it when you gave it to me. I dunno where you posted it.

vast bane
#

I think my worlds corrupt but I'm keeping my head in the sand, statusEffect works so I guess I'm all set

#

macro.ce should too, makes no sense why its not but theres no console errrors to go by so I have no clue

covert mason
vast bane
#

thats the wrong one I think

#

I think you want gazkhans

#

if you go to fluidcanvas's original github, theres 2 forks, chuey's is older than gazkhans

#

but I'm just guessing here basing it on the fact that gazkhan shared me a zip, no idea where it was from though

dark canopy
covert mason
#

Oh

vast bane
dark canopy
vast bane
#

I think this is why he gave us it in zip form

covert mason
vast bane
#

do want me to zip my folder and give it to you?

covert mason
#

Aye, sure

vast bane
#

will dm it to you incase they don't like this here

#

Did you see my world script too for crit shake @covert mason ?

#

(its more Gazkhan's than mine lol)

dark canopy
#

(advertising something that you are going to do that may not be kosher...is...not the safeguard you think it is? lol)

covert mason
#

Yoooo

#

I'd love that!

vast bane
#
Hooks.on("dnd5e.rollAttack", async (item, roll) => {
    console.log(item,roll)
    if(roll.isCritical){
    await Sequencer.Helpers.wait(1500)
    KFC.executeForEveryone("earthquake", 2)
    }
  });

I use this in worldscripter module

#

and then if you use dfreds CE, duplicate Poisoned as custom and then edit it and add an on creation/deletion Effect Macro:

const poisonedUser = warpgate.util.firstOwner(token)?.id
await KFC.executeAsGM("drug", [poisonedUser], 1)
#

you could probably do a dae version if you don't have effect macro but I dunno how to set that up

covert mason
#

I do have effect macro

vast bane
#

KFC commands apparently are like toggles so the off just needs to be the same command again

#

I was tempted to do blur for stunned but I was waiting to see how my players like it first

covert mason
#

Is there a way I can easily copy over a Drefds CE to, say, the active effects tab of an ability?

vast bane
#

don't do fade to black for blinded...thats worse than the blinded effect from core lol

#

you can drag and drop dfreds CE's directly into item and actor effect tabs, just not an items effect tab in the sidebar

#

this is also kinda why I keep recommending everyone use macro.ce instead of statuseffect, then you don't have to worry about the wrong ce

vast bane
#

@scarlet gale is the function suppose to be after active effects?

#

can anyone suggest to me a way to sus out what is happening, like can I turn on more logging to see why the stunned is auto removing itself? the current console shows nothing, it even says its been applied both in chat and in the console, yet its gone

#

I really don't want to use statusEffect to work around this bug.

north ocean
#

Im using MrPrimate's Thunderous Smite macro, but it casts it straight away. Is it supposed to wait for a melee hit before activating?

vast bane
#

its firing right away cause the item you have is not set to OTHER or utility and no damage formula/saving throw

#

It hard to guess how his macros want items setup, the simplest solution is to ask someone in CPR's discord to share the details tab of the spell as 90% of users on that discord are also ddb users

#

you could ask here but less eyes here are ddb users

north ocean
vast bane
#

Its not a spell?

#

So when I turn on midi's debugger to full, the item works, but if I shut off the debugger, the stunned poofs when the grapple is applied confusing

#

Jesus this doesn't get any weirder:

#

its not even really there???

vast bane
#
if (this.hitTargets.size != 1) return;
const targetActor = canvas.tokens.get(args.at(-1).tokenId).actor;
await game.dfreds.effectInterface.toggleEffect({ effectName: 'Grappled', actorUuid: targetActor.uuid });

At my wits end here but heres the error:

#

it needs to be the midi version of this not dfreds

#

because its applying to target

vast bane
#

I don't think your item is meant to be a dae item macro, but you could try that, I suspect you have the wrong macro pass

violet meadow
#

@vast bane send me your Item

vast bane
#

(You need CPR installed lol)

violet meadow
#

If you ve got it sorted it's OK

vast bane
#

I can't run more than one macro.ce or else they overwrite each other

violet meadow
#

I mostly want to test what was happening with the initial macro we were working on

vast bane
#

On use macro for:

On failed save, GM hide your token?

queen raptor
#

Just since it seemed functional before

violet meadow
queen raptor
#

D-:

#

I gotcha

#

Thanks for the heads up lol

tepid remnant
#

Is there a way to add a damage bonus to an actor that's conditional on the target making/failing a save? The use case in this example is poisoning a weapon. Adding the bonus poison damage is easy enough but I can't figure out how to set up a save. I'm thinking I need to use some kind of macro and a damageOnlyWorkflow but I'm wondering if I'm missing an easier way.

violet meadow
#

Choose at least If Save Present

#

Then add a save in the Item's details tab and in the Other Formula the 1d8[poison] damage for example

#

Attacking with the Item will trigger a Saving Throw which will half the Other Formula damage if its a success, by default

quiet solar
tepid remnant
violet meadow
#

You could change the Item in a macro to include the Other Formula and save when the poison is "applied".

Or you could use an AE with a MidiQOL optional bonus flag for damage which could be used when needed.

#

I just gave you the no macro option πŸ˜„

tepid remnant
#

Can it be done with AEs? I feel like I've been writing macros non-stop and would love to just... not write another one lol.

gilded yacht
#

Can you dm me the actor with the item and your midi settings. version 10.0.36 was supposed to fix the AoE templates for magic item spells.

violet meadow
# tepid remnant Can it be done with AEs? I feel like I've been writing macros non-stop and would...

Warpgate centric as a DAE macro.itemMacro execute on an Item which will apply the "Poison" on one of the chosen weapons πŸ˜„

const effectToken = canvas.tokens.get(args.at(-1).tokenId);
const effectActor = effectToken.actor;
const effectTokenDoc = effectToken.document;
const mutName = "Poisoned Weapon";

const formula = "1d8[poison]"; //change as needed
const save = {ability: 'con', dc: 13, scaling: 'flat'}; //change as needed.

if (args[0] === "on") {
  const weapons = effectActor.itemTypes.weapon;
  const result = await warpgate.menu({inputs:[{type:"select",label: "Apply Poison", options: weapons.map(i=>i.name)}]},{title:"Available weapons"});
  if (!result) return await effectActor.effects.find(eff=>eff.id === args.at(-1).effectId)?.delete();
  const updates = {embedded:{Item:{[result.inputs[0]]:{system:{formula,save}}}}};
  if (!!warpgate.mutationStack(effectTokenDoc).getName(mutName)) await warpgate.revert(effectTokenDoc, mutName)
  await warpgate.mutate(effectTokenDoc, updates, {}, {name:mutName});
}
if (args[0] === "off") await warpgate.revert(effectTokenDoc, mutName);
gilded yacht
#

Thanks for the heads up. It turns out I missed a change to how skills are represented and so the lookup is now failing. Will fix in 10.0.37

gilded yacht
scarlet gale
#

@gilded yacht Does Midi-Qol trigger dice so nice rolls manually? If so, would there be a way to have the damage dice get displayed after postDamageRoll step is done?

#

I'm still having the issues of workflow.setDamageRoll done during postDamageRoll not being respected.

sudden crane
gilded yacht
gilded yacht
scarlet gale
#

Yea, I'm not worried about non-merged cards

vast bane
#

So I got a video of my issue with macro.ce, but in an effort to make it as clean as possible I discovered that the problem is actually npcs, player characters don't have the problem(target being player character)

#

this only happens with npcs as the target

gilded yacht
vast bane
#

Sent

#

I didn't actualy say what the problem is, but the effect is suppose to apply grappled on hit and stunned on save fail, and for some reason the stunned is being immediately removed.

#

the current version uses CPR functions but I had it using a standard midi on use and it still failed same way. If you swap the effect's key to statusEffect the problem goes away

gilded yacht
spice kraken
#

Oh snap, the man himself is back

vast bane
#

the console says that dfreds applied two, but you only se one and you can clearly see it kinda gets overwritten by the seccond

#

didn't occur to me to see if it is indeed stunned lol

#

no its not there on the actor data, it shows only 2 ae's, the empty macro.ce ae and then grappled

gilded yacht
#

I'll have a play

vast bane
#

tried turning on the full debugger in midi but I didn't know what I was looking at so that didn't get me anywhere

winter halo
#

Hey people, someone in the macro channel recommended coming here. I need help. I have quite a few strenghts, but macro building is so not one of them. I need quite a simple macro for a player in my 5e group. Basically when he rolls a 20 with a certain weapon, it should add one ki point. I use DAE, Midi-QOL and so on. The Ki is a feature. How would I best tackle this problem?

Sorry for the bad english, it is not my first language.

short aurora
short aurora
#

Create a script macro (click on an empty slot in your hotbar at the bottom and change the type of it to script) with this and have it on the monk's weapon as an onUse macro for After Active Effects.

// If Midi's workflow detects we crit (normally roll a natural 20)
if (this.isCritical == true){
    // Change the item name here to what your feature is called
    const itemName = "Ki";
    const itemToUpdate = this.actor.items.find(i => i.name == itemName);
    // We check if the item we're updating is already at max value, because you can exceed it. If it is, we "return" nothing, meaning we don't do anything and cancel the rest of the macro
    if (itemToUpdate.system.uses.value == itemToUpdate.system.uses.max)
    return;
    
    // Otherwise we add 1 to the current uses of the item.
    await itemToUpdate.update({"system.uses.value": itemToUpdate.system.uses.value + 1});
};```
tranquil cloak
#

is the "supply" part of spell components part of midi and if so how do I use it?

#

I looked on the midi page and coudn't find a reference too supply

winter halo
violet meadow
#

Do you need to use components?

#

You could use materials as resources and thus needing to have availability in order to cast some spells

#

For example make revivify spell to use a Diamond as a resource

tranquil cloak
#

not sure if its from midi, but that's the most likely culprit

sudden crane
vast bane
tranquil cloak
#

How does the supply box factor into that? Athough, with some testing I don't think it comes from midi

umbral basin
vast bane
covert mason
#

Is this how I correctly format this?

umbral basin
violet meadow
#

MidiSRD has been updated for v10. This is not the updated version you got

violet meadow
spice kraken
#

Let me find the flag for you, 1 sec

#

What skill?

cedar forum
#

Any skill or tool the actor is proficient in

spice kraken
#

oh

#

Well the tool, change the formula in the details tab

#

There isn't a flag for all proficient skills but you can do the following

#

1 sec, confirming my thing

#

For acrobatics

#

Is this something that is permanent?

cedar forum
spice kraken
#

Yeah

cedar forum
#

But I appreciate you taking the time to show me

violet meadow
cedar forum
violet meadow
#

Yeah, in the Actor traits

wild oyster
#

so if i make item/spell/feat/etc macros, should I save them as items vs. modifying the srd stuff in the compendium?

dark canopy
#

best not to modify compendiums that are not created by you

late fractal
#

works perfectly. amazing

wide crystal
#

Hey guys, are there flags for advantage against specific conditions?

#

Can't seem to find one, but thought I'd ask

spice kraken
#

Like advantage against poison effects?

wide crystal
#

Specifically I need Frightened and Charmed.

#

Sorry, was searching for it over Discord, didn't see your message.

vast bane
#

look at CPR's dwarven resilience

wide crystal
#

On it.

vast bane
#

it will only check against convenient effects though

#

the keys won't auto complete cause chris hasn't submitted them to dae yet

wide crystal
#

So I have this, but the flag doesn't exist in the dropdown menu. Is it still functional this way?

#

Ah, you just answered that.

vast bane
#

keys only auto complete when someone submitts them to dae's gitlab I think

wide crystal
#

Understood. But they still work if they're the correct keys. Awesome.

#

Thank you!

vast bane
#

as long as you have the setting on in CPR yes

#

conditional resistance and vulnerability I think

#

theres CV keys to give disadvantage

spice kraken
#

I wonder if V11 will break CPR

#

Since it'll almost certainly break Compendium Folders module

vast bane
#

all the more reason to stay on v10!

wide crystal
#

Hmm... Doesn't seem to do anything :S

#

It's upper case on the screenshot, but I tried both.

vast bane
#

show me the item effect of the thing applying it

#

show me the item that is charming you or frightening you

#

I believe it only works if the item is applying a macro.ce

wide crystal
vast bane
#

you sure your key is right?

#

override not custom

wide crystal
#

Ah, damn... Let me see.

#

I see what is happening here... The Resistance adds +5 to the roll, rather than actual advantage.

#

Wait, no, that's wrong.

#

So I see it does something, because after I cast the Frightening feature - but before I roll the save - this CA effect appears on the saving token. But as you can see on the chat card, only one roll happens.

vast bane
wide crystal
#

Hm. Let me look, I created this feature on one of my first days playing with Foundry.

vast bane
#

are your conditions convenient effects?

wide crystal
#

Yes.

vast bane
#

they work for me so I dunno what to say here other than you got weird midi settings or a conflicting module

#

that button chat is sus

#

also why is the request whispered?

wide crystal
#

I think this may be it?

vast bane
#

test with fresh abilities on two starter heroes

wide crystal
#

This maybe the reason.

#

You know what, something is wrong with the Daunting Roar, it would seem. For some reason, just adding Fear to a weapon attack makes the advantage work. The roar doesn't. I'll re-do.

Much appreciated, I have no idea how you spotted that πŸ˜„

vast bane
#

restart your session test with more traditional things like starter heroes and a basic item transfer

#

CR may not work with more than one target

wide crystal
#

Found it...... πŸ€¦πŸ»β€β™‚οΈ I had the Roar's action type set to Ability Check, rather than Saving Throw.

#

As always, thank you for your help.

short aurora
#

Can anyone think of an example someone has already made of a feature similar to this one? My Midi-fu is still iffy on reactions to things that might not necessarily happen to the actor with the feature.
When a creature you can see within 30 feet of you makes an ability check, attack roll, or saving throw *with advantage*, you can use your reaction to remove advantage from the roll.

vast bane
#

too squirrelly to automate

spice kraken
#

Maybe you can deconstruct Ancestral Protectors to do what you want

short aurora
spice kraken
#

I have one from V9 I think lonelybugbear gave me. Maybe Chris, it was too long ago

#

Moto, do you know if CPR has it?

#

I lied, it was neither of them πŸ˜‚

short aurora
#

You don't create a chat message that shouts out the creator of your macros when used? shame /s

spice kraken
#

1 sec, let me see if I can find a v10 version

short aurora
#

Appreciated, thanks

vast bane
#

CPR does have that

#

its hard to yoink out CPR stuff though

atomic badge
#

Does anyone know if midi supports overtime effects granting more effects?

#

How does one yoink out CPR stuff exactly?

atomic badge
#

Ah, should've specified.

Status effects, basic ones from like CE, or new DAE effects.

scarlet gale
#

Or if you keep the module just change it from an import to calling my helper functions from chrisPremades.helpers

atomic badge
#

Thanks, I appreciate the info!

short aurora
#

You also have to look at the actual script unless I missed something in Chris' module, e.g. opening up the module's folder to have a looksie

short aurora
atomic badge
#

Ah so it is supported! Cool, I'll have to mess around with it a bit, it's not something necessary right now, but definitely for when I design "raid bosses" in the future. πŸ‘οΈ

#

flags.midi-qol.OverTime OVERRIDE applyCondition=stunned would be a simple way of just starting right?

#

Oh they have examples!

coarse mesa
#

@vast bane my brain is a bit fried right now. One of our party just gained Fanatical Focus and I’m trying to think of the best way to implement the reroll, since we use MTB. Something you’ve done? I can’t find a single reference in this server

short aurora
#

I feel like the Rage could macro.createItem on the caster like a modified Lucky from the midi samples, but I don't know the syntax for "keep the new roll" vs. "keep highest" which is the big difference

short aurora
#

I tried dabbling in creating the feature and I got it to work like I wanted once, now it prompts me twice to reroll the saving throw and I dunno why

#

Here's what I got so far; an item that applies an active effect with this on transfer, the item has charges (since they can only do it 1 per rage and you'll be creating the item on the user), but it only works as expected the 1st time the effect it procced, afterwards it will procc twice for saving throws, once for a specific saving throw (e.g. like Dexterity saving throw) and then for a generic one (just Saving Throw), which does not seem intentional. Will let other people with more experience weigh in on that one. edit: remember to change the label names, I was just lazy for testing

#

When I say "procc" I mean it will prompt twice, once for the type of whatever saving throw it is and then again for a generic saving throw, but it's the same rolls and the same saving throw.

coarse mesa
#

From a workflow perspective β€œkeep the new roll” seems like an easier ask, but I’m still not sure how it would work in the context of say an AoE where everyone is rolling saves in a MTB card

short aurora
#

Yeah, the interaction with MTB is also beyond me, but I guess you could test the Lucky item and see if that works as wanted and go from there

grim sigil
#

Hello everyone,
im currently trying to build zealot barbarians "divine fury" to be mostly automated. Is there a simple way to just re-apply a expired active effect at the start of every players turn? i know there is "macro repeat", but i try to avoid using full fletched macros, as i no not have proficiency in JavaScript πŸ˜„
I've been looking around with the search function already, but most of the stuff i found is directly doing stuff at the start of turn in whole different ways instead of just applying an effect.

short aurora
# grim sigil Hello everyone, im currently trying to build zealot barbarians "divine fury" to ...

I don't think it's possible without doing a little scripting/"macro"-stuff. Chris has both variants of Divine Fury in their module, if you want a prepared example and already use those modules, but both of those are macros. "Pure" Midi example is Sneak Attack for instance, but that also has a macro. I think build-a-bonus/babonus is the furthest you can get without a macro, but I suspect you need a little scripting to do the "once per turn" thing.

grim sigil
#

thanks for the hint so far. im just looking at the macro for sneak attack and .. well... i do have quite a bit of scripting knowledge but while i can see the macro is nicely done, thats way more then i need.
the premium would be a simple "am i raging? then apply the effect", as teh damage portion and the expiration is already handled

i already did try around, found that i can find the "am i raging?" part in the actordata, but still failed at the reapplication nether the less

short aurora
grim sigil
violet meadow
#

The script needs a bit of v10 touch up which while not difficult to do, I cannot do it right now

#

Oh that is quite old, but should do the trick

#

Remove the .data. from the getProperty call

grim sigil
#

uhh. Thats glorious. Changing it for a test, but thanks in advance ❀️

violet meadow
#

Now there are a few things that I would do differently 😁

short aurora
#
if (args[0] == "each" || args[0] == "on") {
    const targetActor = game.actors.get(args[1].actorId);
    const divineFuryEffect = targetActor.items.getName("Divine Fury").effects.entries().next().value[1];
    await targetActor.createEmbeddedDocuments("ActiveEffect", [divineFuryEffect]);
};```
Here's my take, if only because I prefer my players be able to see rather than abstract things away in scripts. Set up the same way as bugbear's with an effect line that runs the macro, checks if you either *just* applied Rage or if you're already raging and it's the start of your turn. Either way, it gets the Active Effect (assumes there's only 1) from your Divine Fury feature and applies it. Needs to have Macro Repeat set to `Start of each turn`.
#

It took me an embarrassing amount of time to decide on a three line script. >_>

short aurora
#

Whoops, don't juggle languages kids

sudden crane
coarse mesa
#

What did you do for Fanatical Focus? I’d forgotten you had a Zealot

short aurora
coarse mesa
#

Sneaky

violet meadow
#

The fanatical focus is an optional in the same AE

coarse mesa
#

Is it really that simple… I’ll give it a shot

#

And works with MTB?

violet meadow
#

Does it not?

#

My barbarian decided to stop the bbg by cleaving through his stuff of power with her dawnbringer

#

Only a small piece of her remained... 😁

#

So I haven't used it recently

coarse mesa
#

I was just wondering, in a group save eg an AoE if the Barb could reroll before damage got applied etc. I’ll test it in the morning

violet meadow
#

Ah I see hmmm. I am away at my father's home town with limited availability of internet πŸ˜…
So until next week, nothing much I can test

coarse mesa
#

I’m guessing if it’s optional it gets offered before the result gets sent to MTB🀞

coarse mesa
violet meadow
#

Indeed I do! A small village in the Greek countryside πŸ™‚

coarse mesa
# vast bane

I know you’re an AR enthusiast, but any reason you didn’t go with the optional bonus route?

vast bane
#

it'd also be annoying to have a pop up on every save so I tend to avoid them if I can

coarse mesa
#

Makes sense. Thought you might know some pitfalls, that’s why I came to you first

vast bane
#

Its most likely rolling straight for the same reason as I told that user in that link to turn attribution on but regardless, having roll attribution on is generally a positive feature to have on for all users of midiqol especially if you fast forward rolls(or be a cool dawg like me and don't fast forward and use advantage reminder)

uncut citrus
vast bane
narrow saddle
#

Hi there, anyone know if there is a problem with Shillelagh 10.0.17?

I have a Druid with a Quaterstaff and a Club equipped, when I cast it, the drop down menu appears but there is nothing in the drop down menu. πŸ˜•

I have done it with the weapons equipped and not equipped etc.....

All my modules are up to date, I think. πŸ™‚

short aurora
vast bane
narrow saddle
static sparrow
#

I have midi set up to check for flanking and to apply a CE "flanked" effect; is it possible to make a creature immune to that?

violet meadow
#

If you make the flanked a statusEffect, you can then add a condition immunity against it

static sparrow
violet meadow
static sparrow
#

Okay, gotcha; and for the condition immunity, do you just mean typing its name into the custom box for the character sheet condition immunities? Is there a way to do it in an active effect?

violet meadow
#

Reload and it should be there as an option iirc

static sparrow
#

It doesn't appear in the condition immunities box:

#

And what I really need is to do it in an active effect anyway XD

violet meadow
#

What about special? I might be forgetting a step, but you can add new ones as well

static sparrow
#

Adding "Flanked" to special does not prevent the effect from being applied.

violet meadow
#

That should do it

#

World script

static sparrow
#

Documentation on the World Scripter module seems to be nonexistent, not really sure how to use it XD

#

This is the entire readme, haha

violet meadow
#

Create a script macro with just that line

#

Then drag that macro in the World scripter compendium and reload Foundry

static sparrow
#

Okay, that works! Thank you! Now how do I add it to an active effect XD

violet meadow
#

Same like the other conditions

#

Type ci in the DAE key field and it should auto complete

#

Then in the effect value the flanked should be available

static sparrow
#

Ahhh, I was trying "condition" and "immunity" and couldn't find anything, I wouldn't have known what ci was. Thank you!

#

Do you happen to know the difference between the first part of this list and the ones with the dashes in front?

violet meadow
#

di damage immunity,
ci condition immunity,
dr damage resistance,
DR damage reduction

#

The minus condition is an AE that removes said immunity etc

static sparrow
#

Ahhh, gotcha, thanks!

inland vortex
#

I'm using Chris' amazing Ring of Spell Storing. Most spells are working well from it. but not some of the ones that you apply to yourself, like Mirror Image, Mage Armor or Blur. They expend the use in the ring when you try to use it, but the spell doesn't cast and have an effect. I don't know if I am doing something wrong, or if there is a fix for this.

proper robin
#

@scarlet gale would probably be the one to ask

scarlet gale
#

Could you make an issue for it on my Github so I don't forget?

inland vortex
#

Yes, how do I find that?

scarlet gale
tribal prism
#

Hey @scarlet gale I actually was curious about your Experimental Elixir for Artificers. The ability allows for a spell slot to be expended to pick one of the elixirs on the table to produce. I was curious if that could be added in potentially for a future release. I may try my hand at tossing menu in allowing for the spell slot usage and then producing the secondary menu with the available elixirs but it'll probably take some time sifting around everything lol.

scarlet gale
#

But it does make sense to actually have that

tribal prism
#

Can't blame you with everything else in there lol but alrighty

scarlet gale
#

Make an issue for it as well if you want.

#

I'm in the middle of my work-week so I don't want to forget about it.

tribal prism
#

Yeah sure thing I'll toss it on there.

#

Ty

wide crystal
#

Hey Krig, may I ask what the differences are between doing it this way and via ItemMacro? I always thought ItemMacro was meant to remove the need to create macros outside of items without any drawbacks.

vast bane
wide crystal
#

Ahhh, that's why. Makes sense now.

vast bane
#

ooooh just had an epiphany for another entry in the wiki @violet meadow What are the codes for all the drop downs on actor on use, and the codes for special durations when written in macros?

#

Like another cheat sheet where it goes After Active Effects=postActiveEffect

violet meadow
#

There is a console method to get them

vast bane
#

isn't it just making an actor with an actor on use that is just console.log(this)?

#

what about the special duration codes those seem harder to find for me

violet meadow
#

MidiQOL.MQOnUseOptions

#

DAE.daeSpecialDurations()

#

These are really helpful

#

and I ll throw another special one new MidiQOL.ConfigPanel().render(true) πŸ˜„

tribal prism
#

Working on a item macro, need the define a distance as being 5 x prof bonus. Wasn't sure how to call to the actors prof bonus, anyone know?

violet meadow
#

End of the Line is the name of a homebrew life stealing sword of mine πŸ˜›

tribal prism
#

Yeah distance defined for a template

scarlet gale
#

actor.system.attributes.prof * 5

tribal prism
#

ty!

static sparrow
#

Follow up to my earlier line of questioning re: flanking immunity; I’m getting a really weird behavior. If I add the immunity on the character sheet, everything seems to work fine. β€œFlanked” can still be added to the character, but it’s forced down to β€œinactive” and its effects don’t apply. However, if the immunity is added via active effect, the flanked condition is still set to inactive, but its effects are applied anyway? It feels very bizarre. Any ideas what’s going on?

vast bane
static sparrow
#

The flanked condition is an active effect, yeah, I'm not sure how else it would be applied but that doesn't seem like it should matter πŸ˜„

vast bane
#

you said it is inactive but when you do it one way its ok and another its not but you used the term as an active effect

#

what is the difference in the two ways you applied the active effect

static sparrow
#

You've misread my question. I'm talking about the immunity.

vast bane
#

also what IS the flanked conditions keys?

#

you are using the custom value in the ae key

#

you need to use the non DAE auto complete key for your world scripted immunity

static sparrow
#

I don't understand what that means XD

vast bane
#

what is the key on the active effect show it

static sparrow
vast bane
#

what does flanked do

static sparrow
#

Subtracts 2 from AC.

vast bane
#

are you sure its not doing it?

#

sometimes the to hit is weird, it will show it in the check hits area but not on the sheet

#

if you don't check hits then you got a bigger problem than you realize

static sparrow
#

When I add the immunity directly to the sheet like image 1, and I apply the "flanked" AE, it gets put in "inactive" as in image 2, with AC of 17.

vast bane
#

I think thats a core bug

#

its not really 19

#

err 17

#

hit them with check hits on

#

that tooltip on the sheet is always weird with dae

#

unattuned magic items that mod the ac that aren't attuned, also mod the ac of sheets

static sparrow
#

When I add the immunity via an AE, it shows up here. The effect is still inactive, but AC is 15.

static sparrow
vast bane
#

this is a bug I've noted to #dnd5e channel and was told its a dae/midi problem, its a superficial error

#

you can replicate this by dragging ring of protection to an actor but leave it unattuned, but equipped

static sparrow
#

Nope, the AC is actually 15, a 16 hit.

vast bane
#

mouse over and show the tooltip over the ac

static sparrow
vast bane
#

0_o log the issue I guess, that ones weird

static sparrow
#

When I remove the immunity, it looks liek this.

vast bane
#

I wonder what that looks like without midi/dae

#

I guess it can't happen without it

#

are you using tidy sheet?

static sparrow
#

Nope.

vast bane
#

any sheet module?

#

have you rebooted your server since you added the world script?

static sparrow
#

Don't think so.

static sparrow
#

Nah, full reboot hasn't made a difference :/

vast bane
#

is the actor unlinked?

static sparrow
#

No.

vast bane
#

document it the best you can in an issue on midiqol's gitlab, you are likely going to be the only one who knows the bug exists

#

@rocky jewel

Sources of premade stuff for Midiqol:

Modules:
Midi Sample Items Compendium(comes with the module)

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

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

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

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

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

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

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

rocky jewel
#

I have everything else working it just seems to be some active effect type situations like hexblades curse not being able to get working

#

Is that in one of these?

vast bane
#

Its definitely in Chris Premade Module, not sure about the macro verions if you don't want to install all of CPR

#

CPR has a ton of dependencies and kinda requires a user to abandon CUB for dfreds ce

rocky jewel
#

Ok ill check it out thanks

vast bane
#

I personaly had an issue installing the dependencies during the CPR install and recommend preinstalling some of them as I think theres an issue when THAT many dependencies are called during an install.

static sparrow
dark canopy
#

would it be easier to give the attacker a bonus of +2 to hit instead?

vast bane
#

oh yeah, if you do ac bonus then ranged attackers who have nothing to do with the flanking get the bonus

#

but some folks like that so that could be the case here

dark canopy
#

yep, just checking πŸ‘

static sparrow
dark canopy
#

would it not work the same?

#

if you can apply flanked, then during an attack, check for that condition and add +2?

#

(mainly cause manipulating AC isn't the easiest thing to do on the fly like this, as you have discovered, heh)

tribal prism
#

Can you do a nested calculation in item descriptions? Like something akin to [[ 5*[[ @smoky smelt]] ]]. Except I know that doesn't work lol

#

nm dumb over here got it

wide crystal
#

Hey guys, I'm using this macro by Krig, but when it triggers the retaliation, I get this error in the console. The macro seems to work as it should - except only the fact that a physical dice doesn't roll. Should I care about it?

tardy root
#

Hey all, so the flag "flags.midi-qol.DR.all" when used with a "CUSTOM" change mode and a value will decrease the raw amount of damage taken by that amount whenever the one with it takes damage, correct?

And is the opposite true if I put a negative value in place? Will they take more damage as well should I use one?

static sparrow
# dark canopy (mainly cause manipulating AC isn't the easiest thing to do on the fly like this...

It's not just AC. There may be a workaround for my particular use-case, with "flanked," but there is still an underlying bug where condition immunity is not being respected if that immunity comes from an active effect (and not being respected in a weird way, where the character sheet says the condition's effect is inactive but the effects are applying anyway). I've tested restrained and blinded, both exhibit the same weird behavior.

dark canopy
#

yea, that does sound weird

tardy root
#

Thank you! Is there a flag in midi as well that references certain damage types in this way? For outbound damage?

As in, while the passive effect is on an actor whenever they deal acid damage it will deal "x" additional acid damage?

wide crystal
#

Hm... I believe that would be macro territory, but I may be wrong. Relatively new to this whole thing.

#

I know you can add extra acid damage to attacks, but not sure how to restrict it only to attacks that already deal acid damage.

sudden crane
wide crystal
#

Ah, yes BABonus does this.

sudden crane
#

I’m not familiar with BAB but from what I know it is pretty customable, otherwise the damage bonus macro can handle it easily by checking the damage details and search for acid damage, if prΓ©sent the return bonus damage otherwise return an empty object {}

wide crystal
tardy root
#

Thank you both! I'll try to build the macro and see if I can put it together and if not, use this module.

wide crystal
#

Hey, I saw you were doing the same thing I'm currently dealing with and was wondering whether you found/wrote a macro somewhere for the Tale of the Traveler, by any chance? I'm not sure how to make a character retain extra AC while they have temporary health available.

Actually curious how you approached the rest of your tales as well.

queen raptor
wide crystal
#

Oh, only if it's not too much to ask! I'll drop you a message now. Much appreciated.

keen oxide
#

Hey y'all, I'm trying to build a Darkness condition with CE that works for my player's blind fighting style paladin. I want to use the invisible status effect to make the tokens disappear off the map but glow for his See Invisibility sense, but looks like CE+StatusEffect isn't intended behavior. Any suggestions on how to make the tokens disappear for sense but customize the midi flags?

#

this is what I have currently but the only thing being applied is the StatusEffect

queen raptor
vast bane
#

Also the grant keys work on the attacker not the defender

vast bane
keen oxide
keen oxide
#

usually it's a single enemy and my player's paladin in the bubble so that's what I ended up with

keen oxide
vast bane
keen oxide
#

the result is tokens that are invisible but no Darkness CE or flags

vast bane
#

are you using cub or something?

keen oxide
#

Yeah I was trying to not use CE's invisible because it plus CE blinded cancelled out the advantages, but the blinded codition immunity might just work

vast bane
#

you are overcomplicating all of this, just have darkness apply blinded condition to everyone and give the blindfighter blinded condition immunity

keen oxide
#

Well I do still want the invisible condition since people outside the darkness can't see inside, or do I not understand Darkness RAW

vast bane
#

also macro.ce is a way to apply ce's but if you have a non ce invisible, that means you do not have dfreds CE replacing your status conditions and thats usually bad

tribal prism
#

Hey guys, I've got a barbarian with rage, I've got some stuff setup for checking for hits/attacks so it will fall off automagically if the correct conditions are met for how it works, my issue now is that they hit level 3 they chose the zealot path and have divine fury. Is there anyway to apply the additional damage applicable from divine fury on only the first attack per turn?

keen oxide
vast bane
keen oxide
tribal prism
vast bane
#

imo foundry's core visibility changres with blinded/invisible is awful and poorly setup in dnd5e. Stealthy is the module to use and I enjoy CPR's setting that shuts off v10 foundry's hiding of tokens.

keen oxide
#

Sweet, I'll take a look!

#

Would you mind clarifying what the attribution flag does? Or can i find that in the Midi readme

vast bane
#

attribution is a setting that then shows all the flags affecting the workflow, if you look at the second image in my link above when I told you about it, there is an example

#

the other problem with specialized keys in darkness is that others will get those keys too

#

best to just blind everyone, immune/exempt the blind fighter and teach them how to override their fast forwards(or be cool like me and don't fast forward hehe)

keen oxide
tribal prism
#

Speaking of which @scarlet gale I made a copy of your Misty Step macro for a player of mine that is a Harengon, they've got Rabbit Hop that functions similar in effect but the distance is 5*prof bonus (hence the question earlier). Worked like a charm though so if you have interest I can toss that over. Fairly niche though I suppose.

keen oxide
scarlet gale
#

Mine was just the automated animation preset lol

vast bane
tribal prism
keen oxide
#

Yeah we do use Alt/Ctrl

vast bane
#

it will even say if you overrode in attribution its pretty cool

#

I think its like adv: user control or something

#

Or user bypass

keen oxide
#

That's awesome, yeah excited to toggle on the attribution cause sometimes we're all staring at a roll wonder wtf happened

vast bane
#

yep, I keep meaning to write an issue to get that setting on by default but I suspect that won't help everyone who has midi already installed

keen oxide
#

Does CE register condition immunities? Seems like it's still applying

inland crescent
#

Hello all! I've started using MidiQOL and one of my players keeps rolling Eldrich Blast with disadvantage for seemingly no reason. Any clues as to why?

vast bane
short aurora
vast bane
#

I think theres going to be a discussion in your future on whether or not that character can race change πŸ˜‰

#

or you forgot to setup their vision

inland crescent
#

Oh my god.

#

How funny.

#

I did not set up their vision. So they were just blind as a bat.

keen oxide
vast bane
#

midi will apply blinded inactive to any creature who has the condition immunity for blinded

keen oxide
#

Ahhhhh maybe that’s what I was seeing then

vast bane
#

the condition must be literally blinded, not a "custom" with blinded written in

#

also make sure your blinded is "blinded" and not "blind" though thats only an issue if you don't have dfreds set to replace

keen oxide
#

Yeah it was just normal CE blinded

#

Yup was seeing that before, ce replace fixed

vast bane
#

on the actor themselves if you see blinded on the first tab as a condition immunity and they aren't immune to it for some reason, more than likely its cause its a written in immunity in custom, typical of bad importers

#

core v10 blinded modifies the users vision so beware, if you don't like that CPR has a setting that shuts off v10 blinded/invisible

#

You can also do world scripts if you don't want to install CPR but I already replaced them with CPR and forgot what they were

celest bluff
tribal prism
wide crystal
#

Hey guys, I'm trying to provide a bonus for as long as the character has temp health. What am I doing wrong here?

violet meadow
#

You cannot use that as you wish

wide crystal
#

Ah, thought it worked that way πŸ˜…

#

Does that only apply to Midi flags?

violet meadow
#

In certain flags you can use condition evaluation

#

But they should result to a simple true/false

#

You cannot use a condition like if true add 10 to walking for example

wide crystal
#

I see. So more like "resistance to acid if true" ?

violet meadow
#

More like advantage to attacks if that is true

#

system flags do not use conditions evaluation

wide crystal
#

OK. So I'm guessing automating this would mean entering macro grounds?

wide crystal
violet meadow
#

Hmm world script level macro

wide crystal
#

I don't even know what world scripts are and how they differ from other macros πŸ˜„ So I'll leave it at manually removing the effects.

violet meadow
#

Or if the onUpdateTarget DAE flags work, they could help as well

#

There was an issue last time I checked

digital lagoon
#

Couldn’t one just have it add 10 and then put something in the duration to end the effect when the temp HP is gone or is there no way to recognize that in the special duration doodads?

wide crystal
#

Nothing mentions temp HP in the dropdown.

#

How do onUpdateTarget flags work?

violet meadow
#

Essentially every time the effect's target is updated, you can run a macro. There are filters that you can monitor, so for instance if hp temp is not undefined do this

#

They can do what you want and there are some examples shared

#

Read the DAE readme

wide crystal
#

I'll have a read. Thank you.

violet meadow
#

But last time I checked in the latest iterations of Midi/DAE there are not working

wide crystal
#

Always worth a go.

#

Sorry, one more question, because I'm struggling to understand what they are: the optional.NAME flags. I assume NAME gets replaced? By what?

violet meadow
#

An example of updateTarget relevant

violet meadow
#

Use it if you have several optional bonuses on the same actor to differentiate

#

It will work without changing it too

wide crystal
#

Oh, so it just renames the bonus?

violet meadow
#

It's just a unique identifier which can be whatever you want instead of NAME

#

It's not something that can be seen by the user

wide crystal
#

Understood.

#

As always, thanks for your time.

#

Where does one "buy you guys a coffee", should he be so inclined?

violet meadow
#

Hahaha there is a link in my username profile, but no need. Just help others when you can and we call it even πŸ˜…

wide crystal