Senior Member
Join Date: Nov 2013
Location: Andover, Ma
Posts: 632
|
I have run into a custom ability that adds to ability score and can be taken once plus one time for every six levels a character possesses. The way the MAX LIMIT works, it doesn't seem like it can be dynamically altered based on scripts. I dont see any tags or fields that manipulate that.
I'm fairly certain I've seen customs that function similarly to this but I cant recall. Would anyone have any thoughts on how I could proceed. Ability Increase (Ex): Quote:
|
|
#1 |
Senior Member
Lone Wolf Staff
Join Date: May 2005
Posts: 13,213
|
No, max limit is a fixed value. In cases like this, you should use a prereq to enforce the limits you want, instead of using max limit.
An example of something that alters ability scores on a minion is the Human ART Eye for Talent. |
#2 |
Senior Member
Volunteer Data File Contributor
Join Date: Jan 2010
Location: Chicago, IL (USA)
Posts: 10,729
|
I would recommend looking at the summoner. The Eidolon has several abilities that have similar logic of can be take X number of levels.
Hero Lab Resources: Pathfinder - d20pfsrd and Pathfinder Pack Setup 3.5 D&D (d20) - Community Server Setup 5E D&D - Community Server Setup Hero Lab Help - Hero Lab FAQ, Editor Tutorials and Videos, Editor & Scripting Resources. Created by the community for the community - Realm Works kickstarter backer (Alpha Wolf) and Beta tester.- d20 HL package volunteer editor. |
#3 |
Senior Member
Join Date: Mar 2007
Location: Muskegon, MI
Posts: 2,975
|
the Natural Armor one is the one I always check out.
|
#4 |
Senior Member
Join Date: Nov 2013
Location: Andover, Ma
Posts: 632
|
I have tried to copy an ability from the Eidolon which does exactly what I want, Unfortunately when I bring it from a racial custom to a Class Custom. However, when I do this nothing happens. No how many levels i add to the hero the script says the allowed copies is zero.
I want to keep the code mostly like this so the same script can be used directly on the hero or function on the minion. Pre-reqs Code:
var classlev as number var minionlev as number ~classlev = round(parent.field[xAllLev].value/6,0,-1) ~minionlev = round(herofield[tCompLevel].value/6,0,-1) ~debug "[cENgAbilSt] Class Levels : " & classlev ~debug "[cENgAbilSt] Minion Levels : " & minionlev var allowed as number if (ishero = 0) then allowed = round(parent.field[xAllLev].value/6,0,-1) + 1 elseif (isminion <> 0) then allowed = round(herofield[tCompLevel].value/6,0,-1) + 1 endif debug "[cENgAbilSt] Allowed Copies : " & allowed ~if we're a pick, then must be complevel/6 or fewer copies of ~ this ability if (@ispick <> 0) then validif (tagcount[HasAbility.cENgAbilST] <= allowed) ~otherwise, look for fewer, since we're adding this else validif (tagcount[HasAbility.cENgAbilST] < allowed) endif @message = "You may not have more than " & allowed & " copies of this ability." |
#5 |
Senior Member
Join Date: Feb 2012
Posts: 546
|
Sorry for the thread necro, but I'm having the same issue with a mythic ability I'm working on. Did you get this resolved?
|
#6 |
Senior Member
Join Date: Nov 2013
Location: Andover, Ma
Posts: 632
|
I ended up attaching them to racial specials instead of class specials which, proved actually to be the better choice since the ability eventually had to be moved to a race anyway...
I copied the code from summoner: Pre-requisit: Code:
var allowed as number if (ishero = 0) then allowed = round(parent.field[xAllLev].value/6,0,-1) + 1 elseif (isminion <> 0) then allowed = round(herofield[tCompLevel].value/6,0,-1) + 1 endif ~if we're a pick, then there must be complevel/6 or fewer copies of ~ this ability if (@ispick <> 0) then validif (tagcount[HasAbility.rcEiAbSTR] <= allowed) ~otherwise, look for fewer, since we're adding this else validif (tagcount[HasAbility.rcEiAbSTR] < allowed) endif @message = "You may not have more than " & allowed & " copies of this ability." There is also a procedural version of this, designed to work with class specials for the summoner class, however, I never got it to work: Pre-requisit: Code:
var allowed as number var rate as number rate = 6 call CalcEvAllw allowed += 1 ~if we're a pick, then there must be complevel/6 or fewer copies of ~ this ability if (@ispick <> 0) then validif (hero.tagcount[HasAbility.cSumAbSTR] <= allowed) ~otherwise, look for fewer, since we're adding this else validif (hero.tagcount[HasAbility.cSumAbSTR] < allowed) endif @message = "You may not have more than " & allowed & " copies of this ability." Quote:
|
|
#7 |
|
|