cod5-sdk/deffiles/turretweapon.gdf
2008-11-20 00:00:00 +00:00

1612 lines
30 KiB
Text

#name "turretweapon"
#dll "all" "weapon"
#target_dir "weapons/sp/" // target location 1 (single-player)
#target_dir "weapons/mp/" // target location 2 (multi-player)
#target_dir "xmodel/"
#target_dir ""
#target_dir "xanim/"
#file_ext "*"
#version 25
// 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 weapon
// 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 { "bullet", "projectile", "gas" } weaponType
enum { "stand", "prone", "duck" } stance
enum { "none", "bullet_small", "bullet_large", "bullet_ap", "shotgun", "grenade_bounce", "grenade_explode", "rocket_explode", "projectile_dud", "mortar_shell", "tank_shell" } impactType
enum { "none", "small", "medium", "large" } penetrateType
enum { "primary" } inventoryType
enum { "Full Auto", "Single Shot" } fireType
string adsOverlayShader
int 320 1 640 adsOverlayWidth
int 240 1 480 adsOverlayHeight
enum { "none", "Turret Scope" } adsOverlayInterface
int 1 0 1 projImpactExplode
int 600 0 20000 projectileSpeed
int 300 0 10000 explosionRadius
int 10 0 10000 explosionInnerDamage
int 10 0 10000 explosionOuterDamage
float 180 0 180 damageConeAngle
// additional grenade weapon info
int 0 0 10000 projectileSpeedUp
int 0 0 10000 projectileActivateDist
float 30.0 0 10000.0 projectileLifetime
string projectileModel
enum { "grenade", "rocket", "molotov", "none" } projExplosionType
string projExplosionEffect
int 0 0 1 projExplosionEffectForceNormalUp
string projExplosionSound
string projDudEffect
string projDudSound
string bounceSound
string projectileSound
// additional projectile weapon info
string projTrailEffect
int 200 0 1000 projectileDLight
float 0.75 0 1 projectileRed
float 0.3 0 1 projectileGreen
float 0.0 0 1 projectileBlue
int 0 0 10000 projIgnitionDelay
string projIgnitionEffect
string projIgnitionSound
float 0.0 0 10 destabilizationRateTime
float 10 0.0 10000000 destabilizationCurvatureMax
int 30000 0 32000 destabilizeDistance
string script
string ammoName
int 100 0 999 maxAmmo
int 0 0 1000 startAmmo
string clipName
int 10 0 999 clipSize
int 1 0 1 unlimitedAmmo
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
int 1 0 1 crosshairColorChange
float 1600 0 8000 autoAimRange
float 3200 0 15000 aimAssistRange
float 3200 0 15000 aimAssistRangeAds
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
float 0 -300 300 proneOfsF
float 0 -300 300 proneOfsR
float 0 -300 300 proneOfsU
float 0 -300 300 duckedOfsF
float 0 -300 300 duckedOfsR
float 0 -300 300 duckedOfsU
int 0 0 1 rifleBullet
int 0 0 1 armorPiercing
string fireSound
string fireSoundPlayer
string loopFireSound
string loopFireSoundPlayer
string stopFireSound
string stopFireSoundPlayer
string reloadStartSound
string reloadStartSoundPlayer
float 0.05 0.0 10.0 reloadTime
string reloadEndSound
string reloadEndSoundPlayer
string rotateLoopSound
string rotateLoopSoundPlayer
string flameTableFirstPerson
string flameTableThirdPerson
int 100 1 1000 rechamberBoltTime
string viewFlashEffect
string worldFlashEffect
string viewShellEjectEffect
string worldShellEjectEffect
string reticleCenter
int 32 1 480 reticleCenterSize
string idleAnim
string fireAnim
float 46 1 128 playerPositionDist
string hudIcon
string killIcon
enum { "4:1", "1:1", "2:1" } hudIconRatio
enum { "4:1", "1:1", "2:1" } killIconRatio
int 1 0 1 flipKillIcon
int 0 0 1 overheatWeapon
int 0 0 1 coolWhileFiring
float 1.0 0.1 100.0 overheatRate
float 30.0 0.1 100.0 cooldownRate
float 25.0 0.0 99.0 overheatEndVal
string overheatSound
string overheatSoundPlayer
// hack, use these as overheat effects for turrets
string viewLastShotEjectEffect
string worldLastShotEjectEffect
string useHintString
string dropHintString
keyenum("rumble.gdf") fireRumble
float 0 0 100 adsDofStart
float 0 0 100 adsDofEnd
float 30 0 180 swayMaxAngle
float 6 1 50 swayLerpSpeed
float 0.1 -2 2 swayPitchScale
float 0.1 -2 2 swayYawScale
float 0.1 -2 2 swayHorizScale
float 0.1 -2 2 swayVertScale
int 0 0 1 aimDownSight
float 65 1 160 adsZoomFov
float 0.1 0 10 adsTransInTime
float 0.1 0 10 adsTransOutTime
float 0.5 0 1 adsZoomInFrac
float 0.1 0 1 adsZoomOutFrac
float 0 0 360 aimPadding
float 1.0 0 10 locNone
float 4.0 0 10 locHelmet
float 4.0 0 10 locHead
float 5.0 0 10 locNeck
float 1.0 0 10 locTorsoUpper
float 0.9 0 10 locTorsoLower
float 0.8 0 10 locRightArmUpper
float 0.6 0 10 locRightArmLower
float 0.4 0 10 locRightHand
float 0.8 0 10 locLeftArmUpper
float 0.6 0 10 locLeftArmLower
float 0.4 0 10 locLeftHand
float 0.8 0 10 locRightLegUpper
float 0.6 0 10 locRightLegLower
float 0.4 0 10 locRightFoot
float 0.8 0 10 locLeftLegUpper
float 0.6 0 10 locLeftLegLower
float 0.4 0 10 locLeftFoot
float 0 0 10 locGun
vcontainer
{
scrollbox(targetFolder)
[
exec
{
width(300)
}
]
scrollbox(stance)
[
exec
{
width(300)
}
]
scrollbox(weaponType)
[
exec
{
width(300)
}
]
scrollbox(impactType)
[
exec
{
width(300)
label("Impact type")
tooltip("The impact type, used to play impact effects based on surfacetype")
}
]
scrollbox(penetrateType)
[
exec
{
label("Penetration")
tooltip("Type of bullet penetration.")
}
]
scrollbox(fireType)
[
exec
{
width(300)
label("Fire Type")
tooltip("Behavior of the weapon when the trigger is held down.")
}
]
////////////////////////////////////////
// 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(aimAssistRange, 1, 100)
[
exec
{
label("Aim Assist Range")
tooltip("(Console only.) The range in world units up to which the crosshair will stick to targets. (1 world unit = 1 inch)")
}
]
floatedit(aimAssistRangeAds, 1, 100)
[
exec
{
label("Aim Assist Range ADS")
tooltip("(Console only.) The range in world units up to which the crosshair will stick to targets in ADS. (1 world unit = 1 inch)")
width(260)
labelwidth(160)
}
]
}
}
[
exec
{
groupBox("Aim Assist (Console only)")
}
]
////////////////////////////////////////
// Ammunition
////////////////////////////////////////
vcontainer
{
checkbox(unlimitedAmmo)
[
exec
{
label("Unlimited Ammo")
tooltip("This turret has unlimited ammo while emplaced")
width(500)
}
]
edit(ammoName)
[
exec
{
label("Ammo Name")
tooltip("Allows different weapons to share the same ammo pool.")
width(500)
}
]
edit(clipName)
[
exec
{
label("Clip Name")
tooltip("Allows different weapons to share clips. Used for weapons that have a selective fire option, and would therefore need to use the same type of clip.")
width(500)
}
]
hcontainer
{
spinedit(maxAmmo, 10, 20)
[
exec
{
label("Max Ammo")
tooltip("Max ammo the player can collect for this weapon. No effect on AI.")
}
]
spinedit(startAmmo, 1, 10)
[
exec
{
label("Start Ammo")
tooltip("How much ammo the player gets when starting with this weapon. One clip/magazine from this amount will be already in the weapon. No effect on AI.")
}
]
spinedit(clipSize, 1, 10)
[
exec
{
label("Clip Size")
tooltip("Specifies how many bullets per clip/magazine.")
}
]
}
}
[
exec
{
groupBox("Ammunition")
}
]
////////////////////////////////////////
// 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")
}
]
////////////////////////////////////////
// Overheating
////////////////////////////////////////
vcontainer
{
hcontainer
{
checkbox(overheatWeapon)
[
exec
{
label("Overheating Weapon")
tootip("This weapon can overheat")
width(300)
labelwidth(280)
righttext()
}
]
checkbox(coolWhileFiring)
[
exec
{
label("Cool While Firing")
tootip("This weapon's heat decreases, even when it is being fired")
width(300)
labelwidth(280)
righttext()
}
]
}
floatedit(overheatRate, 1.0, 10.0)
[
exec
{
label("Overheating Rate")
tooltip("Percent of heat added per shot for this weapon")
}
]
floatedit(cooldownRate, 1.0, 10.0)
[
exec
{
label("Cooldown Rate")
tooltip("Percent of heat that is bled off per second for this weapon")
}
]
floatedit(overheatEndVal, 1.0, 10.0)
[
exec
{
label("Overheating Ends At")
tooltip("Percent of heat at which, if this weapon is overheating, it is able to fire again")
}
]
edit(overheatSoundPlayer)
[
exec
{
label("Overheat SFX 1-P")
tooltip("Sound effect that plays when the gun overheats (1st-person)")
}
]
edit(overheatSound)
[
exec
{
label("Overheat SFX 3-P")
tooltip("Sound effect that plays when the gun overheats (3rd-person)")
}
]
edit(viewLastShotEjectEffect)
[
exec
{
label("Overheat Fx 1st")
tooltip("Particle effect that plays when the gun overheats (1st-person)")
}
]
edit(worldLastShotEjectEffect)
[
exec
{
label("Overheat Fx 3rd")
tooltip("Particle effect that plays when the gun overheats (3rd-person)")
}
]
}
[
exec
{
groupBox("Overheating")
}
]
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.")
}
]
hcontainer
{
floatedit(enemyCrosshairRange, 1, 100)
[
exec
{
label("Enemy Crosshair Range")
tooltip("The range in at which friendly names appear and friendly or enemy changes your crosshair color.")
width(280)
labelwidth(180)
}
]
checkbox(crosshairColorChange)
[
exec
{
label("Crosshair Color Change")
tooltip("Change crosshair color if pointing at friendly or enemy")
width(200)
labelwidth(200)
righttext()
}
]
}
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(aimPadding, 0.1, 0.2)
[
exec
{
label("aim padding")
width(270)
tooltip("How crooked it will allow the bullet to leave the gun in order to hit its target")
}
]
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)
hcontainer
{
floatedit(proneOfsF, 0.1, 1)
[
exec
{
label("Offset Forward")
tooltip("The view will slide forward by this amount. (-ive for backward)")
}
]
floatedit(proneOfsR, 0.1, 1)
[
exec
{
label("Offset Right")
tooltip("The view will slide sideways by this amount. (-ive for backward)")
}
]
floatedit(proneOfsU, 0.1, 1)
[
exec
{
label("Offset Up")
tooltip("The view will slide upwards by this amount. (-ive for backward)")
}
]
}
hcontainer
{
floatedit(duckedOfsF, 0.1, 1)
[
exec
{
label("ADS Offset Forward")
tooltip("The view will slide forward by this amount. (-ive for backward)")
}
]
floatedit(duckedOfsR, 0.1, 1)
[
exec
{
label("ADS Offset Right")
tooltip("The view will slide sideways by this amount. (-ive for backward)")
}
]
floatedit(duckedOfsU, 0.1, 1)
[
exec
{
label("ADS Offset Up")
tooltip("The view will slide upwards by this amount. (-ive for backward)")
}
]
}
edit(script)
checkbox(rifleBullet)
checkbox(armorPiercing)
checkbox(projImpactExplode)
edit(fireSound)
edit(fireSoundPlayer)
[
exec
{
label("fire (Player)")
}
]
edit(loopFireSound)
edit(loopFireSoundPlayer)
[
exec
{
label("loopFire (Player)")
}
]
edit(stopFireSound)
edit(stopFireSoundPlayer)
[
exec
{
label("stopFire (Player)")
}
]
edit(reloadStartSound)
edit(reloadStartSoundPlayer)
[
exec
{
label("reloadStartSnd (Player)")
}
]
floatedit(reloadTime, 0.05, 0.2)
[
exec
{
label("RldStrtSFX Len")
tooltip("Allows the system to start the reload start SFX at the correct time")
}
]
edit(reloadEndSound)
edit(reloadEndSoundPlayer)
[
exec
{
label("reloadEndSnd (Player)")
}
]
edit(rotateLoopSoundPlayer)
[
exec
{
label("Spin Snd 1st-P")
}
]
edit(rotateLoopSound)
[
exec
{
label("Spin Snd 3rd-P")
}
]
fileedit(viewFlashEffect)
[
exec
{
reldir("share/raw/")
}
]
fileedit(worldFlashEffect)
[
exec
{
reldir("share/raw/")
}
]
fileedit(viewShellEjectEffect)
[
exec
{
label("View Shell Eject")
reldir("share/raw/")
width(500)
}
]
fileedit(worldShellEjectEffect)
[
exec
{
label("World Shell Eject")
reldir("share/raw/")
width(500)
}
]
fileedit(reticleCenter)
[
exec
{
reldir("pc/main/")
}
]
spinedit(reticleCenterSize, 1, 2)
fileedit(idleAnim)
[
exec
{
reldir("share/main/xanim/")
width(500)
}
]
fileedit(fireAnim)
[
exec
{
reldir("share/main/xanim/")
width(500)
}
]
floatedit(playerPositionDist, 1, 10)
////////////////////////////////////////
// UI
////////////////////////////////////////
vcontainer
{
hcontainer
{
fileedit(hudIcon)
[
exec
{
label("Hud Icon")
reldir("pc/main/")
width(450)
labelwidth(130)
}
]
scrollbox(hudIconRatio)
[
exec
{
label(" Aspect:")
width(110)
labelwidth(60)
}
]
}
hcontainer
{
fileedit(killIcon)
[
exec
{
label("Kill Icon")
reldir("pc/main/")
width(450)
labelwidth(130)
}
]
scrollbox(killIconRatio)
[
exec
{
label(" Aspect:")
width(110)
labelwidth(60)
}
]
checkbox(flipKillIcon)
[
exec
{
label(" Flip:")
tooltip("Used for weapons that need to have their kill icon horizontally flipped before displaying. (For MP obituaries).")
lefttext()
width(65)
labelwidth(40)
}
]
}
edit(useHintString)
edit(dropHintString)
}
[
exec
{
groupBox("User Interface")
}
]
scrollbox(fireRumble)
[
exec
{
width(500)
}
]
////////////////////////////////////////
// ADS Overlay Settings
////////////////////////////////////////
vcontainer
{
edit(adsOverlayShader)
[
exec
{
label("Shader")
tooltip("Overlay for sniper rifles in ADS. Uses a quarter circle image to construct a full scope view.")
width(500)
}
]
scrollbox(adsOverlayInterface)
[
exec
{
label("Interface")
tooltip("Interactive Interface for Overlay")
}
]
hcontainer
{
spinedit(adsOverlayWidth, 1, 10)
[
exec
{
label("Width")
}
]
spinedit(adsOverlayHeight, 1, 10)
[
exec
{
label("Height")
}
]
}
hcontainer
{
checkbox(aimDownSight)
[
exec
{
label("ADS")
tooltip("Must be turned on for proper viewmodel appearance of a weapon that can be Aimed Down the Sight (ADS).")
righttext()
}
]
floatedit(adsZoomFov, 1, 5)
[
exec
{
label("Zoom FOV")
tooltip("Field of view when in ADS.")
}
]
}
hcontainer
{
floatedit(adsTransInTime, 0.05, 0.1)
[
exec
{
label("Trans In Time")
tooltip("Time it will take to switch from hipfire to ADS.")
}
]
floatedit(adsTransOutTime, 0.05, 0.1)
[
exec
{
label("Trans Out Time")
tooltip("Time it will take to switch from ADS to hipfire.")
}
]
}
hcontainer
{
floatedit(adsZoomInFrac, 0.05, 0.1)
[
exec
{
label("Zoom In Frac")
tooltip("Fraction of the hipfire-to-ADS transition time over which the FOV zoom-in effect happens.")
}
]
floatedit(adsZoomOutFrac, 0.05, 0.1)
[
exec
{
label("Zoom Out Frac")
tooltip("Fraction of the ADS-to-hipfire transition time over which the FOV zoom-out effect happens.")
}
]
}
}
[
exec
{
groupBox("ADS Settings")
}
]
////////////////////////////////////////
// Sway settings
////////////////////////////////////////
vcontainer
{
hcontainer
{
floatedit(swayMaxAngle, 0.05, 0.1)
[
exec
{
label("Max Angle")
tooltip("Max angle change that will be applied to the hipfire viewmodel sway.")
}
]
}
hcontainer
{
floatedit(swayLerpSpeed, 0.05, 0.1)
[
exec
{
label("Lerp Speed")
tooltip("Speed at which the sway will lerp in hipfire.")
}
]
}
hcontainer
{
floatedit(swayPitchScale, 0.05, 0.1)
[
exec
{
label("Pitch Scale")
tooltip("Amount of pitch change in the viewmodel to apply to the sway pitch in hipfire.")
}
]
}
hcontainer
{
floatedit(swayYawScale, 0.05, 0.1)
[
exec
{
label("Yaw Scale")
tooltip("Amount of yaw change in the viewmodel to apply to the sway yaw in hipfire.")
}
]
}
hcontainer
{
floatedit(swayHorizScale, 0.05, 0.1)
[
exec
{
label("Horiz Scale")
tooltip("Amount of yaw change in the viewmodel to apply to the sway horizontal offset in hipfire.")
}
]
}
hcontainer
{
floatedit(swayVertScale, 0.05, 0.1)
[
exec
{
label("Vert Scale")
tooltip("Amount of pitch change in the view model to apply to the sway vertical offset in hipfire.")
}
]
}
}
[
exec
{
groupBox("Sway Settings")
}
]
////////////////////////////////////////
// Flamethrower Details
////////////////////////////////////////
vcontainer
{
edit(flameTableFirstPerson)
[
exec
{
label("1st Person Flame Table")
width(500)
}
]
edit(flameTableThirdPerson)
[
exec
{
label("3rd Person Flame Table")
width(500)
}
]
spinedit(rechamberBoltTime, 1, 100)
[
exec
{
label("MuzzleEffect Time")
tooltip("Time to wait in-between spawning a new MuzzleEffect")
}
]
}
[
exec
{
groupBox("Flamethrower")
}
]
////////////////////////////////////////
// Projectile
////////////////////////////////////////
vcontainer
{
hcontainer
{
spinedit(projectileSpeed, 10, 100)
[
exec
{
label("Projectile Speed")
tooltip("The speed the projectile travels (inches/sec)")
width(262)
labelwidth(187)
}
]
spinedit(projectileSpeedUp, 10, 100)
[
exec
{
label("Extra Verticle Speed")
tooltip("Vertical speed added to grenades")
width(262)
labelwidth(187)
}
]
}
hcontainer
{
spinedit(projectileActivateDist, 10, 100)
[
exec
{
label("Activate Distance")
tooltip("Distance the projectile must travel before it will explode.")
width(262)
labelwidth(187)
}
]
floatedit( projectileLifetime, 0.1, 1 )
[
exec
{
label("Lifetime")
tooltip("The time (in seconds) after which the projectile will explode in the air, if it hasn't hit anything yet")
width(262)
labelwidth(187)
}
]
}
hcontainer
{
spinedit(destabilizeDistance, 10, 100)
[
exec
{
label("Destabilize Distance")
tooltip("The distance the projectile goes before becoming unstable")
width(262)
labelwidth(187)
}
]
floatedit(destabilizationRateTime, 0.01, 0.1)
[
exec
{
label("Destabilize Rate (time)")
tooltip("The time between 'instability' course changes")
width(262)
labelwidth(187)
}
]
}
hcontainer
{
floatedit(destabilizationCurvatureMax, 0.01, 1)
[
exec
{
label("Destabilize Angle Max")
tooltip("The maximum curvature in degrees per second")
width(262)
labelwidth(187)
}
]
}
fileedit(projectileModel)
[
exec
{
label("Projectile Model")
tooltip("Define the model to be used for the projectile")
reldir("pc/main/xmodel/")
}
]
hcontainer
{
scrollbox(projExplosionType)
[
exec
{
label("Explosion Type")
tooltip("Defines the type of effect that will be played. Effects are defined in fx/iw_impacts.csv")
reldir("share/raw/")
}
]
checkbox(projExplosionEffectForceNormalUp)
[
exec
{
label("Force straight-up normal vector")
labelwidth(350)
width(400)
righttext()
}
]
}
fileedit(projExplosionEffect)
[
exec
{
label("Explosion Effect")
tooltip("Defines the effect that will be played when the projectile explodes. It will also play the effects that are defined in fx/iw_impacts.csv")
reldir("share/raw/")
}
]
edit(projExplosionSound)
[
exec
{
label("Explosion Sound")
tooltip("The sound the projectile will play when it impacts")
}
]
fileedit(projDudEffect)
[
exec
{
label("Dud Effect")
tooltip("The effect that will play if the projectile collides with an object before the Activate Distance is reached")
reldir("share/raw/")
}
]
edit(projDudSound)
[
exec
{
label("Dud Sound")
tooltip("The sound the projectile will play when it impacts before the Activate Distance is reached")
}
]
edit(projectileSound)
[
exec
{
label("Projectile_sound")
width(500)
}
]
edit(bounceSound)
[
exec
{
label("Dud Bounce Sound Base")
tooltip("Base alias for the bounce sound. For instance, if the value is \"grenade_bounce\", sounds like \"grenade_bounce_concrete\" will be looked for. \"grenade_bounce_default\" will be used for any materials that aren't specified.")
width(500)
}
]
fileedit(projTrailEffect)
[
exec
{
label("Trail Effect")
tooltip("This effect is attached to and trailed behind the projectile model.")
reldir("share/raw/")
width(400)
}
]
hcontainer
{
spinedit(projIgnitionDelay, 1, 10)
[
exec
{
label("Ignition Delay")
tooltip("How long after launch to wait for rocket to ignite.")
width(262)
labelwidth(128)
}
]
}
fileedit(projIgnitionEffect)
[
exec
{
label("Ignition Effect")
tooltip("This effect is played when a projectile's rocket first ignites.")
reldir("share/raw/")
width(400)
}
]
hcontainer
{
spinedit(projectileDLight, 10, 100)
[
exec
{
label("Dynamic Light Radius")
tooltip("Set the radius (in inches) of the light to follow the projectile.")
reldir("share/raw/")
width(250)
labelwidth(150)
}
]
floatedit(projectileRed, 0.1, 0.1)
[
exec
{
label("Red")
tooltip("Sets the red value of the dynamic light (0-255).")
reldir("share/raw/")
width(100)
labelwidth(50)
}
]
floatedit(projectileGreen, 0.1, 0.1)
[
exec
{
label("Green")
tooltip("Sets the Green value of the dynamic light (0-255).")
reldir("share/raw/")
width(100)
labelwidth(50)
}
]
floatedit(projectileBlue, 0.1, 0.1)
[
exec
{
label("Blue")
tooltip("Sets the Blue value of the dynamic light (0-255).")
reldir("share/raw/")
width(100)
labelwidth(50)
}
]
}
}
[
exec
{
groupBox("Projectile")
}
]
}