Lone Wolf Development Forums  

Go Back   Lone Wolf Development Forums > Hero Lab Forums > HL - Pathfinder Roleplaying Game
Register FAQ Community Today's Posts Search

Notices

Reply
 
Thread Tools Display Modes
JustinThomason
Senior Member
 
Join Date: Jan 2012
Location: Los Angeles, CA
Posts: 281

Old January 2nd, 2016, 12:50 PM
I'm going to be starting a new campaign soon, and I've been giving some thought to the so-called Feat Tax that's inherent in PFRPG. I don't intend to go nuts, but there are a few entry level feats that seem like they could be treated more like attack options rather than something that requires special training. Specifically I'm looking at Power Attack, Deadly Aim, and Combat Expertise.

What I'm thinking I'd like to do is have the feats added automatically as Bonus Feats to all characters that meet the prerequisites. I'm thinking that this should be added as a mechanic in the editor, but I couldn't think of anything in the game that did something similar, so I don't really know where to start. Everything I've done in the editor started with cloning an existing game element.

So for Power Attack, I'd want any character that has a BAB of +1 or higher, and a STR of 13 or higher to get the feat added automagically.

Similarly for Deadly Aim for characters with a BAB of +1 and a DEX of 13+, and for Combat Expertise for any character with an INT of 13+.

My intention is to make the house rule as transparent as possible, so I didn't want to recreate feats, or make a bunch of changes for prereqs for later feats - simply adding them as across the board bonus feats to all who qualify seemed the most elegant way to go.

I'm also not sure where it should go timing wise. I want to make sure that it gets calculated in early enough that someone can't accidentally select one of the feats in question before it gets added as a bonus feat.

Thanks in advance for your help!
JustinThomason is offline   #1 Reply With Quote
TheIronGolem
Senior Member
 
Join Date: Feb 2015
Posts: 676

Old January 2nd, 2016, 03:01 PM
If you're okay with a quick 'n dirty solution, you can just add the feats to the characters once they qualify, and use the "Feats Allowed" Adjustment to offset the bonus feats. Admittedly, you'd have to do this for each character individually.

If you want this to happen automatically, a mechanic probably is the way to go as you stated. What I would probably do is have the mechanic bootstrap the bonus feats, then have a script at Post-Attributes/10k or so that checks each of the feats to see if the hero qualifies, and hides/disables the feat in question if they don't. That might feel a bit hacky, but conditional bootstraps have to be resolved by about First/2000 or so, which is way too early to know if you meet ability score prereqs.

Big thumbs up on the idea itself, by the way. Those feats shouldn't even be feats in my opinion, just Things You Can Do If You Want. And don't even get me started on Combat Expertise's INT 13 requirement...
TheIronGolem is offline   #2 Reply With Quote
JustinThomason
Senior Member
 
Join Date: Jan 2012
Location: Los Angeles, CA
Posts: 281

Old January 10th, 2016, 08:52 AM
Quote:
Originally Posted by TheIronGolem View Post
If you want this to happen automatically, a mechanic probably is the way to go as you stated. What I would probably do is have the mechanic bootstrap the bonus feats, then have a script at Post-Attributes/10k or so that checks each of the feats to see if the hero qualifies, and hides/disables the feat in question if they don't. That might feel a bit hacky, but conditional bootstraps have to be resolved by about First/2000 or so, which is way too early to know if you meet ability score prereqs.
This seems like exactly what I want to do. I've done the easy part (bootstrapping the feats) and now if I create a new character all three feats are added automatically. However, I am not sure how to script the validation. Can anyone think of something that works sort of this same way that I can look at? Or optionally, if someone can give me pointers on validating one of the feats, I'm sure I can apply it to the rest.

I've used scripts to add things before, but I'm not sure how to use a script to disable/hide something.
JustinThomason is offline   #3 Reply With Quote
JustinThomason
Senior Member
 
Join Date: Jan 2012
Location: Los Angeles, CA
Posts: 281

Old February 21st, 2016, 08:14 PM
OK, so after several attempts and a couple of hours of researching how to write the script, I'm ready to throw in the towel. I really, really wish there were a central repository of knowledge on HL scripting - the current scattershot of forum posts and sort of articles is really, really frustrating.

I cannot figure out how to write what I know will end up being a very simple script, because I cannot decipher how to put the script together.

What I want the script to do in plain English is:

If Intelligence is less than 13, please remove the Combat Expertise feat.

I want this to happen for all of the feats, but if I can figure out one of them I can make it work for the rest.

As of right now, the best I could come up with (and it's not very good because HL won't even go through compiling because of syntax errors) is the following:

Code:
if (hero.child[aINT] < 13) then
fDisable.fComExpert = 1
Clearly this isn't correct, but I cannot for the life of me figure out what I need to do to make this happen. As I noted before, I've made a few things in the editor, and actually got them to work, but disabling these feats if the character doesn't meet the pre-reqs is killing me...
JustinThomason is offline   #4 Reply With Quote
psych777
Senior Member
 
Join Date: Aug 2011
Posts: 363

Old February 22nd, 2016, 12:42 AM
it looks like that tag is always present. when i disabled the feat the Helper.FtDisable was the tag that showed up. maybe try that one?
psych777 is offline   #5 Reply With Quote
psych777
Senior Member
 
Join Date: Aug 2011
Posts: 363

Old February 22nd, 2016, 12:43 AM
or maybe you have to do the perform assign tag line...no time to look it up right now, gotta run to work!
psych777 is offline   #6 Reply With Quote
Aaron
Senior Member
 
Join Date: Oct 2011
Posts: 6,793

Old February 22nd, 2016, 12:49 AM
If you copy Combat Expertise in the editor, and look at the eval script which applies its effects, you should be able to see the line which stops it from operating. It checks for a certain tag, which you need to assign to the feat on the hero.

As for checking the attribute, there is a macro for that "#attrvalue[aINT]", or you can spell that out with transitions (each "." in a line marks a transition from one context to another). Your example script there goes to the Intelligence pick, but no further, so the program is left asking "which field on intelligence am I comparing to 13?"

So, here is how you would transition to the hero, then the aINT pick, then the Final Value field, then the value of the field.

hero.child[aINT].field[aFinalVal].value

Given that, here is what you need to do once you know which tag to apply.

Code:
if (hero.child[aINT].field[aFinalVal].value < 13) then
  perform TRANSITIONTOTHECORRECTPICK.assign[WHATEVERTAGDISABLESFEATS]
  endif
Aaron is offline   #7 Reply With Quote
JustinThomason
Senior Member
 
Join Date: Jan 2012
Location: Los Angeles, CA
Posts: 281

Old February 22nd, 2016, 06:51 AM
Thanks! That's a big help in pointing me in the right direction.

I have to head to work now, but I'll take another crack at this tonight.
JustinThomason is offline   #8 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 06:02 AM.


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