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

Alternative to "@{selected|", "@{target|", or "token_id" in a macro/character ability with FX?

Hi all, I am currently working on a macro/character ability as a player in a game and am adding FX to the macro for specific attacks (the macro is at the end of the post for reference).  While the macro currently works, I am hoping someone with more experience and knowledge will be able to provide help for making it less cumbersome.  Specifically, I am trying to eliminate having to select a token (as I am a player and only control one) for directional FX requiring a point of origin such as "Beam". So, my questions/thoughts: Is "token_id" the only token parameter to specifically identify one  token other than "@{selected|" or "@{target|"? I am aware "token_id" is a unique identifier that changes when a token is cut/copied/pasted.  I suppose it would be usable if there was a way to set a permanent "token_id" when changing pages, but I do not think there is? "token_name" isn't considered a unique identifier even if only one token is named that. While tokens are linked to journals/character sheets, it does not seem that the inverse is true.  I don't see any way to select a token or call upon a token from the attributes listed in the character sheet. Assuming that I cannot use "token_id" because it will change each page/game, and that there is no alternative for automatically selecting a specific token, I have to make due with "@{selected|" or "@{target|".  In the below macro, all FX currently utilize "@{target|" with the exception of Hellish Rebuke, which I wanted to use a beam FX on.  The beam FX requires a point of origin (currently chosen with "@{selected|" but I am hoping to replace this to reduce clicks).  However, with the way the macro is currently set up, I have to have my token selected for ANY action, not just Hellish Rebuke.  Is there a way to change this so that the macro ONLY requires the token to be selected if I intend on using the Hellish Rebuke/Beam FX part? Thanks for any input/advice/responses! Macro for reference: ?{Weapon| Booming Blade (Attack), &{template:atkdmg} {{mod=+[[@{dexterity_mod} [DEX] + @{pb} [PROF] + 1 [EQUIP]]]}} {{rname=Booming Blade}} {{r1=[[?{Attack Type|Standard, 1d20|Advantage, 2d20kh1|Disadvantage, 2d20kl1} + @{dexterity_mod} [DEX] + @{pb} [PROF] + 1 [EQUIP]]]}} {{normal=1}} {{attack=1}} {{range=5 ft}} {{damage=1}} {{dmg1flag=1}} {{dmg1=[[1d4 + [[floor((@{level} + 1)/6)]]d8 + @{dexterity_mod} [DEX] + 1 [EQUIP]]]}} {{dmg1type=Piercing/Thunder}} {{crit1=[[1d4 + [[floor((@{level} + 1)/6)]]d8 + 1]]}} /fx burst-frost @{target|token_id} | Booming Blade (Sneak Attack), &{template:atkdmg} {{mod=+[[@{dexterity_mod} [DEX] + @{pb} [PROF] + 1 [EQUIP]]]}} {{rname=Sneak Attack – Booming Blade}} {{r1=[[?{Attack Type|Standard, 1d20|Advantage, 2d20kh1} + @{dexterity_mod} [DEX] + @{pb} [PROF] + 1 [EQUIP]]]}} {{normal=1}} {{attack=1}} {{damage=1}} {{dmg1flag=1}} {{dmg1=[[1d4 + [[floor((@{level} + 1)/6)]]d8 + @{dexterity_mod} [DEX] + [[ceil(@{base_level}/2)]]d6 + 1 [EQUIP]]]}} {{dmg1type=Piercing}} {{crit1=[[1d4 + [[floor((@{level} + 1)/6)]]d8 + [[ceil(@{base_level}/2)]]d6 + 1]]}} /fx burst-frost @{target|token_id} | Booming Blade (Damage), &{template:simple} {{rname=Booming Blade}} {{mod=Thunder}} {{r1=[[[[1 + floor((@{level} + 1)/6)]]d8]]}} {{normal=1}} /fx nova-frost @{target|token_id} | Hellish Rebuke, &{template:atkdmg} {{rname=Hellish Rebuke}} {{range=60 ft}} {{damage=1}} {{dmg1flag=1}} {{dmg1=[[3d10]]}} {{dmg1type=Fire}} {{save=1}} {{saveattr=Dexterity}} {{savedesc=Creature takes half as much damage on a successful save.}} {{savedc=[[8 + @{charisma_mod} [CHA] + @{pb} [PROF]]]}} {{desc=You point your finger, and the creature that damaged you is momentarily surrounded by hellish flames.}} /fx beam-fire @{selected|token_id} @{target|token_id} | Hex (Spell), &{template:spell} {{level=1 st -level enchantment}} {{name=Hex}} {{castingtime=1 bonus action}} {{range=90 ft}} {{v=1}} {{s=1}} {{m=1}} {{material=Petrified newt eye}} {{duration=up to 1 hour}} {{description=Until the spell ends, you deal extra necrotic damage to the target when you hit it with an attack.  Also, choose one ability when you cast the spell.  The target has disadvantage on ability checks made with the chosen ability.  If the target drops to 0 hit points before this spell ends, you can use a Bonus Action on a turn of yours to curse a new creature.  A Remove Curse cast on the target ends this spell early.}} {{concentration=1}} /fx burst-death @{target|token_id} | Hex (Damage), &{template:simple} {{rname=Hex}} {{mod=Necrotic}} {{r1=[[1d6]]}} {{normal=1}} /fx burn-death @{target|token_id} }
1549847523
The Aaron
Roll20 Production Team
API Scripter
You've pretty much got the best possibly solution without access to the API.