Brolthemighty
Well-known member
Alright, so my quest in putting feats in the editor for Pathfinder continues. Right now, I'm working on Arcane Thesis. It was originally for 3.5, and now I'm hoping to translate it to Pathfinder. There are three parts to the feat. The choosing of the spell (which I think I've gotten down), the reduction of all metamagic feats applied by 1 level, and the increase in caster level by 2.
So I'm trying to figure out if I should do this in 3 different Eval scripts....or somehow do it in one big script. Right now, I'm tackling the chosing of the spell, and decreasing the cost of all metamagic applied by 1. In doing so, I've taken a look at the scripting for the trait Magical Lineage. Here it is:
doneif (field[usrChosen1].ischosen = 0)
~ Generate our search expression to target the correct spell
var searchexpr as string
searchexpr = "thingid." & field[usrChosen1].chosen.idstring
searchexpr &= " & HasMetaMag.?"
~ Cycle through all the Custom/metamagic copies of our chosen spell,
~ and reduce their effective level by 1 (keeping them from going negative)
foreach pick in hero from BaseSpell where searchexpr
eachpick.field[sLevel].value = maximum(eachpick.field[sLevel].value - 1,0)
nexteach
So I can kinda see where the script is for choosing the spell and such (it works at least)....but I'm not sure which part of it limits the reduction to only the final adjusted level, instead of EACH feat. I have no scripting knowledge, so I'm shooting in the dark. I don't really know which it is. I think it might be in the timing aspect of it (labeled as post attributes, After Metamagic Level Modifiers). Anyone able to clarify this? Then I can start wading in to how to script it to increase Caster Level for it as well.
So I'm trying to figure out if I should do this in 3 different Eval scripts....or somehow do it in one big script. Right now, I'm tackling the chosing of the spell, and decreasing the cost of all metamagic applied by 1. In doing so, I've taken a look at the scripting for the trait Magical Lineage. Here it is:
doneif (field[usrChosen1].ischosen = 0)
~ Generate our search expression to target the correct spell
var searchexpr as string
searchexpr = "thingid." & field[usrChosen1].chosen.idstring
searchexpr &= " & HasMetaMag.?"
~ Cycle through all the Custom/metamagic copies of our chosen spell,
~ and reduce their effective level by 1 (keeping them from going negative)
foreach pick in hero from BaseSpell where searchexpr
eachpick.field[sLevel].value = maximum(eachpick.field[sLevel].value - 1,0)
nexteach
So I can kinda see where the script is for choosing the spell and such (it works at least)....but I'm not sure which part of it limits the reduction to only the final adjusted level, instead of EACH feat. I have no scripting knowledge, so I'm shooting in the dark. I don't really know which it is. I think it might be in the timing aspect of it (labeled as post attributes, After Metamagic Level Modifiers). Anyone able to clarify this? Then I can start wading in to how to script it to increase Caster Level for it as well.