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