Difference between revisions of "Conditional Skill Proposal"

From PCGen Wiki
Jump to: navigation, search
Line 15: Line 15:
 
* a) Grabs all BONUS:SKILL|<primary>|X and applies it to the skill
 
* a) Grabs all BONUS:SKILL|<primary>|X and applies it to the skill
 
* b) Not currently looking at grabbing RANKS from primary (see B)
 
* b) Not currently looking at grabbing RANKS from primary (see B)
 +
 
* B) RANKS:<YES/NO/INHERIT/PRIMARY>
 
* B) RANKS:<YES/NO/INHERIT/PRIMARY>
 
* 1) YES is Default - user can purchase skill ranks with point pool
 
* 1) YES is Default - user can purchase skill ranks with point pool
Line 23: Line 24:
 
* b) Basically, the RANK for the skill is always the same as the parent
 
* b) Basically, the RANK for the skill is always the same as the parent
 
* c) To allow Ranks to be added, but also use primary skill ranks, use BONUS:SKILLRANK and allow RANKS:YES
 
* c) To allow Ranks to be added, but also use primary skill ranks, use BONUS:SKILLRANK and allow RANKS:YES
 +
 
* C) Specifically not using TYPE tag to keep it off the TYPE tree, etc
 
* C) Specifically not using TYPE tag to keep it off the TYPE tree, etc
 
* 1) these entries should not have normal TYPE tags to prevent BONUS:SKILL|TYPE.x| from applying twice
 
* 1) these entries should not have normal TYPE tags to prevent BONUS:SKILL|TYPE.x| from applying twice
 
* 2) Suggest using TYPE:Conditional, with possibly HIDETYPE:Conditional
 
* 2) Suggest using TYPE:Conditional, with possibly HIDETYPE:Conditional
 +
 
* D) No coded limitation on skill name, suggested (release standard) would be to have <Primary name> (<condition-name>)
 
* D) No coded limitation on skill name, suggested (release standard) would be to have <Primary name> (<condition-name>)
  
Line 54: Line 57:
 
* 1) compare CONDITIONAL skills final modifier to Primary Skill's modifier.
 
* 1) compare CONDITIONAL skills final modifier to Primary Skill's modifier.
 
* 2) If different, display Conditional skill (displays anyway if Preference is checked)
 
* 2) If different, display Conditional skill (displays anyway if Preference is checked)
 +
 +
==Putting it all together==
 +
 +
AM - I propose the following changes:
 +
 +
*CONDITIONAL would become PARENTSKILL - it's more concise in what we want to achieve
 +
*RANKS:INHERIT|PRIMARY would become 'RANKS:INHERIT|PARENTSKILL'
 +
 +
INHERIT would be expanded to have '|z' with z being:
 +
* PARENTSKILL - grabs the ranks from the listed parent skill
 +
* <Skill Name> - grabs the ranks from another skill (Useful for the odd skill that gains more than one source)
 +
 +
* I'd also like to add 'CONDITIONAL' to the valid selections in the VISIBLE tag.
 +
** Display this skill if Parent and Child Skill aren't the same value. This would allow conditional skills to display even if the parent skill does not have any skill ranks listed.
 +
 +
* You could figure out appends for CONDITIONAL if required:
 +
* CONDITIONAL|PARENTSKILL - default value, lists the skill if the Parent Skill is different value
 +
* CONDITIONAL|HASRANKS - display only if the parent skill mismatch also includes skill ranks (Pathfinder requires this function)
 +
** Requires Parent Skill to have ranks
 +
* CONDITIONAL|PRExxx (Display the skill if character has meets the listed PRExxx)
 +
 +
 +
 +
In a Skills File we would have this: (Each Line represents a tab)
 +
 +
* Knowledge (Arcane/Concentration)
 +
** TYPE:OutputSkill
 +
** PARENTSKILL:Knowledge (Arcane)
 +
** RANKS:INHERIT|PARENTSKILL
 +
** VISIBLE:CONDITIONAL
 +
 +
Knowledge (Arcane/Concentration) will have the same bonuses as Knowledge (Arcane), will also grab the skill ranks from Knowledge (Arcane) [It's the ParentSkill], it'll be visible conditionally if there is a Mismatch in the values of the parent skill.
 +
 +
 +
These are my thoughts, feel free to add upon or comment.

Revision as of 20:51, 27 August 2010

I think this is nice and clear, but I've been wrong before.

This is the working-spec for Conditional skills. I'm on my second version, hence the Mk2 in the header.

Tir Gwaith LST Chimp

Skill Conditionals Spec

I) LST Tags (in skills.lst)

  • A) CONDITIONAL:<primary skill name>
  • 1) Makes this a Conditional skill that is checked in UI (see part XXX)
  • 2) Links the skill to the primary skill, useful for RANKS, and listing on OS
  • a) Grabs all BONUS:SKILL|<primary>|X and applies it to the skill
  • b) Not currently looking at grabbing RANKS from primary (see B)
  • B) RANKS:<YES/NO/INHERIT/PRIMARY>
  • 1) YES is Default - user can purchase skill ranks with point pool
  • 2) NO - user can not purchase any ranks in the skill
    • Note: BONUS:SKILLRANK would still work, limited by Max Rank as usual
  • 3) INHERIT/PRIMARY -
  • a) Haven't come up with a good name for this option, Same as NO, but grabs RANKS from parent skill.
  • b) Basically, the RANK for the skill is always the same as the parent
  • c) To allow Ranks to be added, but also use primary skill ranks, use BONUS:SKILLRANK and allow RANKS:YES
  • C) Specifically not using TYPE tag to keep it off the TYPE tree, etc
  • 1) these entries should not have normal TYPE tags to prevent BONUS:SKILL|TYPE.x| from applying twice
  • 2) Suggest using TYPE:Conditional, with possibly HIDETYPE:Conditional
  • D) No coded limitation on skill name, suggested (release standard) would be to have <Primary name> (<condition-name>)

Examples

  • 1) Climb (Using Rope)
    • - Synergy from Use Rope, etc.
  • 2) Appraise (Woodworking)
    • - Synergy from appropriate Craft skill...
    • - Yes, there would be one per Craft skill for this...
  • 3) Use Magic Device (Scrolls)
    • - Synergy from Decipher Script, etc
  • 4a) Use Rope (Bind someone)
    • - Synergy from Escape Artist
  • 4b) Escape Artist (from rope bonds)
    • - synergy from Use Rope
  • Stone Cunning to Search, Craft, etc...

II) UI (skills tab)

  • A) Selection on Skills Tab, near Include Skills, to include Conditionals or not
  • 1) Either Checkbox for Conditionals, or dropdown, or options for more
  • 2) Depends on Real Estate available, or what users want (so respond to this if you have a preference)
  • a) Zaister is leaning towards a checkbox currently.
  • B) Do not show or gray out if there are no skills loaded have CONDITIONAL tag in them.

III) Core

  • A) Preference to turn compare to Primary skill Modifier Off (default On)
  • B) On skill listing, for both Export (before going to OS, so no effect there), Preview, and UI tab
  • 1) compare CONDITIONAL skills final modifier to Primary Skill's modifier.
  • 2) If different, display Conditional skill (displays anyway if Preference is checked)

Putting it all together

AM - I propose the following changes:

  • CONDITIONAL would become PARENTSKILL - it's more concise in what we want to achieve
  • RANKS:INHERIT|PRIMARY would become 'RANKS:INHERIT|PARENTSKILL'

INHERIT would be expanded to have '|z' with z being:

  • PARENTSKILL - grabs the ranks from the listed parent skill
  • <Skill Name> - grabs the ranks from another skill (Useful for the odd skill that gains more than one source)
  • I'd also like to add 'CONDITIONAL' to the valid selections in the VISIBLE tag.
    • Display this skill if Parent and Child Skill aren't the same value. This would allow conditional skills to display even if the parent skill does not have any skill ranks listed.
  • You could figure out appends for CONDITIONAL if required:
  • CONDITIONAL|PARENTSKILL - default value, lists the skill if the Parent Skill is different value
  • CONDITIONAL|HASRANKS - display only if the parent skill mismatch also includes skill ranks (Pathfinder requires this function)
    • Requires Parent Skill to have ranks
  • CONDITIONAL|PRExxx (Display the skill if character has meets the listed PRExxx)


In a Skills File we would have this: (Each Line represents a tab)

  • Knowledge (Arcane/Concentration)
    • TYPE:OutputSkill
    • PARENTSKILL:Knowledge (Arcane)
    • RANKS:INHERIT|PARENTSKILL
    • VISIBLE:CONDITIONAL

Knowledge (Arcane/Concentration) will have the same bonuses as Knowledge (Arcane), will also grab the skill ranks from Knowledge (Arcane) [It's the ParentSkill], it'll be visible conditionally if there is a Mismatch in the values of the parent skill.


These are my thoughts, feel free to add upon or comment.