Ok, so Pirates, which allows up to (but not including) Legendary to be taken at Character Creation only I set an Eval Rule on a Mechanic running at Validation/100 as follows:
Code:
foreach pick in hero from Edge where "(MinRank.1 | MinRank.2 | MinRank.3 | MinRank.4) & !Helper.IgnoreRank"
if (eachpick.creation = 1) then
perform eachpick.assign[Helper.IgnoreRank]
endif
nexteach
So that adds in checking for more than just Seasoned, but for the other ranks as well AND skips the "done" code, since Pirates also does not limit you to only a single above-Novice Edge. And that seems to work! Yay! NowI can go back and do the same on 50 Fathoms but using the base code looking only for Seasoned and including the "done" to drop out of the loop since only that first Seasoned Edge can be considered valid since it only lets you pick one.
I figured I would have needed to look for that on every Edge it was applicable to, but instead doing it as a Mechanic really works it out well.
I now run into one other issue, though, related to this. In Pirates there are certain Edges (mainly Fencing Academies) that allow you to take another Edge at lower than the normal Rank requirement. So, for example, the Royal Fencing Academy (edgPMFARFA) allows you to take Riposte Edge at Novice and the Improved Riposte Edge at Seasoned. With my previous thinking that I would need to check those Rank requirements on each of these Edges I had simply included the Edge check in the Pre-Reqs script where I was trying to check for Rank. Now I would need to change that up a little, but I can't quite figure out the code to do it.
I THINK I would need to set up an Eval-Script on the Riposte edge, presumably it would need to run at Validation/100 as well. And I would need to do something like:
Code:
if (hero.tagis[Edge.edgPMFARFA] <> 0) then
perform hero.child[edgPMRipo].assign[Helper.IgnoreRank]
endif
Which works once the Edge has been added to make sure it still looks valid, but I think I need something set up in a pre-req to make it look valid as a pick to begin with, which I'm not exactly sure how to do.
EDIT: After testing I noticed that the main code is great for ensuring an already picked Edge shows as valid, but how do I get the pick to show as a valid selection to begin with? Something like the Block Edge still doesn't show up as a valid selection when trying to add that Edge, it still errors on the Rank requirement, but once selected and added to the portfolio it will then show itself as valid. I just can't figure out how to get the picks to be valid when a character wants to select it to begin with.