#MidiQOL

1 messages · Page 24 of 1

undone sorrel
#
const damageRoll = await new Roll("1d6").evaluate({async : true})    

await new MidiQOL.DamageOnlyWorkflow(
      actor,
      token,
      damageRoll.total,
      `${CONFIG.DND5E.damageTypes["slashing"]}`,
      [...args[0].targets],
      damageRoll,
      {
        flavor: `(${CONFIG.DND5E.damageTypes["slashing"]})`,
        itemCardId: "new",
        itemData: item,
        isCritical: false,
      }
    );

On Use Macro, on a regular dagger -> After Active Effects

violet meadow
# undone sorrel ```js const damageRoll = await new Roll("1d6").evaluate({async : true}) awa...
const damageRoll = await new Roll("1d6").evaluate({async : true})    

new MidiQOL.DamageOnlyWorkflow(
      actor,
      token.document,
      damageRoll.total,
      CONFIG.DND5E.damageTypes["slashing"],
      args[0].targets,
      damageRoll,
      {
        flavor: CONFIG.DND5E.damageTypes["slashing"],
        itemCardId:"new",
        damageList:args[0].damageList,
        //isCritical: false, //not needed as it is false by default me thinks.
      }
    );
undone sorrel
#

that did not work

#

that's the chat card I get

violet meadow
undone sorrel
#

seems that your is the same?

#

I'm assuming the second bubble is supposed to be the damage only worklow

violet meadow
#

indeed the damage only workflow

#

What do you want it to do?

#

Oh same Chat card as the original?

undone sorrel
#

is it not supposed to show the damage and roll? In the new chat card

violet meadow
#

I havent used that for some time thb, using applyTokenDamage. Let me double check some earlier macros in the v9 instance

vast bane
#

smite would be one to look at then

#

its a damage only

violet meadow
undone sorrel
#

wouldn't that add it onto the previous item card?

violet meadow
#

nope it does not

vast bane
#

there is a way to do something like that though, cause rage does that

#

rage places damage below the merge in the same card

violet meadow
#

Rage uses damageBonusMacro

undone sorrel
#

I know you can merge

violet meadow
#

Different story

undone sorrel
#

I do it with another macro

#

but this is booming blade so it can't merge

vast bane
#

ok I wasn't sure if that was what you wanted

undone sorrel
#

not sure why that worked but thanks for your help bugbear o7

vast bane
#

@violet meadow hate to say it but I think I just found a problem with the smite you made the other day

violet meadow
#

do tell

vast bane
#

Midi forces a conc check before smite can go, and the smite macro reads the conc check instead of the attack and throws an error

#

but also smites suppose to be part of the attack so the conc check should include both values

#

so it fails when the target is concentrating and midi auto concentrates

#

This is the error when you try to cast smite after the conc prompt shows up after the attack has happened

#

I also have no frikkin clue how to unhide MTB requests automated by midi after I borked my settings the other day

violet meadow
#

OK so workflow.
Paladin attacks a caster concentrating. Attack triggers con check.
Con check is a midicard and probably there is the point of failure.

You also need to add the smite attack to the original attack to trigger one concentration check?

Not doable without asking during every attack if you want to Smite, is my first reaction 🤔

vast bane
#

you could try to fix the no macro version to crit its other formula? but also...isn't that a bug?

#

no crit other that is

violet meadow
#

Do you have the snippet for the Smite?

vast bane
#

I get that save or do other is not suppose to crit, but if the other is rolled auto like smite would be, then it should crit

#

the no macro version just tells midi to roll other if the creature is undead/fiend, but when you crit...other formulas are not doubled

#

hmmmm wait a minute that wouldn't solve this either

#

have smite add everything into the damagebonusmacro maybe?

#

would hae to prompt the pally every attack, kinda tedious

violet meadow
#

You could though make a case for always prompting when the original attack is a crit!

vast bane
#

I dunno, my advantage reminder is lookin better every second lol

violet meadow
#

It would make sense then most of the time

#

I just have them roll after the fact and retcon the concentration check if needed

vast bane
#

I guess my advantage reminder is just ugly, but basically what we want, putting it into the same card

#

but its ugly cause I suck at macros

#

can you put an entire midi workflow in a roll button lol?

violet meadow
#

await MidiQOL.completeItemRoll()

#

Paladins... KnightClose 🔫

undone sorrel
vast bane
#

yeah that wouldn't work with AR though cause kaelad basically only lets basic [[/r X]] add to the situational bonus I think

undone sorrel
#

you can pass args[0].itemCardId but that is what joins the cards like I said earlier

violet meadow
molten solar
vast bane
violet meadow
#

Yes but still you want to do it after the successful attack

undone sorrel
#

either way I'm going to the gym so I'll have a look later, but something fishy is going on here 🐟

vast bane
#

by the time you see the damage popout, the workflows already active isn't it?

#

oh you mean not using AR nm

#

can you make 1 button do many button things?

#

like can a button roll 2d4 AND activate a macro?

violet meadow
#

What kind of button? On a Dialog?

#

in AR?

vast bane
#

just a roll button like my ugly advantage reminder

violet meadow
#

no idea, I don't use it. Are all these flags?

vast bane
#

1 flag

molten solar
#

why not?

vast bane
#

how would you seperate the different buttons inside the button?

molten solar
#

What do you mean? Can't you click more of them?

vast bane
#

I want to combine the spell slot macro inside the single click of say 1 2 and 3 level

violet meadow
#

What was the module? Inline Rolls?

#

Can you?

vast bane
#

but I can't just make a macro cause those buttons are just simply adding into that situational bonus

short aurora
#

If you can input a macro (like the one at the top), would make sense you can combine them

#

macros can do everythiiing

molten solar
#

I mean, you can just make one macro do as much as you want...

vast bane
#

yeah but the button for the roll is actually setup through advantage reminder to just add it to the situational bonus field, its not actually rolling in the chat

#

so we'd need to know how advantage reminder works yeah?

molten solar
#

My earliest rendition of Divine Smite was a dialog that expended a spell slot and rolled some dice. This won't work with AR, but you can have the dice instead be a damage bonus in an effect.

vast bane
#

I don't think that would work either though, the whole point of all of this is that it becomes 2 seperate instances of damage messing up midi's concentration checker

molten solar
#

No, just one damage roll

#

You apply an effect that gives a damage bonus - no rolls have happened yet

vast bane
#

yeah, I think that is identical to above what was said, and we said it'd be tedious but possible

violet meadow
#

Moto do you use the apply Damage Card?

vast bane
#

it shows, but its auto

violet meadow
#

Pff make it not auto

#

It stops with the No+Damage Card. Then the player can roll Smite

vast bane
#

ooooh I se what you doin there

violet meadow
#

and you deal with the damage

#

You apply once and its done

vast bane
#

problem with that is that is a dramatic playerside change and I live by the rules of our table, that'd require a vote

#

auto apply damage was like the whole point of midi for us

violet meadow
#

But it still automates everything. GM has the final say by clicking Apply. This is what I do

molten solar
vast bane
#

I automate the rest of midi though

#

I think the smite macro is fine for now, but its not going to be my solution. I think I'm sticking with my ugly advantage reminder. I don't know how to write macros and I do agree the best solution is probably a damagebonus macro but that would probably be too tedious on the paladin

#

sad thing is this is a great use case for roll groups

violet meadow
vast bane
#

but I can't change rollers lol

#

cause I don't remove buttons, and I don't fast forward, so when he sees he hits, or crits and wants to smite, rollgroups gives you many buttons to choose from right?

molten solar
#

It gives you what you set up. Simply installing the module does exactly nothing.

vast bane
#

was that not roll groups?

violet meadow
#

I would be afraid to sit there...

vast bane
#

what module added a bunch of damage formulas you could choose?

molten solar
#

Roll Groups

#

if you want to, and you set it up

vast bane
#

oooh could put like the whole smite sequence in versatile?

#

either way I can't do that anyway we're wasting brain power on this

molten solar
#

Just one session, Moto... 🤏

vast bane
#

just funny that basically everyone is doing smite wrong in midi

#

even the just make a spell smite folks are doing it wrong lol

molten solar
#

Especially those pitchfork

vast sierra
#

No, just the majority of us dont try to make everything omg push a button do 10 things 😉

violet meadow
#

I bid farewell to my v9 instance in ...10 ...9 ...8 ....... 🚀

vast bane
#

ultimately the answer to the newest smite is to just not roll the conc save, and manually resolve it

molten solar
#

My own Divine Smite solution is literally just the spell Ability Use Dialog but on a feature.

#

Because it is a feature.

#

And not a spell.

#

Divine Smite.

vast bane
#

yeah, that is the best solution but my pally player would dread a constant prompt for "do you want to smite?"

#

What if we never completed the weapons attack cause we're crazy and don't auto roll damage?

#

and the smite takes over the damage slot in the merge card?

molten solar
#

wat

violet meadow
#

I have an idea for a MidiQOL Smite 🤔

You will need to insert a timeout in the midi workflow before damage Roll while hooking on dnd5e attack roll something.
If the player Rolls Divine Smite in a given time, it will create a MidiQOL Dummy Workflow and use that results for setting the damageRoll

You will need to communicate it to your player that they might have a given amount of time to decide to use or not.

might ... work

molten solar
#

100% jank

vast bane
#

My life is jank, I breath jank

molten solar
#

you gonna remove someone's ability to smite cus they were coughing or having a sip of water?

violet meadow
#

snooze you lose

vast bane
#

well they can always after the fact smite

#

lord knows half of mididnd5e is retconning shit anyway lol

molten solar
#

retcon that edit

#

I ain't retconned nuffin in years

violet meadow
#

~~dnd5e ~~ D&D is about retconning anyway 🤣

vast bane
#

everyone forgets they had advantage so they could have crit fished

#

its a matter of the DM allowing it lol

#

I will propose what we have currently for the player on saturday and they will decide

#

either delay the conc check, or advantage reminder buttonalooza button-o-rama

#

@violet meadow actually fyi, the smite does fail still right now as is because the concentration prompt is getting in the way, I posted the error above, so you would need to make it ignore that conc check and go back to the last attack roll instead. Only fails with midi managing concentration and the target is concentrating.

scarlet gale
#

The example on the page is even for divine smite.

vast bane
scarlet gale
#

That's how I handle it

vast bane
#

also I think the problem with the premade smite was for some reason it was not respecting crit

scarlet gale
#

I make a fancy dialogue box, smite? Yes / no

#

Makes concentration checks accurate

violet meadow
#

This solution was proposed but understandably would become tedious over the time

vast bane
#

I think the midi sample item is setup to do that, but it fails to pickup the crit right

#

(in fast forward)

#

I dont' fast forward, so I see it in the popout erroring too, as crit is not highlighted

scarlet gale
#

Would be easy enough to fix the crit scaling

#

Check if it's a crit then double dice

molten solar
#

Why not just construct an actual DamageRoll

#

evaluate it, at the dice on top - crit or nah

scarlet gale
#

The damage only workflow effectively does that.

molten solar
#

dunno why you can't make a smite macro crit then. 🤷

scarlet gale
#

You can

vast bane
#

cause midi will not let you crit other fields

#

for fiend/undead, now I remember what was broken

molten solar
#

Because Other is not a damage field

vast bane
#

yeah we're using a midi activation condition to detect undead/fiend, and roll other

#

also roll other

scarlet gale
#

Have it check in the damage only workflow instead if it's an undead

vast bane
#

oh nm you are prompting before damage

scarlet gale
#

There is only one

#

I do the same for my college of swords bard

vast bane
#

and because you are inside the same workflow, the crit is right.

scarlet gale
#

Yep

vast bane
#

can you add funky flavors to damage formulas?

#

like non damage flavors?

scarlet gale
#

Can do anything with macros

vast bane
#

I was told long ago it would mess up damage

molten solar
vast bane
#

I want to flag the d8's that are rolling as fiend/undead and what level smite

molten solar
#

dice go all skittles like

scarlet gale
#

V9 midi I think uses it for DR

vast bane
scarlet gale
#

Iirc v10 does it differently

#

I would just edit the flavor instead

vast bane
#

🧠 What if I put the damage in the flavor too

scarlet gale
#

Way easier

#

Or make another message that yells what options they picked if it's that important

vast bane
#

yeah it screws up damage resistance/immunity darn, was just trying to do this:

undone sorrel
# violet meadow

Looking over it this is surely not the intended behaviour given the hit message and damage card are separate

#

I was looking at the source while here in the gym and it seems like to use the "new" option you must supply itemData, but iirc even in my testing that didn't work

#

I really think there's an issue here

celest bluff
#

ItemCard: "new"

undone sorrel
#

Yeah that's what I'm talking about

#

Using it doesn't show the chat card for DamageOnlyWorkflows for me

celest bluff
#
let itemD = args[0].item;
let damageRoll = await new Roll('1d4').evaluate({async:true});
let damageType = "whatever";
await new MidiQOL.DamageOnlyWorkflow(actor, token, damageRoll.total, damageType, [target], damageRoll, { flavor: `(${CONFIG.DND5E.damageTypes[damageType]})`, itemData: itemD, itemCardId: "new" });
#

the item data also depends on how you're grabbing it

undone sorrel
#

I'll check it out when I get home but what's the difference between args[0].item and item in an itemMacro. Don't they return the same result?

celest bluff
#

depends if one is giving item.data.data and the other isn't

#

item.data.data won't work, you need to be within the last data layer or system

undone sorrel
#

I thought item.data.data didn't exist in v10?

celest bluff
#

it does

#

backward compatibility is still there, you just got a ton of reminders to change over to item.system

#

what item are you referencing? the item used or a different one?

gilded yacht
#

Wasn't around but fixed in 10.0.19

undone sorrel
#

Item being used

celest bluff
#

then let item = args[0].item; is should be used

#

or whatever you want to call it

undone sorrel
#

Will check it out when I get home

#

Fingers crossed ig

celest bluff
#

it'll work, I use it in my macros and in v10 i saw no issues

undone sorrel
#

Was my guess that the itemData field is necessary true? Can I just leave it out? Specifically when using itemCard: "new"

celest bluff
#

it's a json entry, so = doens't work here

#

must be within an object array format {}

undone sorrel
#

That was just a typo

violet meadow
#

@undone sorrel itemCardId: "" vs itemCardId: args[0].itemCardId vs itemCardId: "new"

let item = args[0].item
let damageRoll = await new Roll('1d4').evaluate({async:true});
let damageType = "Slashing";
new MidiQOL.DamageOnlyWorkflow(actor, token, damageRoll.total, damageType, args[0].targets, damageRoll, { flavor: damageType, itemData: item, damageDetail: args[0].damageDetail, damageList: args[0].damageList, itemCardId: "" });
#
let item = args[0].item
let damageRoll = await new Roll('1d4').evaluate({async:true});
let damageType = "Slashing";
new MidiQOL.DamageOnlyWorkflow(actor, token, damageRoll.total, damageType, args[0].targets, damageRoll, { flavor: damageType, itemData: item, damageDetail: args[0].damageDetail, damageList: args[0].damageList, itemCardId: args[0].itemCardId });
#
let item = args[0].item
let damageRoll = await new Roll('1d4').evaluate({async:true});
let damageType = "Slashing";
new MidiQOL.DamageOnlyWorkflow(actor, token, damageRoll.total, damageType, args[0].targets, damageRoll, { flavor: damageType, itemData: item, damageDetail: args[0].damageDetail, damageList: args[0].damageList, itemCardId: "new" });
undone sorrel
#

Yeah idk to my eye none of those, except the middle, look like intended behaviour

#

@celest bluff I also tried it like bugbear did and got the same results as shown in their screencap. I also tried removing the damageDetail and damageList fields but got the same results.

coarse mesa
#

it's the long temp hp calc that wrecks everything, and we always have temp hp (twilight cleric)

cerulean ocean
#

how to I make the description of an item appear in chat?

vast bane
#

if clicking it doesn't expand it, then you came to the right place, if clicking it expands it....thats gonna be a lil bit more annoying to fix on your own

cerulean ocean
#

when I click info on the item it shows it in chat

#

but when I use the item it just shows the name

#

if I click it the desc doesn't show

vast bane
cerulean ocean
#

yeah that doesnt happen

vast bane
cerulean ocean
#

where do I find those settings?

vast bane
#

to be clear, this setting will make them show like mine

#

midi qol's workflow settings button

#

however, players are not going to see the description unless they setup their dnd5e system setting...or is it core, I forget, the collapse card by default setting in core or system.

#

I have collapse card by default on, so thats why my image above toggles them

#

its a client side setting so each player and the DM sets that on their end in their browser cookie

cerulean ocean
#

it worked for everyone!

#

thank you

vast bane
#

is there a way to apply an additional active effect if the target fails by 5 or more on a DC save?

The mummy targets one creature it can see within 60 feet of it. If the target can see the mummy, it must succeed on a DC 11 Wisdom saving throw against this magic or become frightened until the end of the mummy's next turn. If the target fails the saving throw by 5 or more, it is also paralyzed for the same duration. A target that succeeds on the saving throw is immune to the Dreadful Glare of all mummies (but not mummy lords) for the next 24 hours.

scarlet gale
#

Item macro to do additional checks

#

Actually an effect macro would work better

vast bane
#

Does anyone have an automated potion of poison? It doesn't have a real duration. You drink it and everytime you succeed, it reduces the damage it does each turn by a d6 till it is gone completely.

#

I don't think thats possible in overtime right?

scarlet gale
#

I'll take a look at that tonight, that sounds fun to setup with effect macros

vast bane
#

If you drink it, you take 3d6 poison damage, and you must succeed on a DC 13 Constitution saving throw or be poisoned. At the start of each of your turns while you are poisoned in this way, you take 3d6 poison damage. At the end of each of your turns, you can repeat the saving throw. On a successful save, the poison damage you take on your subsequent turns decreases by 1d6. The poison ends when the damage decreases to 0.

scarlet gale
#

Can probably have the effect macro change the overtime flag

#

Seems like the easiest solution

vast bane
#

you know, its odd, the way its worded...I almost think its not meant to mean you take 2d6 then 1d6 on saves

#

I think it means you roll 3d6 once, and you take that damage every turn, everytime you save, that first time you rolled 3d6, minus 1d6 from that

#

because of how its last sentence is written

scarlet gale
#

The damage application is at the start of turn but save is at end

#

Looks like it reduces when you save

vast bane
#

yeah, but I don't think it means reduces a dice count, I think it literally means you roll the damage once, and then every turn you take THAT damage, and the saves allow you to reduce THAT damage by 1d6. I dunno, its reall weirdly worded there

#

I dunno, I think it could mean either way

#

probably easier to reduce the dice count on saves

scarlet gale
#

yea ¯_(ツ)_/¯

vast bane
#

really weird that last sentence

#

also like every other dice reference in the book does the average syntax of a dice roll, and this one doesn't

#

hmmm, lookin at a digital source, I'm gonna go to the actual book

#

yeah thats a digital source thing for dice averages, the actual dmg doesn't do averages

#

Crazy idea for simple way to do this.....3 overtime effects dealing 1d6 each? when the saving throw is prompted by MTB, use the grabber in MTB as the DM for the first roll they make.

scarlet gale
#

I got a pretty good idea for it as long as you don't mind using effect macros

vast bane
#

I have it installed but never use it

#

but also, I'm a cowardly v9 user

scarlet gale
#

I'm on v9 for my game too

vast bane
#

Well then, I'm not alone on the island afterall!

scarlet gale
#

I have a local copy of v10 for testing and getting ready to transition to v10

vast bane
#

I'm still holding out for a more reliable active auras, but also kinda feel like waiting for 2.1 dnd5e may be wise too

scarlet gale
#

I'm in the same boat

#

I'm not happy with AA still

coarse mesa
#

Speaking of... what's going on here?

#

Every time I make a token with an Aura hidden/unhidden

#

I have no other scenes open... is AA going through all the scenes in my sidebar? 👀

vast bane
coarse mesa
#

yup

vast bane
#

are you on the active scene?

coarse mesa
#

yup

vast bane
#

you only have literally 1 scene?

#

or just 1 scene in the navigation tabs?

coarse mesa
#

only one in nav, quite a few in the sidebar

#

and yep that actor is in some of them

vast bane
#

thats probably it

coarse mesa
#

but why?

#

is that why AA is so slow?

vast bane
#

I get that alot when I'm on a different page I think

#

did the actor change size?

coarse mesa
#

it's going through all the inactive scenes and checking for that actor, doing updates there?

coarse mesa
#

I know I can do some cleanup, just want to know what's going on... should I be removing actors when we finish with a map?

#

I didn't think that would be necessary

#

I like to keep some old maps around (especially DotMM levels) in case we go back up a bit again

vast bane
#

move the sidebar scenes to a compendium so you aren't loading them

#

the sidebar scenes have all their data prefetched I think

#

removing them from navigation is just an organisational feature

coarse mesa
#

yeah I don't have too many in the sidebar now, just the ones we're likely to jump back to... just wondering what best practice is with AA if it's running updates on every scene all the time... like should we be deleting actors from scenes they're not currently on

#

eg we do tend to head back to Trollskull quite a bit

#

it's easier if you just have tokens already there

vast bane
#

I think theres an error in Hold Person in v9's midi sample items. Unless I'm misreading the readme:

Its missing removeCondition=. How does it know to remove it on save then?

Saving Throw: the entire active effect will be removed when the saving throw is made (or the effect duration expires)```

Is this suppose to say that its not needed if saving throws are already present?
coarse mesa
#

OK I've deleted all scenes except the currently active one... and it's still happening. Goodbye v10

vast bane
#

report it on kandashi's server so that kaelad and Mr. Primate can see it, cause theres only like 4 of us helping them test it, every feedback helps

#

also what version are you on, he dropped a new one today

coarse mesa
#

mine is a few days old

vast bane
#

If you can't find it easily its in kandashi's active auras channel

coarse mesa
#

yeah still happening, will report it

#

I popped it in the AA channel on K's server, seems that's where all the action is

scarlet gale
#

Uses effect macros to work, designed for v9.

#

If a player looked at the damage details of their potion of healing they'd notice something was up.

#

But beyond that, all the automation is handled in the effect macros for itl

#

On turn start:

let poisonedEffect = token.actor.effects.find(eff => eff.data.label === 'Poisoned');
if (!poisonedEffect) {
    effect.delete();
    return;
}
let stacks = await effect.getFlag('world', 'poisonStacks');
if (!stacks) stacks = 3;
let damageList = {
    3: '3d6[poison]',
    2: '2d6[poison]',
    1: '1d6[poison]'
};
let damageDice = damageList[stacks];
damageRoll = await new Roll(damageDice).evaluate({async: true})
damageRoll.toMessage({
    rollMode: 'roll',
    speaker: {alias: name},
    flavor: 'Potion of Poison'
});
damage = damageRoll.total;
let damageType = 'poison';
let targets = [token];
await MidiQOL.applyTokenDamage(
    [
        {
            damage: damage,
            type: damageType
        }
    ],
    damage,
    new Set(targets),
    null,
    null
);
#

On turn end:

let poisonedEffect = token.actor.effects.find(eff => eff.data.label === 'Poisoned');
if (!poisonedEffect) {
    effect.delete();
    return;
}
let stacks = await effect.getFlag('world', 'poisonStacks');
if (!stacks) stacks = 3;
let save = await token.actor.rollAbilitySave('con');
if (save.total >= 13) {
    stacks -= 1;
    if (stacks === 0) {
        effect.delete()
        return;
    }
    await effect.setFlag('world', 'poisonStacks', stacks);
}```
#

I should probably setup an item macro for it if they drink it out of combat

#

But at least in combat it works

late briar
#

Is there a way to make midi-qol ignore a status effect / condition on a target for certain attackers?

#

IE: homebrewing 5e Truesight / See Invisibility to also ignore any advantage / disadvantage from invisible targets.

vast bane
#

raw they will still have the condition so they still get the benefits, the spells that cancel it just cance the disadvantage

#

and this could be considered similar to a blur effect, sure you see them, but they are hard to hit

late briar
#

no, RAW Truesight and See Invisibility only cancel the portion of the effect that disallows targeting by things that require explicit seeing.

vast bane
#

and you could pull it off by making truesight give advantage to anything that has the condition "invisible"

late briar
#

Can I get the target as a variable in an active effect condition?

scarlet gale
#

This actually wouldn't be too hard of a worldscript to do

vast bane
scarlet gale
#

Edit the midi workflow to check if there is invisibility and truesight involved

late briar
#

Ahhh true

#

with a hook

#

does midi provide a list of advantage / disadvantage sources?

scarlet gale
#

You'll need to dig around the workflow

late briar
#

So I don't just cancel it even though they have disadvantage from another source?

late briar
scarlet gale
#

I do remember that there is an explicitly set disadvantage option from not being able to see the target

late briar
#

yep

#

hmm. are the activation conditions in midi-qol flags run as plain JS expressions?

tepid remnant
#

Hello again! So I know there's a magic-resistance flag, but is there a way to do stuff like gnomish resistance, where its only Wis, Cha, and Int saves that have advantage against spells?

vast bane
late briar
#

I might be a bit blind, but there is none

#

For things like Roll other formula, yes

vast bane
#

then put it in a macro with an if statement

#

have the on use be pre item roll, and have it give advantage to the next attack

#

alot of work to something you can resolve manually by not fast forwarding though. Just hold down the T key while doing a fast forward and it shows the popouts so you can change the default behavior

scarlet gale
#

This is how I have my gnome cunning setup

late briar
vast bane
scarlet gale
#

yep

tepid remnant
#

huh, I looked throw the flags and didn't see those. whoops

late briar
#

so, yeah but like thinking about this will turn me into a midi-qol master

scarlet gale
#

I'm making an item macro to handle them using it outside of combat

scarlet gale
vast bane
late briar
#

"Added effects (the source actors effects) to the available data in evaluating conditions, so a condition could be flags.midi-qol.disadvantage.attack.all CUSTOM effects.some(ef=>ef.label==="Restrained")"

#

well thats neat but what about non source actors, hmm xD

scarlet gale
#

I even set it up to auto remove the effect if they remove the poisoned condition

vast bane
# scarlet gale Pretty much

lol it looks waaaaaay more obvious if not fast forwarding lol, I wonder if there is a way to make it fast forward?

scarlet gale
#

oh crap lol

#

hmm

vast bane
#

I actually thik I know how to make it fast forward

#

the line that bugbear added to the smite, just put it in an item macro and have it fire before the item rolls

#

only problem is I deleted it last night

#

foundry.utils.setProperty(this,'rollOptions.fastForwardDamage',true);

vast bane
#

its suppose to reduce the dice roll by a d6 I believe?

scarlet gale
#

It shouldn't be doing that

#

that's odd

vast bane
#

maybe I need 2 people in the combat

scarlet gale
#

yea

#

Effect macros doesn't like only 1 in combat for turn starting

#

also if you make the initial save you don't do any other saves

#

to my understanding

vast bane
#

yeah that one I did -20 so it would fail

scarlet gale
#

now that I'm reading it, I think I need to check full damage save

#

instead of no damage save

#

but that shouldn't change the effect macro part

vast bane
#

wow this works amazingly man, good work

#

this potion did 100 damage to this poor bugbear before he cleared it lol

scarlet gale
#

wow

#

what was his con modifier? lol

vast bane
#

1 but kept failing lol

vast bane
scarlet gale
#

nice

vast bane
#

so maybe repost that for the folks who try to find it later, and add the item macro in?

scarlet gale
#

I have that already on for myself

#

but good to know for people like you

#

yea

vast bane
#

this is amazing, love it

#

didn't realize how deadly it can be, but players will have a better con mod

scarlet gale
#

About to make another update to the item that'll take care of rolling it's saves outside of combat

vast bane
#

It uses a regular roll option instead of monks token bar/LMRTFY fwiw, I don't mind cause I already have requestor so they are used to differences in roll requests

scarlet gale
#

Originally I wanted to have it request the roll

#

But I couldn't figure out how to do it using midi functions

#

So I just went with an auto-roll

vast bane
#

wow, food for thought, I bet you could totally handle cursed magic items via effect macro+warpgate

scarlet gale
#

Effect macro is great for warpgating stuff

#

on effect creation and on effect deletion is amazing

vast bane
#

is there on attune, unattune?

scarlet gale
#

that's effectively enabled and disabled effect

#

so technically yes

vast bane
#

ok I see what you mean, have it be a dummy effect that applies/disables and then warpgate in the item

#

you could also do this with the newest midi with the createitem thing

scarlet gale
#

not midi doing that

#

but yes

vast bane
#

oh its dae?

scarlet gale
#

one of the required modules for midi

#

but not midi itself

vast bane
#

yeah, I think effect macro would be more efficient as it would hide most of it like you did with the potion

scarlet gale
#

What you could do instead

#

is just have it as an effect macro on a Convenient effect

#

and just place it onto them when they drink the "potion"

vast bane
#

what I like about midi is the drag and drop so it would be alot faster to make the cursed item, while effect macro would be writing a bunch of stuff

scarlet gale
#

yea

#

the v10 way to add items tied to an effect is super nice

vast bane
#

just need to see if tposney can add an option for an effect to equip on attune

scarlet gale
#

it already does something like that

vast bane
#

maybe its there already I can't remember what the additional boxes were

scarlet gale
#

Transfer on equip effects are only toggled on if the attunement required item is attuned

#

otherwise they're added, but set to disabled

#

That might be v10 feature

vast bane
#

wow, so basically tposney just added what everyones been askin for for cursed items lol

scarlet gale
#

¯_(ツ)_/¯

vast bane
#

that is really cool, man I can't wait for v10 lol

scarlet gale
#

v9 already works similar for that

vast bane
#

would have to warpgate it in right

scarlet gale
#

an item with a effect that's applied on equip won't apply it until it's equipped and attuned

#

assuming it requires attunement

#

You can add this as an ItemMacro

#

to make it roll it's stuff outside of combat

#

no way to stop it until it's done

vast bane
#

@violet meadow Scroll up a few here and read our conversation on effect macro and dae's createitem idea for cursed items, I think you'd like it

scarlet gale
#

What we're doing isn't anything new

#

Having items apply effects while equipped or attuned has existed all of v9

vast bane
#

I'm talking about the item not being the actual cursed item, but a bait and switch effect, where once its attuned and the ae is enabled, the cursed item is created via dae OR warpged in via effect macro.

scarlet gale
#

oh gotcha

#

I don't think I'd use warpgate as a longterm item swap

vast bane
#

the dae thing, would be insanely easy to setup, effect macro not so much just cause of you know, macros take time to write

scarlet gale
#

Since one click of the remove mutation button on the actor sheet will undo your hard work

vast bane
#

can't you literally warpgate in a perm item? like just flat out get the uuid or whatever?

scarlet gale
#

oh sure

#

in that case yea, have the effect macro on the cursed item delete itself and place a new item on creation

#

a lot of setup, but I suppose it'll be fun to see at least once

vast bane
#

the dae method in newest midi could probably be very little setup time

#

and it could be a premade

#

drag out the bait and switch item and then drag the cursed item out onto it

#

also fyi, probably its cause of my setup, but the item macro doesn't work

#

I fail the save out of combat and it just does the initial damage

scarlet gale
#

about to do another update to it

#

also make sure it runs after active effect

vast bane
#

I think its cause I'm using it for the before the item roll thing

scarlet gale
#

yea

vast bane
#

yeah, so its good for most, just not for the slow guys like me

#

I'll just toggle combat on then for the rare times it happens

scarlet gale
#

Changed it to stop rolling if combat is entered or if the target runs out of HP

#

actually hold on

#

I just noticed

#

this will only work if you target yourself

#

let me fix the targeting

scarlet gale
#
if (!game.combat) return;
if (args[0].targets.length === 0) return;
function sleep(ms) {
    return new Promise(resolve => setTimeout(resolve, ms));
}
let actor = args[0].targets[0].actor;
let effect = actor.effects.find(eff => eff.data.label === 'Potion of Poison');
if (!effect) return;
let stacks = 3;
while (stacks > 0) {
    if (actor.data.data.attributes.hp.value <= 0) {
        console.log('Ending damage application.');
        await effect.setFlag('world', 'poisonStacks', stacks);
        break;
    }
    let save = await actor.rollAbilitySave('con');
    if (save.total >= 13) stacks -= 1;
    if (stacks === 0) {
        effect.delete();
        break;
    }
    let damageList = {
        3: '3d6[poison]',
        2: '2d6[poison]',
        1: '1d6[poison]'
    };
    let damageDice = damageList[stacks];
    damageRoll = await new Roll(damageDice).evaluate({async: true})
    damageRoll.toMessage({
        rollMode: 'roll',
        speaker: {alias: name},
        flavor: 'Potion of Poison'
    });
    damage = damageRoll.total;
    let damageType = 'poison';
    let targets = [args[0].targets[0]];
    await MidiQOL.applyTokenDamage(
        [
            {
                damage: damage,
                type: damageType
            }
        ],
        damage,
        new Set(targets),
        null,
        null
    );
    await sleep(500);
}```
#

There

vast bane
#

I bet you it would be possible to IF the item macro for in combat: utils command only, and out of combat, your item macro.

#

oh wait no, thats not the problem, the problem is that the utils needs to roll before

scarlet gale
#

you can add another macro to it

#

and just point it to a world script instead of the item macro

#

doing that means you could also apply that same macro to any other item you want to fast forward

vast bane
#

yep, nice I am gonna do that

scarlet gale
#

The only downside to the item macro is that it won't stop doing damage until they save 3 times or die

vast bane
#

the fast forward script only works on damage

vast bane
#

I can't use the macro out of combat cause I got a glitch, I tried to advance time in the calendar and its telling me I can't while an active combat is up, yet I have no active combats in my tab

violet meadow
vast bane
river urchin
#

how do i set it to apply the Other Formula damage if the target is fiend or undead?

vast bane
scarlet gale
#

I only check if combat is active

vast bane
#

however, your problem is probably your midi settings

vast bane
scarlet gale
#

I also realized that the item macro won't be able to remove the effect if the person uses it on someone they don't have permission of @vast bane

#

There are ways around that

vast bane
scarlet gale
#

Have the macro checked as run as GM

vast bane
#

wait, it requires args

river urchin
# vast bane

oh, i know that, sorry, my question is about how to write OR in the activation condition formula

scarlet gale
#

and instead embedding it in the item macro have the item call that macro

vast bane
#

we'd have to do what bugbear did with the shield bash

scarlet gale
#

for the macro

vast bane
vast bane
scarlet gale
#

So

#

Instead of ItemMacro

#

copy the macro from before and make it a world macro

#

then put the name of that macro in the box

vast bane
#

ooh yeah, but it won't work cause the GM is not going to have the other person targetted you need to transfer the args in the macro

#

and bugbear did it with a weird janky double macro

scarlet gale
#

yea

#

I have my own fix for it

#

if you want

vast bane
#

sure is it already in the above stuff or new post?

scarlet gale
#

gotta test it quick

#

I had it setup in my v10 environment

vast bane
#

k take your time, my server usually restarts between 6 and 630am est so I may be unable to test

#

for a few

vast bane
#

oh come to think of it bud, you could just use the midi smite sample items lol

#

but I think you want bugbears fixed version, cause of the no critting other formulas issue with midi

#

otherwise you'll never crit right

#

but bugbears version needs an edit to work around concentration interfering with the damage flow

vast bane
#

You may want to instead make two of the spells, one is normal smite and the other is undead smite and put the undead/fiend in the normal damage formula on the undead one to get it to crit right

river urchin
#

so it's just 1d8 for when there is an undead or something

vast bane
#

ooooh thats a good idea

#

nah still won't work right

river urchin
#

so my players can remember that and add 1d8 for when that rare occasion does come up

vast bane
#

unless the ae applies to self...

river urchin
vast bane
#

I think having 2 spells might be an easier solution for them, personally I handled it all in advantage reminder so it crits right

river urchin
vast bane
#

crits right, and doesn't cause weird conc checks in midi

river urchin
vast bane
#

zhell and bugbear took cracks at it, apparently the only effective fast forward method is to have every attack the pally does with an mwak prompt if they want to smite after the attack roll, tedious but best way

river urchin
#

i have it to auto roll and fast forward to hit, then they can add bonuses to the damage and press damage (which fast forwards)

coarse mesa
river urchin
#

uuh i'll tick that one

vast bane
river urchin
#

lmao

#

macroless smite let's go!

late briar
#

but that box was ticked in the midi-srd item and it didn't do anything xD

#

at least it definitely didn't work for me

coarse mesa
vast bane
#

the no macro version works now right

#

I still like my advantage reminder one just cause its all in one damage card lol

coarse mesa
#

I still like my vintage Zhell macro one

vast bane
#

it does not critical other

#

unless you turn off the activation condition settings

#

I can't even get the critical other without fast forward going, I hit critical, but its still just 1d8

coarse mesa
#

Ah maybe it’s fixed in v10? Seemed to work for that earlier poster

vast bane
#

so bottom line, I've put too much time into this smite feature this week, as far as I'm concerned, Advantage reminder is the best solution for a single card damage workflow that works with critical and concentration checkers(In v9)

#

for fast forward purposes, you probably want bugbears version but he needs to fix how it looks at the last roll, cause if you hit a caster that is concentrating, the last roll is a concentration check

coarse mesa
#

Yeah that’s why I wanted all the damage on one roll, also with hunters mark going

late briar
vast bane
#

And the expend a spell slot button is just a blank spell card

#

the divine smite macro is me testing the above stuff and realizing why its broken, deleting it now

late briar
#

How did you do that? With the writing into the field

vast bane
late briar
#

Just Return a number in... Oh

vast bane
#

advantage reminder for 5e module

#

you cannot fast forward if you want to use advantage reminder with midi

narrow saddle
#

I’m not 100% sure where to ask about this so I’m coming here too.
I’ve got a player who’s character has been cursed so that they cannot regain hp until said curse is lifted.
Is there a macro or something that can remind the player whenever they try to add hp that this curse is in place.
We sometimes can go a few sessions without combat and I’m sure we’ll forget at some point.
Possibly one for modules or macro?
Or even a bab with an aura that negates any healing or potion rolls to zero 🤩

vast bane
#

If you were a roll20 dm with api usage, advantage reminder kinda in a way feels quite natural to use

late briar
#

I know which module. Was just confused whether you grabbed the window in a macro to write there or if it is inbuilt

late briar
vast bane
#

its an active effect you put on the actor, or on a feature, or on a spell, or whatever that then prints stuff out on their popouts

late briar
#

So even advantage reminder is amazing in itself

vast bane
#

I was trying to help kaelad add a bunch of premades into the module but I been really distracted

late briar
#

Then there is midi, which causes you to want to automate everything xD

vast bane
#

eh, don't have to turn every button in the midi settings on

#

my main table just wanted automated damage application

late briar
#

Yeah thats very neat

#

Can you add explanation / labels to rolls in the bonus field with advantage reminder?

vast bane
#

that way its not so oversaturated with text

late briar
#

Yeah

#

Like /roll 1d8[Bonus against undead and fient]?

vast bane
#

no need to remind them if they just literally can't lol

narrow saddle
#

Thank you 🙏

vast bane
#

will be different key in v10, replace data with system

#

you might still be able to use the old core healing though so beware

#

I think its just midi methods that are blocked

scarlet gale
#

@vast bane Ok I have the fix

#
let tokenId = args[0];
if (!tokenId) return;
let token = await canvas.tokens.get(tokenId);
if (!token) return;
let actor = token.actor;
let effectName = args[1];
if (!effectName) return;
let effect = actor.effects.find(eff => eff.data.label === effectName);
if (!effect) return;
effect.delete();
#

You'll need to make a world macro with the 2nd macro I just posted

vast bane
#

I can't test out of combat till someone gives me the macro to kill combat

scarlet gale
#

Name it Chris-DeleteEffect

#

and set it to run as GM

#

that should fix permission issues with removing the effect

vast bane
#

I think you mean world macro right?

scarlet gale
#

Yea

#

as for your combat

#

Open console and type console.log(game.combats)

#

and paste what you see

vast bane
#

servers rebootin

scarlet gale
#

honestly that may fix it

#

maybe

#

I didn't touch your combat

#

however

#

I just think you have a stray combat open somewhere

vast bane
#

yeah I think at some point in a live session I left it open in a scene, and I guess it bugged out

#

I went to each scene to check, but no combat

scarlet gale
#

we can figure it out by checking your game.combats One of the values will be the scene ID

#

and you can do game.scenes.get('id here')) to find the scene info

vast bane
#

yeah, I have the machine set to reboot when its inactive and it does a bunch of maintenance so its gonna be a few

scarlet gale
#

That should be the final fix for it

#

I tested it pretty well before adding it

#

I should do a re-export

molten solar
# vast bane

Somehow I doubt this will work with hit dice rolls and long rests.

violet meadow
#

game.combats.forEach(combat=> { combat.delete() })

#

Or something like that Moto

vast bane
#

the servers still rebootin I got it in the queue to do but I'm still waitin

molten solar
# scarlet gale

You got an icon on that item that no longer exists on most people's installation.

scarlet gale
#

v9

#

¯_(ツ)_/¯

#

Would have to change the effect macros on it to update it for v10

violet meadow
#

As we are in MidiQol thread, why don't you use executeAsGM socket to delete the effect?

vast bane
#

smart people move the dnd5e icons back so they don't have to edit 1000 icon entries in macros ;p

scarlet gale
#

Don't icons get migrated during the update?

vast bane
#

but you can move em back after hehe

#

and after each subsequent update

scarlet gale
#

If you want to double up on space

vast bane
#

eh they are tiny, thats what I did cause I have warpgate macros calling icons and stuff

scarlet gale
scarlet gale
#

Do this

violet meadow
#

Moto just nuke all combats

vast bane
#

whoa, I did the delete thing and got like 30 console errors lol

#

good?

violet meadow
#

Seems like it

scarlet gale
#

probabbly

vast bane
#

yeah its good time can move again

violet meadow
#

If I were to hazard a guess, a stuck overtime effect on a combat

vast bane
scarlet gale
#

Also updated the item macro to use midi-qol effect deletion.

vast bane
scarlet gale
#

If you drink it, you take 3d6 poison damage, and you must succeed on a DC 13 Constitution saving throw or be poisoned.

#

Doesn't say anything about no damage on save.

vast bane
#

oh shit I just noticed that, this whole time I been doin it wrong

scarlet gale
#

Just gave a kobold 300 health to test it out on

#

Poor thing nearly lost half it's health

#

This item is deadly for low con creatures.

#

@vast bane You can swap out line 23 with:
await MidiQOL.socket().executeAsGM("removeEffects", { actorUuid: targetActor.uuid, effects: [effect.id]});
Then you don't need world macro.

jagged cairn
# vast bane

How is the [expend spell slot] macro looking like?

scarlet gale
#

I'll re-export my v9 item actually

vast bane
#

I dragged this completely blank spell out to the hotbar and then dragged that hotbar macro to an advantage reminder ae lol

#

I'm sure someone in macro polo could do it better, but /shrug

scarlet gale
jagged cairn
#

Kek, i was curious if you could have a fully working smite without having it be a spell item

vast bane
#

the problem is that advantage reminder doesn't really have the api I think to let you do a complex button there

jagged cairn
#

v10

vast bane
#

zhell has a smite macro that is a feature that calls item level prompts

#

but the problem with smite in a nutshell is that you either make the pally prompt EVERY attack whether they want to smite, or you seperate the smite from the attack and risk issues like 2 conc checks and issues with matching crit in fastforward

jagged cairn
#

Right, didnt midi have a shortcut to auto-crit?

vast bane
#

but also, crit other is broken in v9

#

There is a keyboard shortcut for it, but imo advantage reminder is still superior lol its the cost of a popout, but its always right

#

but you talkin to the wrong dude, I'm the weirdo who doesn't fast forward with midi

jagged cairn
molten solar
#

I don't use Midi

vast bane
#

thats the other issue lol

jagged cairn
vast bane
#

advantage reminder is great cause it reminds me a TON of the roll20 sheets

jagged cairn
#

But its kinda weird having half of my stuff automated and half not

vast bane
#

alot more lite programming

molten solar
#

It's an Item Macro that brings up a dialog and rolls a proper damage roll, triggering all the relevant system hooks, expending a spell slot of your choosing beforehand, and can easily let you crit and roll an additional die. That is all.

jagged cairn
vast bane
#

crit other works in v10 man, you can use tposney's divine smite, its the v9 smiters that have an issue

molten solar
#

It's on github.

jagged cairn
molten solar
#

ye.

jagged cairn
vast bane
#

v10 midi has a sample item that does that, it just fails to combine to prevent double concentration checks

#

we were only fiddling with the v9 one, cause in v9 crit other is broken

molten solar
#

(crit other is not broken, that's literally the intended function lul)

jagged cairn
#

Curious, why not update to v10?

#

Some broken module?

#

Compat?

vast bane
#

v10 midi lacks support for all of our premades till active auras and active token effects is updated\

#

I'm not breaking my back converting all of it to babonus or effect macros when I can wait a lil longer for kaelad/mrprimates versions of those two modules, theres no shiny features in v10 that I can't wait for

jagged cairn
#

I took a lot at ATE yesterday and its been a while since its been updated, its the author planning to do so?

vast bane
#

theres a module called midi srd that gave all us novice non Javascript writin folks premade stuff that we just dragged and dropped, and its mostly broken in v10 till those two modules are updated

jagged cairn
#

Im really looking into some module that lets me tweak token ligthning with effects

vast bane
#

ATE and Active auras are being picked up by 2 new authors I believe

#

there are test versions available, ATE is mostly functional

vast bane
#

To be fair I think midi srd is just final, he made it so it would not have to be carried over as world compendiums

violet meadow
vast bane
#

Kinda excited to see whats done with create item in those

violet meadow
#

For ATE and Active Auras, go to the Releases section on the right hand side and grab the .module.json from there.

vast bane
#

I'm gonna go get the right version links for my paste next time

violet meadow
vast bane
#

As far as I can see, ATE was quite stable, plugged and played right into midi srd stuff in v10

violet meadow
#

Indeed seemed OK when I did some quick testing

vast bane
#

the problem I have with macro method is it only modifies the canvas actor while an ae on a linked actor effects all instances

#

moving the players to a new scene, the macro would reset and the timer on torches and lanterns would too

#

plus they'd have to retrigger them even if you put the timer on a detached ae

#

but also all the midi srd's with the ate entries built into them

jagged cairn
#

Ahh, i run into the "effect not available" stuff with the ATE version you dropped

#

When i try to use the effects from consumables

vast bane
#

what consumeables?

jagged cairn
#

Is there a workaround?

#

Like a lantern

#

Torch

vast bane
#

oh you are trying to use lighthud aren't you?

#

they are not the same module

jagged cairn
#

Nope

#

Just ate

#

effects

#

linked to the items

vast bane
#

dfreds should just work bud, it doesn't check your inventory

#

yeah don't use the premades that came with ATE, hes just updating the functionality, those items are all probably broken

jagged cairn
#

Actually the pre-mades from Dfreds dont work either

vast bane
#

use the premades that came with dfreds

jagged cairn
#

Lol, when i use the dfred effects it losses the attributes on the effect

vast bane
#

what is your ate version

jagged cairn
#

4.0.2

vast bane
#

its working for me

jagged cairn
#

Effects coming from spells work fine

#

But when i pop them from cosumables

#

"Effect is not available"

vast bane
#

show me a snippet of the item you not able to get to work

#

again, I don't know what that consumeable thing is, thats not ate

#

thats probably a supplemental module?

jagged cairn
#

No, just and item with the consumable tag

vast bane
#

ATE gives you flag/keys you can use, and I think they also slightly changed in v10, but dfreds picks them up

jagged cairn
vast bane
#

but thats not ate for the record

jagged cairn
vast bane
#

whats the error in the console?

jagged cairn
#

No error

#

Just puts the effect on the "not available"

#

section

vast bane
#

@violet meadow watch this gif, you see the bleeding glitch? wtf is that lol?

vast bane
# jagged cairn

your problem is not a bug, its a feature, equip your lantern 😉

#

and if that doesn't do it, then your module that does handle it, is not v10 ready, thats not from ate

jagged cairn
#

xDDDDDDDDDDDDDD

#

Ur right

vast bane
#

I also retract that, there is an ate compendium of items, but the problem was equipping not a bug

#

I don't use the items I use dfreds toggles

#

like the image above, only I set them all to status markers and let the players toggle them on:

jagged cairn
#

On my end it just puts a dummy effect without attributes

vast bane
jagged cairn
#

Just the effects that use atl attributes

vast bane
#

show me what you mean

violet meadow
# vast bane

Yeah I've seen something similar. Like the effects' icons "dropping" from the sky!

jagged cairn
#

This is the effect on CE

vast bane
jagged cairn
#

When i apply it

#

Attributes are gone

vast bane
#

I don't see an error so I dunno how to help him see it other than my gif

vast bane
vast bane
violet meadow
jagged cairn
vast bane
#

I think he showed us the dfreds equipment folder lights, but because he had a v9 ate installed when he updated, dfreds threw a fit and gave him empties

#

if he refreshes I think it will fix it

jagged cairn
#

Restarted foundry still the same

vast bane
#

hmmm can you show us the dfreds menu? where you are trying to apply them?

violet meadow
vast bane
molten solar
vast bane
#

effects do, if you use ate

violet meadow
#

?

molten solar
#
  • which probably just runs a script every time you create a token whose actor has the effect 🙂
vast bane
#

so if you use a macro, its affecting just that token, while the ate effect will carry over to all tokens of the players

#

so the players aren't toggling on tokens everytime they load into a scene, its continuous from their viewpoint

molten solar
#

Same effect as if you ran the macro manually, presumably.

vast bane
#

and the ae handles the timer of the torch and the oil flask and such

vast bane
#

I wonder if lightshud ate works now that ate is v10

violet meadow
#

I cannot understand there is some disconnect.

Create a DFreds CE. Use Effect Macro.
Put that in Effect Creation ```js
const updates = {
"alpha":0.25,
"color":"#ffffff",
"dim":50,
"bright":10,
"animation":{"type": "pulse", "speed": 3,"intensity": 1},
}
//gather the initial data and createMacro in the "never" with a context to be grabbed in the deletion
await token.document.update({"light":updates})


Put that in Effect Deletion```js
const updates = {
    "dim":0,
    "bright":0
}
await token.document.update({"light":updates})
molten solar
molten solar
violet meadow
#

Why a "new" token? I was just copy pasting it to a new scene 🤷

molten solar
#

That's a new token. 🤔

#

But sure, that does copy the light

#

Different from dragging the actor to the scene for sure

violet meadow
#

Hmm how does MATT teleport? 🤔

molten solar
#

If they're smart, by copying

violet meadow
#

I would think so, so I don't see any reason that this would not work.

vast bane
#

oh shit I didn't know cut and paste carries over

molten solar
#

cus you do want all temporary changes to the tokenDocument when you 'teleport'

violet meadow
#

lol I might start packing some MidiQOL related items macros in EM.

EM "never" is the new ItemMacro 😄

vast bane
#

dude look at Chris' potion

#

that is some legit cool way to hide a potion of poison

#

If you do my trick along with it to fast forward for the folks who don't fast forward, you don't know you are drinking a poison potion till its too late

#

its all in the effect macro

#

and the out of combat version is in the item macro

#

how long till we get an on use option to use an EffectMacro lol

scarlet gale
#

on use is just on creation

violet meadow
#

I mean you could bundle it all in an ItemMacro

scarlet gale
#

yea

#

my potion has it in both

#

the itemmacro for out of combat and the effect macro for in-combat

molten solar
#

If a tree falls in a forest an idea is proposed on Discord but no one is around to hear it posts it on Github, does it make a sound exist?

violet meadow
#

But EM makes it easier to write simple macros instead of a DAE format for "on"/"each"/"off"

scarlet gale
#

Yep. I hate the DAE way.

#

Effect macros and using the origin for item data is the best

violet meadow
#

Not hating (at all as it has been servicing all of us well for so much time!!), just different implementations

molten solar
#

It was made to do one thing only, and to make that one thing convenient. Glad it was successful. 👍

scarlet gale
#

99% of the time I use it to warpgate features onto actors NGL

jagged cairn
#

Guys, is there a non-macro way to have an effect, transfer other effect?

violet meadow
#

There are more or less the same arguments provided, with different ways to access them. args[args.length-1].origin is the same for DAE

molten solar
violet meadow
#

I was showing it explicitly 😄

#

now I am on .pop(). Baby steps

molten solar
#

But pop modifies the array

violet meadow
#

who cares by that point 😄

#

I get my lastArgs anyways and I can still use the rest as args[i] if need be 🤔 🤷

#

Ah yes, an issue might present itself, in case you bundle an onUse macro and a DAE one, in the same (Item)Macro.

You would need to end up calling lastArgs.macroPass === "phaseType" instead of args[0].macroPass === "phaseType" as args[0] would be gone

#

so at(-1) it is 😩

scarlet gale
#

I should probably find a better way to handle the spell slot selection in the macro, but it works.

vast bane
#

bookmarking this for v10 update incase they revisit how they wanna handle it when we are changing our versions.

#

I just wasted most of my time today fiddling with active auras in v10 lol, I should be adding 5 recipes to the druids herbalism mini game

vast bane
#

its wise to have said feature in a compendium I believe so you don't delete the source item and cause this ae to fail to work anymore

#

another method is to just take the premade dfreds CE macro and fire it as an item macro changing out the entries for bane for whatever dfreds CE you want to add

#

unless dfred changed the example AE name from bane...lol he wouldn't do that though

jagged cairn
#

How would you do the searing smite spell?

#

Where you transfer a "on-fire" effect after a succesfull hit

scarlet gale
vast bane
#

@lost estuary we just finished that macro, fwiw we started with a version in macro polo. I'm in my v10 build right now, I can't share it. It requires MTB, Advanced Macros, and Midi qol though. I'll be moving back to v9 shortly to share it if someone else don't before me, its the bugbear shield bash macro basically that hes looking for, with different values.

vast bane
jagged cairn
#

ofc

vast bane
#

one is in the sample items, and its just a matter of changing it to work for the other two's efffects

#

He has branding smite in the sample items

#

isn't searing smite just a damage over time?

jagged cairn
#

So, you get a 1d6 fire damage

#

on your next melee attack

#

And after that

vast bane
#

I feel like I have that already made.... I'm jumping over to v9 to check

jagged cairn
#

The target gets on fire

scarlet gale
#

Midi overtime effect

jagged cairn
#

Yes, what im asking is, after applying the 1d6 damage

#

how do you tranfer

#

the "on-fire" effect

scarlet gale
#

have 2 DAE on the item

#

one that applies to self

#

the other that applies to the target

#

the target one being setup to have overtime

jagged cairn
#

Yes but to apply the on-fire effect they have to hit with the melee

#

They can miss

scarlet gale
#

It won't apply it on a miss

vast bane
#

I swear I had it but I guess I don't

#

oh duh, wrong smite

scarlet gale
#

Now that I'm thinking about it

#

that one works funny doesn't it

vast bane
#

the special duration is important

#

requires times up, dae, midi

#
// Modules Required - Item Macro, MIDQOL, Dynamic Active Effects
// Card settings - Target & range: Self
// DAE settings - [1] flags.dnd5e.DamageBonusMacro / Custom / ItemMacro.Searing Smite [2] flags.midi-qol.brandingSmite.level / Override / @item.level


if (!["mwak","rwak"].includes(args[0].item.data.actionType)) return {}; 
if (args[0].hitTargetUuids.length === 0) return {}; 

let selected = await MidiQOL.MQfromActorUuid(args[0].actorUuid); 
let DC = selected.data.data.attributes.spelldc;

for (let tokenUuid of args[0].hitTargetUuids) {
    const target = await fromUuid(tokenUuid);
    const targetActor = target.actor;
  
         const effectData = {
        label: "Searing Smite", 
        icon: "icons/skills/melee/strike-sword-steel-yellow.webp",
        changes: [
          {key: "flags.midi-qol.OverTime", mode: 0, value: `"turn=start,saveAbility=con,saveDC=${DC},damageRoll=1d6,damageType=fire,label=Searing Smite" `, priority: 20}, 
                ],
  
        origin: "Searing Smite", 
        disabled: false,
        icon: "icons/skills/melee/strike-sword-steel-yellow.webp",
        label: "Searing Smite"
      }
      await MidiQOL.socket().executeAsGM("createEffects", { actorUuid: targetActor.uuid, effects: [effectData] });
      await ChatMessage.create({content: `${target.name} is set on fire and begins to burn!`});
} 
Hooks.once("midi-qol.RollComplete", (workflow) => {
    console.log("Deleting concentration")
    const effect = MidiQOL.getConcentrationEffect(actor);
    if (effect) effect.delete();
    return true;
})

const spellLevel = actor.data.flags["midi-qol"].brandingSmite.level;
return{damageRoll: `${spellLevel}d6[fire]`, flavor: "Searing Smite"}```
#

Item macro ⬆️

jagged cairn
#

lemme test

vast bane
#

oh this totally won't work for you

#

its a v9 macro

scarlet gale
#

It'll technically work

vast bane
#

wait for one of the smaht folks to fix it for you lol

scarlet gale
#

but should be updated

vast bane
#

it has data's

#

won't that fail?

scarlet gale
#

v10 has shims

#

that yell at you if you use them

#

but still works

vast bane
#

I think my special duration is redundant

#

btw thats not my work, obviously, its probably bugbear, or one of you guys, you know who you are

#

Will an item export work between v9 and v10?

molten solar
vast bane
#

up right? 9 can be given to 10?

lost estuary
#

@vast bane Though, I am on V10

vast bane
# lost estuary Please do share!

Ok I can't share you exactly what you want, however, this should be editable by you to do what you want. It requires monk's token bar and I think advanced macros/dae/midi.

This first thing is an item, a feature that goes on the actor and it initiates a taunt, and attempts to apply a named buff on the bad guy if they win the challenge. But it requires a folder macro to be set too that I will import next...

#

this next one is a macro, a folder macro, and you need advanced macros I think to even get this right:
The first item I gave you, has an item macro that is calling THIS macros name, so make sure if you tweak names that you fix them where they are called.

#

if you did it right, this thing initiates a MTB skill challenge between target and selected, and if the initiator wins, it tries to apply an ae. However, the default ae in this thing I just sent you, you definitely don't have. You should be able to change it to grappled or whatever your condition is called

#

these are v9 items so chance theres an issue, open the console and show us the errors when it fails

#

The item macro is essentially designed to send the args/target info to the GM logged into the session, and the main macro(folder macro) is running a macro as a GM using the args

#

I plan on adapting this for shield bash from the shield master feat

jagged cairn
#

Currently it sets it to being passive

#

And it doesnt show up on the token

#

Macro works fine btw

lost estuary
#

how would i add 1d8 to this:

vast bane
#

in the ae its suppose to apply

#

you'd basically be replacing my empty custom ae name, with an active effect that you make in dfreds

#

I don't know the exact way you do damage in ae's I wanna say damagesomething?

#

someone here will chime in

#

oh wait, I think its in the other guys thing lol, the searing smite ae has it

vast bane
#

which maneuver again?

#

let me look it up in the book

vast bane
# lost estuary how would i add 1d8 to this:

there is a sweeeet version of all the battlemaster stuff in v9, in the more automated spells, feats, and items module, but its not v10 ready. You could install a v9, copy the compendium, and see if macro polo would be willing to help you if what I gave you doesn't work.

acoustic jasper
#

can you give disadvantage only to 1 weapon? (if my player is dual-wielding)?

vast bane
acoustic jasper
#

that's not what I'm asking

vast bane
#

you just can't use the damage mod on the second weapon

acoustic jasper
#

I'm asking if I can use Midi to give my player a disadvantage for only 1 of his weapons

vast bane
#

with an itemmacro probably

lost estuary
#

failing here: if(!game.dfreds.effectInterface.hasEffectApplied(${attacker.name}, target.actor.uuid))

violet meadow
acoustic jasper
#

oh yeah you're right

vast bane
#

oh shit

#

does v10 let you execute as GM guys?

lost estuary
vast bane
#

well wait, it should work if you are testing it as the GM though

lost estuary
#

i am

vast bane
#

Does that ae exist in dfreds?

#

in my game, that ae is the players name

lost estuary
#

I think the issue is that i do not know how to edit that to use DFFreds GRapple

vast bane
#

cause I have their token icon as an AE

#

to tell me who the monster is mad at, cause its a taunt key

lost estuary
#

let me edit it

vast bane
#

hmmmm let me look at the bane example, thats tricky cause we're using other stuff

lost estuary
#

Trying this if(!game.dfreds.effectInterface.hasEffectApplied(Grappled, target.actor.uuid))

vast bane
#

I don't think you want backticks but we'll see when you test it

#

I think the backticks were being used to get around the double call effect

violet meadow
#
if(!game.dfreds.effectInterface.hasEffectApplied('Grappled', target.actor.uuid))
vast bane
#

yeah regular not backticks like I had bud

#

see how his ' is different

lost estuary
#

actually, there are two things. its looking for an effect to be applied, not sure why

#

I want to edit the "Apply this effect line

violet meadow
#

hmm can you share the actual macro?

vast bane
#

you actually probably want it to add an effect called Grappling Strike, and make grappling strike in Dfreds do the grappled condition AND 1d8 damage right?

late briar
#

aren't ' and " the same for JS, but ` are for string interpolation / formatting?

lost estuary
#

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

const skilltoberolled = target.actor.data.data.skills.ath.total < target.actor.data.data.skills.acr.total ? "acr" : "ath";

results = await game.MonksTokenBar.requestContestedRoll({
token:attacker,
request: 'skill:ath'
},{
token: target,
request:'skill:ath'
},{
silent:true,
fastForward:false,
flavor: ${attacker.name} tries to grapple ${target.name}.,
callback: async () => {
const attackerTotal = results.getFlag("monks-tokenbar", token${attacker.id}).total;
const targetTotal = results.getFlag("monks-tokenbar", token${target.id}).total;
if (attackerTotal >= targetTotal) {
if(!game.dfreds.effectInterface.hasEffectApplied(Grappled, target.actor.uuid)) {
await game.dfreds.effectInterface.addEffect({ effectName: Grappled, uuid: target.actor.uuid});
ui.notifications.info(${attacker.name} successfully grapples ${target.name})
}
}
else ui.notifications.info(${target.name} resists the shove attempt from ${attacker.name})
}
});`

#

Im butchering it i know, but thats how i learns.

late briar
#

${target.name} resists the shove attempt from ${attacker.name} is probably not a valid string

vast bane
#

Its your work bugbear

late briar
#

I think you messed up your formatting though

violet meadow
late briar
#

ok he was faster

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

const skilltoberolled = target.actor.data.data.skills.ath.total < target.actor.data.data.skills.acr.total ? "acr" : "ath";

results = await game.MonksTokenBar.requestContestedRoll({
    token:attacker,
    request: 'skill:ath'
},{
    token: target,
    request:'skill:ath'
},{
    silent:true, 
    fastForward:false,
    flavor: `${attacker.name} tries to grapple ${target.name}.`, 
    callback: async () => {
        const attackerTotal = results.getFlag("monks-tokenbar", `token${attacker.id}`).total;
        const targetTotal = results.getFlag("monks-tokenbar", `token${target.id}`).total;
        if (attackerTotal >= targetTotal) {
            if(!game.dfreds.effectInterface.hasEffectApplied(`Grappled`, target.actor.uuid)) {
                await game.dfreds.effectInterface.addEffect({ effectName: Grappled, uuid: target.actor.uuid});
                ui.notifications.info(`${attacker.name} successfully grapples ${target.name}`)
            }
        }
        else ui.notifications.info(`${target.name} resists the shove attempt from ${attacker.name}`)
    }
});
vast bane
#

put a JS after the first set of 3 backticks

#

js

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

const skilltoberolled = target.actor.data.data.skills.ath.total < target.actor.data.data.skills.acr.total ? "acr" : "ath";

results = await game.MonksTokenBar.requestContestedRoll({
    token:attacker,
    request: 'skill:ath'
},{
    token: target,
    request:'skill:ath'
},{
    silent:true, 
    fastForward:false,
    flavor: `${attacker.name} tries to grapple ${target.name}.`, 
    callback: async () => {
        const attackerTotal = results.getFlag("monks-tokenbar", `token${attacker.id}`).total;
        const targetTotal = results.getFlag("monks-tokenbar", `token${target.id}`).total;
        if (attackerTotal >= targetTotal) {
            if(!game.dfreds.effectInterface.hasEffectApplied(`Grappled`, target.actor.uuid)) {
                await game.dfreds.effectInterface.addEffect({ effectName: Grappled, uuid: target.actor.uuid});
                ui.notifications.info(`${attacker.name} successfully grapples ${target.name}`)
            }
        }
        else ui.notifications.info(`${target.name} resists the shove attempt from ${attacker.name}`)
    }
});
vast bane
#

so he wants to apply an effect that applies the grappled condition on success, and also a damage only workflow

#

I dunno, this kinda seems like it'd be better to do like searing smite

#

is it really suppose to grapple challenge?

lost estuary
#

Yes and it adds the bonus

vast bane
#

Immediately after you hit a creature with a melee attack on your turn, you can expend one superiority die and then try to grapple the target as a bonus action (see the Player's Handbook for rules on grappling). Add the superiority die to your Strength (Athletics) check.

lost estuary
#

This is actually working right up until the point that its supposed to apply the AE

vast bane
#

it fails because you don't have the ae made yet

lost estuary
#

So, I envision this. The player attacks and hits, cool.
Then the player rolls this maneuver. and bam its doing all the things in this macro

violet meadow
#
await game.dfreds.effectInterface.addEffect({ effectName: "Grappled", uuid: target.actor.uuid});
#

change this

lost estuary
#

do i need that AE, or can it just apply the preconfigured DFreds grapple on a fail.

vast bane
#

whatever the name of dfreds is, is what needs to be in that

#

but thats not what you ultimately want

lost estuary
vast bane
#

you want to also do 1dwhatever superiority dice damage to them

violet meadow
#

Just replace the js await game.dfreds.effectInterface.addEffect({ effectName: Grappled, uuid: target.actor.uuid}); with ```js
await game.dfreds.effectInterface.addEffect({ effectName: "Grappled", uuid: target.actor.uuid});

vast bane
#

so it needs to be a custom dfreds CE that adds grappled, but also does damage

lost estuary
#

thats alreadying working via an AE that applies to Character on roll and expires after next ability check

#

Yes, quotes

vast bane
#

oh ok

violet meadow
#

The macro was probably failing there.

vast bane
#

so all you needed was the automated skill challenge?

#

it always fails the last flavor line, I dunno whats wrong with it

lost estuary
#

holy crap it works beautifully

vast bane
#

yeah its pretty dope

#

I'm making taunts, shield bash, and insight checks with it

#

good to know it carries over to v10 well, good workmanship @violet meadow hehe

lost estuary
#

im going to try and change the last line to flavor.

violet meadow
#

to be 100% safe for v10 change to this ```js
const skilltoberolled = target.actor.getRollData().skills.ath.total < target.actor.getRollData().skills.acr.total ? "acr" : "ath";

#

will work both v9 and v10

vast bane
#

yeah I dunno man, it never shows lol I gave up thats why it doesn't even make sense for a taunt, I could never see it

lost estuary
#

Heres what i am trying:

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

const skilltoberolled = target.actor.data.data.skills.ath.total < target.actor.data.data.skills.acr.total ? "acr" : "ath";

results = await game.MonksTokenBar.requestContestedRoll({
    token:attacker,
    request: 'skill:ath'
},{
    token: target,
    request:'skill:ath'
},{
    silent:true, 
    fastForward:false,
    flavor: `${attacker.name} tries to grapple ${target.name}.`, 
    callback: async () => {
        const attackerTotal = results.getFlag("monks-tokenbar", `token${attacker.id}`).total;
        const targetTotal = results.getFlag("monks-tokenbar", `token${target.id}`).total;
        if (attackerTotal >= targetTotal) {
            if(!game.dfreds.effectInterface.hasEffectApplied(`Grappled`, target.actor.uuid)) {
                await game.dfreds.effectInterface.addEffect({ effectName: "Grappled", uuid: target.actor.uuid});
                flavor:`${attacker.name} successfully grapples ${target.name}`
            }
        }
        else flavor:`${attacker.name} grapple attempt is resisted by ${target.name}`
    }
});
vast bane
vast bane
#

cause its meant for a str/dex challenge

#

I think you have to backtick the skilltoberollled?

#

bugbear would know

#

or you may need to wrap it like the red ones

#

replace the targets ATH with skilltoberolled

#

then the macro will smartly pick the right attribute for the defender