Lone Wolf Development Forums  

Go Back   Lone Wolf Development Forums > Hero Lab Forums > HL - Pathfinder Roleplaying Game

Notices

Reply
 
Thread Tools Display Modes
SeeleyOne
Senior Member
 
Join Date: Nov 2009
Posts: 891

Old April 20th, 2014, 09:07 PM
I have thought of a few ways to make the "Full-Caster" classes a bit more fair in comparison to the others.

One idea was to give the less-optimal classes to get an additional feat on the even levels (rounded down). Another idea was to have the XP requirement for the Full-Caster levels cost more XP.

In either case, the way to do it would be to make a mechanic that totals the levels of specific classes. So for the extra feats it would be totaling the levels for cFighter, cRogue, cNinja, etc and then adding half of that to Feats. For the XP penalty it would be to total up the full-caster levels (cWizard, cCleric, cDruid, cWitch, etc) and then either adding XP to the XP requirement or subtracting so much per level from the total.

Pathfinder is not as easy to modify as the other game systems that Hero Lab supports. For example, this would be especially easy to do in Savage Worlds since we can see the source code and values show up more visibly in the Developer windows. Most of the workings of Pathfinder are invisible to us. We cannot simply say cCleric.value. Or at least I do not think that we can.

So, since my proficiency is lacking in Pathfinder mods, and the videos only show that "basic" things, does anyone have any ideas? (Other than to just not bother. )

Evil wins because good rolls poorly .... or the players are not paying enough attention to the game.
SeeleyOne is offline   #1 Reply With Quote
Aaron
Senior Member
 
Join Date: Oct 2011
Posts: 6,793

Old April 21st, 2014, 10:48 AM
The feat thing should be relatively easy. You could foreach through all classes without a CasterSrc tag and count the value of the cTotalLev field, then add half that total to the feats resource.

I'm not sure how much you can manipulate XP requirements. I know there is a slow, medium, fast advancement track built in. Maybe you could force casters onto a slower track?
Aaron is offline   #2 Reply With Quote
SeeleyOne
Senior Member
 
Join Date: Nov 2009
Posts: 891

Old April 21st, 2014, 12:00 PM
Thanks for the reply

The counting class levels is that part that I cannot quite figure out. How does that work in Pathfinder? I was hoping that I would just see a total level for, say, Wizard (or whatever) in some field but that does not seem to be the case.

Evil wins because good rolls poorly .... or the players are not paying enough attention to the game.
SeeleyOne is offline   #3 Reply With Quote
Mathias
Senior Member
Lone Wolf Staff
 
Join Date: May 2005
Posts: 13,207

Old April 21st, 2014, 12:03 PM
In the editor, from the Help menu, choose "Help on Using the Editor". Find the "Reference Information" link. The first section in "Reference Information" is useful macros, and the first macro described there is for counting the levels in a particular class.
Mathias is online now   #4 Reply With Quote
Aaron
Senior Member
 
Join Date: Oct 2011
Posts: 6,793

Old April 21st, 2014, 12:12 PM
Mathias' suggestion is to use the #levelcount macro to count the number of Classes tags on the hero, which is one way to tell how many levels a particular class has. Unfortunately, you'll have to use the macro once for each class you want to count the levels of, and if, in the future, someone adds a non-casting class to the system your script would need to be updated to take that into account.

That is why I recommended foreaching through all class helpers and looking at the total level field on that helper. You can use a tag expression with the foreach to exclude classes which have spellcasting tags, and thus you will be set if any future classes get added (as they should be tagged appropriately).
Aaron is offline   #5 Reply With Quote
SeeleyOne
Senior Member
 
Join Date: Nov 2009
Posts: 891

Old April 21st, 2014, 04:31 PM
Thanks for pointing me in the right direction. I did not look far enough down that list recently. I had forgotten that the Help files are far more extensive than they are for other games (and that is good, as Pathfinder is far more complex). I will remember to read them more thoroughly before I ask a question that a bit of reading will answer.

Evil wins because good rolls poorly .... or the players are not paying enough attention to the game.
SeeleyOne is offline   #6 Reply With Quote
SeeleyOne
Senior Member
 
Join Date: Nov 2009
Posts: 891

Old April 21st, 2014, 05:46 PM
OK, in case others might want to know, what I did was
Post-Levels, 10000
Code:
var halveus as number
halveus = 0

halveus += #levelcount[Barbarian]
halveus += #levelcount[Cavalier]
halveus += #levelcount[Fighter]
halveus += #levelcount[Gunsling]
halveus += #levelcount[Monk]
halveus += #levelcount[Ninja]
halveus += #levelcount[Rogue]
halveus += #levelcount[Samurai]

halveus = round(halveus/2,0,-1)
#resmax[resFeat] += halveus
I will get back when I have figured out the XP part. I have a theory but I am not sure if it will work.

Evil wins because good rolls poorly .... or the players are not paying enough attention to the game.
SeeleyOne is offline   #7 Reply With Quote
SeeleyOne
Senior Member
 
Join Date: Nov 2009
Posts: 891

Old April 21st, 2014, 07:24 PM
I cannot quite figure out the syntax to access the field that has tEarnXP

OK, it is a part of the hero, but I cannot quite figure out where exactly to put the tEarnXP. It does not seem to be in a group for the child to work. Everything that I have thought of so far either has a "does not exist" or a parse error.

The plan is for every even level of one of the full-caster classes to effectively subtract one XP from the total, the effect being that it costs an extra XP for that even level in a full-caster class. I am using the Pathfinder 3 XP per level as that is the easiest.

Evil wins because good rolls poorly .... or the players are not paying enough attention to the game.
SeeleyOne is offline   #8 Reply With Quote
SeeleyOne
Senior Member
 
Join Date: Nov 2009
Posts: 891

Old April 21st, 2014, 08:09 PM
I figured it out. hero.child[Totals].field[tEarnXP].value is what I wanted.

The code that will make a character require 1 XP per even Full-Caster (and Summoner) level is as follows:
Code:
var xpMod as number
xpMod = 0

xpMod += #levelcount[Cleric]
xpMod += #levelcount[Druid]
xpMod += #levelcount[Oracle]
xpMod += #levelcount[Sorcerer]
xpMod += #levelcount[Summoner]
xpMod += #levelcount[Witch]
xpMod += #levelcount[Wizard]

xpMod = round(xpMod/2,0,-1)

hero.child[Totals].field[tEarnXP].value -= xpMod
I just put it all in the same Eval Script for a mechanic that I call "Fair Classes". It is in the Post-Levels phase with 10000 timing.
Code:
var halveus as number
var xpMod as number
halveus = 0
xpMod = 0

halveus += #levelcount[Barbarian]
halveus += #levelcount[Cavalier]
halveus += #levelcount[Fighter]
halveus += #levelcount[Gunsling]
halveus += #levelcount[Monk]
halveus += #levelcount[Ninja]
halveus += #levelcount[Rogue]
halveus += #levelcount[Samurai]

halveus = round(halveus/2,0,-1)
#resmax[resFeat] += halveus

xpMod += #levelcount[Cleric]
xpMod += #levelcount[Druid]
xpMod += #levelcount[Oracle]
xpMod += #levelcount[Sorcerer]
xpMod += #levelcount[Summoner]
xpMod += #levelcount[Witch]
xpMod += #levelcount[Wizard]

xpMod = round(xpMod/2,0,-1)

hero.child[Totals].field[tEarnXP].value -= xpMod
This helps give the "sucky" classes a few more feats and the "super power classes" slow down in level progression so that their lessers will eventually be a level or two ahead. It helps to keep it more fair across the table.

Evil wins because good rolls poorly .... or the players are not paying enough attention to the game.
SeeleyOne is offline   #9 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 10:49 AM.


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