Lone Wolf Development Forums  

Go Back   Lone Wolf Development Forums > Hero Lab Forums > HL - Authoring Kit
Register FAQ Community Today's Posts Search

Notices

Reply
 
Thread Tools Display Modes
Mathias
Senior Member
Lone Wolf Staff
 
Join Date: May 2005
Posts: 13,215

Old August 29th, 2011, 08:32 AM
Quote:
Originally Posted by thedarkelf007 View Post
Next questions.

Skill specialisations are added to the value of skills, then attributes. I have skills working with attributes, but is it possible to link a skill with a skill?

or as I trying to do, can I have a skill that takes the attribute and base skill (if it has ranks) and add itself for the total without having to add the base skill?

Then I will try Advanced skills which don't use the attribute. Can you have a skill not link to an attribute?
Sorry, I'm not familiar with this system, and I don't understand what you're trying to accomplish within Hero Lab.

There's nothing special about the linkages and attributes - the linkage itself is defined in the component, all the scripts that make use of it are in the same component, and setting it to only allow a selection from among attributes is in the editor entry for the skills.

For Shadowrun and Cortex, I stripped out the linkage mechanisms, since they weren't what I needed, so you can certainly make them optional. Here's the wiki page on how components are defined: http://hlkitwiki.wolflair.com/index...._Element_(Data) - the "Linkage" section there has how to set the linkage itself as optional. Deciding to make use of it or not will have to be handled within the scripts.

(P.S. I've moved this thread to the Authoring Kit forum, since it's turned into a thread about building a game with the authoring kit. The "User Projects" forum is intended for corrdinating groups of users or getting a group together. This way, the next preson who wants to build a game using the authoring kit will find the threads you create about this game, and can hopefully learn from them.)

Last edited by Mathias; August 29th, 2011 at 08:35 AM.
Mathias is online now   #1 Reply With Quote
thedarkelf007
Senior Member
 
Join Date: Jun 2011
Location: Canberra, Australia
Posts: 624
Send a message via MSN to thedarkelf007 Send a message via Yahoo to thedarkelf007

Old August 29th, 2011, 02:47 PM
Quote:
Originally Posted by Mathias View Post
Sorry, I'm not familiar with this system, and I don't understand what you're trying to accomplish within Hero Lab.

There's nothing special about the linkages and attributes - the linkage itself is defined in the component, all the scripts that make use of it are in the same component, and setting it to only allow a selection from among attributes is in the editor entry for the skills.

For Shadowrun and Cortex, I stripped out the linkage mechanisms, since they weren't what I needed, so you can certainly make them optional. Here's the wiki page on how components are defined: http://hlkitwiki.wolflair.com/index...._Element_(Data) - the "Linkage" section there has how to set the linkage itself as optional. Deciding to make use of it or not will have to be handled within the scripts.

(P.S. I've moved this thread to the Authoring Kit forum, since it's turned into a thread about building a game with the authoring kit. The "User Projects" forum is intended for corrdinating groups of users or getting a group together. This way, the next preson who wants to build a game using the authoring kit will find the threads you create about this game, and can hopefully learn from them.)
Skills have specialisations (sort of like Shadowrun).

You can take the skill and the specialisation at character creation. If you do the specialisation stacks with the skill. i.e. attribute has 3 points, skill has 3 points and specialisation has 3 points. Final value for the skill is 6 points and 9 points for the specialisation.

But you can take the specialisation without the skill.

Once you are in the advancement phase of characters, increasing the skill does not increase the specialisation.

And if you add a new specialisation, and have the skill, the specialisation adds the current (with advancements) value of the skill to the new specialisation.

I am looking at using a field to store the skill value at specialisation creation time.

I am currently playing with Advancements and figuring out how this part of the tool works.
thedarkelf007 is offline   #2 Reply With Quote
Mathias
Senior Member
Lone Wolf Staff
 
Join Date: May 2005
Posts: 13,215

Old September 5th, 2011, 02:19 PM
Quote:
Originally Posted by thedarkelf007 View Post
Once you are in the advancement phase of characters, increasing the skill does not increase the specialisation.

And if you add a new specialisation, and have the skill, the specialisation adds the current (with advancements) value of the skill to the new specialisation.
Okay, these are damned difficult in Hero Lab, since Hero Lab is set up to re-calculate everything, every time the user changes something on the hero.

What you're going to have to rely on here is that every advancement on the advances tab has that same script to add the actual bonus from advancement that's in the CanAdvance component in advancement.core, and that all advancements run that script in the order they're listed on the Advances tab, from oldest to newest. That means that if, in that script, you can tell your thing that it started life as a specialization that was added during advancement, you can have it look up the current value of the skill it's based on. Since all the scripts are running in order, that value will only have the bonuses from any advancements added to that skill before the "New Specialization" advancement was added - not those after. Those specializations that were added during character creation will have a different script on their component that looks up the user-added value + bonuses from races, etc., but not from advancement, and adds that to the value of the specialization.

First, identifying whether a specialization was added during character creation or during advancement:

Code:
origin.ishero = 0
Means it was added as an advancement ( <> 0 means it was added during creation).

So, in a script on the specialization component, you can look up the non-advancement parts of the associated skill and add them as a bonus to the specialty.

Second, the advancement script. The first thing to do is to change the timing - you need it to come before the "Calc trtFinal" script, so that Calc trtFinal incorporates the amount this thing has been advanced, but since you also need to look up the user-added portion of the value (+ any bonus from races, etc. that apply to both the skill and specialty), you need your script to happen after the "Bound trtUser" script. So, Traits/1500 (or 2000 or 2500), if those other scripts are still using the timing from the Skeleton files.

Then, in that script, you'll need to check whether the thing you're currently working on is a specialization added during advancement mode:

Code:
 
if (tagis[component.SkillSpec] <> 0) then
  if (origin.ishero = 0) then
    field[spAssocSkl].value += field[trtUser].value + field[trtBonus].value + other values you need to sdd
(obviouly, I was guessing at the Id of your specialty component and the field you're using to store the value of the associated skill) (also, instead of "field[trtUser].value + field[trtBonus].value", you'll need to use whatever method you've set up to associate a specialty with its skill to transition to the skill, and add their values, rather than the trtUser and trtBonus from the specialty itself).

P.S. I like to use something other than trtBonus to store the bonus from advancement - I find it helpful to have the bonuses from races, etc. in trtBonus, and the bonuses from advancement in trtAdvance, or something like that, to make it easier to track down what came from what when I'm debugging.
Mathias is online now   #3 Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -8. The time now is 09:40 AM.


Powered by vBulletin® - Copyright ©2000 - 2024, vBulletin Solutions, Inc.
wolflair.com copyright ©1998-2016 Lone Wolf Development, Inc. View our Privacy Policy here.