Roll20 uses cookies to improve your experience on our site. Cookies enable you to enjoy certain features, social sharing functionality, and tailor message and display ads to your interests on our site and others. They also help us understand how our site is being used. By continuing to use our site, you consent to our use of cookies. Update your cookie preferences .
×
Create a free account

I want to announce an updated attribute to players

So, with your wonderful help (Sincere thanks!) I've finally managed to build my Tension Macro. Now I want to be able to announce the tension level to the players. Here's the current macro: !modattr --name MacroMule --Tension|[[[[{@{Tension},6}<5]]*1 +[[{@{Tension},0}>6]]*(-6)]] (The macro mule is named MacroMule, the Tension named Tension). How do I get the macro to announce the new tension level?
1726778411
GiGs
Pro
Sheet Author
API Scripter
I don't think there's any way to do that. The way I've recommendd in the past for people to alert PCs to changes is to write it on the character sheet - create a <p> element at the top or bottom, and have the tet you want to show inside there. Keep it up for a week oe two, long enough for it to be seen, then remove it. You could have this element set to show if a hidden attribute has a value of 1 (say), and check that value on sheet:opened . Include a button or checkbox that changes the value to something else. This means the alert always shows until the player clicks it away. You can then make it as obnoxious as you want since the players have the ability to rtemove it - have it hover over the rest of the sheet using z-index, for example.
1726803280
timmaugh
Pro
API Scripter
I might be coming into this conversation late, but I am assuming by announce you mean using the chat output. You can do that with the metascripts if you batch everything up (so that your announcement can be made to wait until ChatSetAttr has had a chance to do the updating). Here is a simple example using just words: !{{    !modattr --name MacroMule --Tension|[[[[{@{Tension},6}<5]]*1 +[[{@{Tension},0}>6]]*(-6)]]   (^)The tension is now at @^(MacroMule.Tension). {^& delay .3} }} Or using the inline roll instead of checking the Tension value. This one doesn't require the delay: !{{    !modattr --name MacroMule --Tension|[[[[{@{Tension},6}<5]]*1 +[[{@{Tension},0}>6]]*(-6)]]   The tension is now at $[[2]]. }} And a slightly "showier" version using the default roll template.  This could be changed to any roll template in your game: !{{    !modattr --name MacroMule --Tension|[[[[{@{Tension},6}<5]]*1 +[[{@{Tension},0}>6]]*(-6)]]   (^){^&template:default} ({)name=Tension Updated(}) ({)New Value=$[[2]] (}). }} Another possibility is that you use some token on the game board to signal what the tension should be. (A number, or tokens that *are* numbers, or a bar value that goes from green to red... lots of ideas.