Lone Wolf Development Forums  

Go Back   Lone Wolf Development Forums > Hero Lab Forums > HL - d20 System

Notices

Reply
 
Thread Tools Display Modes
draco963
Member
 
Join Date: Jul 2015
Location: Ottawa
Posts: 52

Old June 26th, 2017, 08:31 PM
What I'm trying to do is to change the feat progression for characters. A quick search of the D20 forum didn't turn anything up. This is not a change to the class feat progression, nor the bonus feats that some races (humans) get at first level, but rather the entire progression. I can't seem to find a player-level feat table anywhere...

Any ideas?
Thanks!
draco963 is offline   #1 Reply With Quote
Sendric
Senior Member
 
Join Date: Jul 2010
Posts: 2,985

Old June 27th, 2017, 03:43 AM
You can write a script on something that is on all characters (such as a condition) that modifies herofield[tFeats]. You'll have to come up with your own formula, and will probably have to modify every level.

To my knowledge, there is no array visible to the user that you can modify.
Sendric is offline   #2 Reply With Quote
draco963
Member
 
Join Date: Jul 2015
Location: Ottawa
Posts: 52

Old June 27th, 2017, 04:20 AM
Thank-you Sendric. So, I'd want to write that as an Adjustment probably, and add that adjustment to each PC. That way it's hidden from the player, but still active.

does herofield[tFeats] include feats earned from class or race? My point being, can I write one formula for all the PC's, or, would I have to write a custom one for each class/race combination that I have?
draco963 is offline   #3 Reply With Quote
Sendric
Senior Member
 
Join Date: Jul 2010
Posts: 2,985

Old June 27th, 2017, 05:52 AM
Quote:
Originally Posted by draco963 View Post
Thank-you Sendric. So, I'd want to write that as an Adjustment probably, and add that adjustment to each PC. That way it's hidden from the player, but still active.

does herofield[tFeats] include feats earned from class or race? My point being, can I write one formula for all the PC's, or, would I have to write a custom one for each class/race combination that I have?
I believe it only includes feats gained by character levels, but you might have to play around with it a bit to be certain.

If you want this to appear on *all* characters, then you should use a condition. Just choose one (other than Hasted which is already bastardized), and do a "replace thingid" in your own .user file. Then you can add the script to that. This way you don't have to worry about adding an adjustment to all the characters, and it will still be hidden from the users (even more so in fact).
Sendric is offline   #4 Reply With Quote
draco963
Member
 
Join Date: Jul 2015
Location: Ottawa
Posts: 52

Old June 27th, 2017, 10:14 PM
Would this work?

running at Post-Levels 10000:
Code:
var HD as number

HD = minimum(hero.tagcount[Hero.HitDice]) / 4

herofield[tFeats] = herofield[tFeats] + HD

Last edited by draco963; June 27th, 2017 at 10:19 PM.
draco963 is offline   #5 Reply With Quote
Sendric
Senior Member
 
Join Date: Jul 2010
Posts: 2,985

Old June 28th, 2017, 03:37 AM
Quote:
Originally Posted by draco963 View Post
var HD as number

HD = minimum(hero.tagcount[Hero.HitDice]) / 4
What is it you are trying to do here? The minimum function requires two numbers from which it will select the lowest. Perhaps you are trying to round, like this:

round(hero.tagcount[Hero.HitDice]/4,0,-1)

Quote:
herofield[tFeats] = herofield[tFeats] + HD
You need to add ".value" at the end, like this:

herofield[tFeats].value

Also, you can shorten that to:

Code:
herofield[tFeats].value += HD
However, you should understand that you will simply be adding the value of HD to the total number of feats gained. If you are trying to change it, then you should remove the '+' sign.

I don't know what timing is required.
Sendric is offline   #6 Reply With Quote
draco963
Member
 
Join Date: Jul 2015
Location: Ottawa
Posts: 52

Old June 29th, 2017, 07:02 PM
Thank-you Sendric!

Yes, I'm trying to get the rounded down result of HD/4. So, 1-3 = 0; 4-7 = 1; 8-11 = 2; etc. I'll use your round(hero.tagcount[Hero.HitDice]/4,0,-1).

So, how does minimum work? Would minimum(hero.tagcount[Hero.HitDice]/4,3) return the decimal value of HD/4 until HD=13 and then start returning 3 always? Is there a way to restrict the math result to integers? Can I mix the round() function inside minimum() (or vice-versa)?

And thank-you for the correction (herofield[tFeats].value).

I am trying to add the HD/4 value to the feats counter. My DM for this particular game likes things (vastly) overpowered, and so he wants additional feats every fourth level as well as the normal every third.

Thanks a lot for your help, Sendric!!
draco963 is offline   #7 Reply With Quote
Illyahr
Senior Member
 
Join Date: Feb 2013
Posts: 322

Old July 1st, 2017, 05:24 AM
Yep, that's how most minimum works.
Illyahr is offline   #8 Reply With Quote
Reply

Thread Tools
Display Modes

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 03:56 PM.


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