pawn.AddAbility("citadel_weapon_priest_crossbow", slot);
pawn.RemoveAbility("citadel_weapon_priest_crossbow");Ability values, by the name modifiers and AddModifier overrides use.
| Property | English label | Value | Provides |
| TechPower | Spirit Power | 0 | TECH_POWER |
| WindUpTime | 0.8 | ||
| WeaponPower | Weapon Damage | 0 | WEAPON_POWER |
| AbilityCharges | Charges | 0 | |
| AbilityCooldown | Cooldown | 0 | |
| AbilityDuration | Duration | 0 | |
| AbilityCastDelay | Cast Delay | 0 | |
| AbilityCastRange | Cast Range | 0 | |
| ChannelMoveSpeed | -1 | ||
| AbilityChannelTime | Channel Duration | 0 | |
| AbilityResourceCost | 0 | ||
| AbilityUnitTargetLimit | 1 | ||
| AbilityPostCastDuration | 0 | ||
| AbilityCooldownBetweenCharge | Charge Delay | 0 |
| _class | "ability_priest_crossbowweapon" |
| _editor | 1 key{
"folder_name": "Hero Priest"
} |
| _multibase | 1 item[ "hero_weapon_base" ] |
| m_HUDPanel | 1 key{
"m_vecHUDElements": [
{
"m_eType": "CITADEL_ABILITY_HUD_ELEMENT_TYPE_GUN",
"m_strContext": "gun"
}
]
} |
| m_WeaponInfo | 76 keys{
"m_Spread": 0,
"m_flRange": 7000,
"m_bCanZoom": true,
"m_iBullets": 1,
"m_flZoomFOV": 35,
"m_iClipSize": 4,
"m_bIsSemiAuto": false,
"m_flCycleTime": 0.9,
"m_nRecoilSeed": 32152,
"m_flBulletSpeed": 52500,
"m_flDamageForce": 50,
"m_flRecoilSpeed": 10,
"m_flSpreadDecay": 2.5,
"m_strShootSound": "Priest.Witching.Hour.Fire",
"m_StandingSpread": 1.5,
"m_flBulletDamage": 20,
"m_flBulletRadius": 14,
"m_flCritBonusEnd": 1.3,
"m_iSplitShotsMax": 3,
"m_reloadDuration": 1.5,
"m_strReloadSound": "",
"m_strSpinUpSound": "",
"m_strZoomInSound": "Hero.Default.ZoomIn",
"m_VerticallRecoil": {
"m_Range": [
0.15,
0.1
],
"m_flBurstSlope": 0,
"m_flBurstConstant": 0,
"m_flBurstExponent": 0
},
"m_flSpreadPerShot": 0,
"m_flVerticalPunch": 1,
"m_iBurstShotCount": 1,
"m_strZoomOutSound": "Hero.Default.ZoomOut",
"m_HorizontalRecoil": {
"m_Range": [
-0.05,
0.05
],
"m_flBurstExponent": 0
},
"m_flBulletLifetime": 2,
"m_flCritBonusStart": 1.3,
"m_mapImpactEffects": {
"dirt": {},
"wood": {},
"flesh": {
"m_strDecal": "",
"m_strParticle": "particles/blood_impact/blood_impact_red_01.vpcf"
},
"metal": {},
"default": {
"m_strDecal": "Impact.Concrete",
"m_strSound": "Default.BulletImpact",
"m_strParticle": "particles/impact_fx/impact_spark_spray_large.vpcf"
},
"portals": {
"m_strDecal": "Impact.Concrete",
"m_strSound": "",
"m_strParticle": "particles/impact_fx/impact_spark_spray_large.vpcf"
},
"concrete": {
"m_strDecal": "Impact.Concrete",
"m_strParticle": "particles/impact_fx/impact_spark_spray_large.vpcf"
},
"leafy_tree": {},
"solidmetal": {
"m_strDecal": "Impact.Concrete",
"m_strParticle": "particles/impact_fx/impact_spark_spray_large.vpcf"
},
"wood_plank": {},
"metalvehicle": {}
},
"m_flHorizontalPunch": 0,
"m_flReloadMoveSpeed": "10000",
"m_flScatterYawScale": 1,
"m_flSplitShotAngles": 37,
"m_strReloadEndSound": "",
"m_flZoomFOV_Relative": -40,
"m_strBulletWhizSound": "Priest.Witching.Hour.Whizby",
"m_flBurstShotCooldown": 0,
"m_flCritBonusEndRange": 1500,
"m_flDamageFalloffBias": 0.5,
"m_bExpressShotDisabled": true,
"m_flBulletGravityScale": 0,
"m_flBulletReflectScale": 0,
"m_flBulletWhizDistance": 120,
"m_flPenetrationPercent": 100,
"m_iAmmoConsumedPerShot": 1,
"m_bUseWeaponAbilityName": true,
"m_eAttachmentSourceType": "EAttachmentSource_Custom",
"m_flBulletReflectAmount": 1,
"m_flCritBonusStartRange": 500,
"m_flRecoilRecoverySpeed": 20,
"m_strWeaponImpactEffect": "",
"m_bBulletShouldUseVerlet": true,
"m_flCritBonusAgainstNPCs": 0,
"m_flZoomMoveSpeedPercent": 0.3,
"m_flDamageFalloffEndRange": 3800,
"m_flDamageFalloffEndScale": 1,
"m_flShootMoveSpeedPercent": 0.2,
"m_szMuzzleFlashEffectName": "",
"m_AimingShootSpreadPenalty": [
0,
1
],
"m_bFirstShotPerfectAccuracy": true,
"m_flDamageFalloffStartRange": 1400,
"m_flDamageFalloffStartScale": 1,
"m_flShootSpreadPenaltyDecay": 2,
"m_flShootingUpSpreadPenalty": 0,
"m_strCustomAttachmentSource": "crossbow_muzzle_fx",
"m_flRecoilRecoveryDelayFactor": 0.1,
"m_flShootSpreadPenaltyPerShot": 1,
"m_szBulletTravelTracerParticle": "particles/abilities/priest/priest_crossbow_projectile.vpcf",
"m_flShootSpreadPenaltyDecayDelay": 0,
"m_strLocalPlayerBulletImpactSound": "Player.Bullet.Impact.Hero",
"m_flBulletInheritShooterVelocityScale": 0,
"m_flRecoilShotIndexRecoveryTimeFactor": 0.25,
"m_strLocalPlayerBulletImpactHeavySound": "Player.Bullet.Impact.Hero.Large"
} |
| m_strHitSound | "Priest.Witching.Hour.Hit" |
| m_eAbilityType | "EAbilityType_Weapon" |
| m_strCastSound | "" |
| m_bStartTrained | true |
| m_DOFWhileZoomed | 3 keys{
"m_flDofFarCrisp": 100,
"m_flDofFarBlurry": 7000,
"m_flDofNearCrisp": 200
} |
| m_sDisarmedSound | "Player.Weapon.Jammed" |
| m_strAbilityImage | "file://{images}/hud/abilities/weapon_damage.psd" |
| m_strAG2SourceName | "weapon" |
| m_flBossDamageScale | 1 |
| m_LaserSightParticle | "particles/abilities/priest/priest_crossbow_laser_sight.vpcf" |
| m_cameraSequenceBolt | 2 keys{
"m_nPriority": 2,
"m_vecFOVOperations": [
{
"m_flSpringTarget": 80,
"m_bSpringToDefault": false,
"m_eCameraOperation": "k_ECameraOp_Spring",
"m_bValuesAreRelative": false,
"m_flSpringMaxDuration": 0.02
},
{
"m_flDelay": 0.05,
"m_bSpringToDefault": true,
"m_eCameraOperation": "k_ECameraOp_Spring",
"m_flSpringMaxDuration": 0.1
}
]
} |
| m_eAbilityActivation | "CITADEL_ABILITY_ACTIVATION_ON_BUTTON_IS_DOWN" |
| m_nAbilityPointsCost | 1 |
| m_mapDelayLoopsSounds | 1 key{
"EDelayReason_BetweenShots": {
"CITADEL_AUDIO_LOOP_LOOP_SOUND": "Priest.Witching.Hour.Cycle.Lp",
"CITADEL_AUDIO_LOOP_STOP_SOUND": "Priest.Witching.Hour.Cycle.Stop"
}
} |
| m_strAG2CastingAction | "crossbow_casting" |
| m_strHitHeadshotSound | "Priest.Witching.Hour.Hit.Headshot" |
| m_AbilityBehaviorsBits | "CITADEL_ABILITY_BEHAVIOR_DONT_INTERRUPT_SPRINT | CITADEL_ABILITY_BEHAVIOR_IS_PRIMARY_WEAPON | CITADEL_ABILITY_BEHAVIOR_NO_TARGET | CITADEL_ABILITY_BEHAVIOR_SILENT_CAST_FAILURE_FEEDBACK | CITADEL_ABILITY_BEHAVIOR_DISARMABLE | CITADEL_ABILITY_BEHAVIOR_NOT_SILENCABLE | CITADEL_ABILITY_BEHAVIOR_WEAPON_TOGGLE" |
| m_sObstructedShotSound | "" |
| m_strCrosshairCSSClass | "priestult" |
| m_strSecondaryStatName | "citadel_weapon_priest_crossbow_pure" |
| m_BlessedTracerParticle | "particles/abilities/priest/priest_crossbow_blessed_projectile.vpcf" |
| m_flRicochetBulletSpeed | 4000 |
| m_bitsInterruptingStates | "MODIFIER_STATE_STUNNED | MODIFIER_STATE_IS_ASLEEP" |
| m_strAG2ChannelingAction | "crossbow_channeling" |
| m_SpreadPenaltyScaleCurve | 4 keys{
"m_spline": [
{
"x": 0,
"y": 4,
"m_flSlopeIncoming": 1.67604,
"m_flSlopeOutgoing": 1.67604
},
{
"x": 0.009878,
"y": 2.917777,
"m_flSlopeIncoming": -5.922676,
"m_flSlopeOutgoing": -5.922676
},
{
"x": 0.422732,
"y": 1.496296,
"m_flSlopeIncoming": -0.738889,
"m_flSlopeOutgoing": -0.738889
},
{
"x": 0.883434,
"y": 1.197037,
"m_flSlopeIncoming": 0,
"m_flSlopeOutgoing": 0
},
{
"x": 0.916341,
"y": 1.571111,
"m_flSlopeIncoming": 0.985184,
"m_flSlopeOutgoing": 0.985184
},
{
"x": 0.961905,
"y": 0,
"m_flSlopeIncoming": -10.73138,
"m_flSlopeOutgoing": -10.73138
},
{
"x": 1,
"y": 0.673333,
"m_flSlopeIncoming": 17.675028,
"m_flSlopeOutgoing": 17.675028
}
],
"m_tangents": [
{
"m_nIncomingTangent": "CURVE_TANGENT_FREE",
"m_nOutgoingTangent": "CURVE_TANGENT_MIRROR"
},
{
"m_nIncomingTangent": "CURVE_TANGENT_MIRROR",
"m_nOutgoingTangent": "CURVE_TANGENT_SPLINE"
},
{
"m_nIncomingTangent": "CURVE_TANGENT_FREE",
"m_nOutgoingTangent": "CURVE_TANGENT_MIRROR"
},
{
"m_nIncomingTangent": "CURVE_TANGENT_FREE",
"m_nOutgoingTangent": "CURVE_TANGENT_MIRROR"
},
{
"m_nIncomingTangent": "CURVE_TANGENT_FREE",
"m_nOutgoingTangent": "CURVE_TANGENT_MIRROR"
},
{
"m_nIncomingTangent": "CURVE_TANGENT_MIRROR",
"m_nOutgoingTangent": "CURVE_TANGENT_SPLINE"
},
{
"m_nIncomingTangent": "CURVE_TANGENT_SPLINE",
"m_nOutgoingTangent": "CURVE_TANGENT_SPLINE"
}
],
"m_vDomainMaxs": [
1,
4
],
"m_vDomainMins": [
0,
0
]
} |
| m_eAbilityTargetingLocation | "CITADEL_ABILITY_TARGETING_LOCATION_SELF" |
| m_strAG2CastCompletedAction | "crossbow_cast_completed" |
| m_flMinDisarmedSoundInterval | 0.1 |
| m_CrossbowMuzzleFlashParticle | "particles/abilities/priest/priest_crossbow_muzzle_flash.vpcf" |
| m_LaserSightParticleOwnerOnly | "" |
| m_bitsChannelEnabledStateMask | "MODIFIER_STATE_BUSY_WITH_ACTION" |
| m_bitsPreCastEnabledStateMask | "MODIFIER_STATE_BUSY_WITH_ACTION" |
| m_bitsPostCastEnabledStateMask | "MODIFIER_STATE_BUSY_WITH_ACTION" |
{
primary =
{
m_Spread = 0
m_flRange = 7000
m_bCanZoom = true
m_iBullets = 1
m_flZoomFOV = 35
m_iClipSize = 4
m_bIsSemiAuto = false
m_flCycleTime = 0.9
m_nRecoilSeed = 32152
m_flBulletSpeed = 52500
m_flDamageForce = 50
m_flRecoilSpeed = 10
m_flRecycleTime = 2
m_flSpreadDecay = 2.5
m_strShootSound = "Priest.Witching.Hour.Fire"
m_StandingSpread = 1.5
m_flBulletDamage = 20
m_flBulletRadius = 14
m_flCritBonusEnd = 1.3
m_iSplitShotsMax = 3
m_reloadDuration = 1.5
m_strReloadSound = ""
m_strSpinUpSound = ""
m_strZoomInSound = "Hero.Default.ZoomIn"
m_VerticallRecoil =
{
m_Range = [ 0.15, 0.1 ]
m_flBurstSlope = 0
m_flBurstConstant = 0
m_flBurstExponent = 0
}
m_flSpreadPerShot = 0
m_flVerticalPunch = 1
m_iBurstShotCount = 1
m_strZoomOutSound = "Hero.Default.ZoomOut"
m_HorizontalRecoil =
{
m_Range = [ -0.05, 0.05 ]
m_flBurstExponent = 0
}
m_flBulletLifetime = 2
m_flCritBonusStart = 1.3
m_mapImpactEffects =
{
dirt =
{
}
wood =
{
m_strDecal = "Impact.Wood"
m_strParticle = "particles/impact_fx/impact_wood.vpcf"
}
flesh =
{
m_strDecal = ""
m_strParticle = "particles/blood_impact/blood_impact_red_01.vpcf"
}
metal =
{
}
default =
{
m_strDecal = "Impact.Concrete"
m_strSound = "Default.BulletImpact"
m_strParticle = "particles/impact_fx/impact_spark_spray_large.vpcf"
}
portals =
{
m_strDecal = "Impact.Concrete"
m_strSound = ""
m_strParticle = "particles/impact_fx/impact_spark_spray_large.vpcf"
}
concrete =
{
m_strDecal = "Impact.Concrete"
m_strParticle = "particles/impact_fx/impact_spark_spray_large.vpcf"
}
leafy_tree =
{
}
solidmetal =
{
m_strDecal = "Impact.Concrete"
m_strParticle = "particles/impact_fx/impact_spark_spray_large.vpcf"
}
wood_plank =
{
m_strDecal = "Impact.Wood"
m_strParticle = "particles/impact_fx/impact_wood.vpcf"
}
metalvehicle =
{
}
}
m_flHorizontalPunch = 0
m_flReloadMoveSpeed = "10000"
m_flScatterYawScale = 1
m_flSplitShotAngles = 37
m_strReloadEndSound = ""
m_flZoomFOV_Relative = -40
m_strBulletWhizSound = "Priest.Witching.Hour.Whizby"
m_flCritBonusEndRange = 1500
m_flDamageFalloffBias = 0.5
m_bExpressShotDisabled = true
m_flBulletGravityScale = 0
m_flBulletReflectScale = 0
m_flBulletWhizDistance = 120
m_flPenetrationPercent = 100
m_iAmmoConsumedPerShot = 1
m_bUseWeaponAbilityName = true
m_eAttachmentSourceType = "EAttachmentSource_Custom"
m_flBulletReflectAmount = 1
m_flCritBonusStartRange = 500
m_flIntraBurstCycleTime = 0
m_flRecoilRecoverySpeed = 20
m_strWeaponImpactEffect = ""
m_bBulletShouldUseVerlet = true
m_flCritBonusAgainstNPCs = 0
m_flZoomMoveSpeedPercent = 0.3
m_flDamageFalloffEndRange = 3800
m_flDamageFalloffEndScale = 1
m_flShootMoveSpeedPercent = 0.2
m_szMuzzleFlashEffectName = ""
m_AimingShootSpreadPenalty = [ 0, 1 ]
m_bFirstShotPerfectAccuracy = true
m_flDamageFalloffStartRange = 1400
m_flDamageFalloffStartScale = 1
m_flShootSpreadPenaltyDecay = 2
m_flShootingUpSpreadPenalty = 0
m_strCustomAttachmentSource = "crossbow_muzzle_fx"
m_flRecoilRecoveryDelayFactor = 0.1
m_flShootSpreadPenaltyPerShot = 1
m_szBulletTravelTracerParticle = "particles/abilities/priest/priest_crossbow_projectile.vpcf"
m_flShootSpreadPenaltyDecayDelay = 0
m_strLocalPlayerBulletImpactSound = "Player.Bullet.Impact.Hero"
m_flBulletInheritShooterVelocityScale = 0
m_flRecoilShotIndexRecoveryTimeFactor = 0.25
m_strLocalPlayerBulletImpactHeavySound = "Player.Bullet.Impact.Hero.Large"
}
}{
_class = "modifier_base"
m_bIsHidden = true
m_eDebuffType = "MODIFIER_DEBUFF_NO"
_my_subclass_name = "barrage_execute_modifier"
m_nEnabledStateMask = "MODIFIER_STATE_ASSASSINATE_LOWHEALTH_TARGET"
m_bCasterCountsAsAssister = false
}#CurrentBonus_label{
m_nPriority = 2
m_vecFOVOperations =
[
{
m_flLerpGain = 0.75
m_flLerpDuration = 0.1
m_bSpringToDefault = false
m_eCameraOperation = "k_ECameraOp_Spring"
m_flSpringStrength = 40
m_bLerpEndAtDefault = false
m_bValuesAreRelative = true
},
{
m_eCameraOperation = "k_ECameraOp_Maintain"
},
]
}{
m_nPriority = 2
m_vecFOVOperations =
[
{
m_flLerpBias = 0.75
m_flLerpDuration = 0.12
m_bApproachDefault = true
m_bSpringToDefault = true
m_eCameraOperation = "k_ECameraOp_Lerp"
m_flSpringStrength = 40
m_bValuesAreRelative = true
},
]
}Priest.Witching.Hour.Aim.Lp{
m_Spread = 0
m_flRange = 7000
m_bCanZoom = true
m_iBullets = 1
m_flZoomFOV = 35
m_iClipSize = 4
m_bIsSemiAuto = false
m_flCycleTime = 0.9
m_nRecoilSeed = 32152
m_flBulletSpeed = 52500
m_flDamageForce = 50
m_flRecoilSpeed = 10
m_flSpreadDecay = 2.5
m_strShootSound = "Priest.Witching.Hour.Fire"
m_StandingSpread = 1.5
m_flBulletDamage = 20
m_flBulletRadius = 14
m_flCritBonusEnd = 1.3
m_iSplitShotsMax = 3
m_reloadDuration = 1.5
m_strReloadSound = ""
m_strSpinUpSound = ""
m_strZoomInSound = "Hero.Default.ZoomIn"
m_VerticallRecoil =
{
m_Range = [ 0.15, 0.1 ]
m_flBurstSlope = 0
m_flBurstConstant = 0
m_flBurstExponent = 0
}
m_flSpreadPerShot = 0
m_flVerticalPunch = 1
m_iBurstShotCount = 1
m_strZoomOutSound = "Hero.Default.ZoomOut"
m_HorizontalRecoil =
{
m_Range = [ -0.05, 0.05 ]
m_flBurstExponent = 0
}
m_flBulletLifetime = 2
m_flCritBonusStart = 1.3
m_mapImpactEffects =
{
dirt =
{
}
wood =
{
}
flesh =
{
m_strDecal = ""
m_strParticle = "particles/blood_impact/blood_impact_red_01.vpcf"
}
metal =
{
}
default =
{
m_strDecal = "Impact.Concrete"
m_strSound = "Default.BulletImpact"
m_strParticle = "particles/impact_fx/impact_spark_spray_large.vpcf"
}
portals =
{
m_strDecal = "Impact.Concrete"
m_strSound = ""
m_strParticle = "particles/impact_fx/impact_spark_spray_large.vpcf"
}
concrete =
{
m_strDecal = "Impact.Concrete"
m_strParticle = "particles/impact_fx/impact_spark_spray_large.vpcf"
}
leafy_tree =
{
}
solidmetal =
{
m_strDecal = "Impact.Concrete"
m_strParticle = "particles/impact_fx/impact_spark_spray_large.vpcf"
}
wood_plank =
{
}
metalvehicle =
{
}
}
m_flHorizontalPunch = 0
m_flReloadMoveSpeed = "10000"
m_flScatterYawScale = 1
m_flSplitShotAngles = 37
m_strReloadEndSound = ""
m_flZoomFOV_Relative = -40
m_strBulletWhizSound = "Priest.Witching.Hour.Whizby"
m_flBurstShotCooldown = 0
m_flCritBonusEndRange = 1500
m_flDamageFalloffBias = 0.5
m_bExpressShotDisabled = true
m_flBulletGravityScale = 0
m_flBulletReflectScale = 0
m_flBulletWhizDistance = 120
m_flPenetrationPercent = 100
m_iAmmoConsumedPerShot = 1
m_bUseWeaponAbilityName = true
m_eAttachmentSourceType = "EAttachmentSource_Custom"
m_flBulletReflectAmount = 1
m_flCritBonusStartRange = 500
m_flRecoilRecoverySpeed = 20
m_strWeaponImpactEffect = ""
m_bBulletShouldUseVerlet = true
m_flCritBonusAgainstNPCs = 0
m_flZoomMoveSpeedPercent = 0.3
m_flDamageFalloffEndRange = 3800
m_flDamageFalloffEndScale = 1
m_flShootMoveSpeedPercent = 0.2
m_szMuzzleFlashEffectName = ""
m_AimingShootSpreadPenalty = [ 0, 1 ]
m_bFirstShotPerfectAccuracy = true
m_flDamageFalloffStartRange = 1400
m_flDamageFalloffStartScale = 1
m_flShootSpreadPenaltyDecay = 2
m_flShootingUpSpreadPenalty = 0
m_strCustomAttachmentSource = "crossbow_muzzle_fx"
m_flRecoilRecoveryDelayFactor = 0.1
m_flShootSpreadPenaltyPerShot = 1
m_szBulletTravelTracerParticle = "particles/abilities/priest/priest_crossbow_projectile.vpcf"
m_flShootSpreadPenaltyDecayDelay = 0
m_strLocalPlayerBulletImpactSound = "Player.Bullet.Impact.Hero"
m_flBulletInheritShooterVelocityScale = 0
m_flRecoilShotIndexRecoveryTimeFactor = 0.25
m_strLocalPlayerBulletImpactHeavySound = "Player.Bullet.Impact.Hero.Large"
}