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
SAbel
Senior Member
 
Join Date: Jul 2007
Location: Walbridge, Ohio
Posts: 767

Old April 14th, 2024, 05:19 PM
Hello everyone,
I am working on making the 1987 Spy game live again. I am attempting to work with Visual Studio Code on the XML format. It has been a long time since I have worked with this and it is never close to easy, LMAO.
At this point, I started by making a copy of the Sample Game System [I'm not sure that was the best idea, but I thought that was how we were supposed to start].
I have the Attributes in, kind of. There are 5 main attributes and 2 secondary attributes that are derived from the main, but I am stuck with those. I have a post in the wrong place, so I am also moving it here as I started a Discord thread as well.
I really am NOT a programmer just kinda poking around with this and hoping to get lucky.

For all attributes I have them in the thing_attributes.data file.
I have the attributes [5 main] but cannot load them because I cannot get the two secondaries to work correctly.

Here are the rules [as written]

Attributes are determined by a "d60 + 10" roll: Make a d60 roll - roll ld6, followed by ld10, reading the d6 as the tens digit and the dl0 as the ones digit - yielding a result between 10 and 69. Then, add 10 to the number rolled. The end result of a d60 + 10 roll is a number between 20 and 79. The higher the number, the better you are in a particular attribute.
Roll separately for each attribute, writing the results of your d60 + 10 rolls in your character dossier. Now, add all five numbers together. If the total of your five d60 + 10 rolls is less than 275, subtract the total from 275. Then, distribute the difference among your five attributes as you see fit. The only restriction is that no attribute can be raised higher than 70. (Even 70 is nearly superhuman!) For example, say your d60 + 10 rolls resulted in a 53 (STR), a 27 (INT), a 65 CREF), a 39 (WIL), and a 38 (CON), for a total of 222. This is less than 275 so you subtract 222 from 275, to determine how many
extra points you can use to increase your character's attributes. In this case, 275 - 222 = 53 - you have 53 points to divide among your attributes.

Now the secondary
Your Movement (MOV) score is the average of your REF and STR ratings, rounding fractions up. Your Dexterity (DEX) score is the average of your REF and INT ratings, also rounded up.
All rules that apply to primary attributes apply to secondary attributes as well.

EXAMPLE of my Attributes:
<?xml version="1.0" encoding="UTF-8"?>

<!-- This file contains the assortment of attributes possessed by every actor for the
game system. The display order of attributes is controlled via the assignment of
an "explicit" tag with the relative position of each.
-->

<document signature="Hero Lab Data">

<!-- Strength Attribute -->
<thing
id="attrStr"
name="Strength"
compset="Attribute"
isunique="yes"
description="Measure of physical power.">
<fieldval field="trtAbbrev" value="Str"/>
<tag group="explicit" tag="1"/>
</thing>

<!-- Reflexes Attribute -->
<thing
id="attrRef"
name="Reflexes"
compset="Attribute"
isunique="yes"
description="Overall quickness and agility.">
<fieldval field="trtAbbrev" value="Ref"/>
<tag group="explicit" tag="2"/>
</thing>

<!-- Intelligence Attribute -->
<thing
id="attrInt"
name="Intelligence"
compset="Attribute"
isunique="yes"
description="Ability to learn and understand things.">
<fieldval field="trtAbbrev" value="Int"/>
<tag group="explicit" tag="3"/>
</thing>

<!-- Wisdom Attribute -->
<thing
id="attrWis"
name="Wisdom"
compset="Attribute"
isunique="yes"
description="Determination and strength of purpose.">
<fieldval field="trtAbbrev" value="Wis"/>
<tag group="explicit" tag="4"/>
</thing>

<!-- Constitution Attribute -->
<thing
id="attrCon"
name="Constitution"
compset="Attribute"
isunique="yes"
description="Ability to withstand damage.">
<fieldval field="trtAbbrev" value="Con"/>
<tag group="explicit" tag="5"/>
</thing>

<!-- MOVement Attribute -->
<thing
id="attrMOV"
name="MOVement"
compset="Attribute"
isunique="yes"
description="Derived attribute representing movement speed.">
<fieldval field="trtAbbrev" value="MOV"/>
<tag group="explicit" tag="6"/>
<eval index="1" phase="Traits" priority="4000">
<before name="Derived trtFinal"/>
<after name="Calc trtFinal"/>
<![CDATA[
~ Calculate the average rounded up for Movement (MOV) attribute
var mov = Math.ceil(hero.child[attrSTR].value, + trhero.chilait[attrREF]) / 2);
#traitbonus[trMovement] = mov;
]]>
</eval>
</thing>


<!-- DEXterity Attribute -->
<thing
id="attrDEX"
name="DEXterity"
compset="Attribute"
isunique="yes"
description="Derived attribute representing dexterity.">
<fieldval field="trtAbbrev" value="DEX"/>
<tag group="explicit" tag="7"/>
<eval index="1" phase="Traits" priority="4000">
<before name="Derived trtFinal"/>
<after name="Calc trtFinal"/>
<![CDATA[
~ Calculate the average rounded up for Movement (MOV) attribute
var mov = Math.ceil(hero.child[attrREF].value, + trhero.chilait[attrREF]) / 2);
#traitbonus[trMovement] = mov;
]]>
</eval>
</thing>


</document>

Last edited by SAbel; April 14th, 2024 at 05:44 PM.
SAbel is offline   #1 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 11:36 PM.


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