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

Roll20 Tips and Tricks (Innovative Solutions to Common Problems)

1523204450
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Here is the page I use for emojis. It has a nice search function, and best of all, shows how they are displayed on different platforms, which could eliminate confusion if you are describing something to your players.  For example, you could have a button showing a gun, and tell your players "press the button with the revolver on it". Depending on platform, your player may see a revolver, an automatic, a squirt gun or a ray gun. It will also let you know if the emoji you want to use is even available on a different platform.
thanks :)
1523340160

Edited 1523340221
MyRoll20Stuffs
API Scripter
If you're using the PageFX API script and have multiple effects on a page that are identical, stagger the timer. If you say set up an FX for smoke to come out of houses chimney to run every 1 second and have 8 houses to do, then every couple of seconds the game will lag when on that map (Every 5 to 6 seconds the PageFX will stop running, then after 5 seconds run 5 times all at once lagging the page.) If you leave a scenario as described above left alone long enough, it crashes the game and you have to reload the page or launch the game again. The solution to this is to stagger the activation times. They are in milliseconds so if you have 8 houses to have smoke come out the chimneys set them to these values: 1000 1050 1100 1150 1200 1250 1300 1350 You will notice a significant performance boost when on that page with all the FX.
So I will share something I created for my players to roll their New HP when they level up. This uses !setatter API, which is the bee's knees. I am using the shaped sheet but I'm sure it would work with OGL, maybe a tiny tweak. It will set the new Max Hp on the sheet and then when they long rest it will adjust the current. You can notice I have a minimum that they can possibly roll but you can remove that quite easily. You could even just give them one opportunity of rolling better by just adding o after the r.  !modattr {{ --sel     --HP||?{Which HD?|Barbarian,[[1d12r<5+@{selected|constitution_mod}]] |Bard,[[1d8r<3+@{selected|constitution_mod}]] |Cleric,[[1d8r<3+@{selected|constitution_mod}]] |Druid,[[1d8r<3+@{selected|constitution_mod}]] |Fighter,[[1d10r<4+@{selected|constitution_mod}]] |Monk,[[1d8r<3+@{selected|constitution_mod}]] |Paladin,[[1d10r<4+@{selected|constitution_mod}]] |Ranger,[[1d10r<4+@{selected|constitution_mod}]] |Rogue,[[1d8r<3+@{selected|constitution_mod}]] |Sorcerer,[[1d6r<2+@{selected|constitution_mod}]] |Warlock,[[1d8r<3+@{selected|constitution_mod}]] |Wizard,[[1d6r<2+@{selected|constitution_mod}]]} --fb-public --fb-from @{selected|character_name} --fb-header @{selected|character_name}'s New Max Hit Points }}
1523490878

Edited 1523498558
gui8312 said: @keithcurtis I was reading through the Stupid tricks and I couldnt figure out how you insert smileys into the VTT macro bar. Do you use something like an ALT code? An extension? Btw love the NPC spreadsheet. apart from Jeremy's suggestion: Jeremy R. said: Here's a good site with the emoji's available -&nbsp; <a href="http://www.unicode.org/emoji/charts/full-emoji-list.html" rel="nofollow">http://www.unicode.org/emoji/charts/full-emoji-list.html</a> and keith's suggestion: keithcurtis said: Here is the page I use for emojis. It has a nice search function, and best of all, shows how they are displayed on different platforms, which could eliminate confusion if you are describing something to your players. For example, you could have a button showing a gun, and tell your players "press the button with the revolver on it". Depending on platform, your player may see a revolver, an automatic, a squirt gun or a ray gun. It will also let you know if the emoji you want to use is even available on a different platform. You can browse from your Phone using Chrome's Desktop mode (albeit with limited functionality due to not having an actual mouse/keyboard short of using Bluetooth for it) and when you Edit the Macro you can input the Emoji as the "Name" and it will show up appropriately, although there's no guarantee your computer will recognize the Emoji, which is why Jeremy's or keith's suggestion might be better.
I thought about that, but I am a bit lazy haha :)
1523619925

Edited 1523620369
The Aaron said: Yup, this does work: !token-mod --set statusmarkers|?fluffy-wing[1]:?{How many 10s?}|fluffy-wing[2]:?{How many 1s?} The addition of the ? in front of the first fluffy wing means it will omit the first one if the amount is 0. I have been giving this a go since coming across it here, but I can't seem to get it to work as stated. By using the '?' in front of the first 'fluffy-wing' I don't get the '10s' wing showing up at all although it asks the question and I provide a +ve number (not 0). It only shows the units. However deleting the '?' brings up both wings but does not delete the '10s' wing if the entry is 0 (which makes sense). Am I missing something? New to TokenMod.
Martin M. said: The Aaron said: Yup, this does work: !token-mod --set statusmarkers|?fluffy-wing[1]:?{How many 10s?}|fluffy-wing[2]:?{How many 1s?} The addition of the ? in front of the first fluffy wing means it will omit the first one if the amount is 0. I have been giving this a go since coming across it here, but I can't seem to get it to work as stated. By using the '?' in front of the first 'fluffy-wing' I don't get the '10s' wing showing up at all although it asks the question and I provide a +ve number (not 0). It only shows the units. However deleting the '?' brings up both wings but does not delete the '10s' wing if the entry is 0 (which makes sense). Am I missing something? New to TokenMod. the 10s one is wired i found it only works if a fluffy wing i already present on the token so i adjusted the macro to !token-mod --set statusmarkers|fluffy-wing|?fluffy-wing[1]:?{How many 10s?}|fluffy-wing[2]:?{How many 1s?} this auto adds a fluffy wing, then it works as intended (the number for how many 1s will apply to this auto added wing so it doesn't negate the purpose of the ? before fluffy-wing[1])
Kirv Goldblade said: the 10s one is wired i found it only works if a fluffy wing i already present on the token so i adjusted the macro to !token-mod --set statusmarkers|fluffy-wing|?fluffy-wing[1]:?{How many 10s?}|fluffy-wing[2]:?{How many 1s?} this auto adds a fluffy wing, then it works as intended (the number for how many 1s will apply to this auto added wing so it doesn't negate the purpose of the ? before fluffy-wing[1]) Thanks for that. Have made the change and it now works when the initial value for the '10s' is zero (i.e. 1 wing only for units). Also, the values can be increased (simulating a rising token) and shows the '10s' wing, however when I try to simulate a descending token, the '10s' wing stays once its value is zero (i.e. under 10 ft) and takes on the value of the previous 'unit' (i.e. 55 -&gt; 32 -&gt; 08 (28) -&gt; 03 (83) ). Not sure if I'm being pedantic, just thinking about something swooping down low to avoid or attack something but not actually landing.
Martin M. said: Thanks for that. Have made the change and it now works when the initial value for the '10s' is zero (i.e. 1 wing only for units). Also, the values can be increased (simulating a rising token) and shows the '10s' wing, however when I try to simulate a descending token, the '10s' wing stays once its value is zero (i.e. under 10 ft) and takes on the value of the previous 'unit' (i.e. 55 -&gt; 32 -&gt; 08 (28) -&gt; 03 (83) ). Not sure if I'm being pedantic, just thinking about something swooping down low to avoid or attack something but not actually landing. ah that seems to be a problem with how token mod handles 2 of the same status marker with the ? function on one (i tested and the same problem occurs with aarons macro) so until someone figures out a flight api it's probably best to stick to the original wings macro and deal with a 0 wing in the 10s or use the colors method
1523635070

Edited 1523635126
Player Vault pages/ UI Pages: * Don't know how useful this will be for most GMs but I give each player a page, that I call the player vault. This is a place where players can store as many tokens/cards as they want. I give them a macro that allows the player to go to their vault page mid-session and come back to the party. So in a matter of seconds they can switch the cards they have - which I use to define what players have equipped. * With this idea in mind players can also have a graphic UI - as this possibility seems to be quite lightweight in my tests. Just think players using a macro to switch to a graphic UI page. * With the same idea I built a few skill rooms: these are places where player can create equipment, and I have a room they can see and a lot of hidden cards to give to players when they create the item. * Guess this is more useful for games without a compenidum. Using cards for equipment can be scripted to function as a fast and highly costumizeable equipment system this way.
1523639634
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Cool idea. Do you use an API call in the macro to move the players?
1523641616

Edited 1523642285
:) Oh, yeah, my bad. It requires a map changer API call!
1523641885

Edited 1523641948
gui8312 said: Player Vault pages/ UI Pages: * With the same idea I built a few skill rooms: these are places where player can create equipment, and I have a room they can see and a lot of hidden cards to give to players when they create the item. I'm interested on hearing more about this. I have no idea how to make such rooms, short of Skyrim & Minecraft I have nearly zero examples for pretty much anything of that sort, much less a Top-Down Viewpoint of them. I'm also curious, do you need to place the players in the rooms yourself, or do you have a Handout, or a Card, or is there some way for them to change the Map per Player without your interaction? How do they access the Rooms? I would love to see a list of Equipment Ideas, I am terrible at coming up with ideas for content short of "(Object) with (Spell/Potion) Enchantment". The most original idea I've got was actually made by a Player in my Campaign for their Rival, we ended up naming it God Bane, it's a Dual Edged Claymore (Greatsword) with an Enchantment on each Edge, one side has Dispel, the other side has Level Drain, just when you thought a Mage couldn't have enough nightmares about Warriors, this thing comes along. I don't intend to allow the Players to acquire such a deadly weapon, but, stranger things have happened, and if it does, I have a Plan B. Edit: of course, you respond in between me typing and hitting Send xD
1523642037

Edited 1523642347
Kirv Goldblade said: Martin M. said: Thanks for that. Have made the change and it now works when the initial value for the '10s' is zero (i.e. 1 wing only for units). Also, the values can be increased (simulating a rising token) and shows the '10s' wing, however when I try to simulate a descending token, the '10s' wing stays once its value is zero (i.e. under 10 ft) and takes on the value of the previous 'unit' (i.e. 55 -&gt; 32 -&gt; 08 (28) -&gt; 03 (83) ). Not sure if I'm being pedantic, just thinking about something swooping down low to avoid or attack something but not actually landing. ah that seems to be a problem with how token mod handles 2 of the same status marker with the ? function on one (i tested and the same problem occurs with aarons macro) so until someone figures out a flight api it's probably best to stick to the original wings macro and deal with a 0 wing in the 10s or use the colors method Could this work if you clear the Status a line before? (I'm not Pro, so IDK) Something like... !token-mod --set statusmarkers|?fluffy-wing[0] !token-mod --set statusmarkers|?fluffy-wing[1]:?{How many 10s?}|fluffy-wing[2]:?{How many 1s?}
@Blue64 The vaults do require Pro subscription because it works with API.Do you still want more details? I can give you a more detailed explanation if you are still interested :)
gui8312 said: @Blue64 The vaults do require Pro subscription because it works with API.Do you still want more details? I can give you a more detailed explanation if you are still interested :) I was already aware of that :) it sounds like a useful trick, and might inspire some out-of-the-box thinking, so, yes please :) I was thinking perhaps a GitHub Link if you didn't want to post the Equipment details on here (I was surprised how useful GitHub became on here), or if you have some Macros for the attacks or something :) whatever you feel like sharing, as it sounds quite intriguing and clever.
1523643499

Edited 1523644409
Regarding cards and quick equipment: * I cant really share the API for it right now as it is still in development. * But is it quite simple to see what cards players have in their hands and get their objects. I then get all the info from the cards by naming them in a format that is useful, something like: Helm that eats fire@@ITEM_NAME@@//Light Hiccups: at the start of turn player emits light for 5 seconds.@@SUSTAINED_EFFECTS@@ResFire&&-0.05$$ it now is only a question of sorting the info and applying the effects to the character. * Now this works by tracking when the player changes the cards in his hand, and insta-updates the effects.&nbsp; Regarding the Vaults * Using the Map changer Script you can give each player the possibility of changing the page he sees. this will only change one player's view if setup correctly. I created a macro per player for this, so that the macro the player sees only links to their specific vault. with the same macro they can also choose to go back to the party. The macro is: !mc ?{Where to|Vault 1158, move --target Vault1158|Back to Party,rejoin} /w gm you hear the lock to Vault 1158 click! * I use the vaults as private pages for each players and I intend on using it for players to store the cards of the items they already equiped before. so they can just change their page in a second, change the cards in their hands and this way change their equipment without me interfearing. I just check they do not equip 5 swords at once. Their token does not have to be in their vault page.&nbsp; GUI * Haven't really looked into this option too much, but my vaults are basically a GUI.&nbsp; Equipment ideas * The Forums on here are to be used for roll20 specific topics only. I would not want to hijack this topic neither would I think that creating a new one for that would be appropiate on here. check reddit or other forums/ websites, sure you can find some great ideas over there. you can also check my dev server on discord, as I also use that as a place to exchange info with other GMs. just send me a PM and I will give you the link.&nbsp;
@keithcurtis is this too spammy? dont want to make your post too messy.
1523645292
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
No worries. You're directly elaborating on your trick. If you are ever concerned about it in the future, you could also just edit your original post, to keep everything contained. But this is fine. I'm not that picky. :)
1523702107

Edited 1523702756
Kirv Goldblade said: ah that seems to be a problem with how token mod handles 2 of the same status marker with the ? function on one (i tested and the same problem occurs with aarons macro) so until someone figures out a flight api it's probably best to stick to the original wings macro and deal with a 0 wing in the 10s or use the colors method Thanks for the info. After working out how to set up Chat Menus (thanks Keithcurtis) I simply made another macro (Landed) to toggle the symbol: !token-mod --set statusmarkers|!fluffy-wing When used it removes one status at a time, starting with the 10's. This means I can simply use this when their height falls below 10 feet, then use the 'Flight' macro to show them rising again if need be. If they land simply click the 'Landed' macro twice to remove all symbols. FWIW - having a ball playing around with this stuff.
1523724919

Edited 1579809357
Scott C.
Forum Champion
Sheet Author
API Scripter
Compendium Curator
Keith pointed out to me that this wasn't already in here, so here's my contribution. Trap and Room Markers sans character sheet or API You can store anything in the bars of a token* . This gives you 6 pseudo attributes that you can use with just tokens. How you use them is up to you and what exactly you are going to be doing. For something like a basic trap, I might do something like this: Set the token to isDrawing, otherwise the information we're going to enter will overflow the circles and you'll wind up with a very ugly looking interface. Bar1: DC 15 Reflex Bar1|max:[[1d8]] Piercing Bar2:Additional Effects: Marked with a tracker Bar2|max: Bar3:Description:The northern wall is a hologram hiding several dart guns that fire small darts that do minimal damage, but tag any creatures hit with bio trackers allowing the Xyrtzil to track visitors to their compound. Bar3|max:You hear a soft "Wuft" as several darts fly at you from what you had assumed was a solid wall So, we now have our trap's information stored in the token. We will now make a generic macro in the collections tab as a token action macro: /w gm &amp;{template:default} {{name=@{selected|token_name}}} {{@{selected|bar1}}} {{@{selected|bar1|max}}} {{@{selected|bar2}}} {{@{selected|bar2|max}}} {{@{selected|bar3}} /desc @{selected|bar3|max} This will give us output like this: You can of course use your sheet's roll templates for a nicer appearance. This is also an extremely basic example of the technique. I've done several different things with this technique such as: command buttons in the bar values so that the token gives me a menu of options for the room, Whole template declarations, and character specific whispers to name a few. Really, you can do just about anything with it. *Well, almost anything, line breaks (even html coded ones) don't play well EDIT: How to get line breaks in your text Thanks to Barakka, we now have a method for inserting line breaks into the text you may want to store in the token's bars. Instead of trying to use html entities (e.g. &amp;#13;) like I was trying to, you can simply use the line break angle bracket notation: &lt;br&gt; Use it once for a new line, and twice for a blank line in between text.
Scott C. said: (snip) Set the token to isDrawing, otherwise the information we're going to enter will overflow the circles and you'll wind up with a very ugly looking interface. Bar1: DC 15 Reflex Bar1|max:[[1d8]] Piercing Bar2:Additional Effects: Marked with a tracker Bar2|max: Bar3:Description:The northern wall is a hologram hiding several dart guns that fire small darts that do minimal damage, but tag any creatures hit with bio trackers allowing the Xyrtzil to track visitors to their compound. Bar3|max:You hear a soft "Wuft" as several darts fly at you from what you had assumed was a solid wall So, we now have our trap's information stored in the token. We will now make a generic macro in the collections tab as a token action macro: /w gm &{template:default} {{name=@{selected|token_name}}} {{@{selected|bar1}}} {{@{selected|bar1|max}}} {{@{selected|bar2}}} {{@{selected|bar2|max}}} {{@{selected|bar3}} /desc @{selected|bar3|max} (snip) I'm not sure if this falls under a stupid or clever trick, but it's in regards to the macro's formatting, I have been extensively testing with my own Macros and their formatting, and I find it easier to read if you space things accordingly. When using &{template:default} anything between {{these}} gets read nice and compact, but it doesn't get bogged down by Line Returns! so you can actually change the Token's information to read something like: Bar1: DC 15=vs Reflex Save Bar1|max: Damage=[[1d8]] Piercing Bar2: Additional Effects=Marked with a tracker Bar2|max: Triggered by=@{target|1|token_name} Bar3: name=Description}} {{The northern wall is a hologram hiding several dart guns which fire small darts that do minimal damage, but tag any creatures hit with bio trackers allowing the Xyrtzil to track visitors to their compound. Bar3|max: You hear a soft "Wuft" as several darts fly at you from what you had assumed was a solid wall then we would rearrange the Macro to read: /w gm &{template:default} {{name=@{selected|token_name}}} {{@{selected|bar1}}} {{@{selected|bar1|max}}} {{@{selected|bar2}}} {{@{selected|bar2|max}}} /w gm &{template:default} {{@{selected|bar3}} /desc @{selected|bar3|max} I'm not that quick with editing up a screenshot, but it should do a few things: It will ask for a Target to whisper who Triggered it, this allows you the option to correct in case of a Miss-click, as well as taking Notes on who triggered what. The GM Note's Description, in detail, will be displayed separately, thus separating it from the Resizing of the Statistics section, improving readability. I tweaked the Description to not directly reveal to the Players that it is in fact the wall shooting at them, this is a useful Storyteller trick for building Suspense and Immersion, let the players figure out the origin. If the only thing to their North is a Wall, there's clearly not many options, however, if there's a few other possibilities, you can create quite a bit of Chaos this way, and should you cause a little too much Chaos, you can always stop shooting them, either through Target Identification Technology, or simply "Out of Ammo", or "it Broke" amongst many other excuses. I would like to point out, that if you change the |1| you can actually add more Targets, this would allow you to, for example, instead list the Targets for each Dart (eg. Magic Missile), although you should be forewarned that you might be required to separate different numbers of Targets into different Macros entirely (I use a Handout to call them) to avoid another Post, I'll post my Magic Missile Macros URL in Handout: !&amp;#13;%{MacroSpell|MagicMissile1} Links to: Character: MacroSpell Ability: MagicMissile1 /ooc &amp;{template:default} {{name=@{selected|character_name} Casts Magic Missile}} {{Damage Type=Force}} {{Level=1st}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} URL in Handout: !&amp;#13;%{MacroSpell|MagicMissile2} Links to: Character: MacroSpell Ability: MagicMissile2 /ooc &amp;{template:default} {{name=@{selected|character_name} Casts Magic Missile}} {{Damage Type=Force}} {{Level=2nd}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} URL in Handout: !&amp;#13;%{MacroSpell|MagicMissile3} Links to: Character: MacroSpell Ability: MagicMissile3 /ooc &amp;{template:default} {{name=@{selected|character_name} Casts Magic Missile}} {{Damage Type=Force}} {{Level=3rd}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} {{5th Dart=[[1d4+1]] at @{target|5|character_name}}} URL in Handout: !&amp;#13;%{MacroSpell|MagicMissile4} Links to: Character: MacroSpell Ability: MagicMissile4 /ooc &amp;{template:default} {{name=@{selected|character_name} Casts Magic Missile}} {{Damage Type=Force}} {{Level=4th}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} {{5th Dart=[[1d4+1]] at @{target|5|character_name}}} {{6th Dart=[[1d4+1]] at @{target|6|character_name}}} URL in Handout: !&amp;#13;%{MacroSpell|MagicMissile5} Links to: Character: MacroSpell Ability: MagicMissile5 /ooc &amp;{template:default} {{name=@{selected|character_name} Casts Magic Missile}} {{Damage Type=Force}} {{Level=5th}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} {{5th Dart=[[1d4+1]] at @{target|5|character_name}}} {{6th Dart=[[1d4+1]] at @{target|6|character_name}}} {{7th Dart=[[1d4+1]] at @{target|7|character_name}}} URL in Handout: !&amp;#13;%{MacroSpell|MagicMissile6} Links to: Character: MacroSpell Ability: MagicMissile6 /ooc &amp;{template:default} {{name=@{selected|character_name} Casts Magic Missile}} {{Damage Type=Force}} {{Level=6th}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} {{5th Dart=[[1d4+1]] at @{target|5|character_name}}} {{6th Dart=[[1d4+1]] at @{target|6|character_name}}} {{7th Dart=[[1d4+1]] at @{target|7|character_name}}} {{8th Dart=[[1d4+1]] at @{target|8|character_name}}} URL in Handout: !&amp;#13;%{MacroSpell|MagicMissile7} Links to: Character: MacroSpell Ability: MagicMissile7 /ooc &amp;{template:default} {{name=@{selected|character_name} Casts Magic Missile}} {{Damage Type=Force}} {{Level=7th}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} {{5th Dart=[[1d4+1]] at @{target|5|character_name}}} {{6th Dart=[[1d4+1]] at @{target|6|character_name}}} {{7th Dart=[[1d4+1]] at @{target|7|character_name}}} {{8th Dart=[[1d4+1]] at @{target|8|character_name}}} {{9th Dart=[[1d4+1]] at @{target|9|character_name}}} URL in Handout: !&amp;#13;%{MacroSpell|MagicMissile8} Links to: Character: MacroSpell Ability: MagicMissile8 /ooc &amp;{template:default} {{name=@{selected|character_name} Casts Magic Missile}} {{Damage Type=Force}} {{Level=8th}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} {{5th Dart=[[1d4+1]] at @{target|5|character_name}}} {{6th Dart=[[1d4+1]] at @{target|6|character_name}}} {{7th Dart=[[1d4+1]] at @{target|7|character_name}}} {{8th Dart=[[1d4+1]] at @{target|8|character_name}}} {{9th Dart=[[1d4+1]] at @{target|9|character_name}}} {{10th Dart=[[1d4+1]] at @{target|10|character_name}}} URL in Handout: !&amp;#13;%{MacroSpell|MagicMissile9} Links to: Character: MacroSpell Ability: MagicMissile9 /ooc &amp;{template:default} {{name=@{selected|character_name} Casts Magic Missile}} {{Damage Type=Force}} {{Level=9th}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} {{5th Dart=[[1d4+1]] at @{target|5|character_name}}} {{6th Dart=[[1d4+1]] at @{target|6|character_name}}} {{7th Dart=[[1d4+1]] at @{target|7|character_name}}} {{8th Dart=[[1d4+1]] at @{target|8|character_name}}} {{9th Dart=[[1d4+1]] at @{target|9|character_name}}} {{10th Dart=[[1d4+1]] at @{target|10|character_name}}} {{11th Dart=[[1d4+1]] at @{target|11|character_name}}} or, for Simplicity's sake: /ooc &amp;{template:default} {{name=@{selected|character_name} Casts Magic Missile}} {{Damage Type=Force}} {{Level=1st}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} Casts Magic Missile}} {{Damage Type=Force}} {{Level=2nd}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} Casts Magic Missile}} {{Damage Type=Force}} {{Level=3rd}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} {{5th Dart=[[1d4+1]] at @{target|5|character_name}}} Casts Magic Missile}} {{Damage Type=Force}} {{Level=4th}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} {{5th Dart=[[1d4+1]] at @{target|5|character_name}}} {{6th Dart=[[1d4+1]] at @{target|6|character_name}}} Casts Magic Missile}} {{Damage Type=Force}} {{Level=5th}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} {{5th Dart=[[1d4+1]] at @{target|5|character_name}}} {{6th Dart=[[1d4+1]] at @{target|6|character_name}}} {{7th Dart=[[1d4+1]] at @{target|7|character_name}}} Casts Magic Missile}} {{Damage Type=Force}} {{Level=6th}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} {{5th Dart=[[1d4+1]] at @{target|5|character_name}}} {{6th Dart=[[1d4+1]] at @{target|6|character_name}}} {{7th Dart=[[1d4+1]] at @{target|7|character_name}}} {{8th Dart=[[1d4+1]] at @{target|8|character_name}}} Casts Magic Missile}} {{Damage Type=Force}} {{Level=7th}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} {{5th Dart=[[1d4+1]] at @{target|5|character_name}}} {{6th Dart=[[1d4+1]] at @{target|6|character_name}}} {{7th Dart=[[1d4+1]] at @{target|7|character_name}}} {{8th Dart=[[1d4+1]] at @{target|8|character_name}}} {{9th Dart=[[1d4+1]] at @{target|9|character_name}}} Casts Magic Missile}} {{Damage Type=Force}} {{Level=8th}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} {{5th Dart=[[1d4+1]] at @{target|5|character_name}}} {{6th Dart=[[1d4+1]] at @{target|6|character_name}}} {{7th Dart=[[1d4+1]] at @{target|7|character_name}}} {{8th Dart=[[1d4+1]] at @{target|8|character_name}}} {{9th Dart=[[1d4+1]] at @{target|9|character_name}}} {{10th Dart=[[1d4+1]] at @{target|10|character_name}}} Casts Magic Missile}} {{Damage Type=Force}} {{Level=9th}} {{1st Dart=[[1d4+1]] at @{target|1|character_name}}} {{2nd Dart=[[1d4+1]] at @{target|2|character_name}}} {{3rd Dart=[[1d4+1]] at @{target|3|character_name}}} {{4th Dart=[[1d4+1]] at @{target|4|character_name}}} {{5th Dart=[[1d4+1]] at @{target|5|character_name}}} {{6th Dart=[[1d4+1]] at @{target|6|character_name}}} {{7th Dart=[[1d4+1]] at @{target|7|character_name}}} {{8th Dart=[[1d4+1]] at @{target|8|character_name}}} {{9th Dart=[[1d4+1]] at @{target|9|character_name}}} {{10th Dart=[[1d4+1]] at @{target|10|character_name}}} {{11th Dart=[[1d4+1]] at @{target|11|character_name}}} !&amp;#13;%{MacroSpell|MagicMissile1} !&amp;#13;%{MacroSpell|MagicMissile2} !&amp;#13;%{MacroSpell|MagicMissile3} !&amp;#13;%{MacroSpell|MagicMissile4} !&amp;#13;%{MacroSpell|MagicMissile5} !&amp;#13;%{MacroSpell|MagicMissile6} !&amp;#13;%{MacroSpell|MagicMissile7} !&amp;#13;%{MacroSpell|MagicMissile8} !&amp;#13;%{MacroSpell|MagicMissile9} This was actually multiple tricks combined which were posted here, and further explained to me elsewhere. ! makes the URL not appear in Chat &amp;#13; is actually tweaked because if I write the &# 13; without spaces, it formats on here into a Line Return, thus the usefulness of GitHub which does not format their Code Formatting (what's the point of the Code Formatting if I can't post Code? other than the Horizontal Scroll Bar.) % is a Character Sheet Ability Call, which is essentially a Macro. this essentially means that it's going to do something along the lines of: Hide line from chat: <a href="http://roll20.net/" rel="nofollow">http://roll20.net/</a>! Send to Chat: %{MacroSpell|MagicMissile1} The usefulness of this is that should I upgrade to Pro membership, or I find a GM who has Pro, I can use the Character Vault to transfer all of my Macros over with me, with minimal set-up (although that custom Compendium via Handouts is a bit of a royal pain lol)
1525216016
Gold
Forum Champion
Here is a really-cool technique that's been under-shared. It's in an old, long-closed thread. The animated GIF screenshots/demos are broken. It would be nice to see this revised and written-up again. It's Stephens idea for using Transparency gridded overlay map, Plus Token Aura, as a way to show a Player-Moveable Grid area (useful for movement or area of effects): <a href="https://app.roll20.net/forum/post/1785160/aura-you" rel="nofollow">https://app.roll20.net/forum/post/1785160/aura-you</a>...
1525217084

Edited 1562384996
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
That took me a while to decipher without the animated GIFs. Looks pretty cool. Not sure how I'd use it, like a solution in search of a problem... EDIT: Here is a video , posted by Nick O.
1525227391
Diana P
Pro
Sheet Author
I used the idea to create a path of foot prints for my ranger to follow through a forest.&nbsp; She enjoyed the interactive tracking.
1525228657
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Now that's a cool idea!
1525250759
Ziechael
Forum Champion
Sheet Author
API Scripter
I used that trick to have a magical draconic riddle appear on the floor to just one player who had solved the 'visible' riddle and donned the circlet of see invisibility, it was fun when they suddenly got excited and no-one else knew why :)
I remember trying something similar with a light source token instead of an aura to create some kind of ghost effect.. Didn't really turn out the way I wanted, but still looked quite cool. I need to see if I still have the files somewhere...
1525287519

Edited 1525650387
for those who don't understand, it's essentially an invisible (100% Transparent) token which the Edit & View options are unchecked for, the Aura box is checked for Edit, but not View, then you check the Square Aura Boxes, & set it to at least 5, then set it as the Default Token for a Character Sheet, then set up the path to be revealed using the Colored Aura. Whenever someone manages to reveal the Path, you grant them Edit access to the linked Character Sheet, now they suddenly can see the entire path before them. The only drawbacks to such a method is that it increases the number of Tokens & Auras on the Map, so it needs to update more stuff than before, and depending on the Length of the path, and how Narrow it is, this can be a very large number, which could be quite detrimental to lesser machines, specifically those with weaker Processors, or smaller amounts of RAM. the Light Source trick mentioned just above would be exclusive to a Pro/Plus Game, with probably one or two exceptions, however the Token Aura Trick is available to Free Members via the method which I described. The double layer Landscape trick as described farther below is also a good trick.
1525443240

Edited 1525443302
Kirsty
Pro
Sheet Author
keithcurtis said: That took me a while to decipher without the animated GIFs. Looks pretty cool. Not sure how I'd use it, like a solution in search of a problem... I love this technique. Here's a way that I've used it in a one-shot that I wrote. The players were in a haunted house and had to decipher a string of riddles to escape. They learned that they needed to hold a candle up to a certain wall and when they did so, magical writing appeared on the wall.&nbsp; Edit: The image just blow this text is a gif. Click on it to see the aura magic in action! For those of you having trouble seeing how this works, there are three images on this map. The first image is the wall background and is on the map layer: The second image is a .png of that same wall, just with the lettering cut out. (I'm using a jpg here to compress the image, but the white area is actually transparent in the original). The cut-out image is on the token layer. Finally, I have a candle token, also on the token layer that has been given a blue aura. The candle is above the cut-out, but auras are always displayed beneath all tokens. This means that the blue aura of the candle can only be seen through the transparent letters, revealing the secret message.
1525444650
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
This looks like it could be combined with&nbsp; Token Lock or&nbsp; Map Lock (for those with API access) to prevent accidental moving.
1525487063

Edited 1525487562
Gold
Forum Champion
The Master's Vault should automatically appear under Optional: Choose a Module, when you go to 'Create New Game': <a href="https://app.roll20.net/campaigns/new" rel="nofollow">https://app.roll20.net/campaigns/new</a> Conventional use of Roll20: Install The Master's Vault 5E free demo module and run it as-is. Cool, short, one-shot adventure module geared-towards beginning GM and Player groups. Did I mention free? Not really unconventional, close to intended use, still a good Roll20 Tip: Install The Master's Vault 5e and use that as your new-game template for a new campaign, because hey, at least a few things are already set-up and configured for a new 5e campaign, more-so than a blank 'Create New Game'. It has some nice introductory handouts for new 5E players. Slightly unconventional; Try this as a Stupid Roll20 Trick: Install The Master's Vault and run your own homebrew adventure idea, re-using the maps, pages, tokens, handouts, that are already set up here. Re-use the "puzzle" from the module (Advanced: maybe even change the letters around if you can anagram anything) (Super-advanced: Remake the puzzle entirely, using the idea that's demonstrated here-in). Pro-Only: Install The Master's Vault. Use Transmogrify (a Pro perk) to copy the useful Handouts map Pages out of Master's Vault into your existing main game. Copy the Puzzle page over to any other game. Most of this works in non-5E just as well. Winner! We're talking free maps from Russ Hapke and Gabriel P, puzzle page by Stephen S, and more (see credits below). Here is the Master's Vault *FREE* in Marketplace with screenshots (I've found the Cliff-side map to be particularly useful and portable to other games, and the 5E-tutorial handouts, the puzzle is also nifty): <a href="https://marketplace.roll20.net/browse/module/23/th" rel="nofollow">https://marketplace.roll20.net/browse/module/23/th</a>... "The Master's Vault" serves as a detailed introduction to both Roll20 and tabletop roleplaying-- perfect for new Game Masters trying to establish their first adventures. Created by... James Introcaso, Writer / Project Lead Liz Courts, Layout Russ Hapke, Overworld Maps and Additional Art Gabriel Pickard, Maps and Additional Art Stephen Shomo, Puzzle Tokens Phillip Wright, Tokens
@Kirsty thanks for the GIF and explanation! Now it makes sense to me :)
1525539430

Edited 1542771336
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Archive Characters and Other Assets Into A Library Campaign This tip requires a Pro subscription Large campaigns can run slowly or simply have so many pages and characters that finding what you need is difficult. GMs are given the option to archive these, so that they are out of the way, but what is not immediately obvious is that archived characters and pages are still loaded into memory at run time . The Roll20 engine keeps all characters and maps associated with a campaign available at all times. An archived character or page simply doesn't display in your journal tab or the pages tab respectively. You could delete unused characters and pages, but then you would have to go to the trouble of remaking them.&nbsp; The answer is a Library Campaign. Begin with a copy of your existing game. This will ensure that you have the latest, most up to date copies of all assets (with the exception of scripts and macros, but you are not likely to need access to these, since the Library Campaign is not intended for actual play). Once this is done--and verified--you can delete any non-active characters from your main campaign. Going forward, let's say you create a detailed bugbear band, where each is a separate character sheet with special abilities. When you are done with that adventure arc, Transmogrify them into the Library campaign, and delete them from the main campaign. Again, archiving does nothing to reduce character or page load. Also, let's say your big bad has leveled up, but you won't be needing him for a couple of months. Transmogrify him into the library campaign, and safely delete the copy in your main campaign. Why not use the Character Vault? The Character Vault is essential for transferring your character between games. As an library however, it has a couple of drawbacks. First, every time you save a character to the vault, it is a new copy, a snapshot of the character as it exists at that point. If you do this enough, it can lead to multiple copies, confusion and wasted space. More importantly, a character is saved with its current sheet. Most of the time this is not an issue, however, as sheets improve, there comes a point when it can no longer safely update to the current sheet when brought back in. Too many changes have accumulated, leading to a potentially broken sheet. A Library campaign can be updated with the latest sheet whenever you update the main campaign, or at least with every major iteration of the sheet. This allows them to safely upgrade as the sheet designer intended. Macros and Scripts Although I do not recommend actually working in your library campaign (it can cause confusion as to which version is more recent), you may wish to test out scripts or macros without spamming your main campaign chat or littering it with potential spoilers. In this case, you may want your macros and scripts. If you use a&nbsp; Macro Character Sheet , moving your macros is easy. You did it during set up, and your current macro sheet can be transmogrified to the Library Campaign at any time. Scripts can be a bit more of a hassle. They do not copy over when you set up a new campaign, and if you want more than just the bare minimum, it can be a chore to re-assemble them. In this case, I recommend using the Aaron's&nbsp; bookmarklet for concatenating the scripts and moving them into the new campaign as one big uber-script (though this won't work in Firefox). Whenever you need to do updates to scripts, you can delete this uber script and repeat the operation in order to get the latest version of all scripts. In practice, you probably do not need most scripts since you will not be working in this campaign in all likelihood, just using it for storage. Final note: Characters and pages are the biggest reason to do this, as they do not reduce game load when using the normal archive function. If your goal is just to reduce visual clutter, remember that the library campaign can also hold Handouts,&nbsp;Rollable Tables, and Jukebox playlists.
1525580543

Edited 1525585900
DM Whisper no breaks For those BIGGER messages. Create a macro with the whisper to the GM inside a template.&nbsp; This prevents the break from seperating the message into normal chat. Give your DM a wall of text to read.&nbsp; This should also work when attempting to whisper to another player.&nbsp; Honestly I just wish their was a syntax that I could apply to a message so the system would ignore the break. /w "@{target|character_name}"&nbsp; Example: /w GM &{template:pf_generic}{{name=HEY Bighead in the sky, the mortal has something to say}}{{Prayers="?{Make your prayers be known here|Message"}}{{header_image=[Init]( <a href="https://i.imgur.com/OY7DGsk.png)}}{{color=darkazure" rel="nofollow">https://i.imgur.com/OY7DGsk.png)}}{{color=darkazure</a>} } Example 2 /w @{target|character_name} &{template:pf_generic}{{name= Times like these, I really start to question the meaning of my existence. Then I get distra-hey! What's this? This looks cool!}}{{Private Message="?{Private message|Message Here}"}}{{header_image=[Beatthemwithrebar]( <a href="https://i.imgur.com/OY7DGsk.png)}}{{color=darkazure" rel="nofollow">https://i.imgur.com/OY7DGsk.png)}}{{color=darkazure</a>} }
1525585957

Edited 1525630724
Make a round token out of any of your owned images in less then 30 seconds... make your games more aesthetically pleasing to look at.
1525593414

Edited 1525645843
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Unfortunately, cool as it is, I believe that last one violates the terms of use agreement for the forums. I discussed this with a moderator, and I was convinced that I was being over-cautious. Just recommending a program or site like this is not a problem. Sorry about that. I don't think it qualifies as a Stupid Roll20 trick, however, since cool as the tip is, it doesn't ustilize Roll20 tools and resources in an innovative and clever way. It's still a good tip, but I'm not adding it to the index in the first post.
How i used token aura trick. I created matrix 5x5 filled with giant runes (as in SKT hardcover - I found somewhere in Internet font with giant runes which helped a lot with creating), then created&nbsp; a riddle to hide correct path about those matrix. and finally i created hint about "Lantern of Revealing" - player controlled token with aura on map. Players were satisfied with such riddle and said that this encounter was amazing, but it take a lot of work from me. another trick - i sometimes use map assets (trees for example) on token layer to hide tokens of enemies. When players find enemy scout or spy on map by themselves (not by perception check) - they usually began to look on map more and more and have more fun when found another little hints which were set by me before game. Sorry for bad English - I hope that idea was clear.
1525634250

Edited 1525652222
Muckbuckle said: Make a round token out of any of your owned images in less then 30 seconds... make your games more aesthetically pleasing to look at. keithcurtis said: Unfortunately, cool as it is, I believe that last one violates the terms of use agreement for the forums. I discussed this with a moderator, and I was convinced that I was being over-cautious. Just recommending a program or site like this is not a problem. Sorry about that. I don't think it qualifies as a Stupid Roll20 trick, however, since cool as the tip is, it doesn't ustilize Roll20 tools and resources in an innovative and clever way. It's still a good tip, but I'm not adding it to the index in the first post. I was actually thinking of suggest squaring your images as well, you don't necessarily need to edit them, but I would suggest re-framing them so that they properly fit the Grid Set you use, it doesn't take long, like Muckbuckle said, I'm not sure if it would violate the Terms, but it does make things easier to look at, otherwise we're stuck either staring at some kind of smushed image, or exclusively using images that are an exact fit (usually 70x70 pixel grid), most of the good images are not that exact in their sizing. By re-framing the image though, the Artist's intended view of the image is actually preserved through the resizing that Roll20 puts it through, if Roll20 didn't both smush & stretch the image, this wouldn't even be a thing. Edit: Updated the Quote to reflect a later edit
1525645866
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
I've edited my comment. I was overcautious.
I was reading over this thread at length, and I have come to notice an unusual occurrence first off, Keith, you need to include in your Chat Macro Example !&#38;#38;#13; or !&#38;#38;#38;#13; this is because every time you Edit it & Save, it gets Parsed, once, so your Macros are all missing their Line Returns ( &#38;#13; ) that make them a separate Macro Call, the ( &#38;#38; ) turns into a ( &#38; ) I also realized that this Thread is also over 3 Months Old, I only noticed because I saw that I was unable to reply because this Thread was older than 2 months, and Since I am replying right now, that means I have discovered a Stupid Roll20 Trick! Responding to an Old Thread in the Forums: Access Level: Free, Pro, Plus The latest Page in a Thread keeps track of time differently than the initial Post, if the latest Page is less than 2 months old, then the Thread is actually still open, even if the initial Post is beyond this limit and saying the Thread is Closed (such as this current thread, go ahead and check: Page 1 ) Although, should the most recent Page cross that 2 Months Mark, it will become automatically closed, this at least allows people to expand the expected lifespan of a Thread to a theoretically infinite length of time (should the thread replicate the results in order to extend the lifespan for such a length time)
1525660152
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Good catch on the Old Thread Response. I only discovered this recently, and for precisely the same reason. As for the HTML replacements, that's a big enough subject that you should really write it up as its own tip in this thread. I didn't broach the subject on the chat macro because I also endorse writing macros as character abilities on a Macro Character Sheet. Unless you are nesting things in Roll Templates, you aren't likely to have to deal with HTML entity replacements. I didn't want to muddy up the tip. Also, I barely understand the whole process and usually resort to trial and error unless one of the Macro Gurus helps, :) But if you write it up as its own tip, I'll put it in the index, and also edit my chat macro post with a link to your post.
1526444200

Edited 1526444523
I put the layout of the inside of the houses on the token layer.&nbsp; So, when PCs are wandering around town, they can peak into buildings and see what's going on...and it keeps a nice aesthetic.
@Taran How do you do that exactly? Not really getting it and it looks great! :)
1526473569

Edited 1526473617
The Aaron
Pro
API Scripter
It looks like he’s making use of the Advanced Fog of War to allow tokens to “remember” the roof view of the building from the Map Layer, but Dynamic Lighting lets them see the interior of the building on the Token Layer when it’s visible to them. Since AFoW hides tokens, only the visible parts are shown giving the illusion of peering in the doors and windows. Very clever and the best use of AFoW I’ve seen. :)&nbsp;
1526477922
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
That's very clever!
Ah, Thanks :)