PDA

View Full Version : Enhancement Request: Do not calculate trained skills without ranks



Blacklamb
March 9th, 2018, 22:56
I have been loving using Fantasy Grounds for my campaign but right now my biggest complaint is that skills that require training to use, Computers for example, still calculate out if they have no ranks in them. I know that by default they don't show up on the mini sheets unless the player checks off to show them but I find my players like the full sheet up and get confused when they see a score in a skill they don't use. Also for me on the skills tab of the party window it's hard to see who can't do that skill, I been keeping a list in notes and printed out on paper next to me who is trained in what.

This would be a nice to have if possible to just make my life and my players easier.

Blahness98
March 10th, 2018, 02:14
I believe that this is hard coded in all the CoreRPG layered rule sets (3.5, 5, PF, ect). If there are no ranks in the skill, the stat bonus will be there because of the hard coding. It can be ignored and if it is rolled, the roll itself will be tagged with [Untrained] so the GM would know to ignore the roll. Just tell them to ignore it unless you put ranks in the skill. But, there is also the caveat in the skill itself that allows for an untrained user to take 20 to browse an unsecured station. Granted, I don't know how often that would come up, but the skill mod might be useful.

Personally speaking, I have never used the skills sheet in party sheet. The only time I use it is when I have to roll a hidden save for the party. Even then, it's rare. I just let the players roll when they want to know something or if I they ask what they need to roll since it is less work on my end. But, once again, that is my opinion and how I do things. If the size is getting to you, try scaling the UI with the /scaleui command. It might help.

Blacklamb
March 10th, 2018, 02:21
Good point on allowing to roll when untrained, I just noticed that an Operative exploit lets them do it. I have never noticed the untrained show up next to their roll, I'll need to test and look for that. I also don't use the skill tab to roll for them, I like to use it to get an idea of who has what bonuses for seeing if they can even mathematically get the target number, and possibly tweak it if I feel it needs to be to keep the story going.

Topdecker
March 10th, 2018, 23:18
I like to use it to get an idea of who has what bonuses for seeing if they can even mathematically get the target number, and possibly tweak it if I feel it needs to be to keep the story going.

I am with Blacklamb here. Knowing that Player-2 is going to make the roll allows you to smoothly hand-off the narrative without pausing to ask 'Who can picklocks?' or make some other reference back to skills. Having a filtered list would be helpful. I know that it matches how the character sheets look, but we are digital here and could take better advantage of it.

Top

Trenloe
March 11th, 2018, 00:44
I like to use it to get an idea of who has what bonuses for seeing if they can even mathematically get the target number, and possibly tweak it if I feel it needs to be to keep the story going.


I am with Blacklamb here. Knowing that Player-2 is going to make the roll allows you to smoothly hand-off the narrative without pausing to ask 'Who can picklocks?' or make some other reference back to skills. Having a filtered list would be helpful. I know that it matches how the character sheets look, but we are digital here and could take better advantage of it.

Have a look at the Party Sheet.

Blacklamb
March 11th, 2018, 03:01
Have a look at the first page of the Party Sheet.

The first page of the party sheet shows health, ACs add saves, I understand that the skill page of the party sheet shows me all the skill bonuses, I love that page a lot what it does not show is for the trained skills what ones have a rank in them. I take back blanking them out, because I forgot that operatives can roll any skill if they take the right exploit at level two and there are others abilities that let you use an untrained skill. Maybe change the color on the party sheet for the ones that are untrained? I'm just trying to find a way to not have to either have a printout or note open with who is trained in what.

Trenloe
March 11th, 2018, 16:19
Maybe change the color on the party sheet for the ones that are untrained?
Good idea.

Please add to the FG feature request list here: https://fg2app.idea.informer.com/ (First search to see if the request has already been added).

Blacklamb
March 11th, 2018, 17:58
Good idea.

Please add to the FG feature request list here: https://fg2app.idea.informer.com/ (First search to see if the request has already been added).

Done: https://fg2app.idea.informer.com/proj/fg2app?ia=117205

Samarex
April 11th, 2018, 06:41
So Hope this works for you..
I added a Ranks line under the Skills in the Party Sheet.
So now you have a rollable number (Skill bonus) and under that is a Number (Skill Ranks in that Skill)

Still going to work on getting the Ranks number to be Red if it is a Trained only Skill and No Ranks applied to it)
UPDATE
Ok The Updated JPG show the Character sheet with all skill that are Trained Only and have NO Ranks the Total Number is RED
This tells the players that this is a Trained Only Skill and unless they have a ability that allows them to They cant use it.

Samarex
April 11th, 2018, 13:53
So I got the number to change color does any of you code gurus know if there is a way to change the backgound color and leave the number black?

damned
April 11th, 2018, 14:40
So I got the number to change color does any of you code gurus know if there is a way to change the backgound color and leave the number black?

You would need to replace the frame. As the frame is rendered before the text you would have to see if its possible to do some validation before placing the frames...

Trenloe
April 11th, 2018, 15:36
So I got the number to change color does any of you code gurus know if there is a way to change the backgound color and leave the number black?
<windowcontrol>.setFrame

https://www.fantasygrounds.com/refdoc/windowcontrol.xcp#setFrame

damned
April 11th, 2018, 15:39
A couple of entries above that one is one I hadnt seen before...

setBackColor


function setBackColor( color )
Set the color to be used to fill the background of the control before drawing the contents. If no backcolor specified (i.e. nil), then no fill will be done (i.e. transparent).

Parameters

color (string)
The color specified as a HTML compatible string representing an RGB color with an alpha (transparency) value. The format of the string is 'aarrggbb', and each component is presented as a hexadecimal value from 00 to FF. If alpha is zero or not defined, FF is assumed.

Trenloe
April 11th, 2018, 15:48
A couple of entries above that one is one I hadnt seen before...

setBackColor
My concern with that is "Set the color to be used to fill the background of the control before drawing the contents." I don't know if that would be dynamic, and would only refresh if the party sheet was closed/reopened.

One way to find out...

Samarex
April 11th, 2018, 16:05
Thanks guys I will play with it and see what happens.

Samarex
April 12th, 2018, 13:33
My concern with that is "Set the color to be used to fill the background of the control before drawing the contents." I don't know if that would be dynamic, and would only refresh if the party sheet was closed/reopened.

One way to find out...

It works great.
Just put in a handler to watch skill ranks. When on changes it does the check and changes the backgound back an forth.

Thanks alot


local sLabel = w.label.getValue();
local rSkill = DataCommon.skilldata[sLabel];
local bTrainedOnly = (rSkill and rSkill.trainedonly);
local nRanks = w.ranks.getValue();
if nRanks ~= 0 then
--w.total.setColor(nil);
w.total.setBackColor(nil);
end
if bTrainedOnly and nRanks == 0 then
--w.total.setColor("BB0000");
w.total.setBackColor("BB0000");
end

Trenloe
April 12th, 2018, 13:46
It works great.
Cool. Good to know.

Bidmaron
April 15th, 2018, 15:35
Samarex, what did you do about the frame? Did this override that as well?

Samarex
April 15th, 2018, 15:41
Samarex, what did you do about the frame? Did this override that as well?

Actually nothing was done with the frame. This was coded to change the color of the control. I didnt have to mees with any frames. Tomorrow i can put up the whole function so you can see.

Samarex
April 15th, 2018, 16:28
Actually nothing was done with the frame. This was coded to change the color of the control. I didnt have to mees with any frames. Tomorrow i can put up the whole function so you can see.
Here is the Function
w.total.setBackColor(nil);
total being the Total field control on the skills tab.


function update()
local bEditMode = (window.skills_iedit.getValue() == 1);
window.idelete_header.setVisible(bEditMode);
for _,w in ipairs(getWindows()) do
local bAllowDelete = w.isCustom();
if not bAllowDelete then
local sLabel = w.label.getValue();
local rSkill = DataCommon.skilldata[sLabel];
if rSkill and rSkill.sublabeling then
bAllowDelete = true;
end
end

if bAllowDelete then
w.idelete_spacer.setVisible(false);
w.idelete.setVisibility(bEditMode);
else
w.idelete_spacer.setVisible(bEditMode);
w.idelete.setVisibility(false);
end
local sLabel = w.label.getValue();
local rSkill = DataCommon.skilldata[sLabel];
local bTrainedOnly = (rSkill and rSkill.trainedonly);
local nRanks = w.ranks.getValue();
if nRanks ~= 0 then
--w.total.setColor(nil);
w.total.setBackColor(nil);
end
if bTrainedOnly and nRanks == 0 then
--w.total.setColor("BB0000");
w.total.setBackColor("ffcccc");
end
end
end

Bidmaron
April 15th, 2018, 16:31
Thanks, Samarex.