Garry's Mod

Garry's Mod

GChem - Chemical Warfare
 This topic has been pinned, so it's probably important
Freaking Fission  [developer] Jul 27, 2020 @ 4:58pm
Config Breakdown
This list contains all the names and explanations of what each variable in the GChem config, located at garrysmod\data\gchem_config.txt, does.

Highly recommended to use this discussion to make changes to the config because the file layout is an unreadable mess that I do not know how to fix.

To keep this list as short as possible, variables are split into 7 categories

Gas Physics:
  • Linger Time- Multiplier affecting how long gas particles survive, however, does not effect optimized gas particles as I do not know how to dynamically change particle effect lifespans. Variables using this are ChlorineLingerTime, PhosgeneLingerTime, GreenCrossLingerTime, MustardLingerTime, CyanideLingerTime, CSLingerTime, SarinLingerTime and VXLingerTime.
  • Precise particle have 2 main sizes, regular and diffuse, regular applies full exposure at a normal radius, while gas will go into a diffuse state if there are no gas particles in its regular radius. Diffuse gas effects a larger radius, applies less exposure, decays faster, and is less opaque.
  • Regular Radius- Multiplier affecting how large the effect radius of normal sized gas particles are. Variables using this are ChlorineRegularRadius, PhosgeneRegularRadius, GreenCrossRegularRadius, MustardRegularRadius, CyanideRegularRadius, CSRegularRadius, SarinRegularRadius and VXRegularRadius.
  • Diffuse Radius- Multiplier affecting how large the effect radius of diffuse gas particles are. Variables using this are ChlorineDiffuseRadius, PhosgeneDiffuseRadius, GreenCrossDiffuseRadius, MustardDiffuseRadius, CyanideDiffuseRadius, CSDiffuseRadius, SarinDiffuseRadius and VXDiffuseRadius.
  • Regular Exposure- Multiplier affecting how much exposure normal sized gas particles apply. Variables using this are ChlorineRegularExposure, PhosgeneRegularExposure, GreenCrossRegularExposure, MustardRegularExposure, CyanideRegularExposure, CSRegularExposure, SarinRegularExposure and VXRegularExposure.
  • Diffuse Exposure- Multiplier affecting how much exposure diffuse gas particles apply. Variables using this are ChlorineDiffuseExposure, PhosgeneDiffuseExposure, GreenCrossDiffuseExposure, MustardDiffuseExposure, CyanideDiffuseExposure, CSDiffuseExposure, SarinDiffuseExposure, and VXDiffuseExposure.
  • Pressure Radius- Multiplier affecting the radius that precise gas particles will push each other in. Variables using this are ChlorinePressureRadius, PhosgenePressureRadius, GreenCrossPressureRadius, MustardPressureRadius, CyanidePressureRadius, CSPressureRadius, SarinPressureRadius and VXPressureRadius.
  • Pressure Force- Multiplier affecting the force that gas particles will apply on each other. Variables using this are ChlorinePressureForce, PhosgenePressureForce, GreenCrossPressureForce, MustardPressureForce, CyanidePressureForce, CSPressureForce, SarinPressureForce and VXPressureForce.
  • Particle Size- Multiplier affecting the size of gas particle's displayed sprite. Does not work on optimized particles. Variables using this are ChlorineParticleSize, PhosgeneParticleSize, GreenCrossParticleSize, MustardParticleSize and CSParticleSize.
  • Particle Opacity- Multiplier affecting the opacity of the gas particle's displayed sprite. Does not work on optimized particles except phosgene, where setting PhosgeneParticleOpacity = 0 disables the particle effect. Variables using this are ChlorineParticleOpacity, PhosgeneParticleOpacity, GreenCrossParticleOpacity, MustardParticleOpacity and CSParticleOpacity.
  • Fall Rate Slower- Variable controlling the force applied every physics update to simulate density, set to 9 to negate gravity. Variables using this are ChlorineFallRateSlower, PhosgeneFallRateSlower, GreenCrossFallRateSlower, MustardFallRateSlower, CSFallRateSlower, SarinFallRateSlower and VXFallRateSlower.
  • Optimized Push Radius- Multiplier affecting the radius that optimized particles will push each other in. Variables using this are ChlorineOptimizedPushRadius, PhosgeneOptimizedPushRadius, GreenCrossOptimizedPushRadius, MustardOptimizedPushRadius, CyanideOptimizedPushRadius, CSOptimizedPushRadius, SarinOptimizedPushRadius and VXOptimizedPushRadius.
  • Optimized Effect Multiplier- Multiplier affecting how much explosure optimized particles will apply relative to regular exposure. Variables using this are ChlorineOptimizedEffectMultiplier, PhosgeneOptimizedEffectMultiplier, GreenCrossOptimizedEffectMultiplier, MustardOptimizedEffectMultiplier, CyanideOptimizedEffectMultiplier, CSOptimizedEffectMultiplier, SarinOptimizedEffectMultiplier and VXOptimizedEffectMultiplier.
  • Optimized Effect Doubler Radius- Multiplier affecting the radius that gas exposure will double. Radius is half of the total radius by default. Variables using this are ChlorineOptimizedEffectDoublerRadius, PhosgeneOptimizedEffectDoublerRadius, GreenCrossOptimizedEffectDoublerRadius, MustardOptimizedEffectDoublerRadius, CyanideOptimizedEffectDoublerRadius, CSOptimizedEffectDoublerRadius, SarinOptimizedEffectDoublerRadius and VXOptimizedEffectDoublerRadius.
  • Vent Wind- Boolean controlling if gas will blow in the wind if released from its container by venting. Variables using this are ChlorineVentWind, PhosgeneVentWind, GreenCrossVentWind, MustardVentWind, CyanideVentWind, CSVentWind, SarinVentWind and VXVentWind.
  • Explosion Wind- Boolean controlling if gas will blow in the wind if released from its container by an explosion. Variables using this are ChlorineExplosionWind, PhosgeneExplosionWind, GreenCrossExplosionWind, MustardExplosionWind, CyanideExplosionWind, CSExplosionWind, SarinExplosionWind and VXExplosionWind.
  • Optimzed- Boolean controlling if gas will be optimized if the convar gc_optimizedgas is true . Variables using this are ChlorineOptimized, PhosgeneOptimized, GreenCrossOptimized, MustardOptimized, CyanideOptimized, CSOptimized, SarinOptimized and VXOptimized.
  • Line Of Sight- Boolean controlling if gas will check for a line of sight to its target if the convar gc_los is true . Variables using this are ChlorineLOS, PhosgeneLOS, GreenCrossLOS, MustardLOS, CyanideLOS, CSLOS, SarinLOS, and VXLOS.
Chlorine Exposure:
  • Chlorine Blur Dose- Variable adding or subtracting from the threshold dose for blurring to start. Blur threshold is 5 miligrams by default. Variables using this are ChlorineBlurDose and ChlorineBlurDoseNPC.
  • Chlorine Damage Dose- Variable adding or subtracting from the threshold dose for damage to start. Damage threshold is 54 miligrams by default. Variables using this are ChlorineDamageDose and ChlorineDamageDoseNPC.
  • Chlorine Blind Dose- Variable adding or subtracting from the threshold dose for blindness to start. Blindness threshold is 95 miligrams by default. Variables using this are ChlorineBlindDose and ChlorineBlindDoseNPC.
  • Chlorine Severe Dose- Variable adding or subtracting from the threshold dose for a dose to be considered severe. Severe threshold is 380 miligrams by default. Variables using this are ChlorineSevereDose and ChlorineSevereDoseNPC.
  • Chlorine Death Dose- Variable adding or subtracting from the threshold dose for death. Death threshold is 570 miligrams by default. Variables using this are ChlorineDeathDose and ChlorineDeathDoseNPC.
  • Chlorine Dose Decay- Multiplier affecting the decay rate of chemical exposure, the faster the decay rate, the faster a character recovers. The Chlorine Decay rate is standardized to take 400 seconds to completely recover from a lethal dose. Variables using this are ChlorineDoseDecay and ChlorineDoseDecayNPC.
  • Chlorine Damage Rate- Multiplier affecting the damage rate of chemical exposure, the higher the rate, the more damage dealt. Variables using this are ChlorineDamageRate and ChlorineDamageRateNPC.
  • Chlorine Blur Magnitude- Multiplier affecting the strength of blurring on player's screens. The Variable using this is ChlorineBlurMagnitude.
Phosgene Immediate Exposure:
  • Phosgene Immediate is a functional equivalent of chlorine, exists solely to allow phosgene to be tweaked independent of chlorine.
  • Phosgene Immediate Blur Dose- Variable adding or subtracting from the threshold dose for blurring to start. Blur threshold is 5 miligrams by default. Variables using this are PhosgeneImmediateBlurDose and PhosgeneImmediateBlurDoseNPC.
  • Phosgene Immediate Damage Dose- Variable adding or subtracting from the threshold dose for damage to start. Damage threshold is 54 miligrams by default. Variables using this are PhosgeneImmediateDamageDose and PhosgeneImmediateDamageDoseNPC.
  • Phosgene Immediate Blind Dose- Variable adding or subtracting from the threshold dose for blindness to start. Blindness threshold is 95 miligrams by default. Variables using this are PhosgeneImmediateBlindDose and PhosgeneImmediateBlindDoseNPC.
  • Phosgene Immediate Severe Dose- Variable adding or subtracting from the threshold dose for a dose to be considered severe. Severe threshold is 380 miligrams by default. Variables using this are PhosgeneImmediateSevereDose and PhosgeneImmediateSevereDoseNPC.
  • Phosgene Immediate Death Dose- Variable adding or subtracting from the threshold dose for death. Death threshold is 570 miligrams by default. Variables using this are PhosgeneImmediateDeathDose and PhosgeneImmediateDeathDoseNPC.
  • Phosgene Immediate Dose Decay- Multiplier affecting the decay rate of chemical exposure, the faster the decay rate, the faster a character recovers. The Phosgene Immediate Decay rate is standardized to take 400 seconds to completely recover from a lethal dose. Variables using this are PhosgeneImmediateDoseDecay and PhosgeneImmediateDoseDecayNPC.
  • Phosgene Immediate Damage Rate- Multiplier affecting the damage rate of chemical exposure, the higher the rate, the more damage dealt. Variables using this are PhosgeneImmediateDamageRate and PhosgeneImmediateDamageRateNPC.
  • Phosgene Immediate Blur Magnitude- Multiplier affecting the strength of blurring on player's screens. The Variable using this is PhosgeneImmediateBlurMagnitude.
Phosgene Delayed Exposure:
  • Phosgene exposure takes 2 minutes by default to take effect.
  • Phosgene Cough Dose- Variable adding or subtracting from the threshold dose for coughing and damage to start. Cought threshold is 5 miligrams by default. Variables using this are PhosgeneCoughDose and PhosgeneCoughDoseNPC.
  • Phosgene Severe Dose- Variable adding or subtracting from the threshold dose for a dose to be considered severe. Severe threshold is 30 miligrams by default. Variables using this are PhosgeneSevereDose and PhosgeneSevereDoseNPC.
  • Phosgene Death Dose- Variable adding or subtracting from the threshold dose for death. Death threshold is 45 miligrams by default. Variables using this are PhosgeneDeathDose and PhosgeneDeathDoseNPC.
  • Phosgene Dose Decay- Multiplier affecting the decay rate of chemical exposure, the faster the decay rate, the faster a character recovers. The Phosgene Decay rates is standardized to take 400 seconds to completely recover from a lethal dose. Variables using this are PhosgeneDoseDecay and PhosgeneDoseDecayNPC.
  • Phosgene Damage Rate- Multiplier affecting the damage rate of chemical exposure, the higher the rate, the more damage dealt. Variables using this are PhosgeneDamageRate and PhosgeneDamageRateNPC.
Mustard Exposure:
  • Mustard exposure takes 8 seconds by default to take effect.
  • Mustard Blur Dose- Variable adding or subtracting from the threshold dose for blurring to start. Blur threshold is .75 miligrams by default. Variables using this are MustardBlurDose and MustardBlurDoseNPC.
  • Mustard Damage Dose- Variable adding or subtracting from the threshold dose for damage and coughing to start. Damage threshold is 1.5 miligrams by default. Variables using this are MustardDamageDose and MustardDamageDoseNPC.
  • Mustard Blind Dose- Variable adding or subtracting from the threshold dose for blindness to start. Blindness threshold is 5 miligrams by default. Variables using this are MustardBlindDose and MustardBlindDoseNPC.
  • Mustard Severe Dose- Variable adding or subtracting from the threshold dose for a dose to be considered severe. Severe threshold is 20 miligrams by default. Variables using this are MustardSevereDose and MustardSevereDoseNPC.
  • Mustard Death Dose- Variable adding or subtracting from the threshold dose for death. Death threshold is 30 miligrams by default. Variables using this are MustardDeathDose and MustardDeathDoseNPC.
  • Mustard Dose Decay- Multiplier affecting the decay rate of chemical exposure, the faster the decay rate, the faster a character recovers. The Mustard Decay rate is standardized to take 400 seconds to completely recover from a lethal dose. Variables using this are MustardDoseDecay and MustardDoseDecayNPC.
  • Mustard Damage Rate- Multiplier affecting the damage rate of chemical exposure, the higher the rate, the more damage dealt. Variables using this are MustardDamageRate and MustardDamageRateNPC.
  • Mustard Blur Magnitude- Multiplier affecting the strength of blurring on player's screens. The Variable using this is MustardBlurMagnitude.
Mustard Delayed Skin Exposure:
  • Mustard Skin Burns takes 2 minutes by default to take effect.
  • Mustard Skin Light Dose- Variable adding or subtracting from the threshold dose for damage and grunts of pain to start. Light threshold is 60 miligrams by default. Variables using this are MustardSkinLightDose and MustardSkinLightDoseNPC.
  • Mustard Skin Medium Dose- Variable adding or subtracting from the threshold dose for incapacitation, which slows down players. Medium threshold is 600 miligrams by default. Variables using this are MustardSkinMediumDose and MustardSkinMediumDoseNPC.
  • Mustard Skin Heavy Dose- Variable adding or subtracting from the threshold dose for deadly burns, which slows players to a crawl. Heavy doses are designed to be lethal, even with constant healing. Heavy threshold is 1400 miligrams by default. Variables using this are MustardSkinHeavyDose and MustardSkinHeavyDoseNPC.
  • Mustard Skin Dose Decay- Multiplier affecting the decay rate of chemical exposure, the faster the decay rate, the faster a character recovers. The Mustard Skin Decay rate is standardized to take 700 seconds to completely recover from a lethal dose (heavy dose is considered lethal). Variables using this are MustardSkinDoseDecay and MustardSkinDoseDecayNPC.
  • Mustard Skin Damage Rate- Multiplier affecting the damage rate of chemical exposure, the higher the rate, the more damage dealt. Variables using this are MustardSkinDamageRate and MustardSkinDamageRateNPC.
Cyanide Exposure:
  • Cyanide takes 8 seconds by default to take effect.
  • Cyanide Confusion Dose- Variable adding or subtracting from the threshold dose for player confusion, which darkens the screen, to start. Confusion threshold is 11.44 miligrams by default. The variable using this is CyanideConfusionDose.
  • Cyanide Dizzy Dose- Variable adding or subtracting from the threshold dose to make characters dizzy, which slows players and hinders npc aim. Dizzy threshold is 42.9 miligrams by default. Variables using this are CyanideDizzyDose and CyanideDizzyDoseNPC.
  • Cyanide Death Dose- Variable adding or subtracting from the threshold dose for death. Death threshold is 85.8 miligrams by default. Variables using this are CyanideDeathDose and CyanideDeathDoseNPC.
  • Cyanide Dose Decay- Multiplier affecting the decay rate of chemical exposure, the faster the decay rate, the faster a character recovers. The Cyanide Decay rate is standardized to take 250 seconds to completely recover from a lethal dose. Variables using this are CyanideDoseDecay and CyanideDoseDecayNPC.
CS Exposure:
  • CS Blur Dose- Variable adding or subtracting from the threshold dose for blurring to start. Blur threshold is 1 miligrams by default. Variables using this are CSBlurDose and CSBlurDoseNPC.
  • [bCS Blind Dose[/b]- Variable adding or subtracting from the threshold dose for blindness to start. Blindness threshold is 230 miligrams by default. Variables using this are CSBlindDose and CSBlindDoseNPC.
  • CS Severe Dose- Variable adding or subtracting from the threshold dose for a dose to be considered severe and damage to start. Severe threshold is 2550 miligrams by default. Variables using this are CSSevereDose and CSSevereDoseNPC.
  • CS Death Dose- Variable adding or subtracting from the threshold dose for death. Death threshold is 3900 miligrams by default. Variables using this are CSDeathDose and CSDeathDoseNPC.
  • CS Dose Decay - Multiplier affecting the decay rate of chemical exposure, the faster the decay rate, the faster a character recovers. The CS Decay rate is standardized to take 600 seconds to completely recover from a lethal dose. Variables using this are CSDoseDecay and CSDoseDecayNPC.
  • CS Damage Rate- Multiplier affecting the damage rate of chemical exposure, the higher the rate, the more damage dealt. Variables using this are CSDamageRate and CSDamageRateNPC.
  • CS Blur Magnitude- Multiplier affecting the strength of blurring on player's screens. The Variable using this is CSBlurMagnitude.
Sarin Exposure:
  • Sarin Twitch Dose- Variable adding or subtracting from the threshold dose for twitching and other effects to start. Twitch threshold is .105 miligrams by default. Variables using this are SarinTwitchDose and SarinTwitchDoseNPC.
  • Sarin Severe Dose- Variable adding or subtracting from the threshold dose for a dose to be considered severe. Severe threshold is .525 miligrams by default. Variables using this are SarinSevereDose and SarinSevereDoseNPC.
  • Sarin Death Dose- Variable adding or subtracting from the threshold dose for death. Death threshold is 1.05 miligrams by default. Variables using this are SarinDeathDose and SarinDeathDoseNPC.
  • Sarin Dose Decay- Multiplier affecting the decay rate of chemical exposure, the faster the decay rate, the faster a character recovers. The Sarin Decay rate is standardized to take 400 seconds to completely recover from a lethal dose. Variables using this are SarinDoseDecay and SarinDoseDecayNPC.
  • Sarin Damage Rate- Multiplier affecting the damage rate of chemical exposure, the higher the rate, the more damage dealt. Variables using this are SarinDamageRate and SarinDamageRateNPC.
VX Exposure:
  • VX Twitch Dose- Variable adding or subtracting from the threshold dose for twitching and other effects to start. Twitch threshold is .045 miligrams by default. Variables using this are VXTwitchDose and VXTwitchDoseNPC.
  • VX Severe Dose- Variable adding or subtracting from the threshold dose for a dose to be considered severe. Severe threshold is .225 miligrams by default. Variables using this are VXSevereDose and VXSevereDoseNPC.
  • VX Death Dose- Variable adding or subtracting from the threshold dose for death. Death threshold is .45 miligrams by default. Variables using this are VXDeathDose and VXDeathDoseNPC.
  • VX Dose Decay- Multiplier affecting the decay rate of chemical exposure, the faster the decay rate, the faster a character recovers. The VX Decay rate is standardized to take 400 seconds to completely recover from a lethal dose. Variables using this are VXDoseDecay and VXDoseDecayNPC.
  • VX Damage Rate- Multiplier affecting the damage rate of chemical exposure, the higher the rate, the more damage dealt. Variables using this are VXDamageRate and VXDamageRateNPC.
Containers:
  • Canister Gas Amount- Multiplier affecting how much gas in contained in a gas canister. Variables using this are ChlorineCanisterGasAmount, PhosgeneCanisterGasAmount, GreenCrossCanisterGasAmount, MustardCanisterGasAmount, CyanideCanisterGasAmount, CSCanisterGasAmount, SarinCanisterGasAmount and VXCanisterGasAmount.
  • Bomb Gas Amount- Multiplier affecting how much gas in contained in a gas bomb. Variables using this are ChlorineBombGasAmount, PhosgeneBombGasAmount, GreenCrossBombGasAmount, MustardBombGasAmount, CyanideBombGasAmount, CSBombGasAmount, SarinBombGasAmount and VXBombGasAmount.
  • Grenade Gas Amount- Multiplier affecting how much gas in contained in a gas grenade. Variables using this are ChlorineGrenadeGasAmount, PhosgeneGrenadeGasAmount, GreenCrossGrenadeGasAmount, MustardGrenadeGasAmount, CyanideGrenadeGasAmount, CSGrenadeGasAmount, SarinGrenadeGasAmount and VXGrenadeGasAmount.
  • Canister Vent Wind Local- Boolean controlling if gas canisters should pass the local wind vector (which disables local wind if not passed) to the gas created by the canister when venting. Only works on gas using local wind. Variables using this are ChlorineCanisterVentWindLocal, PhosgeneCanisterVentWindLocal, GreenCrossCanisterVentWindLocal, MustardCanisterVentWindLocal, CyanideCanisterVentWindLocal, CSCanisterVentWindLocal, SarinCanisterVentWindLocal and VXCanisterVentWindLocal.
  • Canister Explosion Wind Local- Boolean controlling if gas canisters should pass the local wind vector (which disables local wind if not passed) to the gas created by the canister when exploding. Only works on gas using local wind. Variables using this are ChlorineCanisterExplosionWindLocal, PhosgeneCanisterExplosionWindLocal, GreenCrossCanisterExplosionWindLocal, MustardCanisterExplosionWindLocal, CyanideCanisterExplosionWindLocal, CSCanisterExplosionWindLocal, SarinCanisterExplosionWindLocal and VXCanisterExplosionWindLocal.
  • Bomb Explosion Wind Local- Boolean controlling if gas bombs should pass the local wind vector (which disables local wind if not passed) to the gas created by the bomb when exploding. Only works on gas using local wind. Variables using this are ChlorineBombExplosionWindLocal, PhosgeneBombExplosionWindLocal, GreenCrossBombExplosionWindLocal, MustardBombExplosionWindLocal, CyanideBombExplosionWindLocal, CSBombExplosionWindLocal, SarinBombExplosionWindLocal and VXBombExplosionWindLocal.
  • Vent Grenade- Boolean controlling if venting grenades should be able to select this gas. Variables using this are ChlorineVentGrenade, PhosgeneVentGrenade, GreenCrossVentGrenade, MustardVentGrenade, CyanideVentGrenade, CSVentGrenade, SarinVentGrenade and VXVentGrenade.
  • Burst Grenade- Boolean controlling if bursting grenades should be able to select this gas. Variables using this are ChlorineBurstGrenade, PhosgeneBurstGrenade, GreenCrossBurstGrenade, MustardBurstGrenade, CyanideBurstGrenade, CSBurstGrenade, SarinBurstGrenade and VXBurstGrenade.
  • Gas Thrower- Boolean controlling if the gas thrower should be able to select this gas. Variables using this are ChlorineGasThrower, PhosgeneGasThrower, GreenCrossGasThrower, MustardGasThrower, CyanideGasThrower, CSGasThrower, SarinGasThrower and VXGasThrower.
Contamination:
  • Contamination Evaporation- Boolean controlling if gas contamination should evaporate, gassing anyone nearby. Variable using this is ContaminationEvaporation.
  • Contamination Absorption- Boolean controlling if gas contamination should be absorbed through skin. Variable using this is ContaminationAbsorption.
  • Contamination Spread- Boolean controlling if gas contamination should spread by contact. Variable using this is ContaminationSpread.
  • Contamination Evaporation Percent- Variables controlling what percent of gas contamination should evaporate each second. Variables using this are MustardContaminationEvaporationPercent and VXContaminationEvaporationPercent.
  • Contamination Evaporation Effect Multiplier- Multiplier modifying how much exposure is applied to characters by contamination evaporation. Use to increase rate of evaporation without increasing lethality. The variables using this are MustardContaminationEvaporationEffectMultiplier and VXContaminationEvaporationEffectMultiplier.
  • Contamination Evaporation Radius- Variable controlling the size of the radius that players and npcs nearby evaporating gas will be gassed. Variable using this is ContaminationEvaporationRadius.
  • Contamination Evaporation Standard Temperature- Variable controlling the temperature (fahrenheit) that gas will evaporate at an unmodified rate. Variable using this is ContaminationEvaporationStandardTemperature.
  • Contamination Evaporation Range Radius- Variable controlling the range of temperatures (farenheit) that that gas will have its evaporation rate modified, any temperature beyond this range will be clamped. Acts as a radius, such as a radius of 25 and standard temperature of 75 will create a range from 50-100. Variable using this is ContaminationEvaporationRangeRadius.
  • Contamination Evaporation Temperature Divisor- Variable controlling the size of the multiplier used in evaporation calculations. The equation for the temperature multiplier is 1 + ((temperature-ContaminationEvaporationStandardTemperature)/ContaminationEvaporationTemperatureDivisor). Variable using this is ContaminationEvaporationTemperatureDivisor.
  • Contamination Evaporation Systematic Multiplier- Multiplier modifying the systemic exposure applied to players and npcs gassed by evaporating contamination through the skin. Systemic exposure adds exposure to the same dose that is added to by inhaling gas. Variables using this are MustardContaminationEvaporationSystematicMultiplier and VXContaminationEvaporationSystematicMultiplier.
  • Contamination Evaporation Skin Multiplier- Multiplier modifying the skin exposure applied to players and npcs gassed by evaporating mustard contamination through the skin. Designed to be 50 times larger than systemic exposure by default. The variable using this is MustardContaminationEvaporationSkinMultiplier.
  • Contamination Absorption Percent- Variables controlling what percent of gas contamination should be absorbed through the skin every second. Variables using this are MustardContaminationAbsorptionPercent and VXContaminationAbsorptionPercent.
  • Contamination Absorption Effect Multiplier- Multiplier modifying how much exposure is applied to characters by contamination absorption. Use to increase rate of skin absorption without increasing lethality. The variables using this are MustardContaminationAbsorptionEffectMultiplier and VXContaminationAbsorptionEffectMultiplier.
  • Contamination Absorption Skin Systematic Ratio- Multiplier determining the ratio between mustard gas skin burn doseage and mustard gas systematic doseage on contamination absorbed through the skin. The variable using this is MustardContaminationAbsorptionSkinSystematicRatio.
  • Contamination Spread Percent- Variable determining what percent of contamination will be spread from one object to another upon touching. Variable using this is ContaminationSpreadPercent.
Gas-Specific Variables:
  • Phosgene
    • PhosgeneImmediateLatentRatio- Multiplier determining the ratio between phosgene exposure that becomes chlorine/phosgene immediate and regular phosgene.
    • PhosgeneImmediateMultiplier- Multiplier increasing exposure that becomes chlorine/phosgene immediate.
    • PhosgeneCooperatesWithChlorine- Boolean determining if phosgene exposure should become chlorine or phosgene immediate, which is functionally identical to chlorine but separately controlled.
  • Mustard
    • MustardRegularSkinExposure- Multiplier affecting how much exposure normal sized mustard gas particles apply as skin burns, also effects optimized particles.
    • MustardDiffuseSkinExposure- Multiplier affecting how much exposure diffuse mustard gas particles apply as skin burns.
    • MustardRegularSystematicExposure- Multiplier affecting how much exposure normal sized mustard gas particles apply as systemic exposure through the skin, also effects optimized particles.
    • MustardDiffuseSystematicExposure- Multiplier affecting how much exposure diffuse mustard gas particles apply as systemic exposure through the skin.
    • MustardRegularContamination- Multiplier affecting how much contamination normal sized mustard gas particles apply to objects, also effects optimized particles.
    • MustardDiffuseContamination- Multiplier affecting how much contamination diffuse mustard gas particles apply to objects.
  • Sarin
    • SarinRegularSystematicExposure- Multiplier affecting how much exposure normal sized sarin gas particles apply as systemic exposure through the skin, also effects optimized particles.
    • SarinDiffuseSystematicExposure- Multiplier affecting how much exposure diffuse sarin gas particles apply as systemic exposure through the skin.
  • VX
    • VXRegularSystematicExposure- Multiplier affecting how much exposure normal sized vx gas particles apply as systemic exposure through the skin, also effects optimized particles.
    • VXDiffuseSystematicExposure- Multiplier affecting how much exposure diffuse vx gas particles apply as systemic exposure through the skin.
    • VXRegularContamination- Multiplier affecting how much contamination normal sized vx gas particles apply to objects, also effects optimized particles.
    • VXDiffuseContamination- Multiplier affecting how much contamination diffuse vx gas particles apply to objects.
Other Variables:
  • NormalSpeed- Table containing sprint, run, and walk values that GChem recognizes as a players default speed.
  • ModestSpeed- Table containing sprint, run, and walk values that GChem recognizes as a players incapacitated speed.
  • SlowSpeed- Table containing sprint, run, and walk values that GChem recognizes as a players dying speed.
  • BlacklistedEnts- A table filled with entities that should not be contaminated by persistent gases.
  • BlacklistedNPCs- A table filled with npc classes that should not be affected by gas.
  • DelayExposureTimerLength- Variable specifying how many seconds should gases on a delayed timer wait to take effect. Used by Mustard Gas and Hydrogen Cyanide, simulates a chemical asyntomatic period ranging anywhere from a minute to 24 hours
  • LatentExposureTimerLength- Variable specifying how many seconds should gases on a super-delayed timer wait to take effect. Used by Phosgene and Mustard Gas Burns, simulates an asyntomatic period of more than 1 day, designed to be useless in a short lived fight
  • HeatMultiplierTriggerTemp- Variable controlling the temperature (fahrenheit) that, if exceeded while weather effects are enabled, skin-absorbed gas will become extra effective.
  • HeatMultiplier- Variable controlling how extra effective skin-absorbed gas will be if weather effects are enabled, simulates extra gas being absorbed through the skin as the pores of the body open up.
  • FilterDegredationMultiplier- Multiplier that modifies the rate gas will degrade JMOD gas mask and respirator filters
  • GasMaskDrawOverlay- Boolean that, if enabled, draws a gas mask overlay on the screens of all players wearing GChem Gas Masks.
  • Smell- Boolean that, if set to false, disables the smelling system which warns of gases with a detectable odor.
  • Hints- Boolean that, if set to false, disables the hint system.
  • Version- Setting this to any version number other than the previous version creates an old config with the previous settings, incremented by 1 every time I change config variables.
Last edited by Freaking Fission; Sep 11, 2020 @ 4:27pm
< >
Showing 1-15 of 36 comments
lizziekitty♥ Aug 3, 2020 @ 8:34pm 
What's the format for blacklisting NPCs?

I tried this:

"BlacklistedNPCs": [
npc_metropolice
],
Freaking Fission  [developer] Aug 3, 2020 @ 8:41pm 
"BlacklistedNPCs": {
"npc_citizen": true
}
remember to use curly brackets {}, not regular brackets [], not sure why it uses regular brackets there.
Last edited by Freaking Fission; Aug 3, 2020 @ 8:44pm
lizziekitty♥ Aug 3, 2020 @ 9:14pm 
Originally posted by Freaking Fission:
"BlacklistedNPCs": {
"npc_citizen": true
}
remember to use curly brackets {}, not regular brackets [], not sure why it uses regular brackets there.

Heres my table, I don't understand what's wrong with it. Any tips?

"BlacklistedNPCs": {
"npc_metropolice": true,
"npc_combine_s": true,
"npc_clawscanner": true
"npc_combine_camera": true,
"npc_combine_cannon": true,
"npc_combine_dropship": true,
"npc_combine_gunship": true,
"npc_cscanner": true,
"npc_dog": true,
"npc_hunter": true,
"npc_helicopter": true,
"npc_manhack": true,
"npc_rollermine": true,
"npc_sniper": true,
"npc_turret_ceiling": true,
"npc_turret_ground": true,
"npc_turret_floor": true
},
Freaking Fission  [developer] Aug 3, 2020 @ 9:21pm 
One, things like turrets, manhacks, other robotic enemies aren't even targeted by default, so those are actually unnecesarry. Two, it looks like you missed a comma behind clawscanner. Otherwise, it looks fine
lizziekitty♥ Aug 3, 2020 @ 9:33pm 
Wow! It's very rare to see a workshop dev who answers questions and helps people like this. The missing comma fixed it for me. Thank you!!

PS: I was forced to set the file to read-only because on every launch, the file is reset to default. Might have to take a look at that lol.
Freaking Fission  [developer] Aug 4, 2020 @ 2:51pm 
atlev, something I just realised, the reason the file is reset is because, every time I update the mod, I change the version number, which means the config from the previous version is wrote to the gchem_config_old.txt file. AKA, your settings are still there, just in an old file.
sansan Aug 7, 2020 @ 9:02am 
How do i change the gas particle type to Precise in the config?
Freaking Fission  [developer] Aug 7, 2020 @ 9:38am 
2 things, there is a convar gc_optimizedgas, which, when set to 0, makes all gas optimized, also, in the config, there are variables going by the format [gasname]Optimized (gasname is a stand in), that, if set to false, will make that type of gas precise when everything else is optimized.
xan Aug 7, 2020 @ 10:31am 
how do i change the amount of blur?
Freaking Fission  [developer] Aug 7, 2020 @ 10:34am 
Currently, you can't change the amount of blur, just the dose that blurring starts at. I'm not sure if I will ever add a feature for that either, because lessening the blur does have a considerable impact on gameplay.
Freaking Fission  [developer] Aug 7, 2020 @ 10:40am 
On second thought, I might add a blur strength variable in the config (added)
Last edited by Freaking Fission; Aug 20, 2020 @ 7:49pm
What does the blacklist npc format do? and why is "blacklistNPC" not a valid command in the console?
Freaking Fission  [developer] Sep 8, 2020 @ 8:36pm 
npc blacklist is used to make an npc class invulnerable to gas, so if you want say, combine soldiers, to be immune for some mission thing you are doing, then you are covered. It is not a valid command because it is part of the gchem config, not a console command
Zemen Sep 13, 2020 @ 8:57pm 
"BlacklistedNPCs": {
"npc_combine_commander": true
},


I really don't know what I did wrong ._.
And yes, I already read comment 'bout npc's above
Freaking Fission  [developer] Sep 13, 2020 @ 9:12pm 
i don't know right now tbh
< >
Showing 1-15 of 36 comments
Per page: 1530 50