4785 lines
89 KiB
Text
4785 lines
89 KiB
Text
#name "projectileweapon"
|
|
#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 51
|
|
|
|
// This tells the configstring converter what the file type identifier should be
|
|
enum { "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
|
|
|
|
enum { "projectile" } weaponType
|
|
enum { "rocketlauncher", "grenade" } weaponClass
|
|
enum { "rocket_explode", "none", "bullet_small", "bullet_large", "bullet_ap", "shotgun", "grenade_bounce", "grenade_explode", "projectile_dud" } impactType
|
|
enum { "None", "Sidewinder", "Hellfire", "Javelin" } guidedMissileType
|
|
enum { "primary", "offhand", "item", "altmode" } inventoryType
|
|
|
|
float 3000 0 1000000 maxSteeringAccel
|
|
|
|
string displayName
|
|
string AIOverlayDescription
|
|
string modeName
|
|
enum { "rocketlauncher", "m203", "none" } playerAnimType
|
|
string gunModel
|
|
string gunModel2
|
|
string gunModel3
|
|
string gunModel4
|
|
string gunModel5
|
|
string gunModel6
|
|
string gunModel7
|
|
string gunModel8
|
|
string gunModel9
|
|
string gunModel10
|
|
string gunModel11
|
|
string gunModel12
|
|
string gunModel13
|
|
string gunModel14
|
|
string gunModel15
|
|
string gunModel16
|
|
string handModel
|
|
int 1 0 1 isHandModelOverridable
|
|
string idleAnim
|
|
string emptyIdleAnim
|
|
string fireAnim
|
|
string lastShotAnim
|
|
string meleeAnim
|
|
string meleeChargeAnim
|
|
string reloadAnim
|
|
string raiseAnim
|
|
string dropAnim
|
|
string firstRaiseAnim
|
|
string altRaiseAnim
|
|
string altDropAnim
|
|
string quickRaiseAnim
|
|
string quickDropAnim
|
|
string emptyRaiseAnim
|
|
string emptyDropAnim
|
|
string sprintInAnim
|
|
string sprintLoopAnim
|
|
string sprintOutAnim
|
|
string nightVisionWearAnim
|
|
string nightVisionRemoveAnim
|
|
string adsFireAnim
|
|
string adsLastShotAnim
|
|
string adsUpAnim
|
|
string adsDownAnim
|
|
|
|
float 1 0 5 moveSpeedScale
|
|
float 1 0 5 adsMoveSpeedScale
|
|
float 1 0 5 sprintDurationScale
|
|
float 0.33 0 1 lowAmmoWarningThreshold
|
|
|
|
int 0 0 1000 damage
|
|
int 0 0 1000 meleeDamage
|
|
|
|
float 0.1 0 10.0 fireDelay
|
|
float 0.25 0.05 10.0 meleeDelay
|
|
float 0.0 0.0 10.0 meleeChargeDelay
|
|
|
|
float 0.1 0.0 10.0 fireTime
|
|
float 0.7 0.0 10.0 meleeTime
|
|
float 0.0 0.0 10.0 meleeChargeTime
|
|
float 2.0 0.0 10.0 reloadTime
|
|
float 0.0 0.0 10.0 reloadShowRocketTime
|
|
float 0 0.0 10.0 reloadAddTime
|
|
float 0.5 0.0 10.0 dropTime
|
|
float 0.5 0.0 10.0 raiseTime
|
|
float 0.5 0.0 10.0 altDropTime
|
|
float 0.5 0.0 10.0 altRaiseTime
|
|
float 0.5 0.0 10.0 quickDropTime
|
|
float 0.5 0.0 10.0 quickRaiseTime
|
|
float 0.5 0.0 10.0 firstRaiseTime
|
|
float 0.5 0.0 10.0 emptyDropTime
|
|
float 0.5 0.0 10.0 emptyRaiseTime
|
|
float 0.5 0.0 10.0 sprintInTime
|
|
float 0.5 0.0 10.0 sprintLoopTime
|
|
float 0.5 0.0 10.0 sprintOutTime
|
|
float 0.5 0.0 10.0 nightVisionWearTime
|
|
float 0.0 0.0 10.0 nightVisionWearTimeFadeOutEnd
|
|
float 0.0 0.0 10.0 nightVisionWearTimePowerUp
|
|
float 0.5 0.0 10.0 nightVisionRemoveTime
|
|
float 0.0 0.0 10.0 nightVisionRemoveTimePowerDown
|
|
float 0.0 0.0 10.0 nightVisionRemoveTimeFadeInStart
|
|
|
|
int 0 0 1 clipOnly
|
|
|
|
float 0.3 0 10 adsTransInTime
|
|
float 0.6 0 10 adsTransOutTime
|
|
|
|
float 65 10 160 adsZoomFov
|
|
float 40 10 160 adsZoomGunFov
|
|
float 0.5 0 1 adsZoomInFrac
|
|
float 0.1 0 1 adsZoomOutFrac
|
|
string adsOverlayShader
|
|
enum { "none", "crosshair" } adsOverlayReticle
|
|
enum { "none", "Javelin" } adsOverlayInterface
|
|
int 320 1 640 adsOverlayWidth
|
|
int 240 1 480 adsOverlayHeight
|
|
float 1.0 0 10 adsBobFactor
|
|
float 0 0 100 adsViewBobMult
|
|
|
|
float 4 0 90 hipSpreadStandMin
|
|
float 3 0 90 hipSpreadDuckedMin
|
|
float 2 0 90 hipSpreadProneMin
|
|
float 10 0 90 hipSpreadMax
|
|
float 10 0 90 hipSpreadDuckedMax
|
|
float 10 0 90 hipSpreadProneMax
|
|
float 1.5 0 50 hipSpreadDecayRate
|
|
float 0.25 0 1 hipSpreadFireAdd
|
|
float 0 0 10 hipSpreadTurnAdd
|
|
float 0 0 10 hipSpreadMoveAdd
|
|
float 1.375 0 10 hipSpreadDuckedDecay
|
|
float 1.6 0 10 hipSpreadProneDecay
|
|
float 0 0 1 hipReticleSidePos
|
|
float 0 0 10 adsSpread
|
|
|
|
int 25 0 150 adsIdleAmount
|
|
int 80 0 150 hipIdleAmount
|
|
float 1.0 0 100 hipIdleSpeed
|
|
float 1.0 0 100 adsIdleSpeed
|
|
float 0.5 0 1 idleCrouchFactor
|
|
float 0.15 0 1 idleProneFactor
|
|
int 30 0 80 gunMaxPitch
|
|
int 30 0 80 gunMaxYaw
|
|
float 0 -30 30 adsAimPitch
|
|
float 1 0 1 adsCrosshairInFrac
|
|
float 0.2 0 1 adsCrosshairOutFrac
|
|
float 0.6 0 5 adsReloadTransTime
|
|
//float 0.1 0 5 adsTransBlendTime
|
|
float -30 -100 100 adsGunKickPitchMin
|
|
float -20 -100 100 adsGunKickPitchMax
|
|
float -17 -100 100 adsGunKickYawMin
|
|
float 17 -100 100 adsGunKickYawMax
|
|
float 250 0 1000 adsGunKickAccel
|
|
float 1000 0 10000 adsGunKickSpeedMax
|
|
float 10 0 100 adsGunKickSpeedDecay
|
|
float 1 0 100 adsGunKickStaticDecay
|
|
float 20 -200 200 adsViewKickPitchMin
|
|
float 95 -200 200 adsViewKickPitchMax
|
|
float -10 -200 200 adsViewKickYawMin
|
|
float 30 -200 200 adsViewKickYawMax
|
|
float 2000 10 10000 adsViewKickCenterSpeed
|
|
//float 0.25 0 45 adsViewScatterMin
|
|
//float 0.5 0 45 adsViewScatterMax
|
|
float -5 -100 100 hipGunKickPitchMin
|
|
float -3 -100 100 hipGunKickPitchMax
|
|
float -15 -100 100 hipGunKickYawMin
|
|
float 15 -100 100 hipGunKickYawMax
|
|
float 250 0 1000 hipGunKickAccel
|
|
float 500 0 10000 hipGunKickSpeedMax
|
|
float 15 0 100 hipGunKickSpeedDecay
|
|
float 1 0 100 hipGunKickStaticDecay
|
|
float 20 -200 200 hipViewKickPitchMin
|
|
float 40 -200 200 hipViewKickPitchMax
|
|
float -15 -200 200 hipViewKickYawMin
|
|
float 15 -200 200 hipViewKickYawMax
|
|
float 2000 10 10000 hipViewKickCenterSpeed
|
|
//float 0 0 45 hipViewScatterMin
|
|
//float 0 0 45 hipViewScatterMax
|
|
|
|
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
|
|
float 5 0 20 swayShellShockScale
|
|
|
|
float 30 0 180 adsSwayMaxAngle
|
|
float 6 1 50 adsSwayLerpSpeed
|
|
float 0.1 -2 2 adsSwayPitchScale
|
|
float 0.1 -2 2 adsSwayYawScale
|
|
float 0.1 -2 2 adsSwayHorizScale
|
|
float 0.1 -2 2 adsSwayVertScale
|
|
|
|
string hudIcon
|
|
string killIcon
|
|
string dpadIcon
|
|
string ammoCounterIcon
|
|
enum { "4:1", "1:1", "2:1" } hudIconRatio
|
|
enum { "4:1", "1:1", "2:1" } killIconRatio
|
|
enum { "4:1", "1:1", "2:1" } dpadIconRatio
|
|
enum { "4:1", "1:1" } ammoCounterIconRatio
|
|
enum { "None", "Magazine", "ShortMagazine", "Shotgun", "Rocket", "Beltfed", "AltWeapon" } ammoCounterClip
|
|
int 1 0 1 flipKillIcon
|
|
|
|
string worldModel
|
|
string worldModel2
|
|
string worldModel3
|
|
string worldModel4
|
|
string worldModel5
|
|
string worldModel6
|
|
string worldModel7
|
|
string worldModel8
|
|
string worldModel9
|
|
string worldModel10
|
|
string worldModel11
|
|
string worldModel12
|
|
string worldModel13
|
|
string worldModel14
|
|
string worldModel15
|
|
string worldModel16
|
|
string worldClipModel
|
|
string rocketModel
|
|
string knifeModel
|
|
string worldKnifeModel
|
|
|
|
string ammoName
|
|
int 100 0 2147483647 maxAmmo
|
|
int 0 0 2147483647 startAmmo
|
|
string clipName
|
|
int 10 0 2147483647 clipSize
|
|
|
|
int 0 0 2147483647 dropAmmoMin
|
|
int 0 0 2147483647 dropAmmoMax
|
|
|
|
// client-side info
|
|
string viewFlashEffect
|
|
string worldFlashEffect
|
|
string shellEjectEffect
|
|
string lastShotEjectEffect
|
|
string worldClipDropEffect
|
|
|
|
string pickupSound
|
|
string pickupSoundPlayer
|
|
string ammoPickupSound
|
|
string ammoPickupSoundPlayer
|
|
string projectileSound
|
|
string fireSound
|
|
string fireSoundPlayer
|
|
string lastShotSound
|
|
string lastShotSoundPlayer
|
|
string emptyFireSound
|
|
string emptyFireSoundPlayer
|
|
string meleeSwipeSound
|
|
string meleeSwipeSoundPlayer
|
|
string rechamberSound
|
|
string rechamberSoundPlayer
|
|
string reloadSound
|
|
string reloadSoundPlayer
|
|
string reloadEmptySound
|
|
string reloadEmptySoundPlayer
|
|
string reloadStartSound
|
|
string reloadStartSoundPlayer
|
|
string reloadEndSound
|
|
string reloadEndSoundPlayer
|
|
string altSwitchSound
|
|
string altSwitchSoundPlayer
|
|
string raiseSound
|
|
string raiseSoundPlayer
|
|
string firstRaiseSound
|
|
string firstRaiseSoundPlayer
|
|
string putawaySound
|
|
string putawaySoundPlayer
|
|
string bounceSound
|
|
string nightVisionWearSound
|
|
string nightVisionWearSoundPlayer
|
|
string nightVisionRemoveSound
|
|
string nightVisionRemoveSoundPlayer
|
|
|
|
string reticleCenter
|
|
string reticleSide
|
|
int 32 1 480 reticleCenterSize
|
|
int 16 1 480 reticleSideSize
|
|
int 4 0 480 reticleMinOfs
|
|
float 0 0 10000 enemyCrosshairRange
|
|
int 1 0 1 crosshairColorChange
|
|
|
|
// additional weapon info
|
|
string altWeapon
|
|
|
|
int 0 0 1 boltAction
|
|
int 0 0 1 aimDownSight
|
|
int 1 0 1 rechamberWhileAds
|
|
float 0 0 90 adsViewErrorMin
|
|
float 0 0 90 adsViewErrorMax
|
|
int 0 0 1 adsFire
|
|
int 0 0 1 noAdsWhenMagEmpty
|
|
int 0 0 1 avoidDropCleanup
|
|
int 0 0 1 cancelAutoHolsterWhenEmpty
|
|
int 0 0 1 suppressAmmoReserveDisplay
|
|
int 0 0 1 blocksProne
|
|
|
|
int 0 0 1 noPartialReload
|
|
int 0 0 999 reloadAmmoAdd
|
|
|
|
float 1600 0 8000 autoAimRange
|
|
float 3200 0 8000 aimAssistRange
|
|
float 3200 0 8000 aimAssistRangeAds
|
|
|
|
// AI ranges
|
|
float 720 1 100000 fightDist
|
|
float 1400 1 100000 maxDist
|
|
string aiVsAiAccuracyGraph
|
|
string aiVsPlayerAccuracyGraph
|
|
|
|
|
|
// settings for view model position movement
|
|
float 0 -300 300 standMoveF
|
|
float 1 -300 300 standMoveR
|
|
float -1.5 -300 300 standMoveU
|
|
float 0 -300 300 standRotP
|
|
float 0 -300 300 standRotY
|
|
float 0 -300 300 standRotR
|
|
float -2 -300 300 duckedOfsF
|
|
float 2 -300 300 duckedOfsR
|
|
float -0.2 -300 300 duckedOfsU
|
|
float 0 -300 300 duckedMoveF
|
|
float 1 -300 300 duckedMoveR
|
|
float -1.5 -300 300 duckedMoveU
|
|
float 0 -300 300 duckedRotP
|
|
float 0 -300 300 duckedRotY
|
|
float 0 -300 300 duckedRotR
|
|
float -6 -300 300 proneOfsF
|
|
float 3.5 -300 300 proneOfsR
|
|
float 0.8 -300 300 proneOfsU
|
|
float 0 -300 300 proneMoveF
|
|
float 1 -300 300 proneMoveR
|
|
float -1.5 -300 300 proneMoveU
|
|
float 0 -300 300 proneRotP
|
|
float 0 -300 300 proneRotY
|
|
float 0 -300 300 proneRotR
|
|
float 4 0 300 posMoveRate
|
|
float 10 0 300 posProneMoveRate
|
|
float 110 0 3000 standMoveMinSpeed
|
|
float 60 0 3000 duckedMoveMinSpeed
|
|
float 0 0 3000 proneMoveMinSpeed
|
|
float 5 0 300 posRotRate
|
|
float 10 0 300 posProneRotRate
|
|
float 110 0 1000 standRotMinSpeed
|
|
float 60 0 1000 duckedRotMinSpeed
|
|
float 0 0 1000 proneRotMinSpeed
|
|
|
|
// additional grenade weapon info
|
|
int 300 0 10000 explosionRadius
|
|
int 10 0 10000 explosionInnerDamage
|
|
int 10 0 10000 explosionOuterDamage
|
|
float 180 0 180 damageConeAngle
|
|
int 600 0 10000 projectileSpeed
|
|
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
|
|
int 1 0 1 projImpactExplode
|
|
|
|
// 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
|
|
|
|
float 0.5 0.0 1.0 parallelDefaultBounce
|
|
float 0.5 0.0 1.0 parallelBarkBounce
|
|
float 0.5 0.0 1.0 parallelBrickBounce
|
|
float 0.5 0.0 1.0 parallelCarpetBounce
|
|
float 0.5 0.0 1.0 parallelClothBounce
|
|
float 0.5 0.0 1.0 parallelConcreteBounce
|
|
float 0.5 0.0 1.0 parallelDirtBounce
|
|
float 0.5 0.0 1.0 parallelFleshBounce
|
|
float 0.5 0.0 1.0 parallelFoliageBounce
|
|
float 0.5 0.0 1.0 parallelGlassBounce
|
|
float 0.5 0.0 1.0 parallelGrassBounce
|
|
float 0.5 0.0 1.0 parallelGravelBounce
|
|
float 0.5 0.0 1.0 parallelIceBounce
|
|
float 0.5 0.0 1.0 parallelMetalBounce
|
|
float 0.5 0.0 1.0 parallelMudBounce
|
|
float 0.5 0.0 1.0 parallelPaperBounce
|
|
float 0.5 0.0 1.0 parallelPlasterBounce
|
|
float 0.5 0.0 1.0 parallelRockBounce
|
|
float 0.5 0.0 1.0 parallelSandBounce
|
|
float 0.5 0.0 1.0 parallelSnowBounce
|
|
float 0.5 0.0 1.0 parallelWaterBounce
|
|
float 0.5 0.0 1.0 parallelWoodBounce
|
|
float 0.5 0.0 1.0 parallelAsphaltBounce
|
|
float 0.5 0.0 1.0 parallelCeramicBounce
|
|
float 0.5 0.0 1.0 parallelPlasticBounce
|
|
float 0.5 0.0 1.0 parallelRubberBounce
|
|
float 0.5 0.0 1.0 parallelCushionBounce
|
|
float 0.5 0.0 1.0 parallelFruitBounce
|
|
float 0.5 0.0 1.0 parallelPaintedMetalBounce
|
|
|
|
float 0.5 0.0 1.0 perpendicularDefaultBounce
|
|
float 0.5 0.0 1.0 perpendicularBarkBounce
|
|
float 0.5 0.0 1.0 perpendicularBrickBounce
|
|
float 0.5 0.0 1.0 perpendicularCarpetBounce
|
|
float 0.5 0.0 1.0 perpendicularClothBounce
|
|
float 0.5 0.0 1.0 perpendicularConcreteBounce
|
|
float 0.5 0.0 1.0 perpendicularDirtBounce
|
|
float 0.5 0.0 1.0 perpendicularFleshBounce
|
|
float 0.5 0.0 1.0 perpendicularFoliageBounce
|
|
float 0.5 0.0 1.0 perpendicularGlassBounce
|
|
float 0.5 0.0 1.0 perpendicularGrassBounce
|
|
float 0.5 0.0 1.0 perpendicularGravelBounce
|
|
float 0.5 0.0 1.0 perpendicularIceBounce
|
|
float 0.5 0.0 1.0 perpendicularMetalBounce
|
|
float 0.5 0.0 1.0 perpendicularMudBounce
|
|
float 0.5 0.0 1.0 perpendicularPaperBounce
|
|
float 0.5 0.0 1.0 perpendicularPlasterBounce
|
|
float 0.5 0.0 1.0 perpendicularRockBounce
|
|
float 0.5 0.0 1.0 perpendicularSandBounce
|
|
float 0.5 0.0 1.0 perpendicularSnowBounce
|
|
float 0.5 0.0 1.0 perpendicularWaterBounce
|
|
float 0.5 0.0 1.0 perpendicularWoodBounce
|
|
float 0.5 0.0 1.0 perpendicularAsphaltBounce
|
|
float 0.5 0.0 1.0 perpendicularCeramicBounce
|
|
float 0.5 0.0 1.0 perpendicularPlasticBounce
|
|
float 0.5 0.0 1.0 perpendicularRubberBounce
|
|
float 0.5 0.0 1.0 perpendicularCushionBounce
|
|
float 0.5 0.0 1.0 perpendicularFruitBounce
|
|
float 0.5 0.0 1.0 perpendicularPaintedMetalBounce
|
|
|
|
keyenum("rumble.gdf") fireRumble
|
|
keyenum("rumble.gdf") meleeImpactRumble
|
|
|
|
float 0 0 100 adsDofStart
|
|
float 0 0 100 adsDofEnd
|
|
|
|
int 0 0 1 requireLockonToFire
|
|
string notetrackSoundMap
|
|
|
|
|
|
vcontainer
|
|
{
|
|
scrollbox(targetFolder)
|
|
[
|
|
exec
|
|
{
|
|
label("Target Folder")
|
|
tooltip("Select platform-gametype this weapon will be used in.")
|
|
width(270)
|
|
}
|
|
]
|
|
|
|
edit(displayName)
|
|
[
|
|
exec
|
|
{
|
|
label("Display Name")
|
|
tooltip("Localization alias for weapon name displayed on HUD in game.")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
edit(modeName)
|
|
[
|
|
exec
|
|
{
|
|
label("Mode Name")
|
|
tooltip("Localization alias for selective fire mode text displayed on HUD in game.")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
scrollbox(playerAnimType)
|
|
[
|
|
exec
|
|
{
|
|
label("Player Anim Type")
|
|
tooltip("Select an Player Anim Type - specifies \"playerAnimType\" in playeranim.script")
|
|
visible(targetFolder == "2: Multi-Player")
|
|
width(300)
|
|
}
|
|
]
|
|
|
|
edit(altWeapon)
|
|
[
|
|
exec
|
|
{
|
|
label("Alt Weapon Name")
|
|
tooltip("Weapon to switch to when this weapon's selective fire mode is switched in the game.")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
|
|
edit(AIOverlayDescription)
|
|
[
|
|
exec
|
|
{
|
|
label("AI Description")
|
|
tooltip("Localization alias for text shown when crosshair is placed over a friendly. Eg. Rifleman, Submachine Gunner, etc.")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
scrollbox(inventoryType)
|
|
[
|
|
exec
|
|
{
|
|
label("Inventory")
|
|
tooltip("Select what sort of inventory this weapon is.")
|
|
}
|
|
]
|
|
|
|
scrollbox(weaponType)
|
|
[
|
|
exec
|
|
{
|
|
label("Type")
|
|
tooltip("Select a weapon type.")
|
|
width(300)
|
|
}
|
|
]
|
|
|
|
scrollbox(weaponClass)
|
|
[
|
|
exec
|
|
{
|
|
label("Class")
|
|
tooltip("Select an appropriate class for this weapon.")
|
|
width(300)
|
|
}
|
|
]
|
|
|
|
scrollbox(impactType)
|
|
[
|
|
exec
|
|
{
|
|
width(300)
|
|
label("Impact type")
|
|
tooltip("The impact type, used to play impact effects based on surfacetype")
|
|
}
|
|
]
|
|
|
|
scrollbox(guidedMissileType)
|
|
[
|
|
exec
|
|
{
|
|
label("Missile guidance")
|
|
tooltip("Guided missile type")
|
|
}
|
|
]
|
|
|
|
floatedit(maxSteeringAccel, 1, 10 )
|
|
[
|
|
exec
|
|
{
|
|
visible( guidedMissileType != "None" )
|
|
label("Max steering accel")
|
|
tooltip("The maximum acceleration with which the guided missile can steer (inches / sec^2).")
|
|
}
|
|
]
|
|
|
|
hcontainer
|
|
{
|
|
checkbox(boltAction)
|
|
[
|
|
exec
|
|
{
|
|
label("Bolt Action")
|
|
tooltip("Turn this on for bolt-action weapons only. Animation control.")
|
|
righttext()
|
|
}
|
|
]
|
|
}
|
|
|
|
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()
|
|
}
|
|
]
|
|
|
|
checkbox(adsFire)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Fire Only")
|
|
tooltip("Can only be fired ADS. Firing from the hip brings up ADS.")
|
|
righttext()
|
|
}
|
|
]
|
|
|
|
checkbox(rechamberWhileAds)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Reload")
|
|
tooltip("Weapon can be reloaded while ADS")
|
|
righttext()
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
checkbox(noAdsWhenMagEmpty)
|
|
[
|
|
exec
|
|
{
|
|
label("No ADS With Empty Magazine")
|
|
tooltip("Disallow ADS when magazine is empty.")
|
|
width(350)
|
|
labelwidth(350)
|
|
righttext()
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
checkbox(avoidDropCleanup)
|
|
[
|
|
exec
|
|
{
|
|
label("No Auto-Cleanup of Dropped Weapon")
|
|
tooltip("Avoid having dropped weapons of this type deleted to make room for new ones.")
|
|
width(350)
|
|
labelwidth(350)
|
|
righttext()
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
checkbox(noPartialReload)
|
|
[
|
|
exec
|
|
{
|
|
label("No Partial Reload")
|
|
tooltip("When noPartialReload is set for a weapon, it can not be reloaded unless reloadAmmoAdd amount of ammo can be put into the gun. If reloadAmmoAdd is 0, it's treated as the weapon's clip size.")
|
|
righttext()
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
checkbox(blocksProne)
|
|
[
|
|
exec
|
|
{
|
|
label("Cannot Go Prone")
|
|
tooltip("The player cannot go prone when they have this weapon equiped.")
|
|
righttext()
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
checkbox(requireLockonToFire)
|
|
[
|
|
exec
|
|
{
|
|
label("Require Lockon")
|
|
tooltip("Player cannot fire the weapon until script has granted them a lock-on.")
|
|
righttext()
|
|
}
|
|
]
|
|
}
|
|
|
|
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()
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(moveSpeedScale, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Move Speed Scale")
|
|
tooltip("When using this weapon, player movement speed is multiplied by this amount.")
|
|
width(280)
|
|
labelwidth(180)
|
|
}
|
|
]
|
|
|
|
floatedit(adsMoveSpeedScale, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Move Speed Scale")
|
|
tooltip("When using this weapon and in ADS, player movement speed is multiplied by this amount.")
|
|
labelwidth(180)
|
|
}
|
|
]
|
|
}
|
|
|
|
floatedit(sprintDurationScale, 0.1, 5)
|
|
[
|
|
exec
|
|
{
|
|
label("Sprint Duration Scale")
|
|
tooltip("When sprinting with this weapon, sprint duration is multiplied by this amount.")
|
|
width(280)
|
|
labelwidth(180)
|
|
}
|
|
]
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(lowAmmoWarningThreshold, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Clip-Ammo Low Warning %")
|
|
tooltip("The game optionally displays low-ammo warnings when remaining clip ammo goes below this percentage.")
|
|
labelwidth(180)
|
|
width(280)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
spinedit(gunMaxPitch, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Max Gun Pitch")
|
|
tooltip("Maximum allowed vertical ascent of the viewmodel due to recoil (degrees).")
|
|
width(280)
|
|
labelwidth(180)
|
|
}
|
|
]
|
|
|
|
spinedit(gunMaxYaw, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Max Gun Yaw")
|
|
tooltip("Maximum allowed horizontal travel of the viewmodel due to recoil (degrees).")
|
|
width(280)
|
|
labelwidth(180)
|
|
}
|
|
]
|
|
}
|
|
|
|
|
|
////////////////////////////////////////
|
|
// 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
|
|
{
|
|
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.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
spinedit(dropAmmoMin, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Drop Min")
|
|
tooltip("When dropped by AI/player/hand-placed in editor, contains at least this much ammo. Not limited to real-life clip/magazine size.")
|
|
}
|
|
]
|
|
|
|
spinedit(dropAmmoMax, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Drop Max")
|
|
tooltip("When dropped by AI/player/hand-placed in editor, contains no more than this much ammo. Not limited to real-life clip/magazine size.")
|
|
}
|
|
]
|
|
checkbox(clipOnly)
|
|
[
|
|
exec
|
|
{
|
|
label("Clip Only")
|
|
tooltip("Used for weapons that use clips only")
|
|
righttext()
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
spinedit(reloadAmmoAdd, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Reload Ammo Add")
|
|
tooltip("For weapons with Segmented Reload turned on. Amount to add when reloading with some amount of bullets still remaining in the weapon.")
|
|
}
|
|
]
|
|
}
|
|
|
|
checkbox(cancelAutoHolsterWhenEmpty)
|
|
[
|
|
exec
|
|
{
|
|
label("Do Not Auto-Holster When Empty")
|
|
tooltip("When weapons are empty, they are normally auto-swapped to the next usable weapon in the player's inventory. This disables that.")
|
|
width(300)
|
|
labelwidth(280)
|
|
righttext()
|
|
}
|
|
]
|
|
|
|
hcontainer
|
|
{
|
|
checkbox(suppressAmmoReserveDisplay)
|
|
[
|
|
exec
|
|
{
|
|
label("Hide Display of Reserve Ammo")
|
|
tooltip("")
|
|
width(300)
|
|
labelwidth(280)
|
|
righttext()
|
|
}
|
|
]
|
|
}
|
|
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Ammunition")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// Damage
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
hcontainer
|
|
{
|
|
spinedit(damage, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Damage")
|
|
tooltip("Damage per projectile")
|
|
}
|
|
]
|
|
|
|
spinedit(meleeDamage, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Melee")
|
|
tooltip("Damage per melee hit.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
spinedit(explosionInnerDamage, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Inner Damage")
|
|
tooltip("Damage at center of explosion")
|
|
}
|
|
]
|
|
|
|
spinedit(explosionOuterDamage, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Outer Damage")
|
|
tooltip("Damage at outside edge of explosion")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
|
|
checkbox(projImpactExplode)
|
|
[
|
|
exec
|
|
{
|
|
label("Impact Explode")
|
|
tooltip("Projectile explodes on impact")
|
|
}
|
|
]
|
|
spinedit(explosionRadius, 10, 50)
|
|
[
|
|
exec
|
|
{
|
|
label("Explosion Radius")
|
|
tooltip("Damage radius (1 world unit = 1 inch)")
|
|
}
|
|
]
|
|
}
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Damage")
|
|
}
|
|
]
|
|
|
|
|
|
////////////////////////////////////////
|
|
// 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("raw/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("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("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("raw/")
|
|
}
|
|
]
|
|
edit(projDudSound)
|
|
[
|
|
exec
|
|
{
|
|
label("Dud Sound")
|
|
tooltip("The sound the projectile will play when it impacts before the Activate Distance is reached")
|
|
}
|
|
]
|
|
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("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("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("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("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("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("raw/")
|
|
width(100)
|
|
labelwidth(50)
|
|
}
|
|
]
|
|
}
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Projectile")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// State Timers
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
hcontainer
|
|
{
|
|
floatedit(fireTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Fire")
|
|
tooltip("Rate of fire in seconds per round. Maximum possible rate is 0.05 seconds per round, or 1200 rounds per minute.")
|
|
}
|
|
]
|
|
|
|
floatedit(fireDelay, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Fire Delay")
|
|
tooltip("Delay in seconds between pressing the fire button and the weapon actually firing.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(meleeTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Melee")
|
|
tooltip("Rate of fire in seconds per melee attack.")
|
|
}
|
|
]
|
|
|
|
floatedit(meleeDelay, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Melee Delay")
|
|
tooltip("Delay in seconds between pressing the fire button and the melee attack actually happening.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(meleeChargeTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Melee Charge")
|
|
tooltip("Rate of fire in seconds per melee charge attack.")
|
|
}
|
|
]
|
|
|
|
floatedit(meleeChargeDelay, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Melee Charge Delay")
|
|
tooltip("Delay in seconds between pressing the fire button and the melee charge attack actually happening.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(reloadTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Reload")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
|
|
floatedit(reloadShowRocketTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("...show rocket")
|
|
tooltip("At this point and onward in the Reload anim, the attached rocket xmodel will be shown.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(reloadAddTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Reload Add")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(dropTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Drop")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
|
|
floatedit(raiseTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Raise")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
|
|
floatedit(firstRaiseTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("First Raise")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(altDropTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Alt Drop")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
|
|
floatedit(altRaiseTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Alt Raise")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(quickDropTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Quick Drop")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
|
|
floatedit(quickRaiseTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Quick Raise")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(emptyDropTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Empty Drop")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
|
|
floatedit(emptyRaiseTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Empty Raise")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(sprintInTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Sprint In")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
|
|
floatedit(sprintLoopTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Sprint Loop")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
|
|
floatedit(sprintOutTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Sprint Out")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(nightVisionWearTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Nightvision Wear")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
|
|
floatedit(nightVisionWearTimeFadeOutEnd, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("...end of fade-out")
|
|
tooltip("At this point in 'Nightvision Wear', player's vision has faded to black as they bring their goggles down.")
|
|
}
|
|
]
|
|
|
|
floatedit(nightVisionWearTimePowerUp, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("...power up")
|
|
tooltip("At this point in 'Nightvision Wear', the player's goggles start their power up.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(nightVisionRemoveTime, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Nightvision Remove")
|
|
tooltip("How long this weapon state will last. The viewmodel animations will get scaled to match the times set.")
|
|
}
|
|
]
|
|
|
|
floatedit(nightVisionRemoveTimePowerDown, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("...power down")
|
|
tooltip("At this point in 'Nightvision Remove', the player's goggles cut to black.")
|
|
}
|
|
]
|
|
|
|
floatedit(nightVisionRemoveTimeFadeInStart, 0.05, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("...start fade-in")
|
|
tooltip("At this point in 'Nightvision Remove', the player's vision fades from black to normal as they remove their goggles.")
|
|
}
|
|
]
|
|
}
|
|
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("State Timers")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// Stand Movement Settings
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
hcontainer
|
|
{
|
|
floatedit(standMoveF, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Move Forward")
|
|
tooltip("Viewmodel will translate forward/backward by this amount if the player is moving in this stance. (+/- for forward/backward respectively)")
|
|
}
|
|
]
|
|
|
|
floatedit(standMoveR, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Move Right")
|
|
tooltip("Viewmodel will translate horizontally by this amount if the player is moving in this stance. (+/- for left/right respectively)")
|
|
}
|
|
]
|
|
|
|
floatedit(standMoveU, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Move Up")
|
|
tooltip("Viewmodel will translate vertically by this amount if the player is moving in this stance. (+/- for up/down respectively)")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(standRotP, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Rot Pitch")
|
|
tooltip("Viewmodel will pitch by this amount if the player is moving in this stance. (+/- for down/up respectively)")
|
|
}
|
|
]
|
|
|
|
floatedit(standRotY, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Rot Yaw")
|
|
tooltip("Viewmodel will yaw by this amount if the player is moving in this stance. (+/- for left/right respectively)")
|
|
}
|
|
]
|
|
|
|
floatedit(standRotR, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Rot Roll")
|
|
tooltip("Viewmodel will roll by this amount if the player is moving in this stance. (+/- for left/right respectively)")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(standMoveMinSpeed, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Move Min Speed")
|
|
tooltip("Not used.")
|
|
}
|
|
]
|
|
|
|
floatedit(posMoveRate, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Pos Move Rate")
|
|
tooltip("Controls speed of viewmodel translation while moving in stand and crouch, transitions between stand and crouch, and crouch into prone.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(standRotMinSpeed, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Rot Min Speed")
|
|
tooltip("Not used.")
|
|
}
|
|
]
|
|
|
|
floatedit(posRotRate, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Pos Rot Rate")
|
|
tooltip("Rotational speed of viewmodel in standing and crouching. If this is set in the prone section, a value should be entered here so that the viewmodel is able to rotate back to normal in crouch and stand.")
|
|
}
|
|
]
|
|
}
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Stand Movement Settings")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// Crouch Movement Settings
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
hcontainer
|
|
{
|
|
floatedit(duckedMoveF, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Move Forward")
|
|
tooltip("Viewmodel will translate forward/backward by this amount if the player is moving in this stance. (+/- for forward/backward respectively)")
|
|
}
|
|
]
|
|
|
|
floatedit(duckedMoveR, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Move Right")
|
|
tooltip("Viewmodel will translate horizontally by this amount if the player is moving in this stance. (+/- for left/right respectively)")
|
|
}
|
|
]
|
|
|
|
floatedit(duckedMoveU, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Move Up")
|
|
tooltip("Viewmodel will translate vertically by this amount if the player is moving in this stance. (+/- for up/down respectively)")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(duckedRotP, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Rot Pitch")
|
|
tooltip("Viewmodel will pitch by this amount if the player is moving in this stance. (+/- for down/up respectively)")
|
|
}
|
|
]
|
|
|
|
floatedit(duckedRotY, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Rot Yaw")
|
|
tooltip("Viewmodel will yaw by this amount if the player is moving in this stance. (+/- for left/right respectively)")
|
|
}
|
|
]
|
|
|
|
floatedit(duckedRotR, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Rot Roll")
|
|
tooltip("Viewmodel will roll by this amount if the player is moving in this stance. (+/- for left/right respectively)")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(duckedOfsF, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Offset Forward")
|
|
tooltip("When the player changes to this stance, the viewmodel will slide forward by this amount. (-ive for backward)")
|
|
}
|
|
]
|
|
|
|
floatedit(duckedOfsR, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Offset Right")
|
|
tooltip("When the player changes to this stance, the viewmodel will translate horizontally by this amount. (+/- for left/right respectively)")
|
|
}
|
|
]
|
|
|
|
floatedit(duckedOfsU, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Offset Up")
|
|
tooltip("When the player changes to this stance, the viewmodel will translate vertically by this amount. (+/- for up/down respectively)")
|
|
}
|
|
]
|
|
}
|
|
|
|
floatedit(duckedMoveMinSpeed, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Move Min Speed")
|
|
tooltip("Not used.")
|
|
}
|
|
]
|
|
|
|
floatedit(duckedRotMinSpeed, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Rot Min Speed")
|
|
tooltip("Not used.")
|
|
}
|
|
]
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Crouch Movement Settings")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// Prone Movement Settings
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
hcontainer
|
|
{
|
|
floatedit(proneMoveF, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Move Forward")
|
|
tooltip("Viewmodel will translate forward/backward by this amount if the player is moving in this stance. (+/- for forward/backward respectively)")
|
|
}
|
|
]
|
|
|
|
floatedit(proneMoveR, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Move Right")
|
|
tooltip("Viewmodel will translate horizontally by this amount if the player is moving in this stance. (+/- for left/right respectively)")
|
|
}
|
|
]
|
|
|
|
floatedit(proneMoveU, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Move Up")
|
|
tooltip("Viewmodel will translate vertically by this amount if the player is moving in this stance. (+/- for up/down respectively)")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(proneRotP, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Rot Pitch")
|
|
tooltip("Viewmodel will pitch by this amount if the player is moving in this stance. (+/- for down/up respectively)")
|
|
}
|
|
]
|
|
|
|
floatedit(proneRotY, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Rot Yaw")
|
|
tooltip("Viewmodel will yaw by this amount if the player is moving in this stance. (+/- for left/right respectively)")
|
|
}
|
|
]
|
|
|
|
floatedit(proneRotR, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Rot Roll")
|
|
tooltip("Viewmodel will roll by this amount if the player is moving in this stance. (+/- for left/right respectively)")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(proneOfsF, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Offset Forward")
|
|
tooltip("When the player changes to this stance, the viewmodel will slide forward by this amount. (-ive for backward)")
|
|
}
|
|
]
|
|
|
|
floatedit(proneOfsR, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Offset Right")
|
|
tooltip("When the player changes to this stance, the viewmodel will translate horizontally by this amount. (+/- for left/right respectively)")
|
|
}
|
|
]
|
|
|
|
floatedit(proneOfsU, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Offset Up")
|
|
tooltip("When the player changes to this stance, the viewmodel will translate vertically by this amount. (+/- for up/down respectively)")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(proneMoveMinSpeed, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Move Min Speed")
|
|
tooltip("Not used.")
|
|
}
|
|
]
|
|
|
|
floatedit(posProneMoveRate, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Pos Move Rate")
|
|
tooltip("Controls the speed of viewmodel translation while moving in this stance and changing to crouched.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(proneRotMinSpeed, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Rot Min Speed")
|
|
tooltip("Not used.")
|
|
}
|
|
]
|
|
|
|
floatedit(posProneRotRate, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Pos Rot Rate")
|
|
tooltip("Controls the speed of viewmodel rotation while moving in this stance.")
|
|
}
|
|
]
|
|
}
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Prone Movement Settings")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// Idle Settings
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
hcontainer
|
|
{
|
|
spinedit(hipIdleAmount, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Hip Amount")
|
|
tooltip("Strength of viewmodel wavering motion when in hipfire position.")
|
|
}
|
|
]
|
|
|
|
spinedit(adsIdleAmount, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Amount")
|
|
tooltip("Strength of range of viewmodel (or sniper rifle overlay) wavering motion when in ADS.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipIdleSpeed, 0.1, 1.0)
|
|
[
|
|
exec
|
|
{
|
|
label("Hip Speed")
|
|
tooltip("How fast the viewmodel wavers in hipfire position within Hip Amount.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsIdleSpeed, 0.1, 1.0)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Speed")
|
|
tooltip("How fast the viewmodel wavers in ADS within ADS Amount.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(idleCrouchFactor, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("Crouch Factor")
|
|
tooltip("Hip/ADS Amount multiplier for reducing viewmodel wavering when in this stance.")
|
|
}
|
|
]
|
|
|
|
floatedit(idleProneFactor, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("Prone Factor")
|
|
tooltip("Hip/ADS Amount multiplier for reducing viewmodel wavering when in this stance.")
|
|
}
|
|
]
|
|
}
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Idle Settings")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// ADS Settings
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
hcontainer
|
|
{
|
|
floatedit(adsSpread, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Spread")
|
|
tooltip("Size of bullet spread cone when firing in ADS mode. Bullets will project randomly within the confines of the cone.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsAimPitch, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Aim Pitch")
|
|
tooltip("Adjusts the pitch of the viewmodel in ADS. Defaults to 0, -6 is perfectly centered.")
|
|
}
|
|
]
|
|
}
|
|
|
|
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(adsReloadTransTime, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("Reload Trans Time")
|
|
tooltip("Time it takes once you start the reload to re-enter ADS. (ie: It allows you to finish up reloading while you enter ADS.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(adsCrosshairInFrac, 0.05, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("Crosshair In Frac")
|
|
tooltip("Fraction of the hipfire-to-ADS transition time over which the crosshair disappears.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsCrosshairOutFrac, 0.05, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("Crosshair Out Frac")
|
|
tooltip("Fraction of the ADS-to-hipfire transition time over which the crosshair appears.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(adsZoomFov, 1, 5)
|
|
[
|
|
exec
|
|
{
|
|
label("Zoom FOV")
|
|
tooltip("Field of view when in ADS.")
|
|
}
|
|
]
|
|
|
|
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.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(adsZoomGunFov, 1, 5)
|
|
[
|
|
exec
|
|
{
|
|
label("Zoom Gun FOV")
|
|
tooltip("I have no clue...ask Frank.")
|
|
}
|
|
]
|
|
}
|
|
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(adsBobFactor, 0.05, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("Bob Factor")
|
|
tooltip("Strength of viewmodel bobbing due to player movement when using this weapon.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsViewBobMult, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("View Bob Mult")
|
|
tooltip("Bob Factor multiplier for view bobbing due to player movement when using this weapon in ADS.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(adsViewErrorMin, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Min View Error")
|
|
tooltip("Min View Error.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsViewErrorMax, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Max View Error")
|
|
tooltip("Max View Error.")
|
|
}
|
|
]
|
|
}
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("ADS Settings")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// Hip Spread
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
hcontainer
|
|
{
|
|
floatedit(hipSpreadStandMin, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Stand Min")
|
|
tooltip("Smallest diameter the crosshairs can contract to.")
|
|
}
|
|
]
|
|
|
|
floatedit(hipSpreadMax, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Stand Max")
|
|
tooltip("Largest diameter the crosshairs can expand to while standing.")
|
|
}
|
|
]
|
|
|
|
floatedit(hipSpreadDecayRate, 0.05, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("Decay Rate")
|
|
tooltip("Rate at which the crosshairs try to return to the Min hip spread size.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipSpreadDuckedMin, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Crouch Min")
|
|
tooltip("Size of the crosshairs at rest when crouched.")
|
|
}
|
|
]
|
|
|
|
floatedit(hipSpreadDuckedMax, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Crouch Max")
|
|
tooltip("Largest diameter the crosshairs can expand to while crouched.")
|
|
}
|
|
]
|
|
|
|
floatedit(hipSpreadDuckedDecay, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Crouch Decay")
|
|
tooltip("Multiplier of Decay Rate for crouched stance, controlling how fast the crosshairs return to Crouch Min.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipSpreadProneMin, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Prone Min")
|
|
tooltip("Size of the crosshairs at rest when prone.")
|
|
}
|
|
]
|
|
|
|
floatedit(hipSpreadProneMax, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Prone Max")
|
|
tooltip("Largest diameter the crosshairs can expand to while prone.")
|
|
}
|
|
]
|
|
|
|
floatedit(hipSpreadProneDecay, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Prone Decay")
|
|
tooltip("Multiplier of Decay Rate for prone stance, controlling how fast the crosshairs return to Prone Min.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipSpreadFireAdd, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("Fire Add")
|
|
tooltip("Amount by which the crosshairs expand per bullet fired.")
|
|
}
|
|
]
|
|
|
|
floatedit(hipSpreadMoveAdd, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Move Add")
|
|
tooltip("Rate of crosshair expansion due to player movement.")
|
|
}
|
|
]
|
|
|
|
floatedit(hipSpreadTurnAdd, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Turn Add")
|
|
tooltip("Rate of crosshair expansion due to player panning the view in any direction.")
|
|
}
|
|
]
|
|
}
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Hip Spread Settings")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// Gun Kick
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipGunKickPitchMin, 1, 5)
|
|
[
|
|
exec
|
|
{
|
|
label("Hip Pitch Min")
|
|
tooltip("Hipfire viewmodel control. +/- sign means 'kick down/up'. Larger absolute numbers increase viewmodel climb/descent. From -100 to 100. Actual viewmodel angle will not exceed Max Gun Pitch.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsGunKickPitchMin, 1, 5)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Pitch Min")
|
|
tooltip("ADS viewmodel control. +/- sign means 'kick down/up'. Larger absolute numbers increase viewmodel climb/descent. From -100 to 100.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipGunKickPitchMax, 1, 5)
|
|
[
|
|
exec
|
|
{
|
|
label("Hip Pitch Max")
|
|
tooltip("Hipfire viewmodel control. +/- sign means 'kick down/up'. Larger absolute numbers increase viewmodel climb/descent. From -100 to 100. Actual viewmodel angle will not exceed Max Gun Pitch.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsGunKickPitchMax, 1, 5)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Pitch Max")
|
|
tooltip("ADS viewmodel control. +/- sign means 'kick down/up'. Larger absolute numbers increase viewmodel climb/descent. From -100 to 100.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipGunKickYawMin, 1, 5)
|
|
[
|
|
exec
|
|
{
|
|
label("Hip Yaw Min")
|
|
tooltip("Hipfire viewmodel control. +/- sign means 'kick left/right'. Larger absolute numbers increase viewmodel yawing. From -100 to 100. Actual viewmodel angle will not exceed Max Gun Yaw.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsGunKickYawMin, 1, 5)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Yaw Min")
|
|
tooltip("ADS viewmodel control. +/- sign means 'kick left/right'. Larger absolute numbers increase viewmodel yawing. From -100 to 100.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipGunKickYawMax, 1, 5)
|
|
[
|
|
exec
|
|
{
|
|
label("Hip Yaw Max")
|
|
tooltip("Hipfire viewmodel control. +/- sign means 'kick left/right'. Larger absolute numbers increase viewmodel yawing. From -100 to 100. Actual viewmodel angle will not exceed Max Gun Yaw.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsGunKickYawMax, 1, 5)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Yaw Max")
|
|
tooltip("ADS viewmodel control. +/- sign means 'kick left/right'. Larger absolute numbers increase viewmodel yawing. From -100 to 100.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipGunKickAccel, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Hip Accel")
|
|
tooltip("Rate at which viewmodel attempts to recenter in hipfire. Directly opposes yaws and pitch accumulation.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsGunKickAccel, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Accel")
|
|
tooltip("Rate at which viewmodel attempts to recenter in ADS. Directly opposes yaws and pitch accumulation.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipGunKickSpeedMax, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Hip Speed Max")
|
|
tooltip("Maximum deflection speed reached by the viewmodel in hipfire.")
|
|
|
|
}
|
|
]
|
|
|
|
floatedit(adsGunKickSpeedMax, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Speed Max")
|
|
tooltip("Maximum deflection speed reached by the viewmodel in ADS.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipGunKickSpeedDecay, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Hip Speed Decay")
|
|
tooltip("Strength of decay on viewmodel deflection speed in hipfire.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsGunKickSpeedDecay, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Speed Decay")
|
|
tooltip("Strength of decay on viewmodel deflection speed in ADS.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipGunKickStaticDecay, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("Hip Static Decay")
|
|
tooltip("Strength of decay on viewmodel recentering once it has stopped deflecting.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsGunKickStaticDecay, 0.1, 1)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Static Decay")
|
|
tooltip("Strength of decay on viewmodel recentering once it has stopped deflecting.")
|
|
}
|
|
]
|
|
}
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Gun Kick Settings")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// View Kick
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
hcontainer
|
|
{
|
|
floatedit(hipViewKickPitchMin, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Hip Pitch Min")
|
|
tooltip("Hipfire view kick control. -/+ sign means 'kick down/up'. Larger absolute numbers increase view kick climb/descent. From -100 to 100.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsViewKickPitchMin, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Pitch Min")
|
|
tooltip("ADS view kick control. -/+ sign means 'kick down/up'. Larger absolute numbers increase view kick climb/descent. From -100 to 100.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipViewKickPitchMax, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Hip Pitch Max")
|
|
tooltip("Hipfire view kick control. -/+ sign means 'kick down/up'. Larger absolute numbers increase view kick climb/descent. From -100 to 100.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsViewKickPitchMax, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Pitch Max")
|
|
tooltip("ADS view kick control. -/+ sign means 'kick down/up'. Larger absolute numbers increase view kick climb/descent. From -100 to 100.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipViewKickYawMin, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Hip Yaw Min")
|
|
tooltip("Hipfire view kick control. -/+ sign means 'kick right/left'. Larger absolute numbers increase view kick yaw. From -100 to 100.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsViewKickYawMin, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Yaw Min")
|
|
tooltip("ADS view kick control. -/+ sign means 'kick right/left'. Larger absolute numbers increase view kick yaw. From -100 to 100.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipViewKickYawMax, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("Hip Yaw Max")
|
|
tooltip("Hipfire view kick control. -/+ sign means 'kick right/left'. Larger absolute numbers increase view kick yaw. From -100 to 100.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsViewKickYawMax, 1, 10)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Yaw Max")
|
|
tooltip("ADS view kick control. -/+ sign means 'kick right/left'. Larger absolute numbers increase view kick yaw. From -100 to 100.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipViewKickCenterSpeed, 10, 100)
|
|
[
|
|
exec
|
|
{
|
|
label("Hip Center Speed")
|
|
tooltip("Speed with which the view continuously attempts to recenter in hipfire.")
|
|
}
|
|
]
|
|
|
|
floatedit(adsViewKickCenterSpeed, 10, 100)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Center Speed")
|
|
tooltip("Speed with which the view continuously attempts to recenter in ADS.")
|
|
}
|
|
]
|
|
}
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("View Kick 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.")
|
|
}
|
|
]
|
|
floatedit(adsSwayMaxAngle, 0.05, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Max Angle")
|
|
tooltip("Max angle change that will be applied to the ADS viewmodel sway.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(swayLerpSpeed, 0.05, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("Lerp Speed")
|
|
tooltip("Speed at which the sway will lerp in hipfire.")
|
|
}
|
|
]
|
|
floatedit(adsSwayLerpSpeed, 0.05, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Lerp Speed")
|
|
tooltip("Speed at which the sway will lerp in ADS.")
|
|
}
|
|
]
|
|
}
|
|
|
|
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.")
|
|
}
|
|
]
|
|
floatedit(adsSwayPitchScale, 0.05, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Pitch Scale")
|
|
tooltip("Amount of pitch change in the viewmodel to apply to the sway pitch in ADS.")
|
|
}
|
|
]
|
|
}
|
|
|
|
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.")
|
|
}
|
|
]
|
|
floatedit(adsSwayYawScale, 0.05, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Yaw Scale")
|
|
tooltip("Amount of yaw change in the viewmodel to apply to the sway yaw in ADS.")
|
|
}
|
|
]
|
|
}
|
|
|
|
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.")
|
|
}
|
|
]
|
|
floatedit(adsSwayHorizScale, 0.05, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Horiz Scale")
|
|
tooltip("Amount of yaw change in the viewmodel to apply to the sway horizontal offset in ADS.")
|
|
}
|
|
]
|
|
}
|
|
|
|
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.")
|
|
}
|
|
]
|
|
floatedit(adsSwayVertScale, 0.05, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Vert Scale")
|
|
tooltip("Amount of pitch change in the view model to apply to the sway vertical offset in ADS.")
|
|
}
|
|
]
|
|
}
|
|
|
|
floatedit(swayShellShockScale, 0.05, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("Shell Shock Scale")
|
|
tooltip("This scale gets applied to the weapon sway while you're in shell shock.")
|
|
}
|
|
]
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Sway Settings")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// AI Settings
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
hcontainer
|
|
{
|
|
floatedit(fightDist, 1, 100)
|
|
[
|
|
exec
|
|
{
|
|
label("Fight Distance")
|
|
tooltip("Aggro radius. AI using this weapon try to fight enemies detected in this radius. Center of this circle constantly traces along AI's path up to maxdist.")
|
|
}
|
|
]
|
|
|
|
floatedit(maxDist, 1, 100)
|
|
[
|
|
exec
|
|
{
|
|
label("Max Distance")
|
|
tooltip("Effective range radius. AI must get to this distance before opening fire on their target with this weapon.")
|
|
}
|
|
]
|
|
}
|
|
|
|
fileedit(aiVsAiAccuracyGraph)
|
|
[
|
|
exec
|
|
{
|
|
label("AI Vs. AI Accuracy")
|
|
tooltip("Graph file for in-game editing of the non-linear accuracy curve used by the AI for this weapon against another AI.")
|
|
reldir("raw/accuracy/aivsai/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(aiVsPlayerAccuracyGraph)
|
|
[
|
|
exec
|
|
{
|
|
label("AI Vs. Player Accuracy")
|
|
tooltip("Graph file for in-game editing of the non-linear accuracy curve used by the AI for this weapon against the player.")
|
|
reldir("raw/accuracy/aivsplayer/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("AI Settings")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// Reticle Settings
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
fileedit(reticleCenter)
|
|
[
|
|
exec
|
|
{
|
|
label("Center Reticle")
|
|
tooltip("Center Reticle.")
|
|
reldir("raw/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(reticleSide)
|
|
[
|
|
exec
|
|
{
|
|
label("Side Reticle")
|
|
tooltip("Side Reticle.")
|
|
reldir("raw/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
hcontainer
|
|
{
|
|
spinedit(reticleCenterSize, 1, 2)
|
|
[
|
|
exec
|
|
{
|
|
label("Center Size")
|
|
tooltip("Center Size.")
|
|
}
|
|
]
|
|
|
|
spinedit(reticleSideSize, 1, 2)
|
|
[
|
|
exec
|
|
{
|
|
label("Side Size")
|
|
tooltip("Side Size.")
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
floatedit(hipReticleSidePos, 0.1, 0.2)
|
|
[
|
|
exec
|
|
{
|
|
label("Side Position")
|
|
tooltip("Side Position.")
|
|
}
|
|
]
|
|
|
|
spinedit(reticleMinOfs, 1, 2)
|
|
[
|
|
exec
|
|
{
|
|
label("Min Offset")
|
|
tooltip("Min Offset.")
|
|
}
|
|
]
|
|
}
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Reticle Settings")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// 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(adsOverlayReticle)
|
|
[
|
|
exec
|
|
{
|
|
label("Reticle")
|
|
tooltip("Selects a preset image?")
|
|
}
|
|
]
|
|
|
|
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")
|
|
}
|
|
]
|
|
}
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("ADS Overlay Settings")
|
|
}
|
|
]
|
|
|
|
|
|
////////////////////////////////////////
|
|
// XModels
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
|
|
fileedit(gunModel)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 1")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 1")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(handModel)
|
|
[
|
|
exec
|
|
{
|
|
label("Default view Hand")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
checkbox(isHandModelOverridable)
|
|
[
|
|
exec
|
|
{
|
|
label("Update Hand Model From Script")
|
|
tooltip("If checked then the hand model can be updated from script")
|
|
}
|
|
]
|
|
|
|
fileedit(worldClipModel)
|
|
[
|
|
exec
|
|
{
|
|
label("World Clip Model")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(rocketModel)
|
|
[
|
|
exec
|
|
{
|
|
label("Attached Rocket")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
tooltip("When the weapon has ammo in its clip, this model will be attached to the xmodel.")
|
|
}
|
|
]
|
|
|
|
fileedit(knifeModel)
|
|
[
|
|
exec
|
|
{
|
|
label("Knife Model")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldKnifeModel)
|
|
[
|
|
exec
|
|
{
|
|
label("World Knife Model")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("XModels")
|
|
}
|
|
]
|
|
|
|
vcontainer
|
|
{
|
|
hcontainer
|
|
{
|
|
fileedit(gunModel2)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 2")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel2)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 2")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
fileedit(gunModel3)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 3")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel3)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 3")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
fileedit(gunModel4)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 4")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel4)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 4")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
fileedit(gunModel5)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 5")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel5)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 5")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
fileedit(gunModel6)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 6")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel6)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 6")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
fileedit(gunModel7)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 7")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel7)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 7")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
fileedit(gunModel8)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 8")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel8)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 8")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
fileedit(gunModel9)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 9")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel9)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 9")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
fileedit(gunModel10)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 10")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel10)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 10")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
fileedit(gunModel11)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 11")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel11)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 11")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
fileedit(gunModel12)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 12")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel12)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 12")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
fileedit(gunModel13)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 13")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel13)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 13")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
fileedit(gunModel14)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 14")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel14)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 14")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
fileedit(gunModel15)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 15")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel15)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 15")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
fileedit(gunModel16)
|
|
[
|
|
exec
|
|
{
|
|
label("View Gun 16")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldModel16)
|
|
[
|
|
exec
|
|
{
|
|
label("World Gun 16")
|
|
reldir("raw/xmodel/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Alternate Models", 0)
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// XAnims
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
fileedit(idleAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Idle")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(emptyIdleAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Empty Idle")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(fireAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Fire")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(lastShotAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Last Shot")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(meleeAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Melee")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(meleeChargeAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Melee Charge")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(reloadAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Reload")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(raiseAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Raise")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(dropAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Drop")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(firstRaiseAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("First Raise")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(altRaiseAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Alt Raise")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(altDropAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Alt Drop")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(quickRaiseAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Quick Raise")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(quickDropAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Quick Drop")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(emptyRaiseAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Empty Raise")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(emptyDropAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Empty Drop")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(sprintInAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Sprint In")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(sprintLoopAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Sprint Loop")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(sprintOutAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Sprint Out")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(nightVisionWearAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Nightvision Wear")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(nightVisionRemoveAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("Nightvision Remove")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(adsFireAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Fire")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(adsLastShotAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Last Shot")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(adsUpAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Up")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(adsDownAnim)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Down")
|
|
reldir("raw/xanim/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("XAnims")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// Particle Effects
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
fileedit(viewFlashEffect)
|
|
[
|
|
exec
|
|
{
|
|
label("View Flash")
|
|
reldir("raw/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldFlashEffect)
|
|
[
|
|
exec
|
|
{
|
|
label("World Flash")
|
|
reldir("raw/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(shellEjectEffect)
|
|
[
|
|
exec
|
|
{
|
|
label("Shell Eject")
|
|
reldir("raw/")
|
|
width(500)
|
|
}
|
|
]
|
|
fileedit(lastShotEjectEffect)
|
|
[
|
|
exec
|
|
{
|
|
label("Last Shot Eject")
|
|
reldir("raw/")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
fileedit(worldClipDropEffect)
|
|
[
|
|
exec
|
|
{
|
|
label("World Clip Drop Effect")
|
|
reldir("raw/")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Effects")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// Sounds
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
hcontainer
|
|
{
|
|
edit(pickupSound)
|
|
[
|
|
exec
|
|
{
|
|
label("Pickup")
|
|
width(400)
|
|
}
|
|
]
|
|
|
|
edit(pickupSoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("Pickup (Player)")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
edit(ammoPickupSound)
|
|
[
|
|
exec
|
|
{
|
|
label("Ammo Pickup")
|
|
width(400)
|
|
}
|
|
]
|
|
|
|
edit(ammoPickupSoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("Ammo Pickup (Player)")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
edit(projectileSound)
|
|
[
|
|
exec
|
|
{
|
|
label("Projectile")
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
hcontainer
|
|
{
|
|
edit(fireSound)
|
|
[
|
|
exec
|
|
{
|
|
label("Fire")
|
|
width(400)
|
|
}
|
|
]
|
|
|
|
edit(fireSoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("Fire (Player)")
|
|
tooltip("Fire sound used by player. If not defined, player will play normal 'Fire' that is used by the AI.")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
edit(lastShotSound)
|
|
[
|
|
exec
|
|
{
|
|
label("Last Shot")
|
|
width(400)
|
|
}
|
|
]
|
|
|
|
edit(lastShotSoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("Last Shot (Player)")
|
|
tooltip("Last Shot sound used by player. If not defined, player will play normal 'Last Shot' that is used by the AI.")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
edit(emptyFireSound)
|
|
[
|
|
exec
|
|
{
|
|
label("Empty Fire")
|
|
width(400)
|
|
}
|
|
]
|
|
|
|
edit(emptyFireSoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("Empty Fire (Player)")
|
|
tooltip("Empty Fire sound used by player. If not defined, player will play normal 'Empty Fire' that is used by the AI.")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
edit(meleeSwipeSound)
|
|
[
|
|
exec
|
|
{
|
|
label("Melee Swipe")
|
|
width(400)
|
|
}
|
|
]
|
|
edit(meleeSwipeSoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("Melee Swipe (Player)")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
edit(rechamberSound)
|
|
[
|
|
exec
|
|
{
|
|
label("Rechamber")
|
|
width(400)
|
|
}
|
|
]
|
|
|
|
edit(rechamberSoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("Rechamber (Player)")
|
|
tooltip("Rechamber sound used by player. If not defined, player will play normal 'Rechamber' that is used by the AI.")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
edit(reloadSound)
|
|
[
|
|
exec
|
|
{
|
|
label("Reload")
|
|
width(400)
|
|
}
|
|
]
|
|
|
|
edit(reloadSoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("Reload (Player)")
|
|
tooltip("Reload sound used by player. If not defined, player will play normal 'Reload' that is used by the AI.")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
edit(reloadEmptySound)
|
|
[
|
|
exec
|
|
{
|
|
label("Reload Empty")
|
|
width(400)
|
|
}
|
|
]
|
|
|
|
edit(reloadEmptySoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("Reload Empty (Player)")
|
|
tooltip("Reload Empty sound used by player. If not defined, player will play normal 'Reload Empty' that is used by the AI.")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
edit(reloadStartSound)
|
|
[
|
|
exec
|
|
{
|
|
label("Reload Start")
|
|
width(400)
|
|
}
|
|
]
|
|
|
|
edit(reloadStartSoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("Reload Start (Player)")
|
|
tooltip("Reload Start sound used by player. If not defined, player will play normal 'Reload Start' that is used by the AI.")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
edit(reloadEndSound)
|
|
[
|
|
exec
|
|
{
|
|
label("Reload End")
|
|
width(400)
|
|
}
|
|
]
|
|
|
|
edit(reloadEndSoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("Reload End (Player)")
|
|
tooltip("Reload End sound used by player. If not defined, player will play normal 'Reload End' that is used by the AI.")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
edit(altSwitchSound)
|
|
[
|
|
exec
|
|
{
|
|
label("Alt Switch")
|
|
width(400)
|
|
}
|
|
]
|
|
edit(altSwitchSoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("Alt Switch (Player)")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
edit(raiseSound)
|
|
[
|
|
exec
|
|
{
|
|
label("Raise")
|
|
width(400)
|
|
}
|
|
]
|
|
edit(raiseSoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("Raise (Player)")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
edit(firstRaiseSound)
|
|
[
|
|
exec
|
|
{
|
|
label("First Raise")
|
|
width(400)
|
|
}
|
|
]
|
|
edit(firstRaiseSoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("First Raise (Player)")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
edit(putawaySound)
|
|
[
|
|
exec
|
|
{
|
|
label("Put Away")
|
|
width(400)
|
|
}
|
|
]
|
|
edit(putawaySoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("Put Away (Player)")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
edit(nightVisionWearSound)
|
|
[
|
|
exec
|
|
{
|
|
label("NightVis Wear")
|
|
width(400)
|
|
}
|
|
]
|
|
edit(nightVisionWearSoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("NightVis Wear (Player)")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
hcontainer
|
|
{
|
|
edit(nightVisionRemoveSound)
|
|
[
|
|
exec
|
|
{
|
|
label("NightVis Remove")
|
|
width(400)
|
|
}
|
|
]
|
|
edit(nightVisionRemoveSoundPlayer)
|
|
[
|
|
exec
|
|
{
|
|
label("NightVis Remove (Player)")
|
|
width(400)
|
|
}
|
|
]
|
|
}
|
|
|
|
edit(projIgnitionSound)
|
|
[
|
|
exec
|
|
{
|
|
label("Projectile Ignition")
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Sound")
|
|
}
|
|
]
|
|
|
|
vcontainer
|
|
{
|
|
multiedit(notetrackSoundMap)
|
|
[
|
|
exec
|
|
{
|
|
label("")
|
|
labelwidth(0)
|
|
tooltip("Sounds to play when viewmodel hits different notetrack events. One per line, format is: NOTETRACKNAME,soundalias")
|
|
width(500)
|
|
height(120)
|
|
}
|
|
]
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Viewmodel Notetrack-to-Sound Mappings")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// Rumbles
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
scrollbox(fireRumble)
|
|
[
|
|
exec
|
|
{
|
|
width(500)
|
|
}
|
|
]
|
|
|
|
scrollbox(meleeImpactRumble)
|
|
[
|
|
exec
|
|
{
|
|
width(500)
|
|
}
|
|
]
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Rumbles")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// UI
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
hcontainer
|
|
{
|
|
fileedit(hudIcon)
|
|
[
|
|
exec
|
|
{
|
|
label("Hud Icon")
|
|
reldir("raw/")
|
|
width(500)
|
|
labelwidth(180)
|
|
}
|
|
]
|
|
scrollbox(hudIconRatio)
|
|
[
|
|
exec
|
|
{
|
|
label(" Aspect:")
|
|
width(110)
|
|
labelwidth(60)
|
|
}
|
|
]
|
|
}
|
|
hcontainer
|
|
{
|
|
fileedit(killIcon)
|
|
[
|
|
exec
|
|
{
|
|
label("Kill Icon")
|
|
reldir("raw/")
|
|
width(500)
|
|
labelwidth(180)
|
|
}
|
|
]
|
|
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)
|
|
}
|
|
]
|
|
}
|
|
hcontainer
|
|
{
|
|
fileedit(dpadIcon)
|
|
[
|
|
exec
|
|
{
|
|
label("DPad Icon")
|
|
reldir("raw/")
|
|
width(500)
|
|
labelwidth(180)
|
|
}
|
|
]
|
|
scrollbox(dpadIconRatio)
|
|
[
|
|
exec
|
|
{
|
|
label(" Aspect:")
|
|
width(110)
|
|
labelwidth(60)
|
|
}
|
|
]
|
|
}
|
|
hcontainer
|
|
{
|
|
fileedit(ammoCounterIcon)
|
|
[
|
|
exec
|
|
{
|
|
label("Ammo Counter Icon")
|
|
reldir("raw/")
|
|
width(500)
|
|
labelwidth(180)
|
|
}
|
|
]
|
|
scrollbox(ammoCounterIconRatio)
|
|
[
|
|
exec
|
|
{
|
|
label(" Aspect:")
|
|
width(110)
|
|
labelwidth(60)
|
|
}
|
|
]
|
|
}
|
|
scrollbox(ammoCounterClip)
|
|
[
|
|
exec
|
|
{
|
|
label("Ammo Counter Clip Style")
|
|
width(300)
|
|
labelwidth(180)
|
|
}
|
|
]
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("User Interface")
|
|
}
|
|
]
|
|
|
|
////////////////////////////////////////
|
|
// Bounce factors
|
|
////////////////////////////////////////
|
|
hcontainer
|
|
{
|
|
|
|
vcontainer
|
|
{
|
|
floatedit(parallelDefaultBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("default")
|
|
}
|
|
]
|
|
floatedit(parallelBarkBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("bark")
|
|
}
|
|
]
|
|
floatedit(parallelBrickBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("brick")
|
|
}
|
|
]
|
|
floatedit(parallelCarpetBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("carpet")
|
|
}
|
|
]
|
|
floatedit(parallelClothBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("cloth")
|
|
}
|
|
]
|
|
floatedit(parallelConcreteBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("concrete")
|
|
}
|
|
]
|
|
floatedit(parallelDirtBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("dirt")
|
|
}
|
|
]
|
|
floatedit(parallelFleshBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("flesh")
|
|
}
|
|
]
|
|
floatedit(parallelFoliageBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("foliage")
|
|
}
|
|
]
|
|
floatedit(parallelGlassBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("glass")
|
|
}
|
|
]
|
|
floatedit(parallelGrassBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("grass")
|
|
}
|
|
]
|
|
floatedit(parallelGravelBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("gravel")
|
|
}
|
|
]
|
|
floatedit(parallelIceBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("ice")
|
|
}
|
|
]
|
|
floatedit(parallelMetalBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("metal")
|
|
}
|
|
]
|
|
floatedit(parallelMudBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("mud")
|
|
}
|
|
]
|
|
floatedit(parallelPaperBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("paper")
|
|
}
|
|
]
|
|
floatedit(parallelPlasterBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("plaster")
|
|
}
|
|
]
|
|
floatedit(parallelRockBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("rock")
|
|
}
|
|
]
|
|
floatedit(parallelSandBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("sand")
|
|
}
|
|
]
|
|
floatedit(parallelSnowBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("snow")
|
|
}
|
|
]
|
|
floatedit(parallelWaterBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("water")
|
|
}
|
|
]
|
|
floatedit(parallelWoodBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("wood")
|
|
}
|
|
]
|
|
floatedit(parallelAsphaltBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("asphalt")
|
|
}
|
|
]
|
|
floatedit(parallelCeramicBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("ceramic")
|
|
}
|
|
]
|
|
floatedit(parallelPlasticBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("plastic")
|
|
}
|
|
]
|
|
floatedit(parallelRubberBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("rubber")
|
|
}
|
|
]
|
|
floatedit(parallelCushionBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("cushion")
|
|
}
|
|
]
|
|
floatedit(parallelFruitBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("fruit")
|
|
}
|
|
]
|
|
floatedit(parallelPaintedMetalBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("painted metal")
|
|
}
|
|
]
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Parallel Bounce Factors")
|
|
}
|
|
]
|
|
|
|
vcontainer
|
|
{
|
|
floatedit(perpendicularDefaultBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("default")
|
|
}
|
|
]
|
|
floatedit(perpendicularBarkBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("bark")
|
|
}
|
|
]
|
|
floatedit(perpendicularBrickBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("brick")
|
|
}
|
|
]
|
|
floatedit(perpendicularCarpetBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("carpet")
|
|
}
|
|
]
|
|
floatedit(perpendicularClothBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("cloth")
|
|
}
|
|
]
|
|
floatedit(perpendicularConcreteBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("concrete")
|
|
}
|
|
]
|
|
floatedit(perpendicularDirtBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("dirt")
|
|
}
|
|
]
|
|
floatedit(perpendicularFleshBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("flesh")
|
|
}
|
|
]
|
|
floatedit(perpendicularFoliageBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("foliage")
|
|
}
|
|
]
|
|
floatedit(perpendicularGlassBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("glass")
|
|
}
|
|
]
|
|
floatedit(perpendicularGrassBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("grass")
|
|
}
|
|
]
|
|
floatedit(perpendicularGravelBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("gravel")
|
|
}
|
|
]
|
|
floatedit(perpendicularIceBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("ice")
|
|
}
|
|
]
|
|
floatedit(perpendicularMetalBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("metal")
|
|
}
|
|
]
|
|
floatedit(perpendicularMudBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("mud")
|
|
}
|
|
]
|
|
floatedit(perpendicularPaperBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("paper")
|
|
}
|
|
]
|
|
floatedit(perpendicularPlasterBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("plaster")
|
|
}
|
|
]
|
|
floatedit(perpendicularRockBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("rock")
|
|
}
|
|
]
|
|
floatedit(perpendicularSandBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("sand")
|
|
}
|
|
]
|
|
floatedit(perpendicularSnowBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("snow")
|
|
}
|
|
]
|
|
floatedit(perpendicularWaterBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("water")
|
|
}
|
|
]
|
|
floatedit(perpendicularWoodBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("wood")
|
|
}
|
|
]
|
|
floatedit(perpendicularAsphaltBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("asphalt")
|
|
}
|
|
]
|
|
floatedit(perpendicularCeramicBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("ceramic")
|
|
}
|
|
]
|
|
floatedit(perpendicularPlasticBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("plastic")
|
|
}
|
|
]
|
|
floatedit(perpendicularRubberBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("rubber")
|
|
}
|
|
]
|
|
floatedit(perpendicularCushionBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("cushion")
|
|
}
|
|
]
|
|
floatedit(perpendicularFruitBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("fruit")
|
|
}
|
|
]
|
|
floatedit(perpendicularPaintedMetalBounce, 0.01, 0.1)
|
|
[
|
|
exec
|
|
{
|
|
label("painted metal")
|
|
}
|
|
]
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Perpendicular Bounce Factors")
|
|
}
|
|
]
|
|
}
|
|
|
|
////////////////////////////////////////
|
|
// Depth of Field Settings
|
|
////////////////////////////////////////
|
|
vcontainer
|
|
{
|
|
hcontainer
|
|
{
|
|
floatedit(adsDofStart, 0.1, 0.5)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS Start")
|
|
}
|
|
]
|
|
|
|
floatedit(adsDofEnd, 0.1, 0.5)
|
|
[
|
|
exec
|
|
{
|
|
label("ADS End")
|
|
}
|
|
]
|
|
}
|
|
}
|
|
[
|
|
exec
|
|
{
|
|
groupBox("Depth of Field Settings")
|
|
}
|
|
]
|
|
}
|
|
|