• Please note: In an effort to ensure that all of our users feel welcome on our forums, we’ve updated our forum rules. You can review the updated rules here: http://forums.wolflair.com/showthread.php?t=5528.

    If a fellow Community member is not following the forum rules, please report the post by clicking the Report button (the red yield sign on the left) located on every post. This will notify the moderators directly. If you have any questions about these new rules, please contact support@wolflair.com.

    - The Lone Wolf Development Team

Defaulting Skill to another Skills Domain

GunbunnyFuFu

Well-known member
Greetings!

I've shot out a couple of PMs on this, but thought I'd go ahead and leverage the well of collective knowledge that is The Forum (tm) on an issue I'm having.

I'm currently learning to author a Hero Lab system, and in this particular case I chose the GURPS system. Several Skills have defaults to not only attributes, but to other skills (no problem with that), but some have defaults to specific domains in a skill. This is where I get lost. How would I handle this within the HL Authoring Kit? For example, Accounting in GURPS defaults to IQ-6, as well as Finance -4 or Merchant -5. It also can default to Mathematics (Statistics) at -5 as well. Here's what I've got so far:

Code:
<!-- Accounting Skill -->
<thing
    id="skAccou"
    name="Accounting"
    compset="Skill"
    isunique="yes"
    description="TBAL">
    
		<fieldval field="trtAbbrev" value="Accou"/>

	<!--
		Easy, Average, Hard, Very Hard.  This tag also drives controlling attribute default penalty (-4, -5, -6, -6) and skill purchase cost.
	-->
		
		<tag group="SkillLevel" tag="Hard"/>
		
	<!--
		Some skills need a TL
	
		<tag group="User" tag="NeedTL"/>
	-->
		
	<!-- 
		List the thingids of all skill defaults, if any. The number at the end is the absolute value of the skill default penalty. Make sure skill thingids are 9 characters in length or less!!
	-->
	
		<tag group="DefaultTo" tag="skFinan4"/>
		<tag group="DefaultTo" tag="skMerch5"/>
	
	<!-- 
		OPTIONAL: skill or attribute to which we default; exclude this linkage if no default is possible.
		The controlling attribute is tracked in a separate linkage, and the eval code in the component 
		will handle falling back to that attribute if a) the controlling attribute provides the best default 
		score or b) if all the skills listed as defaults are untrained.
		
		In any case, if the skill is capable of a default, the default linkage element is required.
	-->
		
		<link linkage="default" thing="attrIQ"/>
		
	<!-- 
		REQUIRED: our controlling attribute.  For now we're assuming the default penalty on the controlling
		attribute is governed by the skill difficulty.
	-->
		
		<link linkage="attribute" thing="attrIQ"/>
	
	</thing>

Any help/insight you can give would be greatly appreciated. As I'm a newb coder, if you see any glaring errors, bad form, or have constructive criticism/a better way to do things, I'm all ears.

Thanks!

GBF
 
If not, I'd recommend storing the data in a matrix.

Think of it as storing this information:

skFinan, , -4
skMerch, , -5
skMath, Statistics, -5

That way, you can parse your matrix, pull out the Ids of the skills you can look for, and if there's a domain that you also need to look for, pull out that, too. (If there's no domain entered, your script will only look for the skill itself, and not see if the domain matches, too). Then, the third column stores the amount of penalty for each case.

Your array will offer 20 or 30 rows, which is hopefully enough to handle every default that they can add for any skill.
 
I've started with GURPS Lite from Kairos...he did an awesome job on them! However, in GURPS Lite, skills default solely to attributes, based on how difficult a skill is. In the full blown GURPS, defaults can be to attributes, or to other skills as well.
 
Last edited:
Mathias,

Thanks! Is there an example of this in the Authoring Kit for 4E or Savage Worlds, and how it's called/parsed? All of this is still really, really new to me.

GBF
 
Is there another project in the this RPG you want to work on first? This seems like a rule that few users will use in their games, and implementing it will be an advanced scripting project. To me, that combination suggests back-burner this project.

I'm afraid I have too much SR5 work to do right now to build this system for you, so I can't start with an explanation from scratch right now. If you have more specific questions about the implementation details, I'm happy to answer those.
 
Back
Top