Item Gameplay Properties
ItemGameplayOverrides contains optional top-level fields plus complete equipment and interaction replacements.
Equipment
ItemEquipmentOverride defines slots, unique stat modifiers, existing passive IDs, trigger references, and maximum charges.
var equipment = new ItemEquipmentOverride(
new[] { ItemEquipmentSlot.MainHand },
new[] {
new ItemStatModifier(ItemStat.ATK, 18),
new ItemStatModifier(ItemStat.CRT, 12),
new ItemStatModifier(ItemStat.EVD, 5),
},
new[] { "STATUS_IMMUNITY_FIRE" },
maxCharges: -1);
The passive list references existing native content; it does not create a new passive.
Actions and SkillRollData
ItemInteractionOverride replaces the item's action list and action bags. Every ItemAbilityReference can carry an ItemSkillRoll.
var interaction = new ItemInteractionOverride(
new[] {
new ItemAbilityReference(
"community.example:flame_cleave",
new ItemSkillRoll(.5m, 1m, 0, ItemStat.STR, 3)),
new ItemAbilityReference(
"AXE_HEAVY_ATTACK",
new ItemSkillRoll(0m, 1.5m, -20, ItemStat.STR, 4)),
},
new[] {
"community.example:flame_cleave",
"community.example:flame_cleave",
"AXE_HEAVY_ATTACK",
},
shuffleAbilityBag: true);
MinValue/MaxValue, Accuracy, Stat, Rolls, and Ammo belong to the item action. Targeting, action rules, animation, AI tendency, tags, and effects belong to the ability definition.
See the Custom Weapon, Custom Armor, and Custom Consumable examples.