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

AD&D 2E MACROS TO SHARE MKIII

Aqua Alex said: Elena S. said: Okay folks! I've added over 25 spells to the 2Espell wiki page, feel free to head on over and check it out. I also set up a quick template with instructions on how to use it so that y'all can easily add your own macros to the wiki if the urge to do so should hit you. This should make it easy for everyone contributing to have their macros displayed consistently. <a href="https://wiki.roll20.net/AD%26D_2Espell_Macros" rel="nofollow">https://wiki.roll20.net/AD%26D_2Espell_Macros</a> Ok I see you already put link from main AD&D page cool :) Maybe the spell sheet need a way of better show alternate versions of spells and what is different? For spells would be cool to do a macro we can make a token action that then shows the levels of spells available to a character and when he clicks on the level macro he sees all spell macros and then click on the spell name to run macro that's the aim of the catch all macros i wrote out, though i'd recommend using something a bit more elegant for commonly used spells like magic missile. if you give them a test just make sure to add Magelevel as an attribute on a sheet.
1488071689

Edited 1488071774
Elena S.
Sheet Author
I'm actually looking at adding support for multi/dual class characters to the character sheet in the near future. Once implemented you'd be able to call the specific class level attribute from the character sheet directly. That's something that has the potential to break a lot of people's macros though so I'm going slow on that for the time being. The new level attributes planned will be: Warrior (Fighter/Paladin/Ranger) - @{level-F} Wizard (Mage/Specialist Wizard) - @{level-W} Priest (Cleric/Druid) - @{level-C} Rogue (Bard/Thief) - @{level-R} Psionicist - @{level-P} There will also be an additional Checkbox with an attribute to indicate whether a character is Dual Classed or not. The whole kit and kaboodle will allow me to write a Sheet Worker Script to automatically calculate ThAC0 as well as provide specific level attributes to call for Caster Level for Multi-Class and Dual Class characters. Part of the holdup with getting that functionality added to the Beta version of the character sheet is figuring out the script.
Robert w. said: if you need a starting point for anything inparticular heres my work up. <a href="https://docs.google.com/spreadsheets/d/1TsaLChbq8T" rel="nofollow">https://docs.google.com/spreadsheets/d/1TsaLChbq8T</a>... These are all definitely a good start. Looking at them though the macros cannot be used individually since you've coded them all with html replacements for all of the closing brackets and such. I would also advise paring the text down in the spell descriptions since as written, many of them will post a massive wall of text into chat. That and most don't appear to actually have the various rolls set up so that the roll20 dice engine will roll them for you when you use the macro. Aqua Alex said: For spells would be cool to do a macro we can make a token action that then shows the levels of spells available to a character and when he clicks on the level macro he sees all spell macros and then click on the spell name to run macro Gargamond and I already both use similar macros in our campaigns. On each Spellcaster's sheet we put a single "Cast Spell" macro that posts their spell/prayer book in a template in chat (whispered back to that character) and they then click the link for the spell they are casting and it activates the spell macro from the master collection. Here's a sample of how I've set that up for one of the wizards in my campaign: /w @{selected|token_name} &{template:default}{{name=SPELLS LIST}}{{W1 [ARMOR](! #W1-ARMOR) [SLEEP](! #W1-SLEEP) [PROTECTION FROM EVIL](! #W1-PROTECTION-FROM-EVIL) W2 [FLAMING SPHERE](! #W2-FLAMING-SPHERE) W4 [THUNDERSTAFF SCROLL](! #W4-THUNDERSTAFF)}} Once it's set up, you simply add links to the various spells in the campaign macro collection to the character's "Spellbook Macro"
1488440258

Edited 1488441220
Ok getting an error when one selects a choice from a 'Fumble or Critical Hit Result' Menu in the chat box: "TypeError: Cannot read property 'substring' of undefined" The error only comes up when I have the the following Macros in the DM's Global 'Collection' folder, however it all works fine when these macros are in the Character Sheet itself: (NOTE: The Roll Macros makes calls to API Scripts that roll the result of the Fumble or Critical Hit from specific tables, based on Dragon Magazine Volume 5, #1, P. 34-35)&nbsp; Name:&nbsp;RollFumbleCritHitResult /w @{selected|token_name} &{template:default}{{name= @{selected|token_name}'s FUMBLE OR CRITICAL HIT RESULT}}{{[FUMBLE](! #FUMBLE)[CRIT-HIT EDGED](! #CRIT-HIT-EDGED)[CRIT-HIT BLUNT](! #CRIT-HIT-BLUNT)[CRIT-HIT MISSILE/THROWN](! #CRIT-HIT-MISSILETHROWN)[CRIT-HIT VS ANIMALS](! #CRIT-HIT-VSANIMALS)}} Sub-Macros for the Above generated Menu: Name: FUMBLE &{template:2Edefault}{{name=@{selected|token_name} the @{class}'s Critical FUMBLE ROLL of 1 Results in:}} !adv-fumble Name: CRIT-HIT-EDGED &{template:2Edefault}{{name=@{selected|token_name} the @{class}'s Critical EDGED WEAPON ROLL of 20 Results in:}} !adv-CriticalHitsEdged Name: CRIT-HIT-BLUNT &{template:2Edefault}{{name=@{selected|token_name} the @{class}'s Critical BLUNT WEAPON ROLL of 20 Results in:}} !adv-CriticalHitsBlunt Name: CRIT-HIT-MISSSILTHROWN &{template:2Edefault}{{name=@{selected|token_name} the @{class}'s Critical MISSILE/THROWN WEAPON ROLL of 20 Results in:}} !adv-CriticalHitsMissileThrowing Name: CRIT-HIT-VSANIMALS &{template:2Edefault}{{name=@{selected|token_name} the @{class}'s Critical VS ANIMALS ROLL of 20 Results in:}} !adv-CriticalHitsVsAnimals Here is the Result after clicking 'Fumble' for example, when the above are global 'Collection' macros: Here is the result when the above roll macros are in the character sheet itself:
1488446939

Edited 1488447100
Elena S.
Sheet Author
The sub-string of undefined error is usually encountered when an attribute from a character sheet is not called properly. When calling a macro from the collection you need to have the "selected|" or "target|" property defined in all of the attribute calls of the macro. Looking at the macros you have there it looks like &nbsp;you just need to change your @{class} calls to @{selected|class} in each of your branch macros. The way they are currently written it doesn't know where to find the "Class" attribute you have called. Hence the "substring" of undefined error.
Ok Thanks Elena the Macros work now !
1489552361

Edited 1489554475
Gargamond said: AMMO RECOVERY I've been looking for arrow recovery rules for months. &nbsp; Lo' and behold, it's in the Complete Book of Elves I will rewrite my macro for this and post it here. Remember, this is only for items which are shot from bows, crossbows, and firearms. &nbsp;Thrown weapons are almost always recoverable (usually due to extremely short range categories) According to the math, apparently bullets don't break when they hit the target. &nbsp;Yet another advantage of the severely slow-to-reload firearms. &nbsp;Also, it seems that the upper limit to this macro is 999 units of ammo. &nbsp;According to the rules, time wasn't even a factor, so I left it out. &nbsp;The cool thing about this macro is that, just like the one before it, you can still roll for round to round searching if the DM is tracking actions round-to-round (like in a dungeon) one arrow at a time. I changed the numbers to reflect that the text specifically says that it's the arrow and bolt shafts that break. &nbsp;My judgement was that arrows are made of "thin wood". &nbsp;This was a DM discretion call, as I tend to reserve the &nbsp;"thick wood" category for ship hulls, trees, furniture, doors, drawbridges, etc. &nbsp;If you don't agree with that, just change the 13s to 10s. &nbsp;Nevermind the -6 and -3. &nbsp;That's just because saving throws are roll high in 2e, so the numbers just work that way. &{template:2Edefault}{{name=@{selected|token_name} ATTEMPTS TO RECOVER AMMUNITION}}{{OF THE [[?{HOW MUCH AMMUNITION?|1}]] SHOT(S) FIRED, @{selected|token_name} RECOVERS [[[[[[[[?{HOW MANY SHOTS SUCCESSFULLY HIT? IF YOU ARE NOT IN WIDE OPEN SPACES, COUNT THEM ALL AS HITS.|1}]]D20&gt;[[?{WHAT KIND OF AMMO ARE YOU RECOVERING?|ARROWS AND CROSSBOW BOLTS, 13|BULLETS, 7}-6]]]]]]+[[[[[[?{HOW MUCH AMMUNITION?|1}-?{HOW MANY SHOTS SUCCESSFULLY HIT? IF YOU ARE NOT IN WIDE OPEN SPACES, COUNT THEM ALL AS HITS.|1}]]D100&lt;10]]D20&gt;[[?{WHAT KIND OF AMMO ARE YOU RECOVERING?|ARROWS AND CROSSBOW BOLTS, 13|BULLETS, 7}-4]]]]]] UNIT(S) OF AMMUNITION.}}
1489966216

Edited 1489966236
The new Druid Regeneration This macro assumes you have your first weapon on your weapon table set up for a touch attack, complete with your character's racial size category as the weapon size. &{template:2Edefault}{{name=@{selected|token_name} SHAPECHANGES INTO A ?{Name of a real-world animal (excluding giant forms a-la druid handbook) which is size Tiny to as large as @{selected|weapsize}.}}}{{REGENERATES[[floor((@{selected|HP|max}-@{selected|hp})*((1d6)*0.1))]] HP}}
1491090841
AquaAlex
Sheet Author
Translator
API Scripter
Elena S. said: Gargamond and I already both use similar macros in our campaigns. On each Spellcaster's sheet we put a single "Cast Spell" macro that posts their spell/prayer book in a template in chat (whispered back to that character) and they then click the link for the spell they are casting and it activates the spell macro from the master collection. I have created macros for all priest spells from PHB, ToM and Druid's Handbook up to level 4 already :) I also created a spell list for Priests, Clerics & Druids calling those spell macros.
1491091075

Edited 1491091097
AquaAlex
Sheet Author
Translator
API Scripter
Elena S. said: I'm actually looking at adding support for multi/dual class characters to the character sheet in the near future. Once implemented you'd be able to call the specific class level attribute from the character sheet directly. That's something that has the potential to break a lot of people's macros though so I'm going slow on that for the time being. The new level attributes planned will be: Warrior (Fighter/Paladin/Ranger) - @{level-F} Wizard (Mage/Specialist Wizard) - @{level-W} Priest (Cleric/Druid) - @{level-C} Rogue (Bard/Thief) - @{level-R} Psionicist - @{level-P} There will also be an additional Checkbox with an attribute to indicate whether a character is Dual Classed or not. The whole kit and kaboodle will allow me to write a Sheet Worker Script to automatically calculate ThAC0 as well as provide specific level attributes to call for Caster Level for Multi-Class and Dual Class characters. Part of the holdup with getting that functionality added to the Beta version of the character sheet is figuring out the script. So I have basically added the following to my character Sheet under Attributes: RogueLevel PriestLevel MageLevel WarriorLevel And for Spells I use the MageLevel or PriestLevel, currently it is a manual action to update those values when character levels up (for single class characters I just put @{level} in the appropriate block so it autoupdates but for multiclass/dual class it does not work. So wil be nice if this can be part of the sheet itself. And it will not break anything for anyone.
1491091227
AquaAlex
Sheet Author
Translator
API Scripter
I have finished writing the WorkerScript to update all the items related to the Stats, so when a stat changes it will assign correct values to the derived fields and to the thief skills Dex column. Next I will add the Worker Script for Thaco calculation
1491947457

Edited 1496037360
More ThAC0s ROGUE: [[21-(ceil(@{level}/2))]] WARRIOR: [[21-@{level}]] WIZARD: [[21-(ceil(@{level}/3))]] CLERIC: [[22-(ceil(@{level}/3)*2)]] MONSTER: [[20-@{level}]] HYDRA: [[20-(((floor(@{level}/2))+1)*2)]] ROPER: [[21-((ceil(@{level}/2))*2)]] PSIONICIST MThAC0:&nbsp;[[[[21-@{selected|level}]]-[[{4,(ceil((@{selected|intelligence}-15)/2))}kl1]]]] Dragon ThAC0s coming soon. :D *casually slips in hydra damage:&nbsp;1D[[[[(ceil(@{level}/3))+1]]*2]]
1492297127

Edited 1492297156
REVISED RANGER Bonus to tracking:&nbsp; +[[floor(@{level}/3)]] Animal empathy: /w gm &{template:2Edefault}{{name=ANIMAL EMPATHY}}{{@{selected|token_name} WITH @{target|token_name}}}{{DOMESTICATED/NON-HOSTILE ANIMALS ARE AUTOMATIC}}{{WILD OR TRAINED ATTACK ANIMALS SAVE VS RODS WITH A -[[ceil(@{selected|level}/3)]]}}{{ROLL ENCOUNTER REACTIONS WITH @{selected|token_name}}}{{@{selected|token_name} MAY ADJUST CREATURES' REACTIONS UP OR DOWN BY ONE WHOLE CATEGORY IF THEY FAIL THE SAVE.}}
1492297455

Edited 1492297506
REVISED BARD ROOT MACRO BARDIC-ABILITIES /w @{selected|token} &{template:2Edefault}{{name=BARD ABILITIES}}{{[COUNTERSONG](! #BARD-COUNTER-SONG)[INFLUENCE REACTIONS](! #BARD-INFLUENCE-REACTIONS)[LEGEND LORE](! #BARD-LEGEND-LORE)[RALLY ALLIES](! #BARD-RALLY-ALLIES)[SPELL TRANSLATION](! #BARD-TRANSLATION)}} BRANCH MACROS: BARD-COUNTER-SONG &{template:2Edefault}{{name=@{selected|token_name} PERFORMS A COUNTER SONG}}{{FOR AS LONG AS @{selected|token_name} FULFILLS THE FOLLOWING CONDITIONS:}}{{IMMEDIATELY SAVE VS. SPELL}}{{TAKE NO DAMAGE}}{{MAKE ALL SAVING THROWS}}{{WALK AT HALF MOVEMENT RATE}}{{EVERYTHING WITHIN [[30]] FEET OF @{selected|token_name} IS IMMUNE TO VERBAL CHARM-RELATED SPELLS AND EFFECTS AS WELL AS ANY KIND OF SONIC ATTACKS.}} BARD-INFLUENCE-REACTIONS /w gm &{template:2Edefault}{{name=@{selected|token_name} PERFORMS TO INFLUENCE REACTIONS}}{{NPC'S WITHIN [[90]] FEET ROLL SAVES VS PARALYZATION WITH A -[[ceil(@{selected|level}/3)]] PENALTY TO THE SAVING THROW.}}{{AFFECTED CREATURES ROLL ENCOUNTER REACTIONS WITH @{selected|token_name} NORMALLY.}}{{@{selected|token_name} MAY ADJUST ANY AFFECTED CREATURE'S REACTIONS UP OR DOWN BY ONE WHOLE CATEGORY.}} BARD-LEGEND-LORE (COMING SOON) BARD-RALLY-ALLIES &{template:2Edefault}{{name=@{selected|token_name} PERFORMS TO RALLY ALLIES}}{{AFTER CONCENTRATING ON @{selected|token_name} FOR 3 FULL ROUND ACTIONS, CHARACTERS WHOM ARE FRIENDLY TO @{selected|token_name} AND ARE WITHIN [[@{selected|level}*10]] FEET OF @{selected|token_name} RECEIVE}}{{?{ONE OF THE FOLLOWING THREE BENEFITS| ATTACK ROLL BONUS, PLUS ONE TO ATTACK ROLLS | SAVING THROW BONUS, PLUS ONE TO SAVING THROWS | MORALE BONUS, PLUS TWO TO MORALE} FOR [[@{selected|level}]] ROUND(S)}} BARD-TRANSLATION /w gm &{template:2Edefault}{{name=BARDIC NOTATION TRANSLATION}}{{@{selected|token_name} @{selected|class} LEVEL @{selected|level}}}{{Translating ?{SPELL BEING COMPREHENDED?|NAME OF SPELL} TO BARDIC NOTATION.}}{{[[D100&lt;[[(({10,@{selected|level}}kl1)*5)+35(?{MISCELLANEOUS MODIFIER?|+0})]]]] SUCCESS(ES)}}
1492325011

Edited 1494019610
THE SPELL MATRIX Feel like saving some time on putting spells onto character sheets? Tired of spell template f*ckery? Try making a spell matrix which is available to all tokens. Check the box for token action on the root "CAST-A-SPELL" macro, and make all the branch macros available to all players. WHAT IT LOOKS LIKE:&nbsp; <a href="https://youtu.be/7KyIDP6Onus?list=PLV0EY59qUHY8f9c6jTyUTQRYRiONkS4Aa" rel="nofollow">https://youtu.be/7KyIDP6Onus?list=PLV0EY59qUHY8f9c6jTyUTQRYRiONkS4Aa</a> HOW TO INSTALL IT:&nbsp; <a href="https://youtu.be/JZJlHZlzFZk?list=PLV0EY59qUHY8f9c" rel="nofollow">https://youtu.be/JZJlHZlzFZk?list=PLV0EY59qUHY8f9c</a>... CAST-A-SPELL /w @{selected|token_name} &{template:2Edefault}{{name=SPELLS}}{{[WIZARD SPELLS](! #WIZARD-SPELLS)[PRIEST SPELLS](! #PRIEST-SPELLS)}} WIZARD-SPELLS /w @{selected|token_name} &{template:2Edefault}{{name=WIZARD SPELLS}}{{LEVEL [1](! #W-1)[2](! #W-2)[3](! #W-3)[4](! #W-4)[5](! #W-5)[6](! #W-6)[7](! #W-7)[8](! #W-8)[9](! #W-9)}} W-1 /w @{selected|token_name} &{template:2Edefault}{{name=WIZARD 1 SCHOOLS}}{{[ALTERATION](! #W-1-ALTERATION)[NECROMANCY](! #W-1-NECROMANCY)}} W-1-ALTERATION /w @{selected|token_name} &{template:2Edefault}{{name=WIZARD 1 ALTERATION SPELLS}}{{[BURNING HANDS](! #W-1-ALTERATION-BURNING-HANDS)}} W-1-ALTERATION-BURNING-HANDS /w gm &{template:2Espell}{{title=@{selected|token_name} CASTS Burning Hands AS A LEVEL ?{CASTING LEVEL? Class:@{selected|class} Level:@{selected|level}|1} CASTER}}{{splevel=Level 1 Wizard}}{{school=(Alteration)}}{{range=[[0]]}}{{components=V, S}}{{duration=Instantaneous}}{{time=[[1]] Segment}}{{aoe=The caster}}{{save=½}}{{damage=[[D3+({10,?{CASTING LEVEL? Class:@{selected|class} Level:@{selected|level}|1}}kl1)*2]] Fire Damage}}{{effects= When the wizard casts this spell, a jet of searing flame shoots from his fingertips. His hands must be held so as to send forth a fanlike sheet of flames: The wizard's thumbs must touch each other and the fingers must be spread. The burning hands send out flame jets 5 feet long in a horizontal arc of about 120 degrees in front of the wizard?{Do you want to display the full text of this spell?|No,.|Yes,. Any creature in the area of the flames suffers 1d3 points of damage plus 2 points for each level of experience of the spellcaster to a maximum of 1d3+20 points of fire damage. Those successfully saving vs. spell receive half damage. Flammable materials touched by the fire burn (for example cloth paper parchment thin wood etc.). Such materials can be extinguished in the next round if no other action is taken.}}}
1493060756

Edited 1493764112
OVERBEAR-STRENGTH /w gm &{template:2Edefault}{{name=OVERBEAR STRENGTH}}{{@{selected|token_name}?{WHICH SIZE CATEGORY IS @{selected|token_name}?|MEDIUM, +12|SMALL, +8|TINY, +4|LARGE, +16|HUGE, +20|GARGANTUAN, +24}?{WHICH SIZE CATEGORY IS @{target|token_name}?|MEDIUM, -12|SMALL, -8|TINY, -4|LARGE, -16|HUGE, -20|GARGANTUAN, -24}?{HOW MANY ADDITIONAL ATTACKERS ARE HELPING YOU?|+0}?{DOES YOUR TARGET HAVE MORE THAN TWO LEGS?|NO, +0|YES, -4}?{@{selected|token_name}'s MISCELLANEOUS MODIFIER|+0} @{target|token_name}?{@{target|token_name}'s MISCELLANEOUS MODIFIER|+0}}}{{@{selected|token_name}'s [[D20cs&gt;[[@{target|strength}+1?{@{target|token_name}'s MISCELLANEOUS MODIFIER|+0}]]cf20cf&gt;[[@{selected|strength}+1?{WHICH SIZE CATEGORY IS @{selected|token_name}?|MEDIUM, +12|SMALL, +8|TINY, +4|LARGE, +16|HUGE, +20|GARGANTUAN, +24}?{WHICH SIZE CATEGORY IS @{target|token_name}?|MEDIUM, -12|SMALL, -8|TINY, -4|LARGE, -16|HUGE, -20|GARGANTUAN, -24}?{HOW MANY ADDITIONAL ATTACKERS ARE HELPING YOU?|+0}?{DOES YOUR TARGET HAVE MORE THAN TWO LEGS?|NO, +0|YES, -4}?{@{selected|token_name}'s MISCELLANEOUS MODIFIER|+0}]]&lt;[[@{selected|strength}?{@{selected|token_name}'s MISCELLANEOUS MODIFIER|+0}]]]] SUCCESS(ES)}}{{@{target|token_name}'s [[D20cs&gt;[[@{selected|strength}+1?{WHICH SIZE CATEGORY IS @{selected|token_name}?|MEDIUM, +12|SMALL, +8|TINY, +4|LARGE, +16|HUGE, +20|GARGANTUAN, +24}?{WHICH SIZE CATEGORY IS @{target|token_name}?|MEDIUM, -12|SMALL, -8|TINY, -4|LARGE, -16|HUGE, -20|GARGANTUAN, -24}?{HOW MANY ADDITIONAL ATTACKERS ARE HELPING YOU?|+0}?{DOES YOUR TARGET HAVE MORE THAN TWO LEGS?|NO, +0|YES, -4}?{@{selected|token_name}'s MISCELLANEOUS MODIFIER|+0}]]cf20cf&gt;[[@{target|strength}+1?{@{target|token_name}'s MISCELLANEOUS MODIFIER|+0}]]&lt;[[@{target|strength}?{@{target|token_name}'s MISCELLANEOUS MODIFIER|+0}]]]] SUCCESS(ES)}}{{IF BOTH SUCCESSES MATCH, THE HIGHER DIEROLL WINS. IF TIED, THE CONTEST EXTENDS INTO THE FOLLOWING ROUND.}} /fx bubbling-smoke @{selected|token_id} /fx bubbling-smoke @{target|token_id} /desc @{selected|token_name} clashes against @{target|token_name} in an epic struggle for physical dominance! Boom. &nbsp;You're welcome! Enjoy! :D
1493540174

Edited 1495249644
DM MACRO The final evolution of the GROUP XP MACRO. &nbsp;Easier to read and understand. (Special thanks to <a href="https://app.roll20.net/users/231635/christos-despo" rel="nofollow">https://app.roll20.net/users/231635/christos-despo</a>... for presentation) &{template:2Edefault}{{name=GROUP XP}}{{subtitle=?{NUMBER OF CREATURES IN THE ENCOUNTER OR NUMBER OF ADVENTURES COMPLETED|1} ?{NAME OF CREATURE OR ADVENTURE}(s)}}{{CHARACTER TYPE=Amount of XP gained}}{{PC with 1 class PC with 2 classes PC with 3 classes=[[[[floor((?{NUMBER OF CREATURES IN THE ENCOUNTER OR NUMBER OF ADVENTURES COMPLETED|1}*?{EXPERIENCE POINT VALUE PER MONSTER OR ADVENTURE|15})/(?{NUMBER OF PLAYER CHARACTERS|4}*2+?{NUMBER OF NPC'S WHO EARN XP|0}))]]*2]] [[floor([[[[floor((?{NUMBER OF CREATURES IN THE ENCOUNTER OR NUMBER OF ADVENTURES COMPLETED|1}*?{EXPERIENCE POINT VALUE PER MONSTER OR ADVENTURE|15})/(?{NUMBER OF PLAYER CHARACTERS|4}*2+?{NUMBER OF NPC'S WHO EARN XP|0}))]]*2]]/2)]] [[floor([[[[((?{NUMBER OF CREATURES IN THE ENCOUNTER OR NUMBER OF ADVENTURES COMPLETED|1}*?{EXPERIENCE POINT VALUE PER MONSTER OR ADVENTURE|15})/(?{NUMBER OF PLAYER CHARACTERS|4}*2+?{NUMBER OF NPC'S WHO EARN XP|0}))]]*2]]/3)]]}}{{NPC with 1 class NPC with 2 classes NPC with 3 classes=[[floor([[[[floor((?{NUMBER OF CREATURES IN THE ENCOUNTER OR NUMBER OF ADVENTURES COMPLETED|1}*?{EXPERIENCE POINT VALUE PER MONSTER OR ADVENTURE|15})/(?{NUMBER OF PLAYER CHARACTERS|4}*2+?{NUMBER OF NPC'S WHO EARN XP|0}))]]*2]]/2)]] [[floor([[[[floor((?{NUMBER OF CREATURES IN THE ENCOUNTER OR NUMBER OF ADVENTURES COMPLETED|1}*?{EXPERIENCE POINT VALUE PER MONSTER OR ADVENTURE|15})/(?{NUMBER OF PLAYER CHARACTERS|4}*2+?{NUMBER OF NPC'S WHO EARN XP|0}))]]*2]]/4)]] [[floor([[[[((?{NUMBER OF CREATURES IN THE ENCOUNTER OR NUMBER OF ADVENTURES COMPLETED|1}*?{EXPERIENCE POINT VALUE PER MONSTER OR ADVENTURE|15})/(?{NUMBER OF PLAYER CHARACTERS|4}*2+?{NUMBER OF NPC'S WHO EARN XP|0}))]]*2]]/6)]]}}{{RANGERS WITH RACIAL HATRED VS ?{NAME OF CREATURE OR ADVENTURE} EARN=[[floor((?{THE NUMBER OF CREATURES DEFEATED IN THE ENCOUNTER|0}*?{THE NUMBER OF HIT DICE PER CREATURE|1})/?{THE NUMBER OF WARRIORS AND BARDS IN THE PARTY|1})*20]] PER RANGER LEVEL}}{{ALL OTHER WARRIORS AND RANGERS EARN=[[floor((?{THE NUMBER OF CREATURES DEFEATED IN THE ENCOUNTER|0}*?{THE NUMBER OF HIT DICE PER CREATURE|1})/?{THE NUMBER OF WARRIORS AND BARDS IN THE PARTY|1})*10]] PER WARRIOR LEVEL}}{{BARDS EARN=[[floor((?{THE NUMBER OF CREATURES DEFEATED IN THE ENCOUNTER|0}*?{THE NUMBER OF HIT DICE PER CREATURE|1})/?{THE NUMBER OF WARRIORS AND BARDS IN THE PARTY|1})*5]] PER BARD LEVEL}}
1493779182

Edited 1496037513
DM MACRO BARDIC LEGEND LORE This one is pretty spiffy, if I do say so myself. &nbsp;Don't forget: &nbsp;don't make this macro available to players. &nbsp;Only the DM should know the diceroll results for Legend Lore, Identify spells, etc. to add to the mystery of the item. &nbsp;You can use the turn order tracker to track round-to-round inspection of the item while the &nbsp;other players roleplay. &nbsp;If you don't want to create rollable tables for this one, just delete the 1t script around general lore and specific lore. &nbsp;You will have to arbitrarily choose what information to share every time, in that case. BARD-LEGEND-LORE /w gm &{template:2Edefault}{{name=LEGEND LORE}}{{@{selected|token_name}=**?{NAME OF THE ITEM}**}}{{[[D10]] ROUNDS=[[D100cf1cs&lt;?{WHAT IS YOUR BARD LEVEL? Class:@{selected|class} Level:@{selected|level}|1}&lt;[[?{WHAT IS YOUR BARD LEVEL? Class:@{selected|class} Level:@{selected|level}|1}*5]]]] **SUCCESS(ES)**}}{{[[1]]=[[1t[BARDIC-LORE-GENERAL]]]}}{{[[D1cs1cf0]]=[[1t[BARDIC-LORE-SPECIFIC]]]}}{{[[D1cf1cs1]]=**BARD KNOWS ALL**}}{{[[0]]=**FAIL**}} /fx glow-smoke @{selected|token_id}
POTION OF HEALING LET ME KNOW IF THERE IS A HEALING POTION TYPE BESIDES HEALING AND EXTRA HEALING &{template:2Edefault} {{name=Potion}} {{subtitle=@{selected|token_name} uses a potion of healing}} {{?{Potency of Potion|Potion of Healing|Potion of Extra Healing| Potion of Extra Healing One Dose| Potion of Extra Healing Two Doses}= ?{Extra Healing used|One Dose, [[1d8]] | Two Doses, [[2d8]] | Three Doses, [[3d8+3]] | None (Potion of Healing), [[2d4+2]]}}}