PDA

View Full Version : Questions about skill data.



peterb
August 6th, 2024, 22:19
1) What xml element name should I use to make a skill not have a experience checkbox? In the script/manager_gameline.lua file it's NoCheck. Should the element name be <nocheck type='number'>100</nocheck>?
2) I also noticed that the in script/manager_gameline.lua the flag for a sub label is "Sublabeling" and in the BRPGameSystem module's client.xml its "sublabelling". I haven't experimented with changing it to match manager_gameline.lua, but it's a bit odd...

superteddy57
August 6th, 2024, 22:25
To be honest, I'm going to need to look it over as BRP for your answers. It does some things that we just don't do anymore and would like to give you a good answer. Is this to attempt to setup your own GameLine?

peterb
August 6th, 2024, 22:45
I've developed an extension to run "Runequest - Adventures in Glorantha". There are a few skills in RQ that do not need to be default skills (Alchemy and Spirit Lore are two examples), so when acquired they should be dragged from "skills" in the menu. Some of those skills (e.g. Alchemy) cannot be increased by experience, so I want to set up the skill records in client.xml to reflect that. There is code for handling "NoCheck" from manager_gameline.lua, but I'm uncertain about the skill records in the BRPGameLine module (or in my case a modified version of it).

Btw, my extension and game system module works, I just noticed this omission on my part earlier today.

peterb
August 23rd, 2024, 08:57
So, this is how you mark skills as not being able to get experience checks.

In your campaign script (for example scripts/my_script.lua). In the "Skills" table, set a skill to be "non checkable":


["Animal Lore"] = { Base="05", Category="Knowledge", NoCheck=true}

If you also want it not be shown on the character sheet as a default skill, add "Untrained", like so:


["Alchemy"] = { Base="05", Category="Knowledge", Untrained=true, NoCheck=true}

and if you want the skill to have a sublabel, use "Sublabeling":


["Martial Arts"] = { Base="01", Category="Combat", NoCheck=true, Sublabeling=true, Untrained=true}

So, you need to define all skills in your campaign script, even those that should not be shown by default, instead being added by dragging from the skills menu. Such skills must be declared "Untrained=true".

devinlc
August 29th, 2024, 23:26
Hello.

In playing last night we noticed that critical and special successes are not being calculated correctly.

In the BRP rulebook, for the Skill Results Table of the 2010 Gold Rulebook (upon which I believe the FGU BRP module is based), criticals and specials ROUND UP. In other words, where a critical success is 1/20th of your skill value, if you have a 21 skill value, the critical chance is 1.05 which rounds up to 2, so you critical on a result of 01-02. Similarly with special successes. Where a special success is 1/5th of your skill value, if you have a 33 skill value, the special chance is 6.6 which rounds up to 7.

This is the same in the new BRP rulebook as well.

However, FGU currently ROUNDS DOWN, not UP. If I have a 33 skill value in FGU, I get a special on 6, not a 7. If I have a 21 skill value, I get a critical on a 1, not a 2.

BTW, fumbles look like they are calculating properly.

When I look into the scripts/manager_gameline.lua file, I see the following:

--------------------------------------------------------
function getRollResult(skilllevel,roll)
local fumble = 101-math.floor((100-skilllevel)/20+0.5);
local special = math.floor(skilllevel/5+0.5);
local critical = math.floor(skilllevel/20+0.5);
if fumble>100 then
fumble = 100;
end
-- which category is the result?
if roll>=fumble then
return "FUMBLE!";
elseif roll>95 or roll>skilllevel then
return "Failure";
elseif roll<=critical then
return "CRITICAL!";
elseif roll<=special then
return "SPECIAL";
end
return "Success";
end
----------------------------------------------------
It looks to me like the above is trying to calculate criticals and specials properly (I assume the +0.5 is designed to have it round up in all cases). So, it seems to me that the system is NOT calculating criticals and specials based on this part of the gameline.lua file.

This is even more likely because, while the gameline.lua file refers to these as "FUMBLE" and "SPECIAL", in FGU they output as DISASTROUS FAILURE and EXCEPTIONAL SUCCESS respectively. This leads me to believe that the system is calculating specials and criticals from some other file. To test this, I changed the gameline.lua values and there was no change in the calculation by the system.

I have attached the skill results table as a graphic for reference.

Regards,

Devin

superteddy57
August 30th, 2024, 00:54
Ok, I will look into it.

Stollesson
September 11th, 2024, 18:31
So, you need to define all skills in your campaign script, even those that should not be shown by default, instead being added by dragging from the skills menu. Such skills must be declared "Untrained=true".

The easiest way to not show a skill on the character sheet is to simply remove it from the list.
My experience is that its best to have a extensions with just the skills that everybody can use.
And when a player creates a character you drag the rest from the skills menu.
This way the player only sees the skills he can use.

New skills should be put in a module so they appear in the skills menu.