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
Fnordboy
Junior Member
 
Join Date: Dec 2009
Posts: 23
Send a message via ICQ to Fnordboy

Old May 12th, 2010, 10:10 PM
Here's the Feat:

Deadly Finesse:
When wielding a finnesable weapon or two weapon fighting with weapons that both qualify as finesse weapons, you deal extra damage equal to 1/2 your dexterity modifier. creatures not subject to critical hits or sneak attacks are not subject to this damage. ( elementals, oozes, some undead and some constructs ).

I've added the basics into the editor, but I have no idea on how to code the following:

1) Have the Feat check my readied weapons to see if this feat bonus applies and modify the calculated bonus Damage.

2) Get Deadly Finesse to show up on my character sheet with computed bonuses in the Ability section.

3) Is there a way to add a checkbox to the Weapon entry to toggle Deadly Finesse (on/off) in case I'm fighting creatures immune to this feat?

Heck, what would be the best way to attack this feat, anyway?
Fnordboy is offline   #1 Reply With Quote
Mathias
Senior Member
Lone Wolf Staff
 
Join Date: May 2005
Posts: 13,213

Old May 14th, 2010, 10:17 AM
Here's how to figure out how to find finesse weapons:

In the develop menu, make sure "Enable Data File Debugging" at the top of the menu is checked, then purchase many weapons for a character - you'll want weapons that aren't finesse weapons (like the longsword), light weapons (like the dagger), and weapons that are specifically allowed for weapon finesse (like the rapier). For each weapon, right-click on it, and select "Show Debug Tags for XXX" - look through the lists of tags for each weapon, and compare the lists to each other. You'll find that Finesse weapons either have wClass.Light or Helper.Finesse.

In Hero Lab, my policy for abilities that modify the equipped weapons/armor is that the user doesn't want to have to equip the weapon before they see the calculated bonus - they want to see that bonus whether they've equipped the weapon or not. So, I'd recommend altering the damage of all finesse weapons, with a little check first to make sure that the equipped weapons are all finesse weapons.

To figure out how to do that, go back to those lists of tags for the weapons, and look for a component tag that seems to be specific to all weapons, and wouldn't end up on anything else (you should compare the weapon tags to the tags on a piece of armor or gear to see how the component tags differ). component.BaseWep looks like a good choice.

Now, equip all those weapons you've added, and look at how the tags change when they're equipped or not equipped. Don't forget to add a 2-handed weapon, and see if it acts the same. You'll find that Hero.MainHand and Hero.OffHand are the tags you're looking for.

Now, in the editor, look up another feat that has an on/off button, like Power Attack. You'll see that they have the "Show In Activated Abilities" option checked on their editor tab, and in the eval script, field[abilActive].value stores whether or not they're active (1 for on, 0 for off).

In terms of timing for your script, you'll need the final DEX mod, so you'll have to be in the Post-Attributes phase or later. I'd recommend Post-Attributes/5000.

Start with the usual check to make sure something else hasn't disabled the feat:
Code:
~ If we're disabled, do nothing
doneif (tagis[Helper.FtDisable] <> 0)
Next, we'll calculate the bonus. Start with the DEX mod (using the #attrbonus[] macro instead of the #attrmod[] macro because #attrbonus[] will return 0 if the DEX mod is negative).

Code:
 
field[abValue].value += round(#attrbonus[aDEX]/2,0,-1)
What that's doing is to take the DEX mod, and divide it by 2 ("#attrbonus[aDEX]/2"), then round that down, and store it in the abValue field on the feat.

And we'll alter the feat's name to include that info:

Code:
 
field[livename].text = "Deadly Finesse +" & field[abValue].value
Next, make sure the feat is active:
Code:
~get out now if we're not on
doneif (field[abilActive].value = 0)
Now, to search through all the equipped weapons to make sure they're all finesse weapons:

Code:
 
foreach pick in hero from BaseWep where "Hero.MainHand | Hero.OffHand"
  doneif (eachpick.tagis[wClass.Light] + eachpick.tagis[Helper.Finesse] = 0)
  nexteach
That will search through all the BaseWep picks on the hero, looking only at the ones that are equipped ("Hero.MainHand | Hero.OffHand"). For each one it finds, it will verify that weapon finesse applies, and will exit the script ("doneif") if they aren't.

Now, we'll search through all the finesse weapons on the hero, and apply the bonus to each:

Code:
 
foreach pick in hero from BaseWep where "wClass.Light | Helper.Finesse"
  eachpick.field[wDamBonus].value += field[abValue].value
  nexteach
The wDamBonus field came from the "Reference Information" page in the editor manual (press help in the editor to get that) - near the bottom of that page is the weapons section, which lists fields and tags that apply to weapons.

Here's the collected script, for easier copying:

Code:
 
~ If we're disabled, do nothing
doneif (tagis[Helper.FtDisable] <> 0)
 
field[abValue].value += round(#attrbonus[aDEX]/2,0,-1)
 
field[livename].text = "Deadly Finesse +" & field[abValue].value
 
~get out now if we're not on
doneif (field[abilActive].value = 0)
 
~get out if any of our equipped weapons aren't finesse weapons
foreach pick in hero from BaseWep where "Hero.MainHand | Hero.OffHand"
  doneif (eachpick.tagis[wClass.Light] + eachpick.tagis[Helper.Finesse] = 0)
  nexteach
 
~apply the damage bonus to all our finesse weapons
foreach pick in hero from BaseWep where "wClass.Light | Helper.Finesse"
  eachpick.field[wDamBonus].value += field[abValue].value
  nexteach
Mathias is offline   #2 Reply With Quote
Theocrat
Senior Member
 
Join Date: Aug 2009
Location: Imperial Theocracy
Posts: 151
Send a message via Skype™ to Theocrat

Old May 14th, 2010, 10:58 AM
Hi all -
OK, so without asking for this direct assistance for each feat we want to add, how is that we're to figure this out?
I've been posting that I'm attempting to add Seeker of Secrets - and Boon Companion which provides a +4 bonus on level (up to a maximum of your character level) on your animal companion or familiar. When I look at all those boxes on the right side of the feat editor, I'm baffled at which one means, and can't see how to make sure that the prereq's are met, as well as making sure the bonus is applied. I've posted this as a general question on the user files section as well as another section with no real direct help (except that at GenCon there are seminars) .
So far, without being able to do more with the editor, I'm disappointed in HL and am about to ask for a refund of both my PF license and the Bestiary license. I only want to add those things that I'm using in my Pathfinder Society games - and not much else. I'm not trying to add things that are 3PP products. Using the demo mode doesn't give a clear idea on the editor and the manual shows a feat that is simple. I'm not a coder but find HL a difficult entry for personal modifications.
Posting to Paizo's boards and reading the different types of programs, I realized that none were quite as easy as e-Tools (code monkey version) to modify, but either those posters weren't attempting to code more than the basic info or just using HL as is. Of course, not being a coder things are going to be more difficult for me, but something needs to be done to help those that want to add more for their game (as well as other users). I've even asked in PM other members for help and they have given cryptic or information that doesn't really help.

I'm a user that wants to learn, so that I can then end up making HL an even better product by providing other data sets for other HL members. But my attempts are hindered by the learning curve and a lack of a clear cut manual that shows how to do something that is new and not just something that can be generally copied from an already coded item.

Be Well. Be Well Learned.
Theocrat Issak

Theocrat Issak
Las Vegas Lodge Gaming Agent
PFSTheocrat@gmail.com
Theocrat is offline   #3 Reply With Quote
Mathias
Senior Member
Lone Wolf Staff
 
Join Date: May 2005
Posts: 13,213

Old May 14th, 2010, 12:01 PM
Please read the first section of my reply to Fnordboy - the procedure I'm outlining is the standard advanced technique for figuring out how things work in HL - take the methods I'm describing for this poster's specific problem and apply them to the problem you're trying to solve.

There may also be threads already on this forum dealing with the subject you're working on. At the top right of the thread listing is the "Search This Forum" option - putting in "Animal Companion" as the search topic pulls up many threads - http://forums.wolflair.com/showthrea...imal+companion. That one specifically mentions "Boon Companion", so you may be able to ask that person for what he's written.

Last edited by Mathias; May 14th, 2010 at 12:04 PM.
Mathias is offline   #4 Reply With Quote
Colen
Senior Member
Lone Wolf Staff
 
Join Date: Dec 2008
Posts: 4,690

Old May 14th, 2010, 12:03 PM
Theocrat,

Sorry to hear you're having problems getting your feat working. I find that the best way to get new things working is to look at how existing things work. For example, let's say that your feat has a pre-requisite of a certain ability score. The easiest way to figure that out is to look for another feat that has an ability score pre-requisite - Combat Expertise, for example - and then copy that in the editor (using the "New (Copy)" button) to see how that works. In the case of Combat Expertise, it has a pre-requisite you can copy that lets you check for an ability score before adding it.

If you haven't done them already, I highly recommend the editor tutorials for Pathfinder - they take you through adding a new feat, a new race, a new class, and more - they should give you a good introduction to building new content.

Regarding your other point - the Pathfinder game system is very complex, and Hero Lab has to be a very powerful tool to handle that. Think about the number of things a feat or a character class can do, for example - there are hundreds, if not thousands, of different possibilities. When I tried to use the old e-Tools, I found them very limited in comparison to Hero Lab; sure, it might have been easier to do a few things in e-Tools, but there was so much that you just couldn't do at all.

Hero Lab handles almost every facet of the Pathfinder game system, so it's sadly inevitable that it'll be more complex to work with than e-Tools, which was a simpler program that had to handle a much simpler game system.

As a result, we could sit here for weeks working on nothing but documentation, and we still wouldn't be able to cover everything you would need to know about doing things with the Pathfinder files. That's why we operate these forums. For the cases where you can't find something in the documentation, and when there are no equivalent ways of doing stuff with the core rules for you to copy, these forums are intended as a "living document" of information on how to create data files for Hero Lab.

The ability you suggest, that gives +4 to your animal companion level, is pretty unusual - as far as I'm aware, there are no examples of that ability in the Pathfinder core rules. So this forum is the perfect place to post asking for help. You mention that you've posted in other places asking for help on stuff - if your questions are related to things like "How do I do X for the Pathfinder game system", this forum is a much better place to ask, since it's here you'll find expert Pathfinder help and support.

Hope this helps!
Colen is offline   #5 Reply With Quote
Theocrat
Senior Member
 
Join Date: Aug 2009
Location: Imperial Theocracy
Posts: 151
Send a message via Skype™ to Theocrat

Old May 14th, 2010, 04:22 PM
OK, I've gone through the editorials. None of them explain the concept of the Eval Scripts, Eval Rules, Pick-Reqs, Exper-Reqs, Pre-Reqs, Bootstraps, ConainerReg, Gizmo, or Minion tabs (the ones to the right). I can gather what one or two of those tabs mean...but ContainerReg? Gizmo? I suppose I can attempt to open up many various feats/gear/XXX to find and potentially understand what they might do - but in the tutorial it should at least explain what Bootstraps mean. From my understanding, pulling oneself up by their bootstraps entails doing it themselfs. Gizmo - are we talking about that little creature from Gremlins or something else?

Reading the link that Mathias provides for Animal Companion - yes, Boon Companion is briefly mentioned, while Lawful G posts this tidbit...
This is the script I wrote that adds to animal companion level, again, for 3.5. Things may have changed, but I hope it helps.

First 497
~ Add 3 to our companion level.
hero.childfound[cAnimClass].field[CompClLev].value += 3
hero.childfound[cAnimComp].field[CompLevBas].value += 3

OK, I can guess that because Boon Companion adds +4 that I'd modify the value to that of 4. But where would I find this childfound information (and why was the kid lost =;->) ?

Back to Boon Companion: So I choose Pick Requirements tab...I scroll down to AnimalCompanion and see five options... What's the difference between cAnimClass and cAnimComp? Assuming (and I very well could be way wrong here, because this type of thing isn't explained) that cAnimClass isn't what I'm looking for (because that to me reads Animal Class which would equate to an additional class which an animal might have). cAnimCompanion looks like it might be by best bet.
I choose cAnimComp and Is Error is auto check marked. Hmm, does that mean its a default check mark and I should leave it or is it mean something else? Don't know. Leave it as is, hit OK, then test and wow, I don't get an error message.
Check it, it does say that Animal Companion is required. Awesome. I'm getting somewhere. But where do I get to give the bonus +4 to the companion's level? Re-reviewing Lawful G's aspect - I don't see anywhere that I'd get that bonus applied.

So at least I've figured out half the problem, but getting my benefit seems to be harder.
So then, were do I go to get a better understanding of those buttons to the right? Which ones apply best for feats, gear or a wondrous item.

Now just think of how frustrating it is for Mathais to have to tell me to do a search for Animal Companion and to review that and find that it doesn't make anything clearer for me that how extra frustrating it must be for me as a customer to want to help make HL a better product by doing the things that you cannot. I really do care that HL gets better if I make Seeker of Secrets and make it available - because then hopefully other people will use HL, realize they can get the content that they're looking for and potentially go through and add new content. But this is maddening that I'm having to go through all this just to add one feat - when if the tutorial gave better explanations I wouldn't need all this.
Theocrat Issak

Theocrat Issak
Las Vegas Lodge Gaming Agent
PFSTheocrat@gmail.com
Theocrat is offline   #6 Reply With Quote
Fnordboy
Junior Member
 
Join Date: Dec 2009
Posts: 23
Send a message via ICQ to Fnordboy

Old May 15th, 2010, 09:06 AM
Mathias,

Thank you for going through your thought processes and giving me a glimpse into the power of HL. Just a quick question regarding this code you constructed...where should I paste it?
Fnordboy is offline   #7 Reply With Quote
ShadowChemosh
Senior Member
Volunteer Data File Contributor
 
Join Date: Jan 2010
Location: Chicago, IL (USA)
Posts: 10,729

Old May 15th, 2010, 09:24 AM
Quote:
Originally Posted by Fnordboy View Post
Mathias,

Thank you for going through your thought processes and giving me a glimpse into the power of HL. Just a quick question regarding this code you constructed...where should I paste it?
Open up the editor and your data file(ie .user file) and then click on your Feat tab. Then click on your feat. In the right side of the editor is a bunch of blue buttons.

In this case you want to click on Eval Scripts. Then click on Click to add another eval script. Then click on Phase: drop down and select Post-attributes. For Priority: type in 5000. You can leave the Index: alone.

Then in the large text window area you can simply copy and past Mathais code directly in. Select OK then click on the Test Now! button in the top left corner. Answer yes to all the saves.

Once this is all done your new feat will be available and working in HL. Yea!

Hope that helps.
ShadowChemosh 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 05:48 AM.


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