Hey, recently I got some custom ammo in the game working that has a small chance to apply a wrapper buff around `buffShock` with a small chance to spread to nearby enemies. However, I have a few questions to get it to behave the way I want.
The buff seems to always apply for 5s.
The buff seems to always spread regardless of the `<requirement name="RandomRoll" />` placed within the `<triggered_effect></triggered_effect>`
I cannot seem to get `Shock Duration` to show in the UI when viewing the ammo type in inventory or on the workbench.
Is there a way to make the damage scale off the Eletrocutioner skill?
The buff in `Config/buffs.xml`
<buff name="buffShockedAmmo" hidden="true">
<damage_type value="electrical" />
<stack_type value="replace" />
<duration value="0" />
<effect_group>
<requirement name="CVarCompare" cvar="buffShockedAmmoDuration" operation="LT" value="5" />
<triggered_effect trigger="onSelfBuffStart" action="ModifyCVar" cvar="buffShockedAmmoDuration" operation="set" value="2.5" />
<triggered_effect trigger="onSelfBuffStack" action="ModifyCVar" cvar="buffShockedAmmoDuration" operation="set" value="2.5" />
</effect_group>
<effect_group>
<triggered_effect trigger="onSelfBuffStart" action="AddBuff" buff="buffShocked" />
<triggered_effect trigger="onSelfBuffUpdate" action="ModifyCVar" cvar="buffShockedAmmoDuration" operation="add" value="-1" />
<triggered_effect trigger="onSelfBuffUpdate" action="RemoveBuff" buff="buffShockedAmmo">
<requirement name="CVarCompare" cvar="buffShockedAmmoDuration" operation="LTE" value="0" />
</triggered_effect>
<triggered_effect trigger="onSelfBuffRemove" action="ModifyCVar" cvar="buffShockedAmmoDuration" operation="set" value="0" />
</effect_group>
<effect_group>
<requirement name="CVarCompare" cvar="buffShockWeaponDuration" operation="LTE" value="1" />
<triggered_effect trigger="onSelfBuffUpdate" action="Ragdoll" duration="1.5" />
</effect_group>
<effect_group>
<passive_effect name="HealthChangeOT" operation="base_subtract" duration="0,8,14,18" value="1,5,11,13">
<requirement name="EntityTagCompare" tags="player" />
</passive_effect>
</effect_group>
</buff>
The `<effect_group>` in each ammo type in `Config/items.xml`
<effect_group name="shockingAmmo" tiered="false">
<!--@todo This appears to be causing buff to not work -->
<!--<passive_effect name="EntityDamage" operation="perc_add" value=".15,.95" tags="perkElectrocutioner" />-->
<!---->
<triggered_effect trigger="onSelfAttackedOther" action="ModifyCVar" target="other" cvar="$buffShockedAmmoDuration" operation="set" value="2.5" />
<triggered_effect trigger="onSelfAttackedOther" action="AddBuff" target="other" buff="buffShockedAmmo" duration="2.5">
<requirement name="RandomRoll" seed_type="Random" min_max="1,100" operation="LTE" value="25" />
</triggered_effect>
<triggered_effect trigger="onSelfAttackedOther" action="AddBuff" target="otherAOE" range="1.5" target_tags="zombie,animal" buff="buffShockedAmmo" duration="2.5">
<requirement name="RandomRoll" seed_type="Random" min_max="1,100" operation="LTE" value="10" />
</triggered_effect>
<display_value name="dShockDuration" value="2.5" />
</effect_group>
`ui_display.xml`
<configs>
<insertAfter xpath="ui_display_info/item_display/item_display_info[@display_type='ammoBullet']">
<item_display_info display_type="shockingAmmo9mmAmmo" display_group="groupAmmo">
<display_entry name="EntityDamage" title_key="statEntityDamageRanged" tags="perkGunslinger,perkBoomstick,perkDeadEye,perkMachineGunner,perkBookAutoWeapons,perkTurrets,perkArchery,admin" />
<display_entry name="BlockDamage" title_key="statBlockDamage" tags="perkGunslinger,perkBoomstick,perkDeadEye,perkMachineGunner,perkBookAutoWeapons,perkTurrets,perkArchery,admin" />
<display_entry name="dShockDuration" title_key="statShockDuration" display_type="Time" />
</item_display_info>
</insertAfter>
</configs>
And finally `Localization.txt` -- the rest of my localization edits are working including custom ammo name and description.
Key,File,Type,UsedInMainMenu,NoTranslate,english,Context / Alternate Text
statShockDuration,ui_display,Item stat,,Shock Duration