Код, который запостил Juzzver из метода OnHit в BaseWeapon, только он отвечает за вообще левую атаку, а не лайтнинг.
Он тут добавил явную проверку на твой конкретный айтем и ставит шанс удара 100%.
После чего срабатывает другой иф блок и делает DoLowerAttack & DoLowerDefense.
В коде внизу высчитывается шанс на удар лайтнинга, как я уже и говорил.
Вот эти строчки за всё это отвечают, тоже из OnHit
Код
int maChance = (int)(AosWeaponAttributes.GetValue( attacker, AosWeaponAttribute.HitMagicArrow ) * propertyBonus);
int harmChance = (int)(AosWeaponAttributes.GetValue( attacker, AosWeaponAttribute.HitHarm ) * propertyBonus);
int fireballChance = (int)(AosWeaponAttributes.GetValue( attacker, AosWeaponAttribute.HitFireball ) * propertyBonus);
int lightningChance = (int)(AosWeaponAttributes.GetValue( attacker, AosWeaponAttribute.HitLightning ) * propertyBonus);
int dispelChance = (int)(AosWeaponAttributes.GetValue( attacker, AosWeaponAttribute.HitDispel ) * propertyBonus);
if ( maChance != 0 && maChance > Utility.Random( 100 ) )
DoMagicArrow( attacker, defender );
if ( harmChance != 0 && harmChance > Utility.Random( 100 ) )
DoHarm( attacker, defender );
if ( fireballChance != 0 && fireballChance > Utility.Random( 100 ) )
DoFireball( attacker, defender );
if ( lightningChance != 0 && lightningChance > Utility.Random( 100 ) )
DoLightning( attacker, defender );
if ( dispelChance != 0 && dispelChance > Utility.Random( 100 ) )
DoDispel( attacker, defender );
Можешь тут тоже самое вписать в код, что тебе и показал Juzzver, но это не поможет
Ставлю на то что у него OnHit не запускается, когда он тестирует свой браслет.
Скорее всего тестировал с оружием и без браслета, а потом с браслетом и без оружия)