#MidiQOL
1 messages ยท Page 12 of 1
Yeah that is not possible to do without some voodoo magic
That can be done with Active Auras and OverTime actually ๐
voodoo magic ๐
Actually ๐ค Would need a macro, didn't realize it required a reaction for each damage instance
But still technically doable
The creature moving in the Aura's radius (Active Auras module) can trigger a dialog pop up asking the original caster/source (Requestor) if they want to roll use ~~for ~~the reaction and if yes grab the original item, modify it and complete and ItemRoll with MidiQOL ๐
Fun but not something I can do now ๐
Requestor is not a bad idea, I was thinking Warpgate
Biggest problem is spam from alies moving ๐
Ah you will filter the aura to enemies only
So it will not create the DAE on them, which will trigger the macro Requestor on the on phase
Thus fun lil project ๐
Could you not set the Detail to "enemy" specific
Gees thanks for all the input. That is crazy. I might have to ping a youtuber for a video of the chaos lol
Are you on v9 or v10
v10
So the active auras and a macro route is out
There is a patch for V10 AA
This is more of a DAE question than a Midi question, but what is the following option in the Item card's effects tab supposed to do:
(This is on v10 btw)
Puts the AE on the source actor instead of target even if the item doesn't target self
It doesn't seem to be working as far as I can see...
Ah hold on, it looks like someone may have already raised a bug for it: https://gitlab.com/tposney/dae/-/issues/339
Hey guys, did a search for automating temp hp gains by using Overtime, but no idea how to use it.
How would I get a potion (item) to roll 1d6 and apply that as temp hp?
V9 - 5e
so would it heal 1d6 multiple times?
Just the once
like a temp hp potion
I fell into the trap of using normal AE to apply temp hp and its was temp hp permanently ๐คฆโโ๏ธ
If it just applies once, just make the item roll 1d6 of temp healing damage type and don't use an ae
Well that's what I tried but it wasnt applying it
Maybe I have my basic item setup wrong :/
OK - So looking at my Midi settings, I have dont auto apply damage on. The players prefer to apply their own damage. Is this the same setting that is preventing me from auto healing/temp hp healing? and if so, is there a way to automate the healing but not damage by any other means?
Healing is basically a damage type, so will still require clicking the buttons if not auto applying
Yeah ok, that makes sense. Sorry for the wasted time
You would choose temp hp as the healing source temphp
You could also probably get an item macro made in macro polo since you literally want to bypass midi that would totally be in their wheel house over there, normally we show up there wanting help with midi. They could write you a direct temp hp heal probably very easily.
blank out the item and just roll the item and have the macro set to fire as an on use macro.
Looks like the person that originally reported this has closed the issue, as it seemed to resolve itself after they reinstalled Midi. Weirdly, it's also now working for me. I haven't changed anything apart from installing Item Piles...
sometimes weird bugs just need the cache reloaded or maybe it has to do with the ordering of module loads and libwrapper who knows
Hi guys, I have a minor issue with the automatic integration of the Ghast's Stench ability through Active Auras and Overtime. When I set the ability as shown in the screenshots and it's the target's turn, the target makes a saving throw and the poisoned status disappears. But just a blink later the status is back. Any ideas what I did wrong?
Its an active aura, nothing in there has told the system you are now immune to it
I think that is macro territory
maybe there is an overtime setting let me check
Yeah I got nothin
you can fire a macro on damage event in it, but not on save afaik
Thanks @vast bane. I thought if the target makes its saving throw (first point on the effect page), the next steps are not triggered. I was hoping I could do without a macro this time... ๐
You should be able to setup an applyCondition check for an active effect
you would need to have it run a secondary macro which applies an active effect on success
You mean within the Overtime structure like applyCondition=poisoned?
applyCondition=expression, if present must evaluate to true or rest of the processing will be aborted.
e.g.
Is it possible to run a macro when concentration is lost?
Trying to run some cleanup and delete some tokens when a certain actor has lost concentration
warpgate macros with midi do that don't they?
Hell even templates go away now automatically in midi
Using warpgate to spawn things, they didn't disappear when it was lost - so maybe I've missed something
My summons dismiss on conc loss but I use a warpgate macro
is midi managing your conc?
My macro is messy AF and I do recall having it made to put an effect on the caster that when it ends, the summons dismisses
(WG itself is system-agnostic, it does not know what 'concentration' is)
Yeah I think you need to put a buff on yourself when you summon
something something effect macro ondelete
or that, that works too
hell theres probably something in dae that'll do it too
Also do you know that theres settings in warpgate that if you turn them on, lets players dismiss summons?
Yes
I mean them not you silly, I know you know, you probably are the one that told me ;p
Yeah heh, I'm just trying to get it all to happen automatically, but there are a lot of moving parts ^^
I can share you the macro, but it is really messy and I know zhell won't like what it looks like lol
you could maybe hack out the bit you want
That would be neat!
oh duh, I can't, my server is inaccessible, in a few!
And I've dealt with my fair share of unsavoury JS, I doubt it will phase me ^^
I'm a different world with a player in it I can't drop them.
I can't...I can't access folder macros across all worlds right?
Check the DAE flag deleteUuid
I think thats what you did in my ugly macro bugbear
I think so
Actually find the spiritual weapon example in MidiQol sample items compendium and use that as a guide!
If memory serves, warpgate.spawn returns an array of id string right?
Or a tokenDoc? Don't remember now
Array of token ids.
const ids = await warpgate.spawn(...);
const uuids = ids.map(id => canvas.scene.tokens.get(id).uuid);
concentration should shift the macro into the off position if a DAE macro when removed
So to make sure I am understanding here:
const summoned = await warpgate.spawn("Flaming Sphere", {embedded: updates}, {}, {});
if (summoned.length !== 1) return;
const summonedUuid = `Scene.${canvas.scene.id}.Token.${summoned[0]}`;
await caster.createEmbeddedDocuments("ActiveEffect", [{
"changes": [{"key":"flags.dae.deleteUuid","mode":5,"value": summonedUuid,"priority":"30"}],
"label": "Flaming Sphere Summon",
"duration": {seconds: 60, rounds: 10},
"origin": args[0].itemUuid,
"icon": "icons/magic/fire/orb-vortex.webp",
}]);
This is the example from DAE deleteUuid. I can see how this would remove the summoned token if the actor was removed, but I don't see the connection between it and the loss of concentration or spell end.
Oh don't construct the uuid yourself...
const [summoned] = await warpgate.spawn("Flaming Sphere", {embedded: updates});
if ( !summoned ) return;
const uuid = canvas.scene.tokens.get(summoned).uuid;
etc etc
Just map, then. As above.
Yep just a word of caution ๐
Oh is origin the trigger
I personally write out the updates within the..
const lastArg = args[args.length - 1];
let tactor;
if (lastArg.tokenId) tactor = canvas.tokens.get(lastArg.tokenId).actor;
else tactor = game.actors.get(lastArg.actorId);
let summonTarget = "whatever";
if(args[0] === "on"){
let updates = {
actor: {
"flags.summons.actorId": tactor.id
}
}
let options = { controllingActor: tactor };
await warpgate.spawn(summonTarget, updates, callbacks, options);
}
if (args[0] === "off") {
let findToken = canvas.tokens.placeables.find(i => i.actor.data.flags?.summons?.actorId === tactor.id);
if (!findToken) return {};
await findToken.document.delete();
}
there's more commands but the gist
Players can't delete tokens.
they can if they own em
You sure
Um isn't that a permissions?
options says so
Ah, v10? ๐
I swear I saw that in the permissions list in core foundry
I got confused since your macro is all v9 syntax
Crymic, players can't delete tokens in v9.
Literally the reason Warp Gate directs .dismiss to the gm.
Do they get control permissions via the warpgate spawn function?
It would already be controlling the one who spawns I mean
hmm I've none of these issues in my game
All it does is minimize your character sheet while spawning. ๐
you're probably executing all the macros as GM
Is it possible to have multiple flags.dae.deleteUuid? So when an effect goes it removes multiple entities
I actually don't trust my players with an easy access delete button like a keyboard key
you seem to have put it in the changes array
so signs point to yes
const lastArg = args[args.length - 1];
let tactor;
if (lastArg.tokenId) tactor = canvas.tokens.get(lastArg.tokenId).actor;
else tactor = game.actors.get(lastArg.actorId);
let summonTarget = "whatever";
if(args[0] === "on"){
let updates = {
actor: {
"flags.summons.actorId": tactor.id
}
}
let options = { controllingActor: tactor };
await warpgate.spawn(summonTarget, updates, callbacks, options);
}
if (args[0] === "off") {
let findToken = canvas.tokens.placeables.find(i => i.actor.data.flags?.summons?.actorId === tactor.id);
if (!findToken) return {};
await warpgate.dismiss(findToken.id, game.canvas.scene.id);
}
There that's better
I didn't know if there is some funny interaction with the key
There are never funny interactions in midiqol, its a feature not a bug
Not a fan of using a non-module, non-world scope for the flag
and you can just flag the token document, not the actor. Much easier, and you don't end up with an actor in the sidebar with a huge amount of nonsense flags
const concentration = casterToken.actor.effects.find(x => x.data.label === "Concentrating");
if (concentration) {
await concentration.data.update({ changes: [
...concentration.data.changes,
{"key":"flags.dae.deleteUuid","mode":5,"value": token.uuid,"priority":"30"}
]})
}
Not the prettiest solution, but it works!
Thanks for the help :)
Don't update inside the data
What is the correct way to do it?
I am yeah.
const conc = casterToken.actor.effects.find(e => e.data.label === "Concentrating");
if (conc) await conc.update({changes: conc.data.changes.concat({
key: "flags.dae.deleteUuid",
mode: CONST.ACTIVE_EFFECT_MODES.CUSTOM,
value: token.uuid
})});
Interesting. That's a lot cleaner.
Your method would work, but would lose all changes soon as you refreshed, left the game, or whatever.
and would be local, only.
Depending when this update is happening, you may encounter issues of "Concentrating" hasn't resolved yet
I see! I've definitely had some misunderstandings of how this all works then. Thanks for the explanation.
Only time you update directly on the inner data is when the Document does not exist yet, like in a preCreate hook.
I'm fairly sure that by the time this code is run concentration would have already resolved
I would create an AE from the spell with the DAE deleteUuid as a flag
Would that apply to a preUpdate hook as well?
That way when concentration gets deleted that AE will too
yeah thats what my warpgates do, they put an ae on the caster and the conc knocks the buff off
No. Just manipulate the update object directly there.
๐งน hahahahahahahahahaha ๐
Hi guys I need a little help.
I want that my players can see my Rolls (with ghost dices) and chat messages with ??? instead of nothing
Right: DM Screen Left: Player
I want they can see this
instead of nothing
I try in a different game with no midiqol and works, so must be some Mdiqol configuration
but I couln't find wich
There's a midi setting in the main midi qol page, something like actually hide private rolls or something like that
midi takes rolls and sends them in its own methods, I believe your second image is a module doing the same as a whisper, but since whatever module that is does not work with midi it has nothing to send the player
does actually hide private rolls work for both types of whisper rolls?
hahaha
if you use dice so nice, I think there is a way with midi to pull off something like what you want in a cooler 3d way
I ll save that image as wallpaper
Image still missing FRBD. ๐
what is frbd?
I feel like Cub and Dfred should be in it too just for their own issues lol
Does it work at all with any of them? Like you can combine it with RG?
RG and FRBD are made to work together.
Yeah that'd be a long set of letters though
call it 'ferbderg', it's fine.
Ive run cub and dfreds together without issue for over 8+ months, stop the hysteria, Moto :p
I think you just made that cannon lol
Thats true. You can easily use them together
Nuanced but I do too, its not about running them together its about both managing status effects that becomes naughty
you can run BR and Midi together if you do things right in the older versions
Which goes back to.. install modules that YOU know what they do/ what you need them for. If both are true, then it's not an issue ๐
yeah but ghostbusters memes are more fun to share
This is why 50% (no hyperbole) of my modules are my own, can't be bothered reading long READMEs. ๐คฃ
If i could code, I couldnt agree more ๐
it's fine, just uninstall all your modules and use mine instead. They are preapproved by me. No issues, can't go wrong.
Pro midi beginners don't read the readme anyway ๐ we fiddle till we break something and then post in dnd5e and get beat by a broom into here
In the distance, eye rolling measuring on the Richter scale.
Not reading a readme should just get you a broom beat anyways
Its the Circle of Life
I think I read warpgate before midi and I didn't even have warpgate at the time
cause a midi macro said something about warpgate, so I went to its site lol
Normally I'd wince at installing an entire module because "a macro said I needed it," but at least WG is a library...
actually it was the description in a spell
Well people are like I need better roll chat messages or automatic rolling of damage go MidiQol and then all heel hell breaks loose ๐
They'll need custom footwear.
Better roll was not intended in there ๐
Does any other roller combine them like midi to save on space?
RSR does, and I think Calego has one too, not sure.
cause honestly, that was the most jarring thing was just how so damned spammed vanilla dnd is
and v9 had Calego's Compact Roll Cards which was just some css to make all rolls smaller
Wonder if dual chatlog displays would be a thing, one for templates and another for chat messages
never gave it any thought tbh. I've been subjected to Beyond20's hellish roll cards back in v8 so now I love the core cards.
I started with Mars 5E that I really liked, then I saw MidiQOL flags for automatic saves etc and the rest is history ๐
Already a module somewhere, I think
I dunno how you guys deal with things but in our group we use discord to talk out loud, and then they use chat to communicate while the RP'ers are talking
but rolls can often drown it out
I think that noone uses chat in my game
My players don't talk over each other ๐
Or if they do it doesn't register with me ๐
oh ours don't either but we don't have cams so the waiting to speak can be a bit
Raise my hand module
We don't either. Never been an issue.
But then, not a lot of text-chat going on during combat so the blend of chat and rolls isn't an issue
Some of the examples I can think of is 2 players on turn 8 and 9 are typign to each other for a request to combine turns with a combo move, and I'm dealing with turn 4's rolls and narration verbally
Make them Whisper to each other
I have private Discord channels for each 2-set of players
You can use the whisperbox or something I think
the message output is still in chat, I actually have that cause I like the whisper ping sound for midi stuff lol
I have that module installed, don't even use it, just for the whisper for various other modules
That might be an idea for a module
Whisper to a client and pop a message like a dialog in the middle of the screen!
oddly not the first time this week I've said something that sparked a creator to think of doing something lol
whoa whoa whoa, lets not say middle of screen
Use Requestor. Set scale to 50.
I don't want to be the blame for that bad juju, popups in center are bad
where core puts the roll advantage/damage popouts is where popups should go, you don't put that stuff in the center of peoples clickable canvas space
Well true but that way they WILL see it
also arguably you want popups/outs to go relatively in the same space for UI comfortability, that way mouse clicks aren't so far apart in workflows
thats why I really like where the target thing goes for warn no target dialogue, but then reactions are in the center
I'm not saying put everything where the core popups are, but slightly off
You mean the midi warning?
The notification warning?
not the warning, the late targeting thing
kinda looks like the reactions prompt but its in the bottom right
Late targeting goes in the middle, no?
I don't have it on by default but whenever I used it it would show up to the left of the chat window ยฏ_(ใ)_/ยฏ
send help
atleast the close is there
Barely
They might see it
now do one where the mouse cursor is as big
Screenshot it please next time you see it. I am curious now
@molten solar Dialogs always pop up in the middle of the screen, correct?
You would need to provide your own template of something to change position?
Or CSS?
I think you can just pass options to it
does the setting refresh the browser on toggle? I'm 25 minutes out from start time and my players have been fiddling with sheets and Downtime activities and I don't wana screw up anything they are doing
Hmm I have to check it
Depends on the dialog.
core is to the left of chat, dnd5e's stuff is dead center in the way of canvas work
midi is afaik in a few spaces
new Dialog({buttons: {}, content: "", title: "..."}, {left: 0, top: 0}).render(true)
I know requester Requestor was going in the top left when I was using it for my mini games
Where you triggering another dialog ?
Might have been close to center but it was definitely above resource window
That usually happens when there is a bug with the UI. It goes in the center unless you specify otherwise.
it was that initiative macro I wrote with your help, I reused it
Ah
cause I suck at making things from scratch, I cut and paste
ok majority of them are on break before start so I'll tweak the setting and give you a screeny now lol
And then I am off to play with FormApplication
to be clear, I like this
I only have it off cause my players didn't want late targetting box
Hmmm I like it too but when I am triggering it via a macro it goes to the middle
At least was when I last tried
I can't do FTC now to see if its me
V9 or 10?
I can in a few hours
V9 ofcourse
I like it because our eyes gravitate to the new chat messages anyway
the view space in the center is where we usually aren't dealing with chat stuff, but are doing vtt management
obviously this is very much a style choice
Ok I can see something in your screenshot that might be the reason why but I cannot try it
๐ ?
The macro that needs to become a module ... Loadout
I messed with thrown weapons too now.
My brain hurts
So many cases
to be clear, reaction prompts and other prompt things in midi are in the center\
its just the late targeting thing thats down there
wonder if it remembers where I put it
Ok there might be a midi choice that I would support.
I just use late targeting for specific macro cases only so it might have something to do with that
I wanted to use it but a few of my players prefer not to have it so they can attack without a target in weird situations
for things like attacking a door
I find it too invasive for my taste so I keep it only for specific cases, like Chaos Bolt or reactions that get a target other than original etc
Alright I gotta go silent for session guys, good chat!
Have fun
AH that's the one then and not Whisperbox!
WhisperBox works too ^^
Wait then this is not true: <#1010273821401555087 message> ?
Will test later
Well both have it in chat, and both have dedicated areas for whisper history ๐ค
So not in the middle of the screen ๐คท
Sorry if this is not the place for issues, I'm having a strange issue where if a longsword damage is ever rolled, it rolls a random d4 along with it. Only happens with midi enabled. v9 foundry
Search effects tab on the character sheet for any Active effect that adds a 1d4 bonus to mwakwhich means melee weapon attack
Or check if bless adds an AE on the actor
Or check the special traits on the character sheet for added universal bonuses to attacks
Aha! it was that one! Thank you!
I have been able to build and add itemMacros to items, and feats but I seem to be having issues with spells. So I thought I would simplify and see what I was missing. I pulled this very nice macro from Vance Coles page and attached it as a itemMacro to my custom Guiding Bolt spell (yes I know I don't need the macro to add the light effect, but I thought it would be a simple test). It does not appear to be firing the macro at all, nor is it throwing a console error. I suspect the itemMacro is configured correctly in MidiQol as they are working for items etc. I'm sure it will be something stupid and I would appreciate any help.
I don't know JS so can't help much there. Personally I'd just use tmfx or or AA for an animation. But you can always check the console for errors when rolling this guiding bolt
What does your ItemMacro settings look like? Also V10 or V9?
V9
At a glance things look correct, make sure there is no excess space after/before ItemMacro. Also have you tried setting it to the "After targeting" timing and seeing if it still happens?
I'll check
No excess spaces and After Targeting didn't change anything. This one is a head scratcher
Tried re-creating the item on a fresh item? ๐ค
I'll build a fresh spell and see what happens
The midi qol sample loh item seems to be forcing a locked pool of value and I need it to be multiplied by 2, it keeps resetting his pool back to vanilla
he has a feature that doubles the pool and the item macro keeps resetting it back to normal
callback: (html) => { resolve(-Math.clamped(Math.floor(Number(html.find('#mqlohpoints')[0].value) / 5) * 5, 0, available)); }
can I just put a * 2 on the end?
after * 5
since pemdas goes left to right that should work right?
I don't think that line is supposed to reset the total ๐ค
No joy. I'll keep playing around with it
shit then I dunno why it keeps resetting on him
Have you checked if the item has any AEs?
could it be the class doing that?
yep it was an ae
thanks man
there was an ae I never bothered to look at
Np, I had created one for my artificers feature that scales on int, then when I gave them an upgrade to 2*int I had forgotten about it and could not figure out why I couldn't change it for the longest ๐
So just speaking from experience
Who has a quick "make hex work and transferrable" option?
Can check mine out if you want https://www.patreon.com/posts/lay-on-hands-61887734
just updated it
I have both hex and hexblade written
The ddb importer module comes with a decent hex pre-setup. It works well enough, you need to re-cast it to move the it to another token. But that's easy enough to just click don't use spell slot.
It seems that the macro was written for a DAE item macro call and not a midi-qol on use macroโฆ
How do you set flags.midi-qol.sculptSpell to 1 on an actor.? I've just watched the Macros 101 tutorial so understand the data structure and basic approach. Lots to learn ...
Normally you just edit the feature that gives them then (Sculpt Spell normally) and give it an effect that's set to transfer to actor on equip. In the effect set the flag flags.midi-qol.sculptSpell Override 1
You can still use DAE item macro calls.
Just don't apply a ItemMacro with midi-qol and let DAE do it from the effect flag. It should import with it pre-setup that way.
Actually now that I'm looking at it
It looks like it's using the usual way to do a midi-qol itemmacro.
Looks like it's working for me as-is.
Awesome, thank you, that works. All of the allies targeted take no damage. ๐
Just fyi if your templates are setup to target stuff inside of them by default
Your player will wind up accidently using their feature on enemies a bunch
There is a midi-qol setting that changes that.
Oh? Could you elaborate?
Got a new problem. I'm designing a custom spell that's basically 1d12 of necrotic damage in a 30' radius. I'm using the JB2A tentacles animation via automated animations. The animation is applying to every target rather than just in the initial template area (every token has a 30' radius animation).
Double check what this is set to
I'm using DF Template Enhancements (which has a toggle that the player can turn on and off), but you may want to set it to none.
When you are placing a template is it also targeting them by itself?
Ah, DF Template Enhancements addresses players accidentally using ?
Yes. I had it set to "Walls block - ignore defeated"
No
DF template enhancements is just another module I'm using. Ignore what I have in that box.
You may want to set it to none. So templates don't auto-target inside of them.
Or if you like how it currently is
Just make sure the player knows to un-target enemies when they're placing their template.
Or they'll wind up sculpting spells around an enemy.
Right. Thanks! Now I'm just stuck with an animation problem.
What spell is it?
It's a Wild Magic surge from the Barbarian Path of Wild Magic. I'm creating a spell effect. 1d12 necrotic damage in a 30' radius to opponents. I followed the design of the Circle of Death spell (same idea, way more damage). And I've used Automated Animations successfully to trigger the black tentacles vid. But the area effect animation is rendering around each targeted opponent.
so there are multiple 30' radius vids
They have their own Discord and might be able to help you here.
That's not something I'm super familiar with I'm afraid.
thanks. sorry, slipped into another mod ๐
It may actually be a midi-QOL issue. The animation only duplicates if you attempt to sculpt spells first by targeting allies. If you just place the template without sculpting, the one area of effect video plays, as expected. I imagine there's no easy fix.
Is it a macro that does the animation?
The auto target by templates works with sculpt spells, not sure what Chris is referring to, but I very definitely have the auto target setting and that is the whole point of the flag, when you have them pretargeted, when the auto target of templates happen, the game recognizes and remembers your allies uuid's and gives them an auto save and damage immunity briefly as the spell is resolved(they still make saves so it can seem like its failing but its not)
Can I set one account to not require targets?
I have a player who is using the worst method of trying to view foundry and he has to have canvas turned off so he can't target anything, I really don't want to confuse everyone else with a target system change for everyone, is there a way to let just them roll without targets?
I've had issues with it. Could be another module interacting with it I guess.
0 damage applied when it saved
Maybe it doesn't work with DF Template Enhancements?
it may need disposition set
Pre target/Post TargetT
you only had one creature in the aoe
probably doesn't have the right flag
flags.midi-qol.sculptSpells yes?
Oh interesting
It's only the first save I make after loading in
that's really strange
No, I removed combat booster because it was causing issues
There was a known bug with those two where initially a dropped tokens first ability rolled would not read updates to bonus' right or something, just sounded like your issue kinda, but nm. I think he patched it anyway, I fixed it by manually editing the versions I have.
yea, I was the one to originally report that to him on here lol
the v9 branch I think he patched it quietly by just editing the existing version
even though he didn't ever update the v9's after he moved on
yeah he did
Found the message lol
Oh cool
But I still don't have it on
so it's something else
we are
but he did say, if I see anyone with the issue, tell them to reinstall
At the time I was told it would be fixed in v10 only
But I'm sure others wound up having the same issue
Either way, I don't have it right now
so I need to figure out what other module is causing this one
could also be midi settings
v9 or 10?
@gilded yacht when other modules are set to auto delete templates in v9 midi/dae, the debuff on the caster that is the template is staying on.
Sorry for the ping Tim, I stupidly did not update, I was 2 versions behind on both. Newest does not do this.
My module that auto removes fireball is an automated animation checkbox on a global recognition setting
v9
I think I figured it out
I just assumed it was the autotargeting with templates
It looks like after placing a template it targets them
and the next time I place a template it counts them as being targeted for sculpt spells
but if I remove the target then do it
it's fine
when I do the process.
- I pretarget
- Roll the item, and place the template
- There is a breief moment between this step where everything untargets and then the template targets them all.
- Roll damage, roll saves
- See damage card show the saved folks
there is a moment where nothing is targeted between pretargets and template targets, it looks like something is doing something then
yes people stay targeted
you have a setting on that lets you edit template targets
it counts them for sculpting right
you pretarget befire you ever cast the spell
I'm trying to make it not be pre-targeted
and that's the issue
I'm forgetting to untarget after the template places a target on them
so the next time I do an AOE, it's counting it as someone I want to sculpt spell on
Place template with nothing targeted, everything works correctly
but at the end
it does mark everyone that was in the AOE targeted
so if I do another AOE
I need to untarget first
that is not how that works, I will screen to gif it for you
no you don't need to do that something is screwing you up, probably a module
yea
I'm searching for any other modules that would be doing that
running find the culprit now
I'll figure it out
its probably one of the remember targets settings or you have targets only in combat or something
Could be
you just leave them all targeted
then cast the spell, and as you get the template placement, thats when your pretargets all poof, and you lay down the template and they all target and resolve
I was using lightning bolt, and no
I placed more stuff down
it does appear to be removing targets before placing the template
but
the ones that saved are taking 0 damage as though they were sculpted
are they immune to lightning?
nah
I narrowed it down to a module
yep that fixed it
I had a module that was doing stuff with targeting
and disabling it stopped all my issues
But back to what you were saying before for Combat booster, it got ninja updated?
(for the v9 branch)
yes, that weird glitch is definitely gone now where the first attack or spell would be missing prof and mod
you could either do what he told me to do or just manually install it over your existing or just install the latest v9, he ninja updated so it will appear to be the same version as anyone who had it before
he edited the manifest of the already listed final v9
Oh, I may need to force re-install that one
Since I'm already on the "current" version
that wasn't patched
yeah like he says in that conversation I linked, he literally tells me to suggest to folks still having the issue to just manually install it over the existing
yeah, it has its weird glitch itneractions with other modules but it is so good on dm QOL
yep, my players didn't use it much
but from the DM side it's so nice
My bug report to the dev was a month before your message to him you linked. Hope you didn't waste too much time troubleshooting the same issue over again.
Pretty sure there is a midi-qol setting to not require targets. Not per person however.
Might be able to just remove the targeting requirements on just their abilities.
Nope it's a global setting, always/never/in combat are your options and they apply to everyone.
~~Actually I think it needs to be
const uuid = canvas.scene.tokens.get(summoned).document.uuid;
```~~
This is an item on use macro via item macro. It fails to apply the condition properly. It used to work just fine, when I first made it. I do not see any error messages. I believe the problem is the players can't use it? How do I make that work?
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:${skilltoberolled}`
},{
silent:true,
fastForward:false,
flavor: `${target.name} tries to resist ${attacker.name}'s shove attempt`,
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('Prone', target.actor.uuid)) {
await game.dfreds.effectInterface.addEffect({ effectName: 'Prone', uuid: target.actor.uuid});
ui.notifications.info(`${attacker.name} shoves ${target.name} to the ground`)
}
}
else ui.notifications.info(`${target.name} resists the shove attempt from ${attacker.name}`)
}
});
canvas.scene.tokens is the documents
canvas.tokens.placeables are the objects
both canvas.scene.tokens and canvas.tokens have .get(id)
Conveniently, canvas.scene.tokens also has .getName
I was testing canvas.tokens.get, which (obviously) is the token, not token document.
Reason I don't ever bother with canvas.tokens unless I explicitly want the selected token(s)
Do you have the option in monk's tokenbar to allow players to request rolls?
the request works, the effect s the only part that doesn't
and no error
I will check though right now
are the conditions suppose to be capitalized?
yeah it works everytime the DM activates it, but fails when players do
Try with fast forward true to check
And put console logs to check where it breaks as a player
Like are the roll totals undefined?
The flags for the tokenbar's results might be different as a player (not that they should...).
Try to isolate where the macro breaks
the whole role thing works 100%, the active effect applies when the DM is doing everything, it just doesn't happen at all when the player does it.
Can the players add DFreds CE to targets?
This kinda looks like the issue I was having with MTB requests where the callbacks are not getting executed ๐ค My solution was to not use MTB for it, cause it was a saving throw anyway, but that's not really possible on your case
can I add the effect another way?
what if it was an execution of a folder macro?
instead of apply CE, it activates a specific folder macro
Then I just put dfreds CE in a folder macro and run as GM
First things first. Try changing the fastForward to true
Maybe the player's trigger has some issues
I am unsure what you mean, but I toggled FF on for the tests once and no changes no errors
in here ```js
await game.MonksTokenBar.requestContestedRoll({
token:attacker,
request:'skill:ath'
},{
token: target,
request: skill:${skilltoberolled}
},{
silent:true,
fastForward:false,
change fastFoward:true
Just check that the async callback is not thrown off as it waiting for the players to click the Dice roll button
let results;
const attacker = canvas.tokens.get(args[0].tokenId);
const {object: target} = await fromUuid(args[0].hitTargetUuids[0]);
console.log(target)
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:${skilltoberolled}`
},{
silent:true,
fastForward:true,
flavor: `${target.name} tries to resist ${attacker.name}'s shove attempt`,
callback: async () => {
const attackerTotal = results.getFlag("monks-tokenbar", `token${attacker.id}`).total;
const targetTotal = results.getFlag("monks-tokenbar", `token${target.id}`).total;
console.log(attackerTotal, targetTotal)
if (attackerTotal >= targetTotal) {
if(!game.dfreds.effectInterface.hasEffectApplied('Prone', target.actor.uuid)) {
await game.dfreds.effectInterface.addEffect({ effectName: 'Prone', uuid: target.actor.uuid});
ui.notifications.info(`${attacker.name} shoves ${target.name} to the ground`)
}
}
else ui.notifications.info(`${target.name} resists the shove attempt from ${attacker.name}`)
}
});
OK try this too
What are the console.logs?
edited typos
So it doesn't pick up at all the second console.log in the async callback function
Try something else. Put in the very end a console.log(results)
ItemMacro shuld be after active effects right?
It shouldn't matter ~~now ~~ at this point anyways ( ๐ค ), but yes leave it at that
so results is undefined in the end ๐ค
the requestContestedRoll doesn't return anything?!
Ok if you try the same as a GM does the console.log(results) return something?
fastforward woirks when gm fires it
(I cannot check myself on v9 tright now that's why this back and forth, sorry!)
with gm fastForward
when the player rolls there is no fastforward, when GM does, its super fast, instant, but the request finishes normal
also GM is no longer applying the status marker
Yeah because probably with the fastForward:true, these flags that get the attackerTotal and targetTotal are not defined
That's why the above error
With fastForward:true, you will not need the async callback in the requestContestedRoll
You can just get the results in the end and use them in the macro logic to apply or not the effect directly
this can only work with ff true?
yes
I think there might be a bug in the player's contested roll monks API call, when the fastForward is false. Or there is something changed, compared to how the flags are defined for a GM account
(v9 still correct? just checking again ๐ )
v9 and all the relevant modules are updated to the newest v9 supported
the only thing that is not updated to newest is actual foundry v9, I'm on 269 build
boooo
does it work in v10?
i can try that in a bit
what do I await for the ff solution?
is it just me or does shillelagh macro from midi qol sample items not quite work ? It applies the buff now but when my player goes to actually attack it uses the base quarterstaff and str instead of wisdom.
I suppose I could just change his quarterstaff to work as intended but i was hoping to get this last spell working.
How do you mean? You await the async requestContestedRoll function as it currently is
v9 or v10?
v10.
Pretty sure shillelagh is from MIDI-SRD which isn't updated to V10?
I stripped the character down so only a quarterstaff is there.
I am using Shillelagh 10.0.10 from midi-qol sample items.
Neither is the one from SRD ๐ I guess they both have one
IT applies the buff to the character, but the weapon still used 1d6 and the strength roll.
Ric check to make sure you do not have multiple staffs
testing
or make sure you've checked all staves
Yea its not working with the quarterstaff being the only thing in the inventory. It's also equipped.
is your quarterstaff defined with a base item as quarterstaff?
oh actually
yeah that
its also not quarterstaff
quarterstaff is not what a druid can use
its Wooden Staff or Club
Isn't quarter a different weapon?
Woodenstaff can be a druids spell focus, quarterstaff cannot
It says quarterstaff or club in the spell description. I'll try the other staves then.
This is the check in the macro ```js
let weapons = actor.items.filter(i => i.type === weapon && ["club","quarterstaff"].includes(weapon.system.baseItem));
@violet meadow yes it is.
The base weapon needs to be a club or a quarterstuff
The V9 gave me this item
I cannot check the v9 version of the ItemMacro in the shillelagh spell
V9 version
Oh well the macro is a bit suspicious in the v10
same with the v9. I would use await in these functions and make the callback async
i have a more advanced one on my patreon
the v9 shilelagh is causing dnd5ehelper errors in console on cast lol
@violet meadow to be clear, there is no way to use an alternate way to apply the icons to the tokens on success right? like even just using the simple add image icon to them wouldn't work, cause its mtb that breaks?
Not sure. I can check later tonight if you don't need something right now
nah its only a fluff fancy thing, all it really needs is to display the challenge results
Shillelagh is two lines with Effect Macro, just sayin'.
I will check the Monks thingy later tonight Moto that I will be on my pc
If you want to fast forward it, go into the console.log(results) and check the passed. It will have the token that passed (won)
Then create a logic to apply the DFreds CE accordingly
What...if I took it out of item macro?
With fastForward:false, it seems that something breaks in MTB
and made it a run as gm folder macro since it works as the GM?
for a player
You would need to pass to the GM the target of the player
OTherwise it would run with the tokens the GM has selected and targeted at the moment
darn
If you search the MOnks tokenbar discord you will find a post of mine
I was doing something similar
actually search for mentions:thatlonelybugbear as I had a convo with another user
so it mightbe easier to find it
I have to go
k have a good one
Catch you later!
what is really weird is that its a macro from macro polo that folks were sharing lol, guess it was always meant to be a GM only macro
I have a feature which adds +Cha mod to Perception. When I add the effect 'system Skills Perception Bonuses Check', 'Add' '+5', it works great. When I change '+5' to '+@abilities.cha.mod' it does not. What obvious thing am I missing?
I believe you would need dae in order for the attribute to work there?
I do have DAE and Midi QoL
I think that something changes with the new versions of MTB ๐คท
Will investigate ๐
DAE is not needed for this.
The field is a string. It accepts @abilities.cha.mod out of the gate.
It will not show on the sheet, but will show when you roll.
+@abilities.cha.mod is all you need.
You're right, it does show on the rolls, but not the sheet. Is there any way to get it to show on the sheet?
No
Ok, last question, is there a way to see in the calculations where a bonus came from? Perhaps a module that adds that detail?
can you humor me and try to put brackets and see if it does indeed update the sheet? cause the pally aura does that with the save bonus when you bracket it
just put it in square brackets
+@abilities.cha.mod[steve]
Pretty sure you don't want to use odd flavors in damage fields
squints
what are you doing in a macro that swaps str to wis and modifies the damage formula that could break other modules?
Why?
It's context, not damage type.
Dark Midi Magic
I tried brackets, no such luck
I may just hardcode it for now, so that it shows properly
did you get this working? i'm trying to use the same item and getting this error in the console:
Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'api')
That is a strange error!
Is it? Looks like an attempt to get the api methods of a module that isn't activated.
Well do you have DAE and MidiQOL installed and active?
Well I expected in #1010273821401555087 to have the relevant modules active ๐
Let's see!
Pfff. midi in the midi thread?
Odd question, how would you go about recreating a trait like 'Favored by the Gods' from 'Divine Soul' Sorcerer? How would you trigger something for a failed save or attack?
I'm trying to use flags.midi-qol.grants.critical.range to grant a player a crit range of 18-20. How do I do that? What do I input?
Try flags.midi-qol.grants.criticalThreshold | Override | 18 for v10 Foundry
Ah, damn. I use v9.
I think this is not backported to v9
Damn.
Try it though ๐คท
Nope. Doesn't work. :<
Favored by the Gods: "Starting at 1st level, divine power guards your destiny. If you fail a saving throw or miss with an attack roll, you can roll 2d4 and add it to the total, possibly changing the outcome. Once you use this feature, you can't use it again until you finish a short or long rest."
Where would I be setting macro onUse?
yep, sure do, and pretty much everything else looks to be working correctly - this is carrying over a working config from v9 and I've just been testing and updating items (in this case grabbing the updated V10 Shillelagh)
Are you on Dnd5e 2.0.3?
That would probably be an Actor onUse macro
I had made this for a similar case, for attacks: <#dnd5e message>
(the attachment is an item that needs importing)
@vast bane too tired now. MTB tomorrow ๐
yep, sure am
k, I got it to work if the attack is within 8 of hitting, which is the max of 2d4, with the below macro, but is there a way to use the same feature to add a second macro for instead of 'preCheckHits', 'postSave' to attempt to add 2d4 to a failed save?
console.log('this',this) //this gives the workflow note to self
console.log(args)
//let workflow = await MidiQOL.Workflow.getWorkflow(args[0].uuid)
const feature = token.actor.items.getName("Favored by the Gods")
const available = !!feature.data.data.uses.value; //check for available uses
if(!available) return {};
console.log(this.attackTotal)
//preCheckHits
let attackTotal = this.attackTotal;
let target = Array.from(this.targets)[0].actor
console.log(target)
let targetAC = target.getRollData().attributes.ac.value
console.log(targetAC)
let changed = Number(attackTotal) + Number(feature.data.data.formula)
console.log(changed)
if((targetAC > attackTotal) && (changed >= targetAC)) {
let dialog = new Promise((resolve, reject) => {
new Dialog({
title: "Favored by the Gods",
content: <p>You rolled a ${attackTotal} but you can use your \'Favored by the Gods\' Ability to hit (uses left: ${feature.data.data.uses.value}) </p>,
buttons: {
one: {
icon: '<i class="fas fa-check"></i>',
label: "Confirm",
callback: () => resolve(true)
},
two: {
icon: '<i class="fas fa-times"></i>',
label: "Cancel",
callback: () => {resolve(false)}
}
},
default: "two"
}).render(true);
});
let useFeature = await dialog;
if (useFeature) {
this.setAttackRoll(await new Roll(${attackTotal}+2d4).evaluate());
return await feature.update({"data.uses.value": feature.data.data.uses.value - 1});
}
}
else console.log('nay')
Much prettier, how should I have posted that instead to get that?
just formatting the script so its easier to read ๐
you can surround blocks of code with
```js
/* your code here */
```
/* your code here */
output
Just tested, much nicer, thank you
Hi @gilded yacht โ hope you're doing well! I just learned today that 5E Helpers is no more. Also a rumour that you might pick some of it up? By any chance would it be the cover aspect? Weighing up shifting to v10 but we've grown ever so fond of the midi/helpers cover implementation (with a side of Kandashi's Cover Expansion for different creature sizes)
(I have a vested interest now, my PC has a Wand of the War Mage that ignores half cover)
Would somebody happen to have a macro to (optionally if possible) reroll an item's lowest damage die, regardless of what number was rolled?
Hello! Is there a way to make a actor on use macro to update a resource value whenever a melee weapon attack is made?
You can reduce a resource without a macro
Yeah, but i know my players will forget that and I wont have time to check everytime
How will they forget? You roll the attack, get a popup, and hit continue basically otherwise the attack won't happen
so put consumption at -1
lul
LUL
I DIDNT KNOW THAT
hmm
is there a way to limit the resource value?
it goes past the max
Prolly need a macro for that
๐ญ
So if attacking causes the resource to increase, what causes it to decrease?
One turn without attacking or getting hit
hi. can anyone please assist me in getting evasion to work in midi qol im new but learning ๐ i currently have flags.midi-qol.superSaver.dex set and override and 1 20
Are you making this a passive effect?
If it's not working, you likely just need to set it to apply to actor on equip on the details tab
No, details tab of the AE
set it to custom instead of override. still didnt work
btw. how do u know what to set that box too? how do i know to set it to custom and not override. or override and not add?
if you dont mind ;
you know by reading the documentation normally but that specific flag doesn't specifically say what drop down in the readme but its a switch, 1 for yes, 0 for no. That is typically almost always CUSTOM. Specially if its a midi flag.
I see this:
whish leads me to believe you are editing an owned item so thats maybe why, make the item in the sidebar
then move it after
ok. ugg. wife nagging me to go to bed. im gonna head out and hit this again in the morning. will give that a try. thanks for all of your help guys i will get back tomorrow and see if it works.
i've done some more investigation into the error i'm seeing with the current sample item for Shillelagh:
Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'api')
[Detected 2 packages: dae, midi-qol]
at convertDuration (GMAction.js:379:67)
at applyActiveEffects (GMAction.js:207:51)
at Item5e.applyNonTransferEffects (dae.js:987:30)
at async Object.doEffects (dae.js:906:12)
at async Workflow._next (workflow.js:736:10)
at async Workflow.next (workflow.js:255:10)
looking at the line in converDuration points to a Simple Calendar API error:
const durationSeconds = globalThis.SimpleCalendar.api.timestampPlusInterval(game.time.worldTime, interval) - game.time.worldTime;
the above error happens with Simple Calendar enabled - turning it off lets the macro run and applies an active effect, but without bringing up the weapon selection dialog or making any changes, so basically it has no effect
i think i'm at the limit of my debugging ideas right now, does anyone have any other ideas?
I have a shot in the dark thought on this, what version of simple calendar do you have?
1.3.75
folks can sit there believing they have the newest when they dont
like me
you have to MANUALLY go get the right one
your update button will always say 1.3.75 is newest
and yes, you can manually install over 1.3.75(as long as its the right version for your foundry build)
It will do a migration process and convert anything pending in your calendar to the new setup
ok ok that makes sense, let me try that
although...this could just all be a coincidence but having the newest SC is kinda good to have
Its actually a pretty not random effect to happen here so I wonder if some sort of popular youtube tutorial is linking to the wrong SC for new people
i've had it installed for so long if there was a message about switching to a new fork i must have missed it
I'm only 7 months old and I installed the old to begin with so its definitely something weird
well that fixed that error, now i've got a new one but i'll try sorting that out myself
nope, no idea, so it's doing as described above where a useless effect is applied but no dialog is shown to pick the weapon
here's the error:
VM32231:64 Shillelagh 10.0.10 TypeError: Cannot read properties of undefined (reading 'items')
at eval (eval at <anonymous> (Macros.js:59:16), <anonymous>:7:25)
at Macro.eval (eval at <anonymous> (Macros.js:59:16), <anonymous>:66:7)
at ๐Macro.prototype._executeScript#advanced-macros (Macros.js:61:16)
at ๐call_wrapper [as call_wrapper] (libWrapper-wrapper.js:591:14)
at ๐Macro.prototype._executeScript#0 (libWrapper-wrapper.js:189:20)
at Macro.renderMacro [as renderContent] (Macros.js:210:16)
at Macro.executeMacro (Macros.js:231:23)
at ๐call_wrapper [as call_wrapper] (libWrapper-wrapper.js:591:14)
at ๐Macro.prototype.execute#0 (libWrapper-wrapper.js:189:20)
at daeMacro (dae.js:739:42)
at async Semaphore._try (commons.js:11525:19)
that first eval error is this line in the Advanced Macros code:
const fn = Function("{speaker, actor, token, character, args, scene}={}", body);
which i think is related to this line in the Shillelagh item macro:
let weapons = actor.items.filter(i => i.type === `weapon` && ["club","quarterstaff"].includes(weapon.system.baseItem));
i've checked and i definitely have the latest version of Advanced Macros (1.17) so something else is going wrong here...
It might not be able to find the actor on that one, is this the "official" midi Shillelagh macro?
Do you have a token selected?
yep, grabbed straight out of the compendium, no modifications
yep, the token casting it is selected
This is from DAE readme.
Active Effects define the following calculations:
CUSTOM: system/module specific calculation. DAE specifies lots of CUSTOM effects.
ADD: Add a value to the field (if it is numeric) or concatenate if the field is a string.
MULTIPLY: for numeric fields only, multiply the field by a value.
OVERRIDE: replace the field with the supplied value.
UPGRADE: for numeric fields replace the field with the supplied value if it is larger than the field.
DOWNGRADE: for numeric fields replace the field with the supplied value if it is smaller than the field.
is it possible the macro isn't selecting the actor? i don't see where it's doing that in the current version
Try changing actor to token.actor
But iirc both should be defined anyways when you have a token selected.
yeah no change
So the .items undefined points to that specific line?
ItemMacro version?
And in itemMacro settings do you have the sheet hooks enabled by chance?
(Advanced macros is not a prerequisite for MidiQol anymore just FYI)
maybe i'll try without Advanced Macros, but that's the only line referencing items in the macro
Since it's already on the repo, can you copy paste the macro in ItemMacro to throw it here? It's the only line explicitly referencing items, but items being undefined suggests it's the predecessor(s) it can't find
with Advanced Macros off the error now points at this line in dae.js which is pretty similar
const fn = Function("{speaker, actor, token, character, args}={}", body);
The macro I can find on the repo refers to tactor when defining it, might there be a typo?
relevant blurb js const lastArg = args[args.length - 1]; let tactor; tactor = MidiQOL.MQfromActorUuid(lastArg.actorUuid); let weapons = tactor.items.filter(i => i.data.type === `weapon`); let weapon_content = ``;
yeah that's what i was thinking above
i misread the new error message, it's now:
VM38256:64 Shillelagh 10.0.10 ReferenceError: weapon is not defined
at eval (eval at daeMacro (dae.js:750:32), <anonymous>:7:99)
at EmbeddedCollection.filter (commons.js:3233:14)
at eval (eval at daeMacro (dae.js:750:32), <anonymous>:7:31)
at eval (eval at daeMacro (dae.js:750:32), <anonymous>:66:13)
at daeMacro (dae.js:751:31)
at async Semaphore._try (commons.js:11525:19)
so "weapon is not defined" now
this is since turning off Advanced Macros
Yeah OK I think there is an error in the v10
actor.items.filter(i => i.type === `weapon` && ["club","quarterstaff"].includes(weapon.system.baseItem));
``` change `weapon` to ```js
actor.items.filter(i => i.type === `weapon` && ["club","quarterstaff"].includes(i.system.baseItem));
ahhh
Also during the on phase actor will be defined.
During the off phase actor previously would not be defined and I think that this will need to change to
that seems to work with that change
but hitting the spell again to turn it off does so, then turns it back on again which is what i think you're referring to above?
Do you use automation for the save rolls? If you are rolling manually it won't do anything me thinks.
seems to have the same behaviour - empowers it properly, then cast again to return to normal and still get the dialog to choose a weapon
but it's definitely good enough for now, thanks for your help!
Ehh you dont cast it again to change it back
You delete the effect
or it expires
oh! well then ignore me ๐
It's a DAE on/off situation
When you cast it, it sets off the effect to change the item (the on phase)
i thought the macro needed to run again to run the off logic
as you can probably tell my coding days are far behind me
Then you either delete the effect to trigger the off phase or TimesUp will do that for you when it expires ๐
yep, all makes sense, i misunderstood!
thanks again!
I think this can be done with the optional bonus MidiQOL flags
let me check ๐ค
How did you get this to work...
Do you mean about how to get the item to work?
What are you trying to do?
The Favored by the gods macro that was posted
Go to the link included in my answer here: <#1010273821401555087 message>
grab the attached item and import it
Then change the included ItemMacro with the one posted above from Razmeth
ta
I was not intending to include cover calculations since a) I don't use it and b) it's quite complicated - I prefer the levels cover calcuations.
@dense basalt The item macro for shillelagh 10.0.10 is bugged - will release an update in the next version but for the moment try this one
Hi, Im new to this mod and wanted to ask
Wanted to know, area spells like spirit guardians that lets you choose who u want to attack, how can I apply it in game so it will not attack the user and his friendly NPC/PC?
In addition I have the mod Automated Animations, Should I need to put always measure template or can I just use the animation as indication if the spell hit someone and he need to roll save DC?
If you have your midi settings right, when you choose Target: 30 | ft | Enemy for example in the Item's details page, it should target all enemies within 30ft of the caster
where can I find it in the setting?
Does Levels cover calc require the patreon version?
Do you have the details of the item set correctly?
Bottom of the screenshot
Yeap
and then in MidiQOL settings => Workflow settings => Workflow tab check you settings up top
Is there a way to force a fast forward on a MidiQOL.completeItemRoll roll?
I don't want this setting over all (players prefer the popup to remember adv-disadv)
But in certain macros I sorta need the forced roll to get the result.
It's a tool kit roll by the way, not an attack.
you can force a fast forward on a request roll
Thanks. How would I do that?
Additional workflow processing options to completeItemRoll(item, options: {...., workflowOptions}).
You can set:
lateTargeting: boolean to force enable/disable late targeting for the items workflow
autoRollAttack: boolean force enable/disable auto rolling of the attack,
autoFastAttack: boolean force enable/disable fast forwarding of the attack
autoRollDamage: string (always, onHit, none)
autoFastDamage: boolean force enable/disable fastForward of the damage roll.
Leaving these blank means that the configured workflow options from the midi-qol configuration panel will apply.
Wait for bugbear to respond I saw him pokin around, hes the guru
Yeah, I saw this too. But it mentions nothing of toolrolls or ability rolls, only attacks and damage.
Hey someone needs coffee if you want this buggybear to read whole messages...
Try configureDialog: false ๐คท
is the roll going to be via mtb anyway?
(core method is item.rollToolCheck({fastForward: true});)
I am stuck with my v10 version for now Moto and I cannot check the MTB from yesterday easily. I am away from my regular setup till tomorrow
nah I'm allset with that actually
the status marker was always just a fluff add on to the skill rolls
I'm totally satisfied with shield bash and taunts just doing the requests
I just want to investigate what's actually happening cause I do have some abilities set up like that and we haven't used them for some time, so we might be in for surprises ๐
yeah, I feel like a version broke it cause I wanna say freeze or someone, made the macro and I repurposed it, and the original also doesn't work for players in my games atleast
but also I'm on v9 so is it really fair to put minds on an obsolete build
Yeah I remember that in #macro-polo. We were discussing and it seemed to work. I don't know if I actually used the async callback in a proper game or created as a GM and never tested on a player's client ๐ค
it works brilliantly on the dm
and honestly...it doesn't break visibly on the player client so I'm just leaving them as is since it just silently fails to apply on players
well this sounds like a disaster waitin to happen ๐
nah theres no errors or anything, that was always theweird part, you only got errors to show when we put in console entries
Yeah, this actually worked in my case. a little less visual but I'm ok with that. ๐
I will probably retire my monster crafting macro when fabricate releases anyway. ๐
Fabricate?
Yeah, a module being developed. It handles crafting of things.
That's a rippers one?
Nope. MisterPotts
ripper has a recent foraging module for patrons, i believe.
But it's probably a little off topic for this chat.
the forage module looks interesting its too bad I already built my own macro for mine lol
(and now the 3090s are coming down in price, so... -that's enough bugbear)
So how about that local sports team?
Midi QoL and Magic Item error. Conversation moved from #modules message
Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'getDocument')
[Detected 2 packages: magicitems, midi-qol]
at magicitem.js:386:22
at new Promise (<anonymous>)
at MagicItemSpell.entity (magicitem.js:375:16)
at magicitem.js:399:18
at new Promise (<anonymous>)
at MagicItemSpell.data (magicitem.js:398:16)
at getMagicItemReactions (utils.js:2602:43)
at doReactions (utils.js:2673:39)
at async Workflow.checkHits (workflow.js:2511:22)
at async Workflow._next (workflow.js:440:6)
at async Workflow.next (workflow.js:261:10)
wy does the item have the reaction?
Like isn't the whole point of magic items module to package spells/features in it that are accessible on the spellbook and features sections?
Not really the point right now ๐ค
what is it trying to react with is my point, aka whats the item
Did you make sure that the items you embedded in the magic item still exist?
can you post the magicitem.js:386 here? It sounds like a reaction in MidiQOL doesn't pass a document that magicItems can understand or something ๐คท
If what Zhell said is not the case
could the item be set as a reaction and then the spells only show up if they equip/attune and the users not attuned/equipped?
What does that even mean
OK if not mistaken this is the relevant snippet ```js
entity() {
return new Promise((resolve, reject) => {
if(this.pack === 'world') {
let entity = this.entityCls().collection.instance.get(this.id);
if(entity) {
resolve(entity);
} else {
ui.notifications.warn(game.i18n.localize("MAGICITEMS.WarnNoMagicItemSpell") + itemName);
reject();
}
} else {
const pack = game.packs.find(p => p.collection === this.pack);
pack.getDocument(this.id).then(entity => {
resolve(entity);
});
}
});
}
breaks in pack.getDocument
sounds like it
Tale as old as Magic Items
Were you able to find how to make this work?
I have a small issue as I cannot access my v9 installation right now, but give me a few to try to scrap this together
@vast bane can you try something? Do you have advanced macros? If yes, create a script macro that will run as GM in your macros folder ```js
let results;
const attacker = canvas.tokens.get(args[0].tokenId);
const target = (await fromUuid(args[0].hitTargetUuids[0])).object;
if (target.length > 1) {
ui.notifications.warn("Please select 1 target only");
return;
}
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[0],request:skill:${skilltoberolled}},{silent:true, fastForward:false,flavor: ${target.name} tries to resist ${attacker.name}'s shove attempt, callback: async () => {
let i=0;
while (results.data.flags['monks-tokenbar'][token${attacker.id}].passed === "waiting" && i < 30) {
await new Promise(resolve => setTimeout(resolve, 500))
i++;
}
if (results.data.flags["monks-tokenbar"][token${attacker.id}].passed === "won") {
//const uuid = target.actor.uuid;
if(!game.dfreds.effectInterface.hasEffectApplied('Prone', target.actor.uuid)) {
await game.dfreds.effectInterface.addEffect({ effectName: 'Prone', uuid: target.actor.uuid});
ui.notifications.info(${attacker.name} shoves ${target.name} to the ground)
}
}
else ui.notifications.info(${target.name} resists the shove attempt from ${attacker.name})
}
});
Then in the Shield Master Shove item/feature whatever put an ItemMacro After Active Effects with ```js
if (args[0].workflow) delete args[0].workflow; //for newer versions of MidiQOL that deletion is needed.
game.macros.getName("ShieldMasterShove").execute(args[0]);
Name should match your world macro you created.
Does this work as a player?
https://gitlab.com/tposney/midi-qol#optional-bonus-effects
More or less an effect on the actor, with
flags.midi-qol.optional.NAME.label | Override | Name of the feat you want
flags.midi-qol.optional.NAME.save.fail | Override | +2d4
flags.midi-qol.optional.NAME.count | Override | check the readme on how to link it to a resource or the below link on how to link it to an Item's uses
More info here too (read this through) <#package-releases message>
can I trigger reaction by PC attacking one of my minions?
Create an Item with an Activation Cost of 1 Reaction on your minions and make sure to use the MidiQOL's reactions
What are you trying to do exactly?
๐๐ป
yes monks token bar
Click DAE in this image (the Evasion one). Screenshot the Details tab of the opened window
Couple of things, to see if the spell shield can work with that, and Uncanny dodge
Shield Spell does work with that, yes. Needs to be 1 Reaction and needs some changes from the Shield spell you find in the Spells (SRD) compendium
Uncanny Dodge too, get the one from the MidiQOL sample Items compendium
Do you use DFreds Convenient Effects maybe?
I need you to click on Details tab on the mid-bottom one and check the box Transfer to Actor on Item Equip
I mean I will be glad if I have some minions that have reaction like that and when one of them get attacked, there is a massage that remind me about that
like with Monk's mods that give you a massage about your lair actions
If you don't want to automate, you will need to choose Activation Cost the corrent reaction type and then go to Midi settings => Workflow settings => Optional tab and in the reaction process, select the print in chat
I cannot see anything in the screenshot... small screen ๐
Does it apply the Prone effect correctly?
i need to chekc that box?
he shoves himself
pfff
oh know what....lets see if he prones himself
weird behavior it took same roll for both results, ties don't succeed
yes the 2nd from top checkbox. Transfer to actor on item equip
I edited the item to not be a "Magic Item" since it really shouldn't be. There is not a spell added to the item in quest just an effect, which funny enough, you helped me with lol.
I shut off the module, I shut down my world.
I log back in, attack the Taz and the reaction works.
Turn magic item back on, verify item in question is still not enabled as "Magic Item".
Attack Taz, console blows up with same error I posted. It's like it is cached somewhere as being a "Magic Item". Is that within my own browser or somewhere in Foundry?
remake the item?
Did you edit the item on the sidebar or the one on the actor/character sheet?
Nuke the flags from the item or remake it
That worked. Thanks!!
Character sheet. I do not have it as a sidebar item.
Ill try to remake it.
Yeah nuke time ๐
Whether it's on the sheet or in the sidebar shouldn't matter. They aren't embedded items, they are just references. Not like activeeffects in an item on an actor. ๐
@violet meadow the hitting himself only happens if the DM has him selected coincidentally, when I fire it and the Dm doesn't have anything going on at all, error occurs:
unsetFlag code incoming from Zhell oh noooo I thought so
Would require me to know any inner data in the magic-items flags, which I don't. Is that even the id?
Just 'Items With Spells' for me, tyvm ๐
ha wait what?
yeah I cannot deal with that now, but will take a look tomorrow ๐
I was going to try that but V10 only, and I'm not ready to move my 8 worlds over just yet.
how do you search just within this thread, I can't get the bit for in: to work in search for midi qol
I found it, and had a self realization in the process
hi. im just wondering. is there a page .. link. patreon somewhere, that has all the spells coded correctly for use in foundry? i mean, i have had to get a couple of them working and i have just started using foundry in the last month. soo many people use it and have to adjust spells. there has to be a list somewhere . yea? and all of the pally aura's and stuff? just wondering as i cant find anything like that in my searches. Thanks and sorry for the newbness
i mean, dont get me wrong. .im learning as i go. but it seems more of a chore sometimes to get these to work and takes the fun out of it for me. ๐ฆ
the midi srd, iirc, has a bunch of the SRD spells at least partially automated/implemented
...wait, that might still be on v9 -- the sample items that come with midi, i mean
yea. but not all ๐ฆ
yea, the SRD makes it hard...
There is a compendium with some premade stuff, but just like all content isn't readily available for dnd in general, same will be the case for midi. There are some people with patreons (crymic for example) with things that are automated
There's also the module Convenient Effects that has some premade stuff too
You're not gonna find anything that has everything automated since it falls under the same guidelines of only being able to share SRD content and homebrew
and just as a reminder, you dont have to go full automation -- i personally do not and my games are still quick and fun
once i get something working. (( with help from u all )) i can put the corrected spell or feat in my shared compendium and have it in all my games for ever and a day yes?
until dnd5e/midi/other module updates shift things around
doesnt happen frequently, but it can happen
thx
@digital lagoon This 100%. I automate what I can either alone or with the help of this channel/disc in like 5 - 15 mins, if I can't figure it out, I handle it manually
๐๐ป
I definitely recommend Convenient Effects (paired with Dfred's Effects Panel) cause then a good amount of SRD stuff will be setup. The rest of content you want automated just ask here. Also another recommendation is if no one has said it yet, you don't need to set everything up. Set up content as you need it and the rest whenever you have time to work on it
i have CE and Dfreds installed as well
Perfect, also get Times Up for proper expiration of effects in combat
thx
And make sure your midi settings are set to apply CE and then item effects
copy that one. thx.
The more you do it, the easier it gets
That applies with anything in foundry honestly
@dark canopy and @molten solar I figured it out. It wasn't even the reaction ability itself but another "Magic Item" on the character. It appears Magic Item auto creates "Magic Item" items if they had spells attached to them from dndbeyond importer. Badger, you calling out that bit of code about MAGICITEMS.WarnNoMagicItemSpell made me start looking. I had a custom item which Light and Daylight could be cast from, and Magic Item module just put generic text there instead of the spell(s). Once I fixed that, boom. Everyone was happy in the console again.
dfreds CE premades, midi srd, midi sample items, more automated spells and feats module, and not upgrading to v10, and also just searching here and gearheads for macros for the non srd stuff will get you what you need, but the second you move to v10 you are a slave to what the limited few midi macro writers have come up with for solutions. IMO if you are an end point dm user of midi, you should not update to v10.
Just the fact that ALL those macros will have to all be individually looked at and tweaked in a v10 update is the headache keeping me from it. If v10 atleast looked at folder macros and aattempted to migrate or something then I'd think about it but nah...I'm good with v9 for a while lol.
just say no to distributing raw macros! โ
the Midi SRD by Kandashi is a great example of distributing "macros" as a module
some of the best improvements to midi experience come from both of those modules that have tons of midi macro items
if you have a battlemaster, More Automated spells and feats is a must have
What he pulls off in the automation of them all is pretty dang cool
i have basically started with v10. i started foundry as it came out . thats how new i am.
Then v10 is perfectly fine
I feel for ya, v10 is a huge release that has really thrown some upheavel into module support and automation.
If you start anew, no reason to go v9
I mean his whole post here is asking for premade items for midi automation
v9 has it all practically in the form of the search history on here and gearheads, and v10 is limited to just what tposney has in his sample compendium
what happens if you port over the v9 midi srd in your own copy of the compendium into v10?
so that midi srd from kandashi.. was for v9 and i shouldnt get it yea?
its a bunch of items with a macro attached to them to speak with midi to do cool stuff, but they all break in v10 mostly I imagine
Correct. V9 release
All the v9 macros will need some updates. Small updates probably for the most part but still, if you post a v9 macro you will get answers on how to make it v10 compatible
Yeah no doubt, over time things will balance out, but right now, I don't see many posts of fixes to all the core macros, take Ice Knife, its still in v9 form here
essentially you get on v10, you are leading the way for everyone mostly
Nobody asks for them
Same thing was happening when v9 came out
All the v8 macros
yeah, so as an endpoint DM, who has no experience in JS or anything, we're not gonna move till its all setup for us, we can't afford to take a hit for our weekly sessions.
and honestly, what does v10 give me? I already like my journal as is, I actually don't like what they did with invisibility and detection modes
Well the way v10 paves the way for new modules for one
I'll wait and see what comes out but I just haven't seen those must have modules, bab and inline rolls look neat but mtb and requestor do the job fine in v9.
Bottom line, even if all the macro modules get updates to v10 version, still lots of people will have macros breaking, cause they use older versions not in these modules.
Ask and you shall receive is the moto ๐
any idea what this issue is.. by chance. just trying to install midi srd. says consult f12. dont know much about that stuff.
https://github.com/Larkinabout/fvtt-combat-chat/ Another one updated for me to eventually wanna update!
midi srd cannot be in v10
i would also recommend, as it sounds like you are relatively new, to give low module (ideally zero) setups a try for a few sessions if you havent already
o
Midi is powerful, but has a lot of strings attached
yeah v10 with just the base system is very stable, but if your party is already used to automation from roll20 or even midi foundry, then stepping down is going to be too jarring
yea. im working hard to get all the automation and eye candy that i can get. one of the main reasons i moved from FG.
the benefit of base system is everything works and non srd is as simple as cut and paste
yea. but once u install one mod. mido qol for example.. as its the main one as i see it for automation. it requires so many other mods and then... it begins. i have been trying to catch on to as much as i can. its alot to get down . i have no programing skills sooo. heh
I took a month off during the transfer from roll20 to here, ran a session zero where we fiddled with modules, everyone wanted midi, so I setup midi and ran them through a multi shot of sunless citadel, got feedback, tweaked settings, and resumed campaign with midi, so we never actually played vanilla foundry dnd5e. But I'm told I am rare. Personally if you were a pro roll20 DM, I dunno how you jump from pro roll20 api setups to foundry without automation.