566 lines
9.4 KiB
Text
566 lines
9.4 KiB
Text
#name "vehicleweapon"
|
|
#dll "all" "configstringconvert"
|
|
#target_dir "weapons/sp/" // target location 1 (single-player)
|
|
#target_dir "weapons/mp/" // target location 2 (multi-player)
|
|
#file_ext "*"
|
|
#version 7
|
|
|
|
string "WEAPONFILE" configstringFileType
|
|
string "none" projectileTrail
|
|
|
|
enum { "non-player" } weaponClass
|
|
enum { "none" } weaponSlot
|
|
enum { "1: Single-Player", "2: Multi-Player" } targetFolder
|
|
enum { "bullet", "projectile" } weaponType
|
|
enum { "grenade", "rocket", "molotov", "none" } projExplosionType
|
|
|
|
int 0 0 1 armorPiercing
|
|
int 1 0 1 projImpactExplode
|
|
|
|
string worldFlashEffect
|
|
string fireSound
|
|
keyenum("rumble.gdf") fireRumble
|
|
|
|
int 30 0 3000 damage
|
|
|
|
float 1600 0 50000 autoAimRange
|
|
float 50000 0 50000 slowdownAimRange
|
|
float 50000 0 50000 slowdownAimRangeAds
|
|
float 50000 0 50000 lockonAimRange
|
|
float 50000 0 50000 lockonAimRangeAds
|
|
|
|
float 15000 0 15000 enemyCrosshairRange
|
|
|
|
float 1.0 0 10 locNone
|
|
float 1.0 0 10 locHelmet
|
|
float 1.0 0 10 locHead
|
|
float 1.0 0 10 locNeck
|
|
float 1.0 0 10 locTorsoUpper
|
|
float 1.0 0 10 locTorsoLower
|
|
float 1.0 0 10 locRightArmUpper
|
|
float 1.0 0 10 locRightArmLower
|
|
float 1.0 0 10 locRightHand
|
|
float 1.0 0 10 locLeftArmUpper
|
|
float 1.0 0 10 locLeftArmLower
|
|
float 1.0 0 10 locLeftHand
|
|
float 1.0 0 10 locRightLegUpper
|
|
float 1.0 0 10 locRightLegLower
|
|
float 1.0 0 10 locRightFoot
|
|
float 1.0 0 10 locLeftLegUpper
|
|
float 1.0 0 10 locLeftLegLower
|
|
float 1.0 0 10 locLeftFoot
|
|
float 1.0 0 10 locGun
|
|
|
|
float 0.1 0.0 10.0 fireTime
|
|
int 600 1 100000 projectileSpeed
|
|
int 300 0 10000 explosionRadius
|
|
int 10 0 10000 explosionInnerDamage
|
|
int 10 0 10000 explosionOuterDamage
|
|
|
|
float 0.4 0 10 destabilizationBaseTime
|
|
float 0.8 0.01 1 destabilizationTimeReductionRatio
|
|
float 10 0.0 45 destabilizationAngleMax
|
|
int 400 0 32000 destabilizeDistance
|
|
|
|
|
|
string useHintString
|
|
|
|
string reticleCenter
|
|
int 32 1 480 reticleCenterSize
|
|
|
|
vcontainer
|
|
{
|
|
scrollbox(targetFolder)
|
|
[
|
|
exec
|
|
{
|
|
width(300)
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
|
|
scrollbox(weaponType)
|
|
[
|
|
exec
|
|
{
|
|
width(300)
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
|
|
|
|
////////////////////////////////////////
|
|
// Aim Assist
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
floatedit(autoAimRange, 1, 100)
|
|
[
|
|
exec
|
|
{
|
|
label("Auto Aim Range")
|
|
tooltip("(Console only.) The range in world units up to which entering ADS will lock-on to enemies. (1 world unit = 1 inch)")
|
|
}
|
|
]
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(slowdownAimRange, 1, 100)
|
|
[
|
|
exec
|
|
{
|
|
label("Slowdown Range")
|
|
tooltip("(Console only.) The range in world units which the crosshair will slowdown over a target. (1 world unit = 1 inch)")
|
|
}
|
|
]
|
|
|
|
floatedit(slowdownAimRangeAds, 1, 100)
|
|
[
|
|
exec
|
|
{
|
|
label("Slowdown Range ADS")
|
|
tooltip("(Console only.) The range in world units which the crosshair will slowdown over a target in ADS. (1 world unit = 1 inch)")
|
|
width(260)
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(lockonAimRange, 1, 100)
|
|
[
|
|
exec
|
|
{
|
|
label("Lock-On Range")
|
|
tooltip("(Console only.) The range in world units up to which the view will lock onto a target. (1 world unit = 1 inch)")
|
|
}
|
|
]
|
|
|
|
floatedit(lockonAimRangeAds, 1, 100)
|
|
[
|
|
exec
|
|
{
|
|
label("Lock-On Range ADS")
|
|
tooltip("(Console only.) The range in world units up to which the view will lock onto a target in ADS. (1 world unit = 1 inch)")
|
|
width(260)
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
}
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Aim Assist (Console only)")
|
|
}
|
|
]
|
|
|
|
floatedit(enemyCrosshairRange, 1, 100)
|
|
[
|
|
exec
|
|
{
|
|
label("Enemy Crosshair Range")
|
|
tooltip("The range in world units at which an enemy will change your crosshair color. (1 world unit = 1 inch)")
|
|
width(280)
|
|
labelwidth(180)
|
|
}
|
|
]
|
|
|
|
checkbox(armorPiercing)
|
|
[
|
|
exec
|
|
{
|
|
width(300)
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
|
|
checkbox(projImpactExplode)
|
|
[
|
|
exec
|
|
{
|
|
width(300)
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
|
|
scrollbox(projExplosionType)
|
|
[
|
|
exec
|
|
{
|
|
width(300)
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
|
|
fileedit(worldFlashEffect)
|
|
[
|
|
exec
|
|
{
|
|
reldir("pc/main/")
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
|
|
edit(fireSound)
|
|
[
|
|
exec
|
|
{
|
|
width(500)
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
|
|
scrollbox(fireRumble)
|
|
[
|
|
exec
|
|
{
|
|
width(500)
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
|
|
spinedit(damage, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
width(300)
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// Location Damage
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
hcontainer
|
|
{
|
|
floatedit(locNone, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("None")
|
|
tooltip("Unrelated to weapon. Used for damage that's not location based, such as grenades or falling. Included here for completeness.")
|
|
}
|
|
]
|
|
|
|
floatedit(locHelmet, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Helmet")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(locHead, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Head")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
|
|
floatedit(locNeck, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Neck")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(locTorsoUpper, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Upper Torso")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
|
|
floatedit(locTorsoLower, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Lower Torso")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(locLeftArmUpper, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Left Upper Arm")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
|
|
floatedit(locRightArmUpper, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Right Upper Arm")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(locLeftArmLower, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Left Lower Arm")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
|
|
floatedit(locRightArmLower, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Right Lower Arm")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(locLeftHand, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Left Hand")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
|
|
floatedit(locRightHand, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Right Hand")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(locLeftLegUpper, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Left Upper Leg")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
|
|
floatedit(locRightLegUpper, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Right Upper Leg")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(locLeftLegLower, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Left Lower Leg")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
|
|
floatedit(locRightLegLower, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Right Lower Leg")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(locLeftFoot, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Left Foot")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
|
|
floatedit(locRightFoot, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Right Foot")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
}
|
|
|
|
floatedit(locGun, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Gun")
|
|
tooltip("Damage per-bullet multiplier.")
|
|
}
|
|
]
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Location Damage")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// Reticle Settings
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
fileedit(reticleCenter)
|
|
[
|
|
exec
|
|
{
|
|
label("Center Reticle")
|
|
tooltip("Center Reticle.")
|
|
reldir("pc/main/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
spinedit(reticleCenterSize, 1, 2)
|
|
[
|
|
exec
|
|
{
|
|
label("Center Size")
|
|
tooltip("Center Size.")
|
|
}
|
|
]
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Reticle Settings")
|
|
}
|
|
]
|
|
|
|
floatedit(fireTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
width(300)
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
|
|
spinedit(projectileSpeed, 10, 100)
|
|
[
|
|
exec
|
|
{
|
|
width(300)
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
|
|
hcontainer
|
|
{
|
|
spinedit(destabilizeDistance, 10, 100)
|
|
[
|
|
exec
|
|
{
|
|
tooltip("The distance the projectile goes before becoming unstable")
|
|
width(210)
|
|
labelwidth(150)
|
|
}
|
|
]
|
|
|
|
floatedit(destabilizationBaseTime, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
tooltip("base time between 'instability' course changes")
|
|
width(210)
|
|
labelwidth(150)
|
|
}
|
|
]
|
|
|
|
floatedit(destabilizationTimeReductionRatio, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
tooltip("reduction of time between each course change")
|
|
width(210)
|
|
labelwidth(150)
|
|
}
|
|
]
|
|
|
|
floatedit(destabilizationAngleMax, 0.01, 1)
|
|
[
|
|
exec
|
|
{
|
|
tooltip("The maximum course change in degrees")
|
|
width(210)
|
|
labelwidth(150)
|
|
}
|
|
]
|
|
|
|
|
|
}
|
|
|
|
spinedit(explosionRadius, 10, 50)
|
|
[
|
|
exec
|
|
{
|
|
width(300)
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
|
|
spinedit(explosionInnerDamage, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
width(300)
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
|
|
spinedit(explosionOuterDamage, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
width(300)
|
|
labelwidth(160)
|
|
}
|
|
]
|
|
edit(useHintString)
|
|
}
|
|
|