Lone Wolf Development Forums  

Go Back   Lone Wolf Development Forums > Hero Lab Forums > HL - D&D 5th Edition SRD

Notices

Reply
 
Thread Tools Display Modes
spannclann
Member
 
Join Date: Aug 2018
Location: Texas
Posts: 87

Old August 24th, 2018, 07:59 AM
From en5ider - 61 - Speaking with fists The Pugilist Martial Archetype has the Heavyweight class special. which says:

"Beginning when you choose this archetype at 3rd level, whenever you are not wearing armor or using a shield, your AC equals 10 + your Dexterity modifier + your Constitution modifier. Additionally, you gain proficiency with unarmed strikes, and they deal improved damage as per the Fist-Fighting Table, above. Whenever you make an unarmed strike with nothing in either your main hand or off-hand, your unarmed strike’s damage die increases by one step (from 1d4 to 1d6, 1d6 to 1d8, and so on). This damage increase cannot be used in conjunction with Sneak Attack or extra attacks granted by Martial Arts or Flurry of Blows."

However, it does not update the unarmed strike damage as per their table (where ever it is) and the manual also states:

"Characters with feats that improve
unarmed strike damage such as Grappler and
Tavern Brawler count as one level higher for the
purposes of unarmed strike damage."

These do not update the unarmed strike damage either. I am not a n00b to computers, but I am a n00b to editing Hero Lab. Any and all help would be greatly appreciated. I may name my second borne after you!
spannclann is offline   #1 Reply With Quote
dungeonguru
Senior Member
 
Join Date: May 2016
Posts: 608

Old August 24th, 2018, 04:53 PM
If you're OK with making a personal copy of the Pugilist, I can help explain what needs to be done. None of the class specials in the community files for this subclass have any scripting attached to them.

I don't think the community is going to maintain support of en5ider and some of the other 3rd party and homebrew going forward, or at least the priority for it is going to remain really low with emphasis on WotC core products before any other stuff.

If you're willing to create your own copy, here's how I would approach it.

1. Go into the editor and set my ID (Do this by going to the Tools menu and set your ID). Do not use 5C.

2. Go into the Class tab and choose the Custom Ability subtab. Hit New (Copy) and find the Pugilist. I would change the name to something like "Pugilist (updated ver.)" and give it a new unique ID like cFtrXXXPug (where XXX is my ID from #1). You can give it an ID up to 17 characters right now without causing issues but you can also keep it short. Save and Test Now!

I would then hit the bootstrap button and make a note of all the items bootstrapped and what the tags and fields are.

3. I would them move over to the Class Specials subtab and start doing New (Copy) of each of the items that were bootstrapped in step 2, giving them a New ID. After each Save and Test Now!

4. Go back to the copy of Pugilist from step 2 and replace the bootstraps with the ones you created in step 3. Save and Test Now!

Now, the tougher part. If you're not comfortable with learning scripting, then stop reading now, you're going to get glazed eyes like I'm the boring math professor.

Part 1: Fixing the AC calculation. Go to your copy of Heavyweight. Scroll down to the bottom and find the AC calculation section at the very end. Mark the checkbox and then for Base AC type in 10. Next to the modifiers hit the edit button and put checkmarks on Dexterity Modifier and Constitution Modifer. Hit Save and Test Now! and the AC calculation is fixed since this ability is already bootstrapped to the subclass after step 4 anyway.

Part 2: Fixing the Unarmed attack. This is where you'll have to learn some scripting. I would stay on the Class Specials tab and do a New (Copy) and find Martial Arts. What you'll want to do here is look at the two eval scripts attached to it. Note the timing, phase and priorities, either write them down or type them into your favorite text editor. Then copy those eval scripts to that same editor. Once you have these scripts copied out and you've double-checked their timing and priorities you can delete your copy of Martial Arts and move back to Heavyweight. Add the two scripts in.

If you just stopped here, the Heavyweight class would mimic the Martial Arts ability of the monk, which isn't a bad spot to be considering.

The first problem is you need to narrow this down to Unarmed Attacks only. In script #2 there is a line:

searchexpr = "IsWeapon.wUnarmed | IsWeapon.wShortswor | Special.MartArts | (wCategory.Melee & wProfReq.Simple & !wProperty.TwoHanded & !wProperty.Heavy)

This is what allows the monk to change the damage on martial arts weapons. You'll need to change this to be:

searchexpr = "IsWeapon.wUnarmed"

Script #1 controls when the damage dice change. This is a bit tricky, you'll have to modify it to reflect the "Fist-Fighting Table" rather than the monk progression. I would not worry about the Grappler or Tavern Brawler issues just yet. If you understand scripting, the if..then logic is pretty simple to replicate, if not, feel free to check out.

The twist that you've mentioned with Grappler and Taven Brawler would require you to set some variables to track.

You would have to set a variable like:

var act_level as number

and set it to the field[xAllLev].value

act_level = field[xAllLev].value

You'll have to use the #hasability[] macro to test for the two feats and if that feat exists add 1 to the act_level.

like:
if (#hasability[ID_for_Grappler] <> 0) then
act_level += 1
endif

Then replace field[xAllLev].value with act_level in all the if statements to reflect that you're looking at the acting level as opposed the the actual level.
dungeonguru is offline   #2 Reply With Quote
spannclann
Member
 
Join Date: Aug 2018
Location: Texas
Posts: 87

Old August 25th, 2018, 01:44 PM
Awesome, I will get to work on it. Be prepared for more questions.
spannclann is offline   #3 Reply With Quote
spannclann
Member
 
Join Date: Aug 2018
Location: Texas
Posts: 87

Old August 30th, 2018, 10:08 AM
@dungeonguru

First of all, many thanks on the help!

Secondly, I still need a bit of help on the Grappler and Tavern Brawler issue. I do kind of understand what you are meaning, but am a bit fuzzy. It has been a long time since I have done any coding.

This is what I am trying

~ Checking for Grappler or Tavern Brawler feats
if (#hasability[fGrappler] <> 0) then
act_level += 1
elseif (#hasability[ft5CTaverB] <> 0) then
act_level += 1
endif

var act_level as number

field[xAllLev].value = act_level

If you need the level altered script just let me know
spannclann is offline   #4 Reply With Quote
spannclann
Member
 
Join Date: Aug 2018
Location: Texas
Posts: 87

Old August 30th, 2018, 10:51 AM
When I try to Test it, I get this error.
Attached Images
File Type: jpg Capture.JPG (32.5 KB, 4 views)
spannclann is offline   #5 Reply With Quote
Mergon
Senior Member
 
Join Date: Sep 2012
Location: Ottawa, Canada
Posts: 788

Old August 30th, 2018, 11:04 AM
Quote:
var act_level as number
needs to go before

Quote:
~ Checking for Grappler or Tavern Brawler feats
if (#hasability[fGrappler] <> 0) then
act_level += 1
elseif (#hasability[ft5CTaverB] <> 0) then
act_level += 1
endif

Watch your back, Conserve your ammo,
and NEVER cut a deal with a dragon!
Mergon is offline   #6 Reply With Quote
spannclann
Member
 
Join Date: Aug 2018
Location: Texas
Posts: 87

Old August 30th, 2018, 11:18 AM
I just figured that out. However, my "test case" is level 10 and doing 1d6 damage as is supposed to. The problem is that with the "test case" having both Grappler and Tavern Brawler, it should be doing 1d8 damage, but it is still reading as 1d6.
spannclann is offline   #7 Reply With Quote
Mergon
Senior Member
 
Join Date: Sep 2012
Location: Ottawa, Canada
Posts: 788

Old August 30th, 2018, 11:28 AM
Something feels wrong about what you've shown us pf your script. It's obvious from the error you were gettign this is but part of a larger script, but without seeing more of the script and knowing what it is exactly you are trying to do, its impossible to say more at this point.

Watch your back, Conserve your ammo,
and NEVER cut a deal with a dragon!
Mergon is offline   #8 Reply With Quote
spannclann
Member
 
Join Date: Aug 2018
Location: Texas
Posts: 87

Old August 30th, 2018, 11:36 AM
Here is the full script. It was copied directly from the Monk Martial Arts information. I did make some changes to it to accommodate the Pugilist Fist Fighting table. That works just fine. I am having trouble adding a check for the Grappler and Tavern Brawler feats that add one level to determine unarmed damage.

~ If we're not shown, just get out now
doneif (tagis[Helper.ShowSpec] = 0)

~ If we're disabled, do nothing
doneif (tagis[Helper.Disable] <> 0)

~ first we have to establish our benchmark, based on our level
~ all comparisons are made assuming that the wielder is medium,
~ because
~ that is what wMain tags assume. Damage dice are then adjusted up

~ or down
~ appropriately based on size.
if (field[xAllLev].value >= 23) then
~ Medium folks get 1d12 at this level. Avg = 6.5
field[wDieCount].value = 1
field[wDieSize].value = 12
field[abValue].value += 6.5
elseif (field[xAllLev].value >= 18) then
~ Medium folks get 1d10 at this level. Avg = 5.5
field[wDieCount].value = 1
field[wDieSize].value = 10
field[abValue].value += 5.5
elseif (field[xAllLev].value >= 12) then
~ Medium folks get 1d8 at this level. Avg = 4.5
field[wDieCount].value = 1
field[wDieSize].value = 8
field[abValue].value += 4.5
elseif (field[xAllLev].value >= 6) then
~ Medium folks get 1d6 at this level. Avg = 3.5
field[wDieCount].value = 1
field[wDieSize].value = 6
field[abValue].value += 3.5
elseif (field[xAllLev].value >= 3) then
~ Medium folks get 1d4 at this level. Avg = 2.5
field[wDieCount].value = 1
field[wDieSize].value = 4
field[abValue].value += 2.5
else
~ Medium folks get 1d1 at this level. Avg = 1
field[wDieCount].value = 1
field[wDieSize].value = 1
field[abValue].value += 1
endif

var act_level as number

~ Checking for Grappler or Tavern Brawler feats
if (#hasability[fGrappler] <> 0) then
act_level += 1
endif
if (#hasability[ft5CTaverB] <> 0) then
act_level += 1
endif

var v_text as string



call wMainText

field[abText].text = v_text
act_level = field[xAllLev].valueact_level
spannclann is offline   #9 Reply With Quote
Mergon
Senior Member
 
Join Date: Sep 2012
Location: Ottawa, Canada
Posts: 788

Old August 30th, 2018, 11:41 AM
From what I am seeing, you calculate the boost properly, but it is never actually applied.

Also, I think the final line should be:

act_level = act_level + field[xAllLev].value

or

act_level += field[xAllLev].value

Watch your back, Conserve your ammo,
and NEVER cut a deal with a dragon!
Mergon is offline   #10 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 07:54 AM.


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