#1
4th Oct 2020 at 5:24 PM
Last edited by lizcandor : 5th Oct 2020 at
12:15 AM.
Posts: 312
Thanks: 1999 in 13 Posts
9 Achievements
View My Journal
LHS rule specificity override
Does anyone know how to determine what specificity override value to use for an LHS rule, when writing custom social data? I know what this parameter is, how to set it, how it's set automatically if you don't override it, and how it's used by interactions; I'm just not clear on how the override value is chosen when it's not just set absurdly high to make sure a rule always wins, and I'm not seeing an obvious all-explaining pattern in the SocialData_basegame XML.
[Edit:]
It's possible someone else has already noted this, but since I didn't see it mentioned anywhere: it looks like LHS rules specified in the SocialData for an interaction are tested against the corresponding general rules in the order that they're listed in the SocialData, *not* in order by specificity override. Also, the general rules and their specificity values are in the Socializing XML, although that's still not quite the answer I was looking for.
[Additional edit:]
I may have just done something wrong, but the only way I've been able to get custom procedural preconditions for LHS rules to work is by inserting them via scripting (setting the ProceduralPrecondition field of the SocialRuleLHS object just after world load), not through the SocialData XML (<LHS ProcTest="class,assembly,name">).