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

Ability Check Macro: It works, but it changes HTML to their symbols when I hit save. As there a workaround?

For a quick run down, I wanted to create a macro that I could use to roll ability checks for whatever token I currently had selected. I got it to work exactly how I wanted and even cleaned up the look the best I could to be easily identified if I had to adjust something. Testing the macro worked like a charm, but when I saved the macro it changed all of the HTML code to the corresponding symbols. This is problematic as the HTML is necessary to avoid the syntax issues.  I only just started learning this stuff a few weeks ago, so any advice or help is welcome and appreciated. Here's what I have in my macro: ?{What Ability?| Acrobatics, &{template:simple} {{rname=Acrobatics}} {{mod=@{selected|acrobatics_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|acrobatics_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|acrobatics_bonus}]]}} @{selected|charname_output} | Animal Handling, &{template:simple} {{rname=Animal Handling}} {{mod=@{selected|animal_handling_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|animal_handling_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|animal_handling_bonus}]]}} @{selected|charname_output} | Arcana, &{template:simple} {{rname=Arcana}} {{mod=@{selected|arcana_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|arcana_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|arcana_bonus}]]}} @{selected|charname_output} | Athletics, &{template:simple} {{rname=Athletics}} {{mod=@{selected|athletics_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|athletics_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|athletics_bonus}]]}} @{selected|charname_output} | Deception, &{template:simple} {{rname=Deception}} {{mod=@{selected|deception_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|deception_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|deception_bonus}]]}} @{selected|charname_output} | History, &{template:simple} {{rname=History}} {{mod=@{selected|history_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|history_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|history_bonus}]]}} @{selected|charname_output} | Insight, &{template:simple} {{rname=Insight}} {{mod=@{selected|insight_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|insight_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|insight_bonus}]]}} @{selected|charname_output} | Intimidation, &{template:simple} {{rname=Intimidation}} {{mod=@{selected|intimidation_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|intimidation_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|intimidation_bonus}]]}} @{selected|charname_output} | Investigation, &{template:simple} {{rname=Investigation}} {{mod=@{selected|investigation_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|investigation_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|investigation_bonus}]]}} @{selected|charname_output} | Medicine, &{template:simple} {{rname=Medicine}} {{mod=@{selected|medicine_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|medicine_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|medicine_bonus}]]}} @{selected|charname_output} | Nature, &{template:simple} {{rname=Nature}} {{mod=@{selected|nature_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|nature_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|nature_bonus}]]}} @{selected|charname_output} | Perception, &{template:simple} {{rname=Perception}} {{mod=@{selected|perception_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|perception_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|perception_bonus}]]}} @{selected|charname_output} | Performance, &{template:simple} {{rname=Performance}} {{mod=@{selected|performance_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|performance_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|performance_bonus}]]}} @{selected|charname_output} | Persuasion, &{template:simple} {{rname=Persuasion}} {{mod=@{selected|persuasion_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|persuasion_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|persuasion_bonus}]]}} @{selected|charname_output} | Religion, &{template:simple} {{rname=Religion}} {{mod=@{selected|religion_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|religion_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|religion_bonus}]]}} @{selected|charname_output}  }
1725607220

Edited 1725607268
Gauss
Forum Champion
Hi ZERO,  Short version, don't use Collection tab macros for HTML substitution.  Use Character Ability macros instead, probably on a Macro Mule. It doesn't have the problem you are experiencing. OR, never reopen the Collection tab Macro, HTML substitution will not revert if you don't reopen it.
Gauss said: Hi ZERO,  Short version, don't use Collection tab macros for HTML substitution.  Use Character Ability macros instead, probably on a Macro Mule. It doesn't have the problem you are experiencing. OR, never reopen the Collection tab Macro, HTML substitution will not revert if you don't reopen it. Thank you, I had no idea it was related to the Collection tab, that's good to know. I will probably finish adding the rest of the abilities, ditch the selected token bits, and implement it into the character abilities for my PC's. I'll most likely still use something similar to this in the Collections tab for NPC's in the future; Ill just be sure NOT to edit it after.
It appears that you’re using the D&D (2014) sheet, so I’ll just throw a plug out for my  D&D 5E Statblock Macromule  as an alternative. Since you have a Plus subscription the setup is easy with the Character Vault game I have set up that you can copy the Statmule character from   The Rolls menu will allow you to select any token (PC or NPC) and make any ability check or saving throw without opening the character sheet for the character. 
1725622861
GiGs
Pro
Sheet Author
API Scripter
ZERO said: For a quick run down, I wanted to create a macro that I could use to roll ability checks for whatever token I currently had selected. I got it to work exactly how I wanted and even cleaned up the look the best I could to be easily identified if I had to adjust something. Testing the macro worked like a charm, but when I saved the macro it changed all of the HTML code to the corresponding symbols . This is problematic as the HTML is necessary to avoid the syntax issues.  Just to clarify what Gauss had said: the bit I bolded above is not what was happening. It was when you re-opened the macro, those HTML entities where transformed into the characters they represent. Saving the macro is fine, what you can't do is open it again once it is saved. Look up using a character as a Macro Mule - to avoid things like this you can save the macros as Abilities on a character sheet. It reuires different syntax to call them (and that sheet needs to be shared with the players, but it does not need to be visible to them).
1725632047
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Linkie:  Macro Character Sheet , or Macro Mule.
1725700159

Edited 1725700954
ZERO said: For a quick run down, I wanted to create a macro that I could use to roll ability checks for whatever token I currently had selected. I got it to work exactly how I wanted and even cleaned up the look the best I could to be easily identified if I had to adjust something. Testing the macro worked like a charm, but when I saved the macro it changed all of the HTML code to the corresponding symbols. This is problematic as the HTML is necessary to avoid the syntax issues.  I only just started learning this stuff a few weeks ago, so any advice or help is welcome and appreciated. Here's what I have in my macro: ?{What Ability?| Acrobatics, &{template:simple} {{rname=Acrobatics}} {{mod=@{selected|acrobatics_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|acrobatics_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|acrobatics_bonus}]]}} @{selected|charname_output} | Animal Handling, &{template:simple} {{rname=Animal Handling}} {{mod=@{selected|animal_handling_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|animal_handling_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|animal_handling_bonus}]]}} @{selected|charname_output} | Arcana, &{template:simple} {{rname=Arcana}} {{mod=@{selected|arcana_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|arcana_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|arcana_bonus}]]}} @{selected|charname_output} | Athletics, &{template:simple} {{rname=Athletics}} {{mod=@{selected|athletics_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|athletics_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|athletics_bonus}]]}} @{selected|charname_output} | Deception, &{template:simple} {{rname=Deception}} {{mod=@{selected|deception_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|deception_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|deception_bonus}]]}} @{selected|charname_output} | History, &{template:simple} {{rname=History}} {{mod=@{selected|history_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|history_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|history_bonus}]]}} @{selected|charname_output} | Insight, &{template:simple} {{rname=Insight}} {{mod=@{selected|insight_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|insight_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|insight_bonus}]]}} @{selected|charname_output} | Intimidation, &{template:simple} {{rname=Intimidation}} {{mod=@{selected|intimidation_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|intimidation_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|intimidation_bonus}]]}} @{selected|charname_output} | Investigation, &{template:simple} {{rname=Investigation}} {{mod=@{selected|investigation_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|investigation_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|investigation_bonus}]]}} @{selected|charname_output} | Medicine, &{template:simple} {{rname=Medicine}} {{mod=@{selected|medicine_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|medicine_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|medicine_bonus}]]}} @{selected|charname_output} | Nature, &{template:simple} {{rname=Nature}} {{mod=@{selected|nature_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|nature_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|nature_bonus}]]}} @{selected|charname_output} | Perception, &{template:simple} {{rname=Perception}} {{mod=@{selected|perception_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|perception_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|perception_bonus}]]}} @{selected|charname_output} | Performance, &{template:simple} {{rname=Performance}} {{mod=@{selected|performance_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|performance_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|performance_bonus}]]}} @{selected|charname_output} | Persuasion, &{template:simple} {{rname=Persuasion}} {{mod=@{selected|persuasion_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|persuasion_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|persuasion_bonus}]]}} @{selected|charname_output} | Religion, &{template:simple} {{rname=Religion}} {{mod=@{selected|religion_bonus}}&#125 {{always=1}} {{r1=[[@{selected|d20}+@{selected|religion_bonus}]]}} {{r2=[[@{selected|d20}+@{selected|religion_bonus}]]}} @{selected|charname_output}  } Probably a dumb question but: These macros break once actual right braces are installed? Because it looks like they shouldn’t. Have you tried deleting the spaces between the sets of braces such that it looks like this?: {{xxxxxx}}{{xxxx}}}                ^no space between  As an alternative, you can create a macro with no dropdown menu by converting each check into its own macro and then calling them in chat with a menu system: &{templatexxxxxxx}{{name=Ability Checks}}{{[Acrobatics](! #whatever-you-named-the-acrobatics-macro)[Animal Handling](! #name-of-the-animal-handling-macro)[whatever is next etc etc](! #xxxxxx and so on and so forth}}
1725732682
Gauss
Forum Champion
Gargamond,  The main problem the user was having is a known issue when using Collection tab Macros. When you reopen the macro the HTML entities revert to the characters they represent, that breaks the macro.  They know this now. :)
1725743392
vÍnce
Pro
Sheet Author
There was an update on Jumpgate that supposedly rectified this <a href="https://app.roll20.net/forum/permalink/12015753/" rel="nofollow">https://app.roll20.net/forum/permalink/12015753/</a> But alas, it looks like this "bug" still exists.