415 lines
7.9 KiB
Text
415 lines
7.9 KiB
Text
|
#name "turretweapon"
|
||
|
#dll "all" "configstringconvert"
|
||
|
#target_dir "weapons/sp/" // target location 1 (single-player)
|
||
|
#target_dir "weapons/mp/" // target location 2 (multi-player)
|
||
|
#file_ext "*"
|
||
|
#version 16
|
||
|
|
||
|
// This tells the configstring converter what the file type identifier should be
|
||
|
string "WEAPONFILE" configstringFileType
|
||
|
|
||
|
// This uses the config string convert's multi-target folder
|
||
|
// mechanism to make the weapon either a single-player weaons
|
||
|
// or a multi-player weapon.
|
||
|
// The first character is used to specify which target folder to go in
|
||
|
enum { "1: Single-Player", "2: Multi-Player" } targetFolder
|
||
|
|
||
|
string "none" projectileTrail
|
||
|
|
||
|
enum { "turret" } weaponClass
|
||
|
enum { "none" } weaponSlot
|
||
|
enum { "bullet", "projectile" } weaponType
|
||
|
enum { "stand", "prone", "duck" } stance
|
||
|
|
||
|
int 1 0 1 projImpactExplode
|
||
|
int 600 0 10000 projectileSpeed
|
||
|
int 300 0 10000 explosionRadius
|
||
|
int 10 0 10000 explosionInnerDamage
|
||
|
int 10 0 10000 explosionOuterDamage
|
||
|
|
||
|
string script
|
||
|
|
||
|
int 30 0 1000 damage
|
||
|
int 30 0 1000 playerDamage
|
||
|
|
||
|
int 30 0 1000 minDamage
|
||
|
int 30 0 1000 minPlayerDamage
|
||
|
|
||
|
float 15000 1 15000 maxDamageRange
|
||
|
float 16000 1 16000 minDamageRange
|
||
|
|
||
|
float 1600 0 10000 enemyCrosshairRange
|
||
|
|
||
|
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
|
||
|
|
||
|
int 115 0 360 leftArc
|
||
|
int 115 0 360 rightArc
|
||
|
int 90 0 360 topArc
|
||
|
int 90 0 360 bottomArc
|
||
|
int 0 0 360 grabarc
|
||
|
float 1 0 1 accuracy
|
||
|
float 2 0 180 aiSpread
|
||
|
float 1 0 180 playerSpread
|
||
|
|
||
|
float 0.05 0.0 10.0 fireTime
|
||
|
int 20 0 180 animHorRotateInc
|
||
|
int 5 1 720 minHorTurnSpeed
|
||
|
int 5 1 720 minVertTurnSpeed
|
||
|
int 360 1 720 maxHorTurnSpeed
|
||
|
int 360 1 720 maxVertTurnSpeed
|
||
|
int 100 1 720 horTurnSpeed
|
||
|
int 100 1 720 vertTurnSpeed
|
||
|
float 0.3 0 60 pitchConvergenceTime
|
||
|
float 2 0 60 yawConvergenceTime
|
||
|
float 2 0 60 suppressionTime
|
||
|
float 0 0 1000000 maxRange
|
||
|
float 0.5 0 5 horizViewJitter
|
||
|
float 0.5 0 5 vertViewJitter
|
||
|
|
||
|
int 0 0 1 rifleBullet
|
||
|
int 0 0 1 armorPiercing
|
||
|
|
||
|
string fireSound
|
||
|
string loopFireSound
|
||
|
string loopFireSoundPlayer
|
||
|
string stopFireSound
|
||
|
string stopFireSoundPlayer
|
||
|
|
||
|
string viewFlashEffect
|
||
|
string worldFlashEffect
|
||
|
|
||
|
string reticleCenter
|
||
|
int 32 1 480 reticleCenterSize
|
||
|
|
||
|
string idleAnim
|
||
|
string fireAnim
|
||
|
float 46 1 128 playerPositionDist
|
||
|
|
||
|
string hudIcon
|
||
|
string killIcon
|
||
|
int 1 0 1 wideListIcon
|
||
|
int 1 0 1 wideKillIcon
|
||
|
int 1 0 1 flipKillIcon
|
||
|
|
||
|
string useHintString
|
||
|
string dropHintString
|
||
|
|
||
|
keyenum("rumble.gdf") fireRumble
|
||
|
|
||
|
vcontainer
|
||
|
{
|
||
|
scrollbox(targetFolder)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
width(300)
|
||
|
}
|
||
|
]
|
||
|
|
||
|
scrollbox(stance)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
width(300)
|
||
|
}
|
||
|
]
|
||
|
|
||
|
scrollbox(weaponType)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
width(300)
|
||
|
}
|
||
|
]
|
||
|
|
||
|
////////////////////////////////////////
|
||
|
// 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)")
|
||
|
}
|
||
|
]
|
||
|
|
||
|
|
||
|
spinedit(damage, 1, 10)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
tooltip("The maximum amount of per-bullet damage done to anything other than the player at maxDamageRange.")
|
||
|
}
|
||
|
]
|
||
|
spinedit(playerDamage, 1, 10)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
tooltip("The maximum amount of per-bullet damage done only to the player at maxDamageRange.")
|
||
|
}
|
||
|
]
|
||
|
spinedit(minDamage, 1, 10)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
tooltip("The minimum amount of per-bullet damage done to anything other than the player at minDamageRange.")
|
||
|
}
|
||
|
]
|
||
|
spinedit(minPlayerDamage, 1, 10)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
tooltip("The minimum amount of per-bullet damage done only to the player at minDamageRange.")
|
||
|
}
|
||
|
]
|
||
|
|
||
|
floatedit(maxDamageRange, 120, 8000)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
tooltip("Distance specified in world units. 1 world unit = 1 inch.")
|
||
|
}
|
||
|
]
|
||
|
floatedit(minDamageRange, 120, 8000)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
tooltip("Distance specified in world units. 1 world unit = 1 inch.")
|
||
|
}
|
||
|
]
|
||
|
|
||
|
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)
|
||
|
}
|
||
|
]
|
||
|
|
||
|
spinedit(projectileSpeed, 10, 100)
|
||
|
spinedit(explosionRadius, 10, 50)
|
||
|
|
||
|
spinedit(explosionInnerDamage, 1, 10)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
width(300)
|
||
|
labelwidth(160)
|
||
|
}
|
||
|
]
|
||
|
|
||
|
spinedit(explosionOuterDamage, 1, 10)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
width(300)
|
||
|
labelwidth(160)
|
||
|
}
|
||
|
]
|
||
|
|
||
|
spinedit(leftArc, 1, 10)
|
||
|
spinedit(rightArc, 1, 10)
|
||
|
spinedit(topArc, 1, 10)
|
||
|
spinedit(bottomArc, 1, 10)
|
||
|
|
||
|
floatedit(accuracy, 0.1, 0.2)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
tooltip("The probability between 0 and 1 that for any bullet the AI will aim at the player")
|
||
|
}
|
||
|
]
|
||
|
floatedit(aiSpread, 0.1, 0.2)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
label("ai spread")
|
||
|
width(270)
|
||
|
tooltip("The bullet spread in degrees when the gun is used by AI")
|
||
|
}
|
||
|
]
|
||
|
floatedit(playerSpread, 0.1, 0.2)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
label("player spread")
|
||
|
width(270)
|
||
|
tooltip("The bullet spread in degrees when the gun is used by the player")
|
||
|
}
|
||
|
]
|
||
|
floatedit(fireTime, 0.05, 0.2)
|
||
|
|
||
|
spinedit(animHorRotateInc, 1, 10)
|
||
|
|
||
|
spinedit(minHorTurnSpeed, 1, 10)
|
||
|
spinedit(minVertTurnSpeed, 1, 10)
|
||
|
spinedit(maxHorTurnSpeed, 1, 10)
|
||
|
spinedit(maxVertTurnSpeed, 1, 10)
|
||
|
|
||
|
floatedit(pitchConvergenceTime, 0.1, 1)
|
||
|
floatedit(yawConvergenceTime, 0.1, 1)
|
||
|
floatedit(suppressionTime, 0.1, 1)
|
||
|
floatedit(maxRange, 1, 10)
|
||
|
floatedit(horizViewJitter, 0.1, 1)
|
||
|
floatedit(vertViewJitter, 0.1, 1)
|
||
|
|
||
|
edit(script)
|
||
|
|
||
|
checkbox(rifleBullet)
|
||
|
checkbox(armorPiercing)
|
||
|
checkbox(projImpactExplode)
|
||
|
|
||
|
edit(fireSound)
|
||
|
edit(loopFireSound)
|
||
|
edit(loopFireSoundPlayer)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
label("loopFire (Player)")
|
||
|
}
|
||
|
]
|
||
|
edit(stopFireSound)
|
||
|
edit(stopFireSoundPlayer)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
label("stopFire (Player)")
|
||
|
}
|
||
|
]
|
||
|
|
||
|
fileedit(viewFlashEffect)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
reldir("pc/main/")
|
||
|
}
|
||
|
]
|
||
|
fileedit(worldFlashEffect)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
reldir("pc/main/")
|
||
|
}
|
||
|
]
|
||
|
fileedit(reticleCenter)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
reldir("pc/main/")
|
||
|
}
|
||
|
]
|
||
|
spinedit(reticleCenterSize, 1, 2)
|
||
|
|
||
|
fileedit(idleAnim)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
reldir("pc/main/xanim/")
|
||
|
width(500)
|
||
|
}
|
||
|
]
|
||
|
fileedit(fireAnim)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
reldir("pc/main/xanim/")
|
||
|
width(500)
|
||
|
}
|
||
|
]
|
||
|
floatedit(playerPositionDist, 1, 10)
|
||
|
|
||
|
fileedit(hudIcon)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
reldir("pc/main/")
|
||
|
}
|
||
|
]
|
||
|
|
||
|
fileedit(killIcon)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
reldir("pc/main/")
|
||
|
}
|
||
|
]
|
||
|
checkbox(wideListIcon)
|
||
|
checkbox(wideKillIcon)
|
||
|
checkbox(flipKillIcon)
|
||
|
|
||
|
edit(useHintString)
|
||
|
edit(dropHintString)
|
||
|
|
||
|
scrollbox(fireRumble)
|
||
|
[
|
||
|
exec
|
||
|
{
|
||
|
width(500)
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
|