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 .
×
Advertisement Create a free account

Roll20 Tips and Tricks (Innovative Solutions to Common Problems)

@keith, I think that account is one of those weird spam bots—or at least has been hacked by one, sadly. The entirety of the post is some sort of hyperlink...
1613198333
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Probably. I couldn't find a URL in it, so I gave it the benefit of the doubt.
1613341761
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Big thanks to  ᐰndreas J.  for reindexing the top post into better categories!
1614029273
Is there any way you can use Animated GIFs with the Deck feature?
Leveraging Advanced Fog of War (Explorer Mode) to prep Dynamic Lighting: I didn’t see this as a suggestion in my Google searches, so I figured I’d lay it out here. The default functionality of Dynamic Lighting is odd for certain map layouts.                  For instance, this encounter would take place during the day, so the entire map would be visible (Daylight enabled), but when you leverage dynamic lighting to block visibility around buildings or objects, you end up with something akin to this:   Which is, in my opinion, gross.   Instead, I enabled Explorer Mode/Advanced Fog of War, and dropped all my players’ tokens on the map, fully exploring it. After that step is complete is when I then go through the process of creating the Dynamic lighting borders, effectively blocking vision around objects while leaving the objects themselves visible. Normal 0 false false false EN-US X-NONE X-NONE /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin-top:0in; mso-para-margin-right:0in; mso-para-margin-bottom:8.0pt; mso-para-margin-left:0in; line-height:107%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri",sans-serif; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;}
1614064360
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
That's a good use of Explorer Mode.
1614095856
Nicholas F. said: Leveraging Advanced Fog of War (Explorer Mode) to prep Dynamic Lighting: I didn’t see this as a suggestion in my Google searches, so I figured I’d lay it out here. The default functionality of Dynamic Lighting is odd for certain map layouts.                  For instance, this encounter would take place during the day, so the entire map would be visible (Daylight enabled), but when you leverage dynamic lighting to block visibility around buildings or objects, you end up with something akin to this:   Which is, in my opinion, gross.   Instead, I enabled Explorer Mode/Advanced Fog of War, and dropped all my players’ tokens on the map, fully exploring it. After that step is complete is when I then go through the process of creating the Dynamic lighting borders, effectively blocking vision around objects while leaving the objects themselves visible. Another option, if you have already set up all your dynamic lighting lines, is to put the player tokens on the map, then go to the Dynamic Lighting layer, and select all (Ctrl-A), and move them to the map layer (assuming you only have the single map image - or move them to any other layer really), then move the lines back. Or you can temporarily change the page size to double, select all the lines and move them off the map image briefly to let the tokens 'explore', then move the lines back into place and change the page size back.
Skill check with text result: Building on the simple conditional Oosh presented a few pages back, I built a macro that prompts the user for a DC and then rolls an (unmodified) skill check against that DC and tells the user the result whether it was success or failure (and if it was a crit). In order to achieve this the macro have to roll a lot more than one die under the hood, but thanks to a bit of maths it should behave just like a normal d20. Here's the code:  &{template:default} {{name=Skill check (DC ?{DC|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20})}} {{[0](#)=}} {{[1](#)=It's [[[d(?{DC}-2)+1]]](#), a failure.}} {{[[[{d1,d18+1}>?{DC}]]](#)=It's [[[d(20-?{DC})+?{DC}-1]]](#), a success.}} {{[[[({d1,d19}>19)]]](#)=It's [[[1]]](#), a critical failure!}} {{[[[{d1,d20}>20]]](#)=It's [[[20]]](#), a critical success!}} {{[0](#)=Bob rolls a skill check:}} The main idea is that we always start with a failure on row 1. Then we have a certain possibility to overwrite row 1 into a success. Then an other possibilty to write a critical failure on row 1 and finally a third possibilty to overwrite row 1 with a critical succes. Since the critical success can never be overwritten, the chance to write that on row 1 should be 1 in 20. This is achieved by this code. [[[{d1,d20}>20]]](#) The for the final result to be a critical failure we cannot write critical success. So therefore we need the to increase the chance to write critical failure slightly to get the final chance of 1 in 20. It turns out 1 in 19 is the correct value (c * 19/20 = 1/20 -> c = 1/19). Then we need to handle the chance of success (excluding critical successes). On a roll of DC n there are (20 - n) different values resulting in success, so the chance to roll success is (20 - n) in 20. Adjusting for the chance of this result being overwritten, the chance for a success should be (20-n) in 18.  [[[{d1,d18+1}>?{DC}]]](#) I'm not sure if this is macro is really that useful, but hopefully it demonstrates the power of conditional overwriting. 
1614321148

Edited 1614321239
Nicholas F. said: Leveraging Advanced Fog of War (Explorer Mode) to prep Dynamic Lighting: You can also use the reveal tool (from normal, manual FoW) to reveal the entire map layer for all players. Actually, a quick and dirty API script could make that a one-click operation, at least for LDL as the DL settings are available (not sure about UDL). Create a token controlled by all players => turn off "lightenforcelos" for the page => turn on "lightglobalillum" for the page => entire map is now revealed => delete token => turn "lightenforcelos" and "lightglobalillum" back to default. Done in a flash!
1614362920

Edited 1614362978
Oosh said: Nicholas F. said: Leveraging Advanced Fog of War (Explorer Mode) to prep Dynamic Lighting: I would not use dynamic lighting on an outdoor map like the one you posted.  Just hide the unseen tokens on the GM layer and bring them to the token layer when the players look around the back of building.
1614548456

Edited 1615166841
Hello! This tip is for pro-status API use with Powercards/PCMH Helper. With instructions provided, I created a list (reviewed, copied and pasted names of attacks from nearly every monster stat block in roll20 rules expansion content, a lot more enjoyable than monotonous) of all spells, PC attacks, NPC attacks, NPC reactions and NPC legendary actions. When I start my ScriptCards library subroutine template for visuals and sounds, ill also try to add NPC/PC Traits to the existing PowerCard lists. The lists can be copy+pasted into a handout format that can be used for automated visual effects, and sounds (UPDATED 3/6/2021, Sounds have been included. Previously, sounds needed to be set up by user based on jukebox titled tracks, but visuals have been already formated/are immediately ready for use upon creation of "PowerCard Visual Effects" handout with pasted VFX list). Send me a message or post in the following thread link if you have questions or if you find something broken; I'll update the list as I can. I'll include the thread link below. Thanks for the compliment and heads-up, Keith :D <a href="https://app.roll20.net/forum/post/9846532/powercards-nearly-completed-sfx-slash-vfx-template-huge-list" rel="nofollow">https://app.roll20.net/forum/post/9846532/powercards-nearly-completed-sfx-slash-vfx-template-huge-list</a>
1614555767
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Since that is less of a Stupid Trick, and more of an amazingly useful project, I urge folks to respond in the linked thread instead of here, just to keep this thread on-target and consolidate conversation. Very thorough-looking, Kyle.
Responding to an older post: "Concatenate" tracker values to build complex dynamic Abilities Could someone explain, or provide an example, what is meant by " Parent Ability " here?
1614775538
David M.
Pro
API Scripter
The parent-child metaphor is used to define the relationship between the abilities. In that example, it looks like the "parent" ability is the one that creates all of the chat buttons. Each button will trigger a separate "child" ability. The child abilities typically aren't meant to be triggered on their own. Another metaphor (well, simile really) would be the parent ability is like a folder, and the child abilities are like files within the folder. The child abilities create the final result.
1614824114
David M. said: The parent-child metaphor is used to define the relationship between the abilities. In that example, it looks like the "parent" ability is the one that creates all of the chat buttons. Each button will trigger a separate "child" ability. The child abilities typically aren't meant to be triggered on their own. Another metaphor (well, simile really) would be the parent ability is like a folder, and the child abilities are like files within the folder. The child abilities create the final result. The metaphor reveals such a touching faith in the ability of parents to control their children. (speaking as a parent. ;))
Jay R. said: David M. said: The parent-child metaphor is used to define the relationship between the abilities. In that example, it looks like the "parent" ability is the one that creates all of the chat buttons. Each button will trigger a separate "child" ability. The child abilities typically aren't meant to be triggered on their own. Another metaphor (well, simile really) would be the parent ability is like a folder, and the child abilities are like files within the folder. The child abilities create the final result. The metaphor reveals such a touching faith in the ability of parents to control their children. (speaking as a parent. ;)) +1
David M. said: The parent-child metaphor is used to define the relationship between the abilities. In that example, it looks like the "parent" ability is the one that creates all of the chat buttons. Each button will trigger a separate "child" ability. The child abilities typically aren't meant to be triggered on their own. Another metaphor (well, simile really) would be the parent ability is like a folder, and the child abilities are like files within the folder. The child abilities create the final result. That makes sense. Do you know where I could find an example? I understand the theory, but the practice eludes me (I'm not sure where to start and how to put it together).
1614861848
David M.
Pro
API Scripter
@Snoop: Some examples with descriptions: API command buttons &nbsp;(wiki) Chat menus &nbsp;(from the Stupid Tricks Thread)
1615089458

Edited 1615090838
Hello again everyone! I have made a lot of progress in the "PowerCard Sounds" template. I've updated the post, so if a Pro-user adds a provided list of titles from the Roll20 Jukebox, then adds supplied "PowerCard Visual Effects" and "PowerCard Sounds" handouts (Copy+Paste lists), Every Attack and Spell should automatically fire a visual effect and sound. 3088 lines by hand, I added what sounded most closely to each action/spell. It took some creativity, but I'm proud of it. Please keep any comments or questions you have in the supplied thread so that the thread continues. Sorry to clog it up for an update :P PowerCards Completed Blank Template/Visuals/Sounds Lists
1615133615

Edited 1615133743
Ron
Plus
I want to thank everyone who shared their macros - it really helps those of us who are learning and not as tech savvy. Below is the first macro that I have made. While playing 5e D&amp;D, I noticed that every time a condition effect occured the game would slow or stop so the group could look it up. The macro I made lets the gm/player quickly select a condition and the wording displays in the chat box. I added this as a token action: Conditions: &amp;{template:default} {{note= ?{Which Condition?| Blinded, **Blinded:** * A blinded creature can't see and automatically fails and ability check that requires sight. * Attack rolls against the creature have advantage and the creature's attack rolls have disadvantage.| Charmed, **Charmed:** * A charmed creature can't attack the charmer or target the charmer with harmful abilities or magical effects. * The charmer has advantage on any ability check to interact socially with the creature.|Deafened, **Deafened:** A deafened creature can't hear and automatically fails and ability check that requires hearing.|Exhaustion, **Exhaustion and levels:** 1)Disadvantage on ability checks 2)Speed Halved 3)Disadvantage on attack rolls and saving throws 4)Hit point maximum halved 5)Speed reduced to 0 6)Death If you already are exhausted then increase the step by effect's amount. A creature suffering from an exhaustion level then 2 will suffer from all prior forms aswell. Finishing a long rest reduces a creature's exhaustion level by 1 provided the creature has also ingested some food and drink.|Frightened, **Frightened:** * A frightened creature has disadvantage on ability checks and attack rolls while the source of its fear is within line of sight. * The creature can't willingly move closer to the source of its fear.| Grappled, **Grappled:** * A grappled creature's speed becomes 0 and it can't benefit from any bonus to its speed. * The condition ends if the grappler is incapacitated(See the condition) * The condition also ends if an effect removes the grappled creature from the reach of the grappler or grappling effect. Such as when a creature is hurled away by a thunderwave spell.| Incapacitated, **Incapacitated:** * An incapacitated creature can't take actions or reactions.| Invisible, **Invisible:** * An invisible creature is impossible to see without the aid of magic or a special sense. For the purpose of hiding - the creature is heavily obscured. The creature's location can be detected by any noise it makes or any tracks it leaves. * Attack rolls against the creature have disadvantage and the creature's attack rolls have advantage.| Paralyzed, **Paralyzed:** * A paralyzed creature is incapacitated (See the condition) and can't move or speak. * The creature automatically fails strength and dexterity saving throws. * Attack rolls against hte creature have advantage. * Any attack that hits the creature is a critical hit if the attacker is within 5ft of the creature.|Petrified, **Petrified:** * A petrified creature is transformed- along with any nonmagical object it is wearing or carrying - into a solid inanimate substance(usually stone). Its weight increases by a factor of ten and it ceases aging. * The creature is incapacitated (See the condition) - can't move or speak - and is unaware of its surroundings. * Attack rolls against the creature have advantage. * The creature automatically fails strength and dexterity saving throws. * The creature has resistance to all damage. * The creature is immune to poison and disease - although a poison or disease already in its system is suspended and not neutralized. |Poisoned, **Poisoned:** * A poisoned creature has disadvantage on attack rolls and ability checks.|Prone, **Prone:** * A prone creature's only movement option is to crawl unless it stands up and thereby ends the condition. * The creature has disadvantage on attack rolls. * An attack roll against hte creature has advantage if the attacker is within 5ft of the creature and otherwise the attack roll has disadvantage.|Restrained, **Restrained:** * A restrained creature's speed becomes 0 and it can't benefit from any bonus to its speed. * Attack rolls against hte creature have advantage and the creature's attack rolls have disadvantage. * The creature has disdavantage on dexterity saving throws. &nbsp;|Stunned, **Stunned:** * A stunned creature is incapacitated (see the condition) - can't move - and can speak only falteringly. * The creature automatically fails strength and dexterity saving throws. * Attack rolls against the creature have advantage. |Unconscious, **Unconscious:** * An unaware creature is incapacitated (see the condition) - can't move or speak - and is unaware of its surroundings. * The creature drops whatever its holding and falls prone. * The creature automatically fails strength and dexterity saving throws. * Attack rolls against the creature have advantage. * Any attack that hits the creature is a critical hit if the attacker is within 5ft of the creature.|} }}
1615136533
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Remember folks, this thread is for: solutions to common problems or activities by clever or innovative use of the interface.... not necessarily a place to post little-known intended uses of the interface (such as keyboard commands), but less conventional uses, or ways to use common tools with other resources Good macros are very useful, and should be shared, but on their own thread.
Tracking time and countdown aid. There are often requests for a clock or counter to help game play. They can be used to: Countdown to prompt players to make timely decisions. Mark the time of day or the passage of time in the game world&nbsp;. Mark the countdown to an impending event. Track the duration of some situation. No such counter or visual device exists in Roll20. So. A bit of sideways thinking. This suggestion is that countdowns and time counters are created (recorded) and added to the jukebox so the DM can play them in game. Tracks last up to 10mins and can be looped. So a 10min track that simply says at the end "another hour has past" before looping can give an indication of the passage of time. This example could be appropriate when just travelling. If an encounter happens just stop the play. A specific (shorter) track with a countdown can be used to give urgency to a scenario. Or just a big reminder to get on with the game. You can make specific tracks for specific abilities if you want to limit them to 10mins real time. e.g. "Freds spell last another 5mins, spell lasts another 4mins...) Sounds can be recorder as part of the track as a reminder its running or as the conclusion. Just like the clock in countdown. "Your turned into a Chicken "- duration 1 hour game time. Hit the chicken track of continuous clucking with the 15min warning at the end. Unfortunately for long events you will have to mark each time the track loops but it is at least a reminder. note: Multiple tracks can be played at the same time. Tracks can be paused, stopped, restarted to suit the adventure/game. I hope this is useful and worthy of the Tips and Tricks.
1616131991
Did Noon ever elaborate on this?&nbsp; <a href="https://app.roll20.net/forum/post/5899495/roll20-tips-and-tricks-innovative-solutions-to-common-problems/?pageforid=6870324#post-6870324" rel="nofollow">https://app.roll20.net/forum/post/5899495/roll20-tips-and-tricks-innovative-solutions-to-common-problems/?pageforid=6870324#post-6870324</a>
1616133165
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Not to my knowledge, and they haven't posted to the forum in quite a while. You could try a PM. You could also try reaching out to some of the fancy scripters like Scott C, The Aaron, or timmaugh. I know Scott at least uses this on Door Knocker and maybe Page Navigator. Basically, the API can write HTML to a handout (probably with security restrictions) and you can make buttons, show and hide divs and such like you would do on a web page.
1616134490
Thanks again Keith.&nbsp;
1616297079
I have been searching for a solution for a group attack feature (much like the groupcheck api but in reverse) but haven't found anything yet. If you've got any suggestions, I'd like to hear it. However, I have found something to make my group attacking a little less confusing. I don't want to make just one roll for the whole group because if you fail, they all fail and vice versa. When I roll multiple times (equal to the number of the monsters attacking) I don't know which ones failed and which ones succeeded. I have found a work around that makes life a little easier. I am using the tokennamenumber api, but you could just as easily give each token a unique name manually. On the Character Sheet for the monster, I click on the gear icon for the Action. In the Name field (after the name) I put the following: @{selected|token_name}. In this way, when I click the attack (greataxe, sword, etc), the token name appears in the chat window next to the name of the weapon used and I know which monster failed and which succeeded. It looks something like this (without the fancy formating): Greataxe Orc 7 Orc ATTACK: 23 DAMAGE: 14 slashing If you include this in your monster template, then you won't have to change it every time you drag the token out for other monsters. If I could just have the reverse of the groupcheck api, that would be great. I hope this helps someone out there. On a side note, it would also be nice to be able to select multiple tokens with the ctrl + left click. I know you can select an area but this may include tokens I don't want selected.
1616306554
Myrrh said: On a side note, it would also be nice to be able to select multiple tokens with the ctrl + left click. I know you can select an area but this may include tokens I don't want selected. Good News Myrrh:&nbsp; Shift + left click does just what you want.&nbsp;&nbsp;
1616367994
Thank you, Horvald! That has been bugging me for a long time.
For those who play doubling of dice rolls vs doubling the amount of dice in a critical. I have found a way to implement that with saving die rolls in the Dnd5E character sheet by roll20.&nbsp; In the crit field for damage1 place&nbsp;$[[0]] and for damage2 place&nbsp;$[[1]] with auto rolling damage turned off. If you have auto roll damage turned on then this needs to be replaced with $[[2]] and $[[3]] respectively.
Love this game platform.&nbsp;I really like the fast and efficient communication of developers with users. I appreciate that
1616599842
Hello, In order to gain a maximum of screen space I have a little trick which consists in launching chrome in application mode. In the run menu from the windows start menu : Chrome.exe --app=<a href="https://roll20.net/welcome" rel="nofollow">https://roll20.net/welcome</a>
Tx for the help
1616728226

Edited 1616728487
Maybe Another Nested Query assistance? So I was working on one of my player character's in one of my campaigns and was updating an API when I realized the Token Macro calls another Token Macro, and only that Token Macro needed to be changed.&nbsp; They are a Monk 5e, and I used the API to automatically update Ki points in their Class resource section of their character sheet. I have 2 Token Macro, one that call my API which is in the format of !API_Command Token_Id Character_Id Number_of_Ki_points_to_spend. This information is not that important just thought I would include to give back story. ANYWAY.... When I was updating the "Number_of_Ki_points_to_spend Token Macro, when it needed a nested Query, which I have done so in the past for ability checks and weapon attack. But this time I did something different and was surprized that it worked. The Following Code works with a token macro that calls an API and another Token Macro directly, which I think was nice ?{Confirm which Monk Ability you are Using|Martial Arts - Bonus Action and 0 Ki,0|Flurry of Blows - Bonus Action and 1 Ki,1|Patient Defense - Apart of an action and 1 Ki,1| Step of the Wind- Apart of move action and 1 Ki,1|Focused Aim - Free action as part of a missed attack 1-3 Ki, &amp;quest;&amp;#123;Each Ki spent add 2 to a missed attack&amp;#124;1&amp;#124;2&amp;#124;3&amp;#125; |Quickened Healing - Action and 2 Ki points,2|Deflect Missile- Catch - Reaction and no Ki,0| Deflect Missile- Attack- Same Reaction and 1 Ki,1|Stunning Strike - Free action as part of a melee weapon attack and 1 Ki,1} The Part I wanted to focus on was this portion &amp;quest;&amp;#123;Each Ki spent add 2 to a missed attack&amp;#124;1&amp;#124;2&amp;#124;3&amp;#125; Essentially all of the parts of the Query that makes it a query, along with vertical pipes, (I don't use comma in this but I assume &amp;#44; for them as well) I used HTMl code replacements and it works inside the other Query (I will note that this is a place where the Outer Query is asking for a value) TLDR; Didnt know you can use full HTML replacement code for Inner queries, you can replace all the Query elements if it inside the outer queries,"ask for a value" space. Just might work for you :) Edit: I have adjusted some of the Monk abilities to not take action I know they don't line up with PHB rules it Homebrew :)
Not sure if anyone's touched upon this yet, but I'm trying to find a way to clean up the look of my Chat Menu's I made for my PF2E game (knowing how to do this, in general, is helpful too). This is how it is written out: /w gm&amp;{template:default} {{name=Melee Attacks: @{selected|character_name}}} {{[PUNCH 1](~selected|repeating_melee-strikes_$0_ATTACK-DAMAGE)}}{{[PUNCH 2](~selected|repeating_melee-strikes_$0_ATTACK-DAMAGE2)}} {{[PUNCH 3](~selected|repeating_melee-strikes_$0_ATTACK-DAMAGE3)}} {{[KATANA 1](~selected|repeating_melee-strikes_$1_ATTACK-DAMAGE)}} {{[KATANA 2](~selected|repeating_melee-strikes_$1_ATTACK-DAMAGE2)}} {{[KATANA 3](~selected|repeating_melee-strikes_$1_ATTACK-DAMAGE3)}} and it's popping up in chat like this (I'm not too tech savvy so I don't know how to make the image smaller). Is there any way I can either shift the buttons to left or have the punches on one side and the katana on the other? I did see a post about including API buttons in the macro code but I'm not sure how to do that at all. Thank you! &nbsp;
1617582936

Edited 1617583008
ddoommeenniicc said: Not sure if anyone's touched upon this yet, but I'm trying to find a way to clean up the look of my Chat Menu's I made for my PF2E game (knowing&nbsp; how to do this, in general, is helpful too). This is how it is written ou... The cool thing about the default tempo is if you have an equals in one of the lines, it'll separate whats on both sides. /w gm&amp;{template:default} {{name=Melee Attacks: @{selected|character_name}}} {{[PUNCH 1](~selected|repeating_melee-strikes_$0_ATTACK-DAMAGE)=[KATANA 1](~selected|repeating_melee-strikes_$1_ATTACK-DAMAGE)}}{{[PUNCH 2](~selected|repeating_melee-strikes_$0_ATTACK-DAMAGE2)=[KATANA 2](~selected|repeating_melee-strikes_$1_ATTACK-DAMAGE2)}} {{[PUNCH 3](~selected|repeating_melee-strikes_$0_ATTACK-DAMAGE3)=[KATANA 3](~selected|repeating_melee-strikes_$1_ATTACK-DAMAGE3)}} This should be what you want.&nbsp;
1617608964
Ziechael
Forum Champion
Sheet Author
API Scripter
Joshua H. said: This should be what you want.&nbsp; I can't believe I've never thought of putting buttons as both the label and the value, that is a MUCH cleaner look! You've inspired me to take it a step further (depending on whether you like those huge buttons or not), by adding a back-tick before the button value you can get an all text only display for the buttons: /w gm&amp;{template:default} {{name=Melee Attacks: @{selected|character_name}}} {{[PUNCH 1](`~selected|repeating_melee-strikes_$0_ATTACK-DAMAGE)=[KATANA 1](`~selected|repeating_melee-strikes_$1_ATTACK-DAMAGE)}}{{[PUNCH 2](`~selected|repeating_melee-strikes_$0_ATTACK-DAMAGE2)=[KATANA 2](`~selected|repeating_melee-strikes_$1_ATTACK-DAMAGE2)}} {{[PUNCH 3](`~selected|repeating_melee-strikes_$0_ATTACK-DAMAGE3)=[KATANA 3](`~selected|repeating_melee-strikes_$1_ATTACK-DAMAGE3)}}
1617666875
Hey, I've been playing around with the ChatStat and related macros, and everything was working like a dream, up until I tried to add reactions. **Reactions** [@{selected|repeating_npcreaction_$0_name}](~@{selected|character_name}|repeating_npcreaction_$0_npc_roll_output) Traits and Actions are showing fine, and I can get a button for the reaction in question (Parry, in this case), but when I try to click the Parry button, I get: No ability was found for %{Tiriana Philen|repeating_npcreaction_npc_roll_output} I'm at a loss here, and would appreciate any help or suggestions - the full chat menu I have is as follows: /w gm &amp;{template:npcaction}{{rname=@{selected|character_name}}}{{name=@{selected|npc_type} **HP: **@{selected|bar1} / @{selected|hp|max} | ** AC: ** @{selected|npc_ac} | **Spd: ** @{selected|npc_speed} **Languages: **@{selected|npc_languages} **Senses: **@{selected|npc_senses} **Resists:: **@{selected|npc_resistances} **Immune: **@{selected|npc_immunities} **Cond. Immune: **@{selected|npc_condition_immunities}}}{{description=[Initiative](~@{selected|character_name}|npc_init) **Abilities** [**Str @{selected|strength}** *(@{selected|strength_mod})*](~@{selected|character_name}|npc_str) | [save](~@{selected|character_name}|npc_str_save) [**Dex @{selected|dexterity}** *(@{selected|dexterity_mod})*](~@{selected|character_name}|npc_dec) | [save](~@{selected|character_name}|npc_dex_save) [**Con @{selected|constitution}** *(@{selected|constitution_mod})*](~@{selected|character_name}|npc_con) | [save](~@{selected|character_name}|npc_con_save) [**Int @{selected|intelligence}** *(@{selected|intelligence_mod})*](~@{selected|character_name}|npc_int) | [save](~@{selected|character_name}|npc_int_save) [**Wis @{selected|wisdom}** *(@{selected|wisdom_mod})*](~@{selected|character_name}|npc_wis) | [save](~@{selected|character_name}|npc_wis_save) [**Cha @{selected|charisma}** *(@{selected|charisma_mod})*](~@{selected|character_name}|npc_cha) | [save](~@{selected|character_name}|npc_cha_save) **Skills** [Acrobatics](~@{selected|character_name}|npc_Acrobatics) | [Animal Handling](~@{selected|character_name}|npc_Animal_Handling) | [Arcana](~@{selected|character_name}|npc_Arcana) | [Athletics](~@{selected|character_name}|npc_Athletics) | [Deception](~@{selected|character_name}|npc_deception) | [History](~@{selected|character_name}|npc_History) | [Insight](~@{selected|character_name}|npc_Insight) | [Intimidation](~@{selected|character_name}|npc_Intimidation) | [Investigation](~@{selected|character_name}|npc_Investigation) | [Medicine](~@{selected|character_name}|npc_Medicine) | [Nature](~@{selected|character_name}|npc_Nature) | [Perception](~@{selected|character_name}|npc_Perception) | [Performance](~@{selected|character_name}|npc_Performance) | [Persuasion](~@{selected|character_name}|npc_Persuasion) | [Religion](~@{selected|character_name}|npc_Religion) | [Sleight of Hand](~@{selected|character_name}|npc_Sleight_of_Hand) | [Stealth](~@{selected|character_name}|npc_stealth) | [Survival](~@{selected|character_name}|npc_survival) **Traits** [@{selected|repeating_npctrait_$0_name}](~@{selected|character_name}|repeating_npctrait_$0_npc_roll_output) [@{selected|repeating_npctrait_$1_name}](~@{selected|character_name}|repeating_npctrait_$1_npc_roll_output) **Actions** [@{selected|repeating_npcaction_$0_name}](~@{selected|character_name}|repeating_npcaction_$0_npc_action) [@{selected|repeating_npcaction_$1_name}](~@{selected|character_name}|repeating_npcaction_$1_npc_action) [@{selected|repeating_npcaction_$2_name}](~@{selected|character_name}|repeating_npcaction_$2_npc_action) **Reactions** [@{selected|repeating_npcreaction_$0_name}](~@{selected|character_name}|repeating_npcreaction_$0_npc_roll_output) }} &amp;{noerror}
1617678075
Fraser G. said: Hey, I've been playing around with the ChatStat and related macros, and everything was working like a dream, up until I tried to add reactions. **Reactions** [@{selected|repeating_npcreaction_$0_name}](~@{selected|character_name}|repeating_npcreaction_$0_npc_roll_output) Traits and Actions are showing fine, and I can get a button for the reaction in question (Parry, in this case), but when I try to click.. Weird. It seems like it's been truncated a little bit. Here, this should work. [@{selected|repeating_npcreaction_$0_name}](~@{selected|character_name}|repeating_npcreaction_$0_oll_output)
1617678853
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Please remember that this thread is for the posting of tips and tricks, not a place to ask for general help. Open a new thread if you have a specific issue. Let's keep this thread focused and useful. The problem with the change in sheet actions for the&nbsp;D&amp;D 5th Edition by Roll20 Sheet has been reported on the&nbsp; D&amp;D 5th Edition by Roll20 &nbsp;thread.
1617754809

Edited 1617755202
Kraynic
Pro
Sheet Author
Token Setup Map This trick is to make sure your tokens scale correctly as your map grid scale changes.&nbsp; The "map" that I will be using in the screenshots is a map for setting up spell templates from Spell Templates Magic by Peter's Forge on the Marketplace.&nbsp; There are 2 of these template maps in the set, and I usually have one set up in each game.&nbsp; I am using this partly because it has a very distinct grid, which is even partly visible when I change the grid scale and make it red for high visibility.&nbsp; I didn't stretch the map to match the new grid scale so that it was easy to see what I was doing with the scale setting. For the demonstration, I have set up 3 maps with grid size 35 (.5 scale), 70 (1 or default scale), and 140 (2 scale).&nbsp; I set up a token on each one that is one grid unit on that map.&nbsp; I set them all up as default tokens to individual character sheets.&nbsp; The main thing to keep in mind here is that all tokens, no matter the pixel/grid scale of the map on which they were created, are all 1 single grid unit.&nbsp; This means that when we switch to a new map and drag them out, we are wanting them to be 1 grid unit. 35px: 70px: 140px: Then I dragged all 3 tokens out on all 3 maps. On the 35px (.5 scale) map, the token created there is correct, the token created at the default scale is correct, but the token created on the 140px (double scale) map comes in twice the size it should be and fills 2x2 grid units: On the 70px (1 or default scale) map, the only token that comes in correct is the one created there.&nbsp; The token created on the 35px map only covers a quarter of a grid unit, while the token created on the 140px map is again filling a 2x2 unit area. On the 140px (2 or double scale) map, the token created here and the token created on the 70px grid are both good.&nbsp; The token created on the 35px map is again only filling a quarter of a grid unit. Basically, you should ALWAYS set up your tokens on a default 70px grid map.&nbsp; From there, they scale up and down correctly (as shown in those images), while tokens created at other scales seem to be locked in to the odd scale at which they were created and don't adjust to the various grids you may want to drop them on later.&nbsp; Obviously, you don't need anything off the marketplace.&nbsp; Just a blank map page at the default grid size will do.
1618955683
hi I was able to find a template for 2e NWP macro but I can't seem to get it to work properly. Is there anyone who would be willing to assist me with it please? This is all so new to me
1618955744
I was attempting to use this one for Dancing &amp;{template:default}{{name=@{Drisonia A'Daragon} uses a Non-Weapon Proficiency}}{{?{Dancing?| @{Dexterity|repeating_profs_$0_profname},@{selected|repeating_profs_$0_profname} [[1d20cs1cf20&lt;[[@{selected|repeating_profs_$0_profstatnum}@{selected|repeating_profs_$0_profmod}|
1618957159

Edited 1618957199
Kraynic
Pro
Sheet Author
This thread is for finished tricks (or questions/refinements of those tricks).&nbsp; For your macro, you should start your own thread.