{ "AbilityName": "Level_Buff_RobotSPRecovery", "AbilitySpecials": { "AS_RPAmount": { "Value": 60 }, "AS_RPcheck": { "Value": 60 }, "AS_SPAmount": { "Value": 60 }, "AS_SPcheck": { "Value": 60 }, "RP_Recovery": { "Value": 0 } }, "AbilityStacking": "Unique", "DefaultModifier": { "OnAdded": [ { "$type": "ApplyModifier", "ModifierName": "RecoverSPorRpAction", "Target": "Self" } ] }, "Modifiers": { "RecoverSPorRpAction": { "ModifierStacking": "Unique", "OnAdded": [ { "$type": "ModifyProperty", "Amount": 60, "Percentage": 0, "Predicates": [ { "$type": "ByIsRobotAvatar", "Target": "Self" }, { "$type": "ByPlayerPropertyValue", "CompareType": "Less", "IsUsePercent": false, "Numerator": "CurSP", "Target": "Self", "Val1": "%AS_SPcheck" } ], "PropertyModifyFunction": "Replace", "PropertyType": "CurSP", "Target": "Self" }, { "$type": "SetAbilitySpecialByExpression", "Expression": "specials(AS_RPAmount)-property(CurRp)", "ParamName": "RP_Recovery", "ValueType": "Integer" }, { "$type": "RecoverRpAction", "Amount": "%RP_Recovery", "Predicates": [ { "$type": "ByIsRobotAvatar", "Target": "Self" }, { "$type": "ByPlayerPropertyValue", "CompareType": "Less", "IsUsePercent": false, "Numerator": "CurRp", "Target": "Self", "Val1": "%AS_RPcheck" } ], "Target": "Self" } ] } } }