PDA

View Full Version : Adapting Number fields to Add Drag/Drop Numbers



damned
March 15th, 2015, 01:21
In the MoreCore extension for CoreRPG the Combat Tracker uses a number of number_ct_crosslink fields (up to 5 + Order).
3 of these are linked (C1/Health, C2/Defence, Order/Order) and the others are unlinked (C3, C4, C5).
Typically Im using C5 as Wounds. Wounds tends to go Up and Down over the course of your game.

You can drag and drop a dice result from the Chat Window into one of the unlinked fields (or into the Source fields on the Char Sheet) and it will update the field.
If you hold [ctrl] while dragging the die result onto the field it makes it a negative.

Does anyone have an idea if it would be possible to code a number field to SUM the number that is dragged in?
Eg player Scarface rolls Damage
Scarface: [D] Blunderbus vs Pirate (7)
I could drag that 7 on to the CT and the wounds would now be 7.
In the next turn Red Remondis also attacks the pirate!
Red Remondis: [D] Cutlass vs Pirate (5)
If I drag the 5 onto Damage it will replace the 7. I would like it to SUM the 7 and the 5 and show total damage of 12.

And the same if healing occurred.
Helena: [S] Healing Salve (6)
I could [ctrl] and drag the 6 onto a character and it would SUM their current wounds with -6 and reduce them...

Actually while Im typing this out some ideas are coming to me but Id welcome your input.


https://www.fg-con.com/wp-content/uploads/2015/02/fg-con-6-150-15.jpg (https://www.fg-con.com/events/)
FG Con 6 – April 17-19th 2015 - register at www.fg-con.com (https://www.fg-con.com/) for all the latest info.

Trenloe
March 15th, 2015, 02:34
Put your code in the control's onDrop event: https://www.fantasygrounds.com/refdoc/windowcontrol.xcp#onDrop

damned
March 15th, 2015, 11:27
Thanks Trenloe.

How do I extract the NUMBER out of the draginfo?

I have the following code within the NUMBER field:


local sSumTotal = OptionsManager.getOption("MCC3SUM");
Debug.console("MCC3SUM: ");
Debug.console(sSumTotal);
if sSumTotal == "On" then Debug.console("Hello Script: " .. sSumTotal);
function onDrop(x, y, draginfo)
local nodeWin = window.getDatabaseNode();
local sDragType = draginfo.getType();
local sCurrWounds = nodeWin.getChild(“field.three”).getValue();
Debug.console("Current Wounds S: " .. sCurrWounds);
local nCurrWounds = tonumber(sCurrWounds);
Debug.console("Current Wounds N: " .. nCurrWounds);
Debug.console("draginfo: ")
Debug.console(draginfo);
if sDragType == "number" then
nCurrWounds = nCurrWounds - draginfo;
end
end;
end;
if sSumTotal == "Off" then Debug.console("Script is Off");
end;

I get the following Debug Output when I dragged the result (6) of a dice roll:


Runtime Notice: s'Current Wounds S: 1'
Runtime Notice: s'Current Wounds N: 1'
Runtime Notice: s'draginfo: '
Runtime Notice: dragdata = { type = s'number', desc = s'', #slots = #1, slot = #1, string = s'', num = #6, dice = { }, shortcut = { }, token = { prototype = , instance = }, custom = nil }
Script Error: [string "field.three"]:1: attempt to perform arithmetic on local 'draginfo' (a userdata value)
Database Notice: Campaign saved.

How do I extract the num from the draginfo or am I barking up the wrong tree?

damned
March 15th, 2015, 13:42
Progress made!


local sSumTotal = OptionsManager.getOption("MCC3SUM");
if sSumTotal == "On" then Debug.console("Hello Script: " .. sSumTotal);
function onDrop(x, y, draginfo)
local nodeWin = window.getDatabaseNode();
local sDragType = draginfo.getType();
local sCurrWounds = nodeWin.getChild(“field.three”).getValue();
local nCurrWounds = tonumber(sCurrWounds);
local sNumberWounds = draginfo.getNumberData();
local nNumberWounds = tonumber(sNumberWounds);
local nNewWounds = nCurrWounds + nNumberWounds;
setValue(nodeWin.getChild(“field.three”), integer, nNewWounds);
end;
end;
if sSumTotal == "Off" then Debug.console("Script is Off");
end;

draginfo.getNumberData(); returns my num value - I dont know if this always holds true (I may not have ALL the syntax happening) but it held true in all of my tests.
You will see the integer in my code. I have used integer and number and they both appear to function the same.
This works correctly when Im dragging positive and negative numbers to the CT field in question (field.three).

What doesnt work is if I hold down the [ctrl] key and drag the number - this normally results in the number being converted to a negative. Instead of summing my existing number and the new negative number it replaces my existing number with the new negative number.

PS I have no idea what madness possessed me to try to do this stuff!



https://www.fg-con.com/wp-content/uploads/2015/02/fg-con-6-150-14.jpg (https://www.fg-con.com/events/)
FG Con 6 – April 17-19th 2015 - register at www.fg-con.com (https://www.fg-con.com/) for all the latest info.

S Ferguson
March 15th, 2015, 16:49
Developer consciousness. It hits us all after a while. I stay sane by playing Angry Birds (TM). Nothing like flinging birds at pigs to reify that my madness is perfectly a normal result of a perceived OC disorder.:p

leozelig
March 15th, 2015, 21:09
PS I have no idea what madness possessed me to try to do this stuff!

I don't know, but what you're trying to do with the combat tracker is going to be a huge improvement in the CoreRPG ruleset if you can figure it out! I am not a programmer, but looking at that code makes my head spin!

Trenloe
March 16th, 2015, 02:54
What doesnt work is if I hold down the [ctrl] key and drag the number - this normally results in the number being converted to a negative. Instead of summing my existing number and the new negative number it replaces my existing number with the new negative number.
I guess you got it working as CTRL to produce negative damage works in the extension you have posted.

damned
March 16th, 2015, 05:26
I guess you got it working as CTRL to produce negative damage works in the extension you have posted.

Not on my computer it doesnt!
Bloody h@#$!
It does work... Im sure it wasnt working last night.
WooHoo! Thanks Trenloe :)


https://www.fg-con.com/wp-content/uploads/2015/02/fg-con-6-150-14.jpg (https://www.fg-con.com/events/)
FG Con 6 – April 17-19th 2015 - register at www.fg-con.com (https://www.fg-con.com/) for all the latest info.

leozelig
March 22nd, 2015, 03:21
I was just messing around with the More Core extension last night, and I cannot get the number field (field.three) to add the drag/dropped dice result. In the console, the value for nNewWounds is correct, but the number field displays the dice result (nNumberWounds) instead.

Any thoughts?

damned
March 22nd, 2015, 03:47
Hi leozelig what version of MoreCore are you using?
Only the GM can drag the wounds on to the CT.

Also - its possible - you might try removing everyone from the CT and then re-adding them.
Ive noticed some funny things happen when building rulesets/extensions and DB fields change - sometimes the ne fields/behaviours dont get picked up.
Sometimes removing from CT works, sometimes I have had to delete fields from the db.xml manually and sometimes i just said !@#$ and deleted teh db.xml

Obviously this is not ideal - but this should only occur while Im writing large changes to things...

I can do that chat in 90mins or so if you are available? err just looked that would be pretty late for you. Can do it your Sunday morning if you like.

leozelig
March 22nd, 2015, 04:20
I will start a new campaign and try again. I had previously made an extension to include the 3.5 number fields in the tracker (init, hp, tmp, sbd, wnd), which is pretty simple, but your extension does much more. I am not available Sunday morning. I think CoreRPG works pretty well for DCC RPG with the funky dice in your extension and the char sheet templates I made. If I could find some people who actually play it, then maybe a ruleset would be in order :)

damned
March 22nd, 2015, 04:47
Im working on recruitment.
We need to show them Fantasy Grounds is good for DCC too!

Can you tell me -
How do you do a Saving Throw or Skill Check on STR/AG/STA/PE/INT?
eg you have a score of 13 what is the dice that rolls? does it roll over or under? do you add the attribute modifier to the roll? do you get other modifiers as you go up levels? are there situational modifiers? are you rolling against your attribute score or against a defined number (like Siege - rolling over 18 or 12)?
How does Luck work?
And Lucky Roll?

What is a Reflex Save? Fort? Will?
Again - what is the value in here and what are you rolling against? over/under? what modifiers get applied?

What is the Initiative Dice?
Action Dice? When does it get used?
Attack?
Crit Die?
Crit Table?

What is Melee Attack compared to Attack?
Same with Missile Attack?

How does AC work? Is AC Ascending or Descending?
How do you compare Attack vs AC?

I think that looking at those I can try and make a decision what to custom code and what to let CoreRPG do?
Im definitely thinking that all the class specific stuff (spells etc) should be done by CoreRPG... although CoreRPG Abilities/Skills doesnt support our Funky Dice... yet anyway!

damned
March 22nd, 2015, 14:49
Hi leozelig when you get time check out this v0.1 DCC extension.
Create a NEW CoreRPG campaign and choose MoreCore - DCC Extension.
So far I havent dealt with anything from post immediately above - just some stuff around the edges.
When you get time please can you answer those questions - here or via email and I will start implementing them.
Feedback on the theme is good too.
Remember this is just the start...
Its bigger than MoreCore but 98% of increase is due to Theme.

Dont over invest in character creation on these test rulesets due to issue as described above...
https://www.fg-con.com/wp-content/uploads/2015/03/dcc-ss01.jpg

Also if you copy this file into campaign/usersettings it should give you some Funky Dice hotkeys...
You can make a similar one for players - probably called cache/<campaign>/usersettings/hotkeys.xml

leozelig
March 22nd, 2015, 17:36
Can you tell me -
How do you do a Saving Throw or Skill Check on STR/AG/STA/PE/INT?
eg you have a score of 13 what is the dice that rolls? does it roll over or under? do you add the attribute modifier to the roll? do you get other modifiers as you go up levels? are there situational modifiers? are you rolling against your attribute score or against a defined number (like Siege - rolling over 18 or 12)?

Skill check = d20 + modifier (usually ability score modifier)
Thieves have modifiers defined by a table for Sneak Silently, Find Traps, etc.
Cast Spell From Scroll for a thief uses a defined die (d12, etc.) that improves with level. Like making a spell check with a lesser die.
Certain untrained skill checks (e.g. blacksmithing) use a d10.
Roll against a DC, which can be set by the GM or opposed (i.e. Sneaking vs. Spotting).
Skill check succeeds if the roll beats the DC.
There are situational modifiers (+1, etc.), or the GM might ask you to roll a different die (d16 or d24 instead of d20).


How does Luck work?
And Lucky Roll?

You can "burn" luck, which means lose a point from your ability score for a +1 to the skill check.
Thieves and halflings regenerate 1 point per day, halflings get +2 per point burned.
Lucky Roll is like a background/trait. You apply your luck modifier to certain rolls based on your background, usually very specific.


What is a Reflex Save? Fort? Will?
Again - what is the value in here and what are you rolling against? over/under? what modifiers get applied?

These are modifiers based on ability score + class/level, same as 3.5E. Roll d20 vs. DC (higher roll is better).


What is the Initiative Dice?
Action Dice? When does it get used?
Attack?
Crit Die?
Crit Table?

Initiative = d20, or d16 for two-handed weapons.
Action dice = how many actions you get per round (and what dice you roll for each). For example, warriors get a second action (e.g. attack) per round at level X, and roll a d20 for the first and a d16 for the second.
Attack = attack bonus defined by class/level (not including ability bonuses).
Crit die/table = the die you roll on a critical hit, refers to a table (crit table). Warriors have better effects on their table than wizards, for example.


What is Melee Attack compared to Attack?
Same with Missile Attack?

Attack = base attack bonus, essentially.
Melee Attack = attack + strength mod.
Missile Attack = attack + agility mod.


How does AC work? Is AC Ascending or Descending?
How do you compare Attack vs AC?

AC is ascending from 10.
Attack roll hits if it beats AC, like d20 rules.


I think that looking at those I can try and make a decision what to custom code and what to let CoreRPG do?
Im definitely thinking that all the class specific stuff (spells etc) should be done by CoreRPG... although CoreRPG Abilities/Skills doesnt support our Funky Dice... yet anyway!

A Skills tab would be most relevant for the Thief class. Most skill checks (balance, listen, spot) use ability score modifiers, much like 5E. Dwarves and halflings have a couple of unique skills (e.g. sneak for halflings). For spells, you have a spell check (d20 + ability mod + level), and each spell has a table with a different effect based on your roll (below a certain roll, the spell fails and is lost for the day). I think the ruleset should have a field for the spell check and a list of spells (by level maybe), but don't worry about including the tables.

Edit: I love the theme, very cool!

leozelig
March 22nd, 2015, 17:48
I started a new campaign and re-tested the MoreCore extension. It still does not add the dropped number to the Wounds total for me. The /console shows that the calculations are correct, but it does not display the new total in the combat tracker. I wonder if it's that last line of code that isn't working - the variables all seem to check out.



function onDrop(x, y, draginfo)
local nodeWin = window.getDatabaseNode();
local sDragType = draginfo.getType();
local sCurrWounds = nodeWin.getChild("field.three").getValue();
Debug.console("Current Wounds S: " .. sCurrWounds);
local nCurrWounds = tonumber(sCurrWounds);
Debug.console("Current Wounds N: " .. nCurrWounds);
Debug.console("draginfo: ")
Debug.console(draginfo);
Debug.console(draginfo.getNumberData());
local sNumberWounds = draginfo.getNumberData();
Debug.console("sNumberWounds: " .. sNumberWounds);
Debug.console(sNumberWounds);
local nNumberWounds = tonumber(sNumberWounds);
Debug.console("nNumberWounds: " .. nNumberWounds);
Debug.console(nNumberWounds);
local nNewWounds = nCurrWounds + nNumberWounds;
Debug.console("nNewWounds: " .. nNewWounds);
Debug.console(nNewWounds);
setValue(nodeWin.getChild("field.three"), integer, nNewWounds);
end;


Anyone have any ideas??? I tried looking at other rulesets, but the code is either really complicated (damage types, healing, temp hp handling) or nonexistent. And I have only the most basic coding knowledge.

Trenloe
March 22nd, 2015, 18:05
The setValue command as used in the code is not correct. The syntax used is for DB.setValue, not for setValue related to a GUI control - so adding DB. in front of the setValue command should work. This code is also messed up - the definition for function onDrop is in the middle of function onInit() - it should be outside of that function.

leozelig
March 22nd, 2015, 19:24
Changing that line of code to this:
DB.setValue(nodeWin.getChild("field.three"), integer, nNewWounds);

produces the following error:
Script Error: [string "field.three"]:1: setValue: Invalid subpath parameter


I changed integer to "number", which eliminated the script error, but still did not update the field.

Trenloe
March 22nd, 2015, 21:06
The whole of that code needs a good clean up - as mentioned above the onDrop function is within the onInit function.

Additionally, the template that this control is linked to is overwriting the summed value with the dropped value later in the cascaded onDrop events. The onDrop function needs to return true; to stop other onDrop code running: https://www.fantasygrounds.com/refdoc/windowcontrol.xcp#onDrop

Change the script to be this:


<script>
function onInit()
local sColumn3 = OptionsManager.getOption("MCC3");
local sWhereAmI = window.getClass();
Debug.console("sWhereAmI (F3):");
Debug.console(sWhereAmI);

local sC3Colour = OptionsManager.getOption("MCC3C");
Debug.console("sC3Colour: " .. sC3Colour);
setColor(sC3Colour);
if sColumn3 == "Off" then Debug.console("Off.");
setVisible(false);
end;
if sColumn3 == "GM" then Debug.console("GM Only.");
setVisible(true);
end;
if sColumn3 == "Both" then Debug.console("GM and Player.");
setVisible(true);
end;
end

function onDrop(x, y, draginfo)
local sSumTotal = OptionsManager.getOption("MCC3SUM");
Debug.console("MCC3SUM: ");
Debug.console(sSumTotal);
if sSumTotal == "On" then Debug.console("Hello Script: " .. sSumTotal);
local nodeWin = window.getDatabaseNode();
local sDragType = draginfo.getType();
local sCurrWounds = nodeWin.getChild("field.three").getValue();
Debug.console("Current Wounds S: " .. sCurrWounds);
local nCurrWounds = tonumber(sCurrWounds);
Debug.console("Current Wounds N: " .. nCurrWounds);
Debug.console("draginfo: ")
Debug.console(draginfo);
Debug.console(draginfo.getNumberData());
local sNumberWounds = draginfo.getNumberData();
Debug.console("sNumberWounds: " .. sNumberWounds);
Debug.console(sNumberWounds);
local nNumberWounds = tonumber(sNumberWounds);
Debug.console("nNumberWounds: " .. nNumberWounds);
Debug.console(nNumberWounds);
local nNewWounds = nCurrWounds + nNumberWounds;
Debug.console("nNewWounds: " .. nNewWounds);
Debug.console("Running DB.setValue: " .. nNewWounds);
setValue(nNewWounds);
return true;
end;
if sSumTotal == "Off" then
Debug.console("Script is Off");
end;
end;

</script>

damned
March 22nd, 2015, 22:11
The whole of that code needs a good clean up - as mentioned above the onDrop function is within the onInit function.

Additionally, the template that this control is linked to is overwriting the summed value with the dropped value later in the cascaded onDrop events. The onDrop function needs to return true; to stop other onDrop code running: https://www.fantasygrounds.com/refdoc/windowcontrol.xcp#onDrop



Doh!
I would be surprised if I havent ignored proper programming techniques *everywhere*! Mosly - cos I dont know any!
Thanks Trenloe.

Other than Trenloes fault finding above - the drag and drop summing *always* works for me...?
I have updated the code and will post a link shortly.

damned
March 22nd, 2015, 22:22
1. Skill check = d20 + modifier (usually ability score modifier)
2. Thieves have modifiers defined by a table for Sneak Silently, Find Traps, etc.
3. Cast Spell From Scroll for a thief uses a defined die (d12, etc.) that improves with level. Like making a spell check with a lesser die.
4. Certain untrained skill checks (e.g. blacksmithing) use a d10.
5. Roll against a DC, which can be set by the GM or opposed (i.e. Sneaking vs. Spotting).
Skill check succeeds if the roll beats the DC.
There are situational modifiers (+1, etc.), or the GM might ask you to roll a different die (d16 or d24 instead of d20).

Ouch.

1. Come back to at 7..
2. So you could/would use Modifiers feature for this?
3. How would you track/record that (best case and worst case)
4. Come back to at 7..
5. Would you always use a d20 in opposed checks?
6. Good
7. Ok so normally its using a d20, but for some untrained occupational rolls its a d10 and sometimes the GM may deal with a situational effect by having you roll a d16 or d24 instead of a d20!
Ive got NO idea how to deal with that :( do I have:
Strength [14] [d10][d16][d20][d24]
Where
Strength is a string
14 is a Number field
d10 is also a number field reflecting the same score but clicking on it rolls a d10 plus any Attribute bonuses + any Modifiers
d16 is also a number field reflecting the same score but clicking on it rolls a d16 plus any Attribute bonuses + any Modifiers
d20 is also a number field reflecting the same score but clicking on it rolls a d20 plus any Attribute bonuses + any Modifiers
d24 is also a number field reflecting the same score but clicking on it rolls a d24 plus any Attribute bonuses + any Modifiers
I cant declare a success or a failure because the GM sets a DC arbitrarily...?

I think we will do one chunk at a time!

leozelig
March 23rd, 2015, 05:22
You can look at what I did for skill checks with the thief template. The vast majority of all skill checks use a d20, but it could always just be set up as a modifier. I would ignore the rare untrained check as far as the ruleset goes. Same for trying to calculate success or failure. The GM can decide.

I do think the character sheet would benefit from having the abilities, AC, HP, etc. laid out more like the 3.5E char sheet. It would look more official at least. Attack and defense info in the combat tracker (sword and shield icons) could also be like 3.5E, but simpler - no need for flat footed AC, touch AC, and all of that. I actually tried modifying that ruleset for DCC since it just needs some elements renamed and others dropped, but it was too complex with scripts and variables spread across so many files.

Don't worry if it doesn't work out before FG Con. I am happy with CoreRPG for a one shot, especially with the funky dice and extra CT fields.

leozelig
March 23rd, 2015, 12:18
Trenloe,

That worked. Specifically, adding 'return true;' at the end was the key. If you remove that, it does not update the field.

Thank you!! :)

damned
March 23rd, 2015, 15:13
leozelig how does this look?
https://www.fg-con.com/wp-content/uploads/2015/03/dcc-combat.jpg

Right now Wounds and SubDual are not linked to the CT.
For DCC I take it these should be linked to CT?
You ok with the colours - Green HP, Red Wounds, Blue SubDual.
Shield work for you for AC?

Back to Skill Checks - whilst the vast majority use d20 if some use d16 and d24 I still need a way to implement that...
Please forward me your Thief XML file - thanks.

leozelig
March 24th, 2015, 00:31
Looks good. How about a temporary hit point field? I would make HP black and Temp HP green in that case.

I set up two small extensions (funky dice and extra combat tracker fields) that I can use until your (much more ambitious) extensions are ready to go. I don't want to have any technical issues if you know what I mean ;)

Skill checks are d20. DCC RPG encourages use of the dice chain (d3-d4-d5-d7-d8-d10-d12-d14-d16-d20-d24-d30) as an alternative to a fixed bonus/penalty. So, if the situation calls for it, the GM might bump you up (or down) a notch on the dice chain. Trying to code that into a ruleset can only lead to insanity...

damned
March 28th, 2015, 14:55
This is where its up to right now...

https://www.fg-con.com/wp-content/uploads/2015/03/dcc-update3.jpg

For the Attribute Checks - you need to specify the Difficulty and the Dice and then double click the Attribute Score to have it roll the nominated Dice, add the Bonus and compare against the Difficulty.
I will set the default to Difficulty and Dice to whatever you tell me is the most commonly used...

leozelig
March 29th, 2015, 12:15
Very cool. DC 10 is average according to the rulebook. There are a couple of rules pertaining to ability scores that are fairly common - burning luck and "spell burn." Both grant bonuses to a roll in exchange for dropping your ability score - spell burn uses strength, agility, and stamina for a spell check specifically. It would be good to have some way to track changes in ability score as these are burned. Personally, I like that widget with the +/- in the white bubble that shows up when you change the value of the field.

Nice work on that sheet though, it looks really good!

damned
March 29th, 2015, 12:34
So you are saying that sometimes your Attributes value may decrease (or increase?) but its a temporary change?
Do you have an example - either image or ruleset + steps - of the +/- bubble? I have some vague recollection of it?

On to the next questions...
For Initiative Im thinking of having a d20 and a d16 option to roll and it will set your Init to that. Is Init rerolled every round?



You can "burn" luck, which means lose a point from your ability score for a +1 to the skill check.
So you reduce your Luck by 1 each time - so you need a mechanism to record your Max Luck? Does burning Luck and reducing its value also change its modifier?


Thieves and halflings regenerate 1 point per day, halflings get +2 per point burned.
I dont think this requires anything specific in char sheet?


Lucky Roll is like a background/trait. You apply your luck modifier to certain rolls based on your background, usually very specific.
So just a Dice roll and they can drag result to Modifiers box?


What is a Reflex Save? Fort? Will?
These are modifiers based on ability score + class/level, same as 3.5E. Roll d20 vs. DC (higher roll is better).
So a Lvl 3 character with Agility 9 would have Reflex of 12? No modifiers for this like the Agility check itself? Are the rolls always on a d20?
What is the mechanic? Its roll high but not roll over the score for this...?



https://www.fg-con.com/wp-content/uploads/2015/01/fg-con-6-150-9.jpg (https://www.fg-con.com/events/)
FG Con 6 – April 17-19th 2015 - register at www.fg-con.com (https://www.fg-con.com/) for all the latest info.

leozelig
March 29th, 2015, 13:25
Here is the widget (on the left) I am talking about. I first saw it in the 4E ruleset. It's part of the Windows and Controls description in the mod guide.

https://www.fantasygrounds.com/images/manual/modguide/widgetexamples.gif

You would only need to track lowered ability scores. The spell burn mechanic gives wizards/elves a reason to value strength, agility, and stamina. Maybe the PC is adding some of their own blood to the spell components to increase the spell's potency, something like that. It actually weakens them physically (but slowly regenerates with rest).

Ability scores can increase permanently from magic, divine intervention, etc. Ability scores tend to be lower in DCC RPG (generated with 3d6), but opportunities to increase them do present themselves more than with other systems.

The white bubble widget might not be as attractive for permanent changes to the ability score, I don't know. But changes to ability scores are common enough that some means for tracking them is probably necessary.

Your luck modifier does change as you burn luck. But... Your "Lucky Roll" modifier never changes, even if your luck score changes. This is determined at character generation based on your *starting* luck score. A small text window for the lucky roll is probably adequate.

For saves, basically always a d20+mod roll. The mod is based on the ability score modifier + class-based modifier. Each class has a table listing the modifiers for each level. If a level 3 cleric gets a +2 Will save (just making that up), and he/she has a Personality of 14 (+1 mod), the Will save would be 2+1 = +3. You would roll d20+3 against whatever DC. So, a roll of 12 or better would succeed against a DC 15 for that PC.

Your efforts are greatly appreciated. I am using my smaller, simpler extensions for FG Con, but I do want to run some DCC RPG here at some point, so I will do what I can to help you with this. Goodman Games has a lot of cool adventures coming out this year.

I don't think it's worth posting my humble extensions - Funky Dice (basically the same as yours, added a d2), Enhanced Combat Tracker (just changed 'Order' to 'Init' and added fields for hp, temp hp, nonlethal, and wounds not linked to any sheets), and Resizable Character Sheet. But if anyone wants them, let me know.

damned
March 29th, 2015, 13:40
Ok - I will look at the bubble.

If d2 should be in Funky Dice Ill add it to mine as well. In the MoreCore DCC version it will have linked HP, TempHP, Wounds, SubDual and Order is Init/Initiative.


https://www.fg-con.com/wp-content/uploads/2015/01/fg-con-6-150-10.jpg (https://www.fg-con.com/events/)
FG Con 6 – April 17-19th 2015 - register at www.fg-con.com (https://www.fg-con.com/) for all the latest info.