PDA

View Full Version : 5e playtest character sheet?



lordsoth
February 1st, 2013, 16:11
Does anyone have a 5e character sheet for FG2?

If not what other options are available?

I was thinking of modifying the 3.5e or 4e ruleset. Any suggestions?

Zeus
February 1st, 2013, 16:57
I am not aware of one, a 5E ruleset has not yet been created but its on my list of updates to release in the future (that unless JPG or someone else beats me to it. From looking at the current playtest material, the current 3.5E ruleset would be a closer fit than 4E I think so I will probably be creating an extension in the not too distant future to sit alongside Pathfinder.

Griogre
February 1st, 2013, 18:42
Either the 3.5 or 4E ruleset works with 5E. I've used both to run games. The 3.5 ruleset has a bit better monster support than 4E and the 4E has a bit better character sheet support than 3.5 so its a toss up.

Basically, use the one you are more familiar with since neither has a clear advantage over the other.

lordsoth
February 1st, 2013, 19:06
Thanks!

The big problem right now is the skill die mechanic. They are no longer using the +3 for trained skills. It's now 1d20 +1dX.

I honestly don't mind rolling dice manually, but I would like to fix up the character sheet. Is it really all that hard to modify? I'm hoping there isn't too much of a learning curve, but I am a programmer.

Trenloe
February 1st, 2013, 19:54
I honestly don't mind rolling dice manually, but I would like to fix up the character sheet. Is it really all that hard to modify? I'm hoping there isn't too much of a learning curve, but I am a programmer.
There is a learning curve, definitely. But, if you're a programmer you should be OK - just be prepared to do a bit of reading at first - the ruleset modification guide being a good place to start: https://www.fantasygrounds.com/modguide/

First you will have to extract the base ruleset into a development ruleset. Decide which ruleset you want to use as your base. Go to the directory where Fantasy Grounds was installed (usually Program Files\Fantasy Grounds II - Program Files (x86) for 64-bit Windows), copy the 3.5E.pak or 4E.pak to 3.5e.zip or 4e.zip (don't change the base files, copy them first) then unzip to <Fantasy Grounds Data App directory>\rulesets. Rename the 3.5E or 4E folder to something like 3.5E_DEV. You will see this name as a ruleset option when you start a new campaign - 3.5E will be the base, unmodified 3.5E PAK and 3.5E_DEV will be your development ruleset.

To start, take a look at charsheet\charsheet_skills.xml in your development ruleset and the template_charsheet_skills.xml file that has templates used in the charsheet_skills.xml file - the onSourceValue LUA function has code to calculate the skill total, and the onDoubleClick function kicks off the action(draginfo) function which is the same as dragging the skill roll to the chat window - this is where the dice rolling occurs.

lordsoth
February 1st, 2013, 20:15
Actually, I was just looking at those xml files. :)

I guess once I wrap my head around the object model and I'll be fine.

I think I'll also look at adding an Advantage/Disadvantage mechanic. Ideally it would work like the GRANTCA effect, but I'm not sure if it can be done that way.

btw, does anyone recall how Twin Strike worked with the 4e ruleset? Did you have to roll the die twice or did FG2 do anything automatically for you?

Zeus
February 1st, 2013, 21:28
@lordsoth - you may want to take a look at my 4E Fortune Card extension as an example, it mods the 4E standard character sheet adding a new tab to manage fortune card sets and adds some basic card action mechanics. I havent updated it since 2.9.1 but it should be ok as an example.

lordsoth
February 2nd, 2013, 04:14
Well so far I have changed the skill tab and updated it with all the 5e skills.

I have one question for the skill rolling code in performRoll() in manager_action_skill.lua


rRoll.aDice = { "d20" };

can that be changed to something like

rRoll.aDice = { "d20+1d4" };

I noticed that I can perform two die rolls with

rRoll.aDice = { "d20", "1d4" };


Thanks.

Trenloe
February 2nd, 2013, 04:22
To throw the dice the following code is used:

Comm.throwDice(rRoll.sType, rRoll.aDice, rRoll.nMod, rRoll.sDesc, aCustom);
Looking at the documentation for Comm.throwDice: https://www.fantasygrounds.com/refdoc/Comm.xcp#throwDice

We see that rRoll.aDice is a list of die types to add to the roll. So, to roll 1d20+1d4 this should be used:

rRoll.aDice = { "d20","1d4" };
Note, from this dice can only be added together you can't roll 1d20-1d4.

lordsoth
February 2nd, 2013, 04:25
To throw the dice the following code is used:

Comm.throwDice(rRoll.sType, rRoll.aDice, rRoll.nMod, rRoll.sDesc, aCustom);
Looking at the documentation for Comm.throwDice: https://www.fantasygrounds.com/refdoc/Comm.xcp#throwDice

We see that rRoll.aDice is a list of die types to add to the roll. So, to roll 1d20+1d4 this should be used:

rRoll.aDice = { "d20","1d4" };
Note, from this dice can only be added together you can't roll 1d20-1d4.


ok thanks for the help, I'll read that part of the documentation :)

Irondrake
February 2nd, 2013, 05:24
An extension for 5E specific stuff would be very useful for my group. Any ah...timeframe...on this project DrZ?

Zeus
February 2nd, 2013, 23:32
An extension for 5E specific stuff would be very useful for my group. Any ah...timeframe...on this project DrZ?

Thats a good question. Working on a new Parser at the moment. Its moving along faster than I anticipated so hopefully I will find time to start working on an extension in the next few weeks.

Given that 5E is in development and will be for some time, I will only aim to make a basic ruleset available with essential windowclasses and module support i.e. enough to support playtesting during the open testing phase. Once we get closer to release I'll then pad out support with a new theme and extra/new functionality.

Irondrake
February 2nd, 2013, 23:39
That all sounds great. I'm running a custom 5E campaign and we're using the Pathfinder ruleset at the moment. Support for maneuvers, skill dice, and martial damage dice would be very welcome in my group.

lordsoth
February 4th, 2013, 17:23
another quick question.

With the 3.5 ruleset, how do you access a value on the character sheet?

I'm trying to read the total level value on the 3.5e character sheet from within the manager_action_skill.lua script.

I tried using the DB function getValue by passing it the vActor source node, but I'm not having much luck.

Is there object level documentation for the 3.5e ruleset?

Trenloe
February 4th, 2013, 17:45
With the 3.5 ruleset, how do you access a value on the character sheet?

I'm trying to read the total level value on the 3.5e character sheet from within the manager_action_skill.lua script.

I tried using the DB function getValue by passing it the vActor source node, but I'm not having much luck.
getValue("level") should work - as long as the DB sourcenode being used is valid and at the highest level of the specific character database node.

What code are you using?


Is there object level documentation for the 3.5e ruleset?
Nope. Plenty of examples in the ruleset code though... ;)

lordsoth
February 4th, 2013, 23:39
I was trying

lev=DB.getValue(rActor.nodeCreature, "level", "");

Trenloe
February 4th, 2013, 23:48
I was trying

lev=DB.getValue(rActor.nodeCreature, "level", "");

Where are you getting your rActor.nodeCreature from? Looking at the documentation for DB.getValue: https://www.fantasygrounds.com/refdoc/DB.xcp#getValue


sourcenode (string (or databasenode))
A data node identifier path (or a databasenode object) representing the target node
You're using rActor.nodeCreature - which is not a valid databasenode or string, I believe... Please provide more code around where you are getting rActor from.

Zeus
February 5th, 2013, 00:16
rActor is an object that JPG typically employs (implemented as part of ActorManager) in the internals of 3.5E and 4E. It usually represents an PC/NPC in a specific context and is used for the application of game rules logic. e.g. in the CombatTracker damage, effects and such are operated upon rActor objects which are compiled from entries in the CT. Another example of where rActors are used is in the party Sheet roll handling i.e. skill rolls. etc.

rActor.nodeCreature - by its name, is a reference to the database node of the source creature, either the PC's charsheet node if a PC or an NPCs node.

So assumming rActor.nodeCreature does indeed contain a valid databasenode then


rActorLevel = DB.getValue(rActor.nodeCreature, "level", 0);

should do the trick. Note the last parameter for DB.getValue() should be a number if your source field "level" is a number. Return "" only if its a string.

lordsoth
February 5th, 2013, 00:32
@DrZeuss

Thanks! that worked. I now have skill dice working perfectly. It automatically picks the skill die based on level.

Irondrake
February 5th, 2013, 04:22
Does it also account for ability bonus? And if so, are you just choosing the "typical" ability for a check?

lordsoth
February 5th, 2013, 14:56
Yes, it uses ability bonus d20+ability+skill die.

At the moment, it's just using the ability that is most common for each skill. I need to allow you to change the ability on the fly.

The ideal design would be one in which the player can select trained skill and then roll the die next to the appropriate ability score. The default ability for each skill would be selected and you could add any misc modifiers to the roll.

I still need to remove the Rank column. At the moment I've only managed to make it invisible. I also haven't figured out how to remove the "Rank" column header.

There is also the problem with how the rogue uses skill dice. I still have to give that some thought as well.

Irondrake
February 6th, 2013, 01:31
Sounds fantastic. Would you be willing to share it as an extension when you are finished with the sheet?

lordsoth
February 7th, 2013, 04:36
Sure, I just have to figure out how to make the stat cycle. I noticed you can cycle the stat if you add a custom row, but not for the default skills. Alternatively, I might add another column for an alternative stat, but I haven't made up my mind yet. I think that 99% of the time players will be using the default ability listed for each skill.


in this example the character is 4th level so it uses a d6 for the skill die. It only rolls the skill die if you are trained.


https://s3.postimage.org/oovnv2shf/screenshot0001.png

Trenloe
February 7th, 2013, 05:22
Sure, I just have to figure out how to make the stat cycle. I noticed you can cycle the stat if you add a custom row, but not for the default skills. Alternatively, I might add another column for an alternative stat, but I haven't made up my mind yet. I think that 99% of the time players will be using the default ability listed for each skill.
\scripts\data_common.lua lists the skills and their default ability. I don't know if removing the default ability would allow you to cycle the ability...

lordsoth
February 14th, 2013, 23:56
here are the quick and dirty changes I made to the 4e ruleset.

https://www32.zippyshare.com/v/74500559/file.html

Irondrake
February 15th, 2013, 01:02
Thanks Lordsoth, I'm going to check these out now!

Irondrake
February 15th, 2013, 01:08
ok...silly question but this isn't an extension, what's needed to make this work? :)

lordsoth
February 15th, 2013, 02:46
no it's a ruleset.

You need to unzip it to your ruleset folder


C:\Users\...\AppData\Roaming\Fantasy Grounds II\rulesets

Then select "Playtest" when creating a new campaign