5e D&D Framework

Framework(s) for D&D 5e.

Moderators: dorpond, trevor, Azhrei, giliath, Gamerdude, jay, Mr.Ice

paulstrait
Dragon
Posts: 304
Joined: Mon Mar 23, 2009 4:48 pm

Re: 5e D&D Framework

Post by paulstrait »

dantarith wrote:Since so many rolls in 5e include the "Proficiency Bonus" I edited the Basic ->Token Properties in my campaign properties. I also wanted it to show it on the Token Stats so I added this code
Spoiler
*ProfBonus:2
between "*Class:Hobo" and "*Level:1". I also modified the "Lib:CharacterSheet -> DrawCharacterSheet Macro to
Spoiler
[h:Token = getStrProp(macro.args, "ParentToken")]
[frame(getName(), "width=650; height=500"): {<html><head><title>[r,token(Token): getName()]</title></head>
<body style="font-size:12pt"><table width="100%"><tr><td colspan="2" valign="bottom" style="background-color:#3A1E1A;text-align:center;color:white;font-weight:bold;font-size:14pt">
[r,token(Token): getName()]
</td></tr><tr><td colspan="2"><table width="100%"><tr><td width="30%"><table valign="top" width="100%"><tr>
<td valign="top" style="text-align:left"><b>AC</b></td>
<td valign="top" style="text-align:left">[r,token(Token): AC]</td>
</tr><tr>
<td valign="top" style="text-align:left"><b>HP</b></td>
<td valign="top" style="text-align:left">[r,token(Token): HP]</td>
</tr><tr>
<td valign="top" style="text-align:left"><b>Speed</b></td>
<td valign="top" style="text-align:left">[r,token(Token): Speed]</td>
</tr><tr>
<td valign="top" style="text-align:left"><b>Hit Dice</b></td>
<td valign="top" style="text-align:left">[r,token(Token): HitDice]</td>
</tr><tr>
<td valign="top" style="text-align:left"><b>Prof Bonus</b></td>
<td valign="top" style="text-align:left">[r,token(Token): ProfBonus]</td>
</tr><tr><td></td></tr></table></td></td><td><table width="100%"><tr><td valign="top" width="30%" class="stat" >
Strength
</td><td>
[r,token(Token): Strength] ([r,token(Token): FLOOR((Strength - 10)/ 2)])
</td></tr><tr><td valign="top" width="30%" class="stat">
Dexterity
</td><td>
[r,token(Token): Dexterity] ([r,token(Token): FLOOR((Dexterity - 10)/ 2)])
</td></tr><tr><td valign="top" width="30%" class="stat">
Constitution
</td><td>
[r,token(Token): Constitution] ([r,token(Token): FLOOR((Constitution - 10)/ 2)])
</td></tr><tr><td valign="top" width="30%" class="stat">
Intelligence
</td><td>
[r,token(Token): Intelligence] ([r,token(Token): FLOOR((Intelligence - 10)/ 2)])
</td></tr><tr><td valign="top" width="30%" class="stat">
Wisdom
</td><td>
[r,token(Token): Wisdom] ([r,token(Token): FLOOR((Wisdom - 10)/ 2)])
</td></tr><tr><td valign="top" width="30%" class="stat">
Charisma
</td><td>
[r,token(Token): Charisma] ([r,token(Token): FLOOR((Charisma - 10)/ 2)])
</td></tr></table></td></tr></table></tr>
[MACRO("_DrawLanguages@Lib:CharacterSheet") : "LanguageInfo=" + Languages]
[MACRO("_DrawInventory@Lib:CharacterSheet") : "EquipmentInfo=" + Inventory]
</table></body></html>
}]
I didn't know if you were planning on adding it the next version so I thought I would post it here in case anyone else wants to use it. Now you can modify any attack rolls etc to include it :)

Here is an example for others on how to use it in the exsisting Attack Macro when you add a new weapon that the char is Proficient with.
"Hit:" 1d20+St+ProfBonus or [t: d20+St+ProfBonus] to show just the value with a mouse over tooltip
Sorry for not replying sooner, I've been busy with real life and any free time I've had I've devoted to running my weekly game. The answer to this question is that the 'SkillDie' property is what we've used for the proficiency bonus. Older tokens have the value entered manually; newer tokens are automated with {ceiling(level/4)+1} as the value.

paulstrait
Dragon
Posts: 304
Joined: Mon Mar 23, 2009 4:48 pm

Re: 5e D&D Framework

Post by paulstrait »

dantarith wrote:The max weight calculation in "_DrawInventory@Lib:CharacterSheet" is incorrect according to PHB.
It should be:

Code: Select all

[r:Weight] / [r:Strength * 15] instead of [r:Weight] / [r:Strength * 10]
Or, am I missing some other modifier you are calculating?

***I really should use the preview option :lol:

Ah. We use a separate google spreadsheet for handling this stuff so I never noticed that this was incorrect. I've fixed it so it will be accurate in the next update.

paulstrait
Dragon
Posts: 304
Joined: Mon Mar 23, 2009 4:48 pm

Re: 5e D&D Framework

Post by paulstrait »

dantarith wrote:
dantarith wrote:First off, thank you for creating this framework!

I have a question/request for you. On the "Ability Check" Macro would it be possible to
add a tab that says "Stat Check" and move the existing "Roll Ability" to that tab then make the "Roll Ability" tab a drop down selection with all the actual possible Ability checks i.e. Animal Handling etc? I know the current one works fine but we are still unsure of what stat goes for what check in 5e and have to stop to look them up and this feature would really help!
UPDATE: I have modified the listed skills on the "Skills" property on the Lib:CharacterSheet token with the suggested ability check modifier to make it easier for me. I figured I would post it here just to try to save someone the trouble of having to type them in too.
Spoiler
[" Saves: Charisma"," Saves: Constitution"," Saves: Dexterity"," Saves: Intelligence"," Saves: Strength"," Saves: Wisdom"," Stat: Charisma"," Stat: Constitution"," Stat: Dexterity"," Stat: Intelligence"," Stat: Strength"," Stat: Wisdom","(Expertise) Acrobatics (Dex)","(Expertise) Deception (Cha)","(Expertise) Insight (Wis)","(Expertise) Perception (Wis)","(Expertise) Stealth (Dex)","(Expertise) Thieves Tools (Dex)","Acrobatics (Dex)","All Armor","Animal Handling (Wis)","Arcana (Int)","Artisan Tools: Brewer's Supplies (Wis)","Artisan Tools: Mason's Tool (Dex)","Artisan Tools: Smith's Tools (Str)","Athletics(Str)","Climber's Kit (Dex)","Deception (Cha)","Disguise Kit(Wis)","Games: Dice Set (Dex)","Games: Dragon Chess (Int)","Games: Playing Card Set (Cha)","Herbalism Kit (Wisdom)","History (Int)","Insight (Wis)","Intimidation (Cha)","Investigation (Int)","Martial Weapons","Medicine (Wis)","Mounts - land (Wis)","Musical Instrument (Wis)","Nature (Int)","Navigator's Tools (Int)","Perception (Wis)","Performance (Cha)","Persuasion (Cha)","Religion (Int)","Shields","Simple Weapons","Sleight of Hand (Dex)","Stealth (Dex)","Stonecunning - History (Int)","Survival (Wis)","Thieves Tools (Dex)","Vehicles - Land (Int)","Artisan Tools: Carpenter's Tools (Dex)"]
Of course these are just suggestions but it's a start. :wink:
I like this idea, and will include it in the next update. It shouldn't negatively affect tokens already created with the old list. The one caveat is that the rules suggest that it may be possible to apply one's proficiency in a skill to an ability check it isn't normally associated with -- but since that's an ad hoc judgment, and since the proficiency list is just there to remind you when you should click the proficiency check box, this doesn't seem like a problem. Thanks for the suggestion!

paulstrait
Dragon
Posts: 304
Joined: Mon Mar 23, 2009 4:48 pm

Re: 5e D&D Framework

Post by paulstrait »

afxxx wrote:Hi!

Wonderful framework! Congratulations for you and your players! :)
Thanks a lot!
Thank you for the kind words! We really just hacked together some stuff based on some excellent work that came before.
afxxx wrote:So far I just have two question:
1. Is there any auto/manual way to track the durations of the conditions/spells (like the Sleep's 10 turns)?
Not presently. I considered implementing something like the condition trackers that Rumble used for his 4e frameworks, but it seemed a bit clunky especially given the scenarios where this issue comes up. We've found that in nearly all cases, the max duration rarely matters b/c most effects either allow a save each turn or end upon some trigger like taking damage or attacking. In the few cases where that isn't the case, we just use the 'note' macro. There's probably a better way.
afxxx wrote:2. Is there an easy way to track the memorized spells?
I just duplicated the few memorized spell's button into an another button-group, but maybe its not the best solution?

Thanks!
A.

btw if there is any updated fw on your end, I love to test it. ;-)
The way that my players track memorized spells is by creating a macro group on their token. So, for example, if you look at the "Human War Cleric" token, there is a group for all spells known, and a group for prepared spells. When the character takes an extended rest, if he prepares different spells, the player just drags the relevant macros from one group to the other. I think this is basically like what you are describing -- in practice it seems pretty efficient.

paulstrait
Dragon
Posts: 304
Joined: Mon Mar 23, 2009 4:48 pm

Re: 5e D&D Framework

Post by paulstrait »

Cherno wrote:Found the solulution. The Change Health makro does indeed update the Health Bar... But there IS no Health bar in the campaign framework, the five bars are all named differently :) So I will just create my own Bar and name it Health, and it will work.
The multiple health bars enable the color to change as the health goes down. The macros should constantly update the health bars whenever there is a change in HP. I think the only exception to this is the Druid token -- the player behind that token set things up so that the HP changes associated with shapechanging are tracked, but I don't think that macro alters the health bar(s). In practice, he always just does a 0 hp change after shifting to get the bar right. I'm sure we'll have that fixed by the next update.

paulstrait
Dragon
Posts: 304
Joined: Mon Mar 23, 2009 4:48 pm

Re: 5e D&D Framework

Post by paulstrait »

Psycher wrote:Love your spell library, unfortunately I cannot transfer it to my campaign without reworking a couple hundred tokens to be compatible to your system.

Does anyone have something similar that can be used simply as a reference? You know, click the macro, get a spell description that pops up. I boggle at the work done to type ALL THAT INFO into macro form, my hat's off to the author, if any kind-hearted soul out there has such a reference and shares it I'll name a major NPC after you!! Hell, I'll make him/her a deity in my campaign! Like, "Lord of All Magic" =)
What I suggest is the following. Create a new token type in the properties called 'Spellbook.' Give it the following variables:
@Strength (Str):0
@Dexterity (Dex):0
@Constitution (Con):0
@Intelligence (Int):0
@Wisdom (Wis):0
@Charisma (Cha):0
St:{floor((Strength - 10)/2)}
Dx:{floor((Dexterity - 10)/2)}
Cn:{floor((Constitution - 10)/2)}
In:{floor((Intelligence - 10)/2)}
Ws:{floor((Wisdom - 10)/2)}
Ch:{floor((Charisma - 10)/2)}
ConSaveModifier:0
Modifier:[]
@Initiative:0
*@Level:1
*@CreatureType (Type)
*@Alignment
HP:0
MaxHP:0
TempHP:0
*@HPDisplay (HP):{HP+TempHP} ({MaxHP})
*AC:0
*@Speed:30
Description (Des)
#DailySpells:[]
@Resistance:[]
@Vulnerability:[]
@Immunity:[]
Languages:[]
Skills:[]
Inventory:[]
dnd.weapons:[]
@CritRange:20
*Note
Charges
First
Second
Third
Fourth
Fifth
Sixth
Seventh
Eighth
Ninth
*Stealth
*#Resist
*#Vulnerable
*#Immune
*#Condition Immunities (Immunities)
*#ConditionImmunities2 (Immunities, continued)
Exhaustion:0
DailyPower1
DailyPower2
DailyPower3
DailyPower4
DailyPower5
DailyPower6
DailyPower7
SkillDie
HitDice:0
*#Passive Perception
*#SpellSlots
*@Concentration
InnateSave
SpellSave
SpellAttack
InitiativeAdvantage
These are just the NPC variables in my framework that the spellbook token uses. Then grab the Melek library token and the spellbook token (and make sure to grab the one from the latest update, as it has all the new Elemental Evil spells). The Melek token should just be wherever your library tokens are, but the spellbook token can be on whatever map you are using, or on every map for that matter b/c it isn't being used as a library token. Then, all you have to do is click the buttons to get a reference. The only things that won't be accurate are saving throw DCs and attack roll modifiers, but since it is just a reference that shouldn't make a difference. It will even roll the damage for you, modifying it as appropriate for the slot the spell is being cast from (if it is a kind of spell that can be cast from a higher spell slot).

I'm flattered by your offer to name an NPC in your campaign in honor of my framework/spellbook. Here are some suggestions:

1) Melek. He was a multicolored parrot and the familiar of one of the PCs in a game I ran a full decade ago.

2) Eru Ilúvatar. Named in honor of the deity in Tolkein's Silmarillion, he was a benevolent time-travelling Elven wizard NPC in a campaign I ran over the course of 5 years that was obsessed with knowledge and magic.

3) Andzrel Melarn. From the same campaign, a drow PC who eventually ascended to god-hood, becoming a minor deity of spellcraft and Elven/Drow unity after collecting all of the Nether Scrolls (the campaign was set in the Forgotten Realms).

4) Aldlas Sodhese. Was an ancient Netherese archwizard mentioned in passing in a couple books who as a lich became a major villian in the above campaign. He was similarly obssessed with spellcraft and magical theory. Some details can be found here http://community.wizards.com/content/fo ... ic/2645231 -- a journal the PCs found toward the beginning of the campaign.

paulstrait
Dragon
Posts: 304
Joined: Mon Mar 23, 2009 4:48 pm

Re: 5e D&D Framework

Post by paulstrait »

Archiddeon wrote:Amazing work!

I am very much a maptool novice having only created a few very simple maps and this is my first time using a framework. Following the steps of an earlier post helped a lot in terms of figuring out how to use macros, copy them from different tokens, etc.

My questions have to do with using the macros:
1) Say, for instance, I have Goldrek selected and want him to attack Erdain. Would I click on Goldrek's "attack" macro, manually compare the roll to Erdain's AC and, if it's a hit, click the "change hp" macro on Erdain to give him the damage? Or is there a way to select Erdain as the target and have these checks done automatically?
I thought about using something similar to Rumble's 4e frameworks, but it seemed like more trouble than it was worth because of various situational things like whether there is advantage or disadvantage, whether someone is using lucky dice, whether there is a reaction, etc. I could maybe work on a scaled-down version of it that would at least check the AC and print it next to the attack roll result if there is demand for it.
Archiddeon wrote:2) Some of the spell code doesn't seem to be displaying properly. If I have Jherek selected and cast "Command", I see the following...
Go to Edit, Preferences, and then make sure "Use Tooltips for Inline Rolls" on the right side under the 'chat' heading is checked.

afxxx
Kobold
Posts: 8
Joined: Fri Sep 14, 2012 4:59 pm

Re: 5e D&D Framework

Post by afxxx »

paulstrait wrote:
afxxx wrote:Hi!

Wonderful framework! Congratulations for you and your players! :)
Thanks a lot!
Thank you for the kind words! We really just hacked together some stuff based on some excellent work that came before.
afxxx wrote:So far I just have two question:
1. Is there any auto/manual way to track the durations of the conditions/spells (like the Sleep's 10 turns)?
Not presently. I considered implementing something like the condition trackers that Rumble used for his 4e frameworks, but it seemed a bit clunky especially given the scenarios where this issue comes up. We've found that in nearly all cases, the max duration rarely matters b/c most effects either allow a save each turn or end upon some trigger like taking damage or attacking. In the few cases where that isn't the case, we just use the 'note' macro. There's probably a better way.
afxxx wrote:2. Is there an easy way to track the memorized spells?
I just duplicated the few memorized spell's button into an another button-group, but maybe its not the best solution?

Thanks!
A.

btw if there is any updated fw on your end, I love to test it. ;-)
The way that my players track memorized spells is by creating a macro group on their token. So, for example, if you look at the "Human War Cleric" token, there is a group for all spells known, and a group for prepared spells. When the character takes an extended rest, if he prepares different spells, the player just drags the relevant macros from one group to the other. I think this is basically like what you are describing -- in practice it seems pretty efficient.
I see! Thanks the answer!

JeezyKreezy
Kobold
Posts: 4
Joined: Sat Mar 21, 2015 3:18 am

Re: 5e D&D Framework

Post by JeezyKreezy »

This framework is totally amazing. I'm using it in my gaming room with two computers (well one computer pretending to be two) with my players there in person. It's great.
My only issue is that players can see the AC and HP of the monsters just by hovering the mouse over the tokens :( Is there a way to hide these stats but still be able to use macros like Change HP etc?

Any help is appreciated :D

paulstrait
Dragon
Posts: 304
Joined: Mon Mar 23, 2009 4:48 pm

Re: 5e D&D Framework

Post by paulstrait »

JeezyKreezy wrote:This framework is totally amazing. I'm using it in my gaming room with two computers (well one computer pretending to be two) with my players there in person. It's great.
My only issue is that players can see the AC and HP of the monsters just by hovering the mouse over the tokens :( Is there a way to hide these stats but still be able to use macros like Change HP etc?

Any help is appreciated :D
Thanks for the kind words.

They should not be able to see the HP of the monsters (unless they have been given ownership over the monster token), but they should be able to see the AC. To change that, just go into the campaign properties, and in the token properties tab, click NPC. There is a list of all the variables that are stored on an NPC token. The two variables in question are:
*@HPDisplay (HP):{HP+TempHP} ({MaxHP})
*AC:0
The asterisk before both of them indicates that you want the information to appear on the mouse-over stat card. The @ sign in front of 'HPDisplay' after the asterisk indicates that you want that property to be visible only to the owner of the token. You could similarly put an @ sign in front of the AC variable to make it only visible to the owner of the token. That should do it, but if for some reason they can still see the information even if they aren't owners of the token, you could add an # sign, which makes it DM visible only. The reason I use the @ instead of the # is that sometimes the players will control an NPC (a mount, or a summoned creature), and in those cases I want them to be able to see the HP.

Now, based on the way you described your set up, it may be the case that the players aren't logged in separately as players. If you aren't hosting a server, then the user is considered a DM and the owner of all tokens, so if that is the case, the only option would be to remove the asterisk in front of those variables, making them not show up for anyone (though you could double click the token to see their values). If you have two computers, it would be useful to set up one as the server, so that you could separate the views, because in addition to the stat card issue, you would also be able to limit the vision of the players to what their tokens can see, while maintaining your ability to see the entire map.

Hope that helps!

JeezyKreezy
Kobold
Posts: 4
Joined: Sat Mar 21, 2015 3:18 am

Re: 5e D&D Framework

Post by JeezyKreezy »

Thanks for the speedy reply. I'll give that a go.
I am using the server hosting in order to make sure they are counted as players but I'll double check that I'm having them join the server correctly. Are there any options when creating the server I need to be wary of? Like the strict ownership option etc?

JeezyKreezy
Kobold
Posts: 4
Joined: Sat Mar 21, 2015 3:18 am

Re: 5e D&D Framework

Post by JeezyKreezy »

Ok, so I discovered where I was going wrong. My monsters still had their properties set to Basic instead of NPC. When you drag a token in from outside MapTool into it I guess it get basic by default. Easy to fix though :)
So now I have another question (of course). I've set up an NPC that is a Cleric with necromancy spells, his cantrips read easily when cast in the chat window but his level spells a full of json methods. Should they look like this?

« json.get(jsonSpellData, "SpellName") = json.get({"SpellName":"Ray of Sickness","MinSlot":1,"Type":"necromancy","Ritual":0,"CastTime":"1 action","Range":"60 feet","Target":"","Components":"V,S","Duration":"Instantaneous","Concentration":0,"VariableSlot":1}, "SpellName") = Ray of Sickness », Level « slot = 1 » « json.get(jsonSpellData, "Type") = json.get({"SpellName":"Ray of Sickness","MinSlot":1,"Type":"necromancy","Ritual":0,"CastTime":"1 action","Range":"60 feet","Target":"","Components":"V,S","Duration":"Instantaneous","Concentration":0,"VariableSlot":1}, "Type") = necromancy » Casting Time: « json.get(jsonSpellData, "CastTime") = json.get({"SpellName":"Ray of Sickness","MinSlot":1,"Type":"necromancy","Ritual":0,"CastTime":"1 action","Range":"60 feet","Target":"","Components":"V,S","Duration":"Instantaneous","Concentration":0,"VariableSlot":1}, "CastTime") = 1 action » Component: « json.get(jsonSpellData, "Components") = json.get({"SpellName":"Ray of Sickness","MinSlot":1,"Type":"necromancy","Ritual":0,"CastTime":"1 action","Range":"60 feet","Target":"","Components":"V,S","Duration":"Instantaneous","Concentration":0,"VariableSlot":1}, "Components") = V,S » Target(s)/Range: « json.get(jsonSpellData, "Target") = json.get({"SpellName":"Ray of Sickness","MinSlot":1,"Type":"necromancy","Ritual":0,"CastTime":"1 action","Range":"60 feet","Target":"","Components":"V,S","Duration":"Instantaneous","Concentration":0,"VariableSlot":1}, "Target") =  », « json.get(jsonSpellData, "Range") = json.get({"SpellName":"Ray of Sickness","MinSlot":1,"Type":"necromancy","Ritual":0,"CastTime":"1 action","Range":"60 feet","Target":"","Components":"V,S","Duration":"Instantaneous","Concentration":0,"VariableSlot":1}, "Range") = 60 feet » Duration: « json.get(jsonSpellData, "Duration") = json.get({"SpellName":"Ray of Sickness","MinSlot":1,"Type":"necromancy","Ritual":0,"CastTime":"1 action","Range":"60 feet","Target":"","Components":"V,S","Duration":"Instantaneous","Concentration":0,"VariableSlot":1}, "Duration") = Instantaneous » Effect: A ray of sickening greenish energy lashes out toward a creature within range. Ranged Spell Attack: « d20+SpellAttack = 17 + 6 = 23 » Hit: « eval(damage) = eval(2d8) = 9 » poison damage, and the target must make a Constitution save (DC « SpellSave = 14 »). If it fails, it is poisoned until the end of your next turn.


I get all of that when he casts.

paulstrait
Dragon
Posts: 304
Joined: Mon Mar 23, 2009 4:48 pm

Re: 5e D&D Framework

Post by paulstrait »

JeezyKreezy wrote:Ok, so I discovered where I was going wrong. My monsters still had their properties set to Basic instead of NPC. When you drag a token in from outside MapTool into it I guess it get basic by default. Easy to fix though :)
So now I have another question (of course). I've set up an NPC that is a Cleric with necromancy spells, his cantrips read easily when cast in the chat window but his level spells a full of json methods. Should they look like this?

« json.get(jsonSpellData, "SpellName") = json.get({"SpellName":"Ray of Sickness","MinSlot":1,"Type":"necromancy","Ritual":0,"CastTime":"1 action","Range":"60 feet","Target":"","Components":"V,S","Duration":"Instantaneous","Concentration":0,"VariableSlot":1}, "SpellName") = Ray of Sickness », Level « slot = 1 » « json.get(jsonSpellData, "Type") = json.get({"SpellName":"Ray of Sickness","MinSlot":1,"Type":"necromancy","Ritual":0,"CastTime":"1 action","Range":"60 feet","Target":"","Components":"V,S","Duration":"Instantaneous","Concentration":0,"VariableSlot":1}, "Type") = necromancy » Casting Time: « json.get(jsonSpellData, "CastTime") = json.get({"SpellName":"Ray of Sickness","MinSlot":1,"Type":"necromancy","Ritual":0,"CastTime":"1 action","Range":"60 feet","Target":"","Components":"V,S","Duration":"Instantaneous","Concentration":0,"VariableSlot":1}, "CastTime") = 1 action » Component: « json.get(jsonSpellData, "Components") = json.get({"SpellName":"Ray of Sickness","MinSlot":1,"Type":"necromancy","Ritual":0,"CastTime":"1 action","Range":"60 feet","Target":"","Components":"V,S","Duration":"Instantaneous","Concentration":0,"VariableSlot":1}, "Components") = V,S » Target(s)/Range: « json.get(jsonSpellData, "Target") = json.get({"SpellName":"Ray of Sickness","MinSlot":1,"Type":"necromancy","Ritual":0,"CastTime":"1 action","Range":"60 feet","Target":"","Components":"V,S","Duration":"Instantaneous","Concentration":0,"VariableSlot":1}, "Target") =  », « json.get(jsonSpellData, "Range") = json.get({"SpellName":"Ray of Sickness","MinSlot":1,"Type":"necromancy","Ritual":0,"CastTime":"1 action","Range":"60 feet","Target":"","Components":"V,S","Duration":"Instantaneous","Concentration":0,"VariableSlot":1}, "Range") = 60 feet » Duration: « json.get(jsonSpellData, "Duration") = json.get({"SpellName":"Ray of Sickness","MinSlot":1,"Type":"necromancy","Ritual":0,"CastTime":"1 action","Range":"60 feet","Target":"","Components":"V,S","Duration":"Instantaneous","Concentration":0,"VariableSlot":1}, "Duration") = Instantaneous » Effect: A ray of sickening greenish energy lashes out toward a creature within range. Ranged Spell Attack: « d20+SpellAttack = 17 + 6 = 23 » Hit: « eval(damage) = eval(2d8) = 9 » poison damage, and the target must make a Constitution save (DC « SpellSave = 14 »). If it fails, it is poisoned until the end of your next turn.


I get all of that when he casts.
I think the problem there is that you need to go to preferences and under Chat, click 'Use ToolTips for Inline Rolls'

JeezyKreezy
Kobold
Posts: 4
Joined: Sat Mar 21, 2015 3:18 am

Re: 5e D&D Framework

Post by JeezyKreezy »

Perfection! Thanks for your help. I've been playing around with all the other features packaged in, there is some really good stuff in here.
I love the crowd control macros and the build forest.
I hope I can figure out the Canopy and Roof stuff, I tried making a pit trap too but it didn't quite work :(
I'm sure if I can spend enough time on it I'll figure it out.

Thanks again!

paulstrait
Dragon
Posts: 304
Joined: Mon Mar 23, 2009 4:48 pm

Re: 5e D&D Framework

Post by paulstrait »

JeezyKreezy wrote:Perfection! Thanks for your help. I've been playing around with all the other features packaged in, there is some really good stuff in here.
I love the crowd control macros and the build forest.
I hope I can figure out the Canopy and Roof stuff, I tried making a pit trap too but it didn't quite work :(
I'm sure if I can spend enough time on it I'll figure it out.

Thanks again!
All credit for that goes to Wolph42, whose Bag of Tricks is wholly appropriated and unmodified. Check out his thread and fantastic tutorials here: http://forums.rptools.net/viewtopic.php?f=46&t=16066

Post Reply

Return to “D&D 5e Frameworks”