MODIFYOTHER:t|u|v=w|x|y|PRIORITY=z
t is the scope of modification (this must be a legal variable scope)
u is the grouping to be modified
v is the variable namespace (must have been defined in a NAMESPACEDEF
w is the variable name as defined in the Variable LST file
x is the modification type. Legal types are shown in the docs for MODIFY
y is the modification (based on the type, see MODIFY)
z is an OPTIONAL priority. If not specified, it is assumed to be zero.
A note on t: A Legal Variable Scope implies it must be an item that is also legal as the "x" value of the LOCAL: token from the Variable file
Limitations:
Currently the only supported Groupings are "ALL" or "GROUP=x" where x is a value provided by the (new) GROUP: global token.
v, w, x, y, z are the same as MODIFY:, but have variables legal as if they were in the scope defined by t (Meaning you can put MODIFYOTHER: in an Ability and if "t" is EQUIPMENT, then you can modify local variables in Equipment)
See MODIFY for how priority works.
An Example
A decent example of using MODIFYOTHER may be from AEG's Feats (3.5e). Currently we are forced to do a special EqMod:
Assassin's Blade TYPE:Weapon PRETYPE:1,Melee BONUS:EQMWEAPON|CRITRANGEADD|1|PREFEAT:1,Assassin
With MODIFYOTHER, this EqMod is unnecessary:
Assassin CATEGORY:FEAT MODIFYOTHER:EQUIPMENT|GROUP=Melee|EqCritRange|ADD|1|PRIORITY=5000
This assumes we have something like:
Longsword GROUP:Melee PART:1|MODIFY:CritRange|SET|1
And in GlobalModifiers
MODIFYOTHER:EQUIPMENT.PART|ALL|CritRange|SOLVE|value()+EqCritRange
Note:
The MODIFYOTHER in Assassin has to act on a variable in EQUIPMENT since the GROUP is actually part of the Equipment not the Equipment Part (this is not strictly required, but applying the groups to parts gets to be a pain). Thus we use the SOLVE to add the Equipment-level CritRange Bonus to the head (where it is actually applicable in terms of how it would be output)
Note that MODIFYOTHER does NOT work in Campaign (PCC) files. A Global Modifier file should be used instead.
PR#960