DIFF

class GameConstantsSource

Part of Emote ids

Constants 240

const int STAMINA_DRAIN_STANDING_SPRINT_PER_SEC = 4

in units (how much sprint depletes stamina)

const int STAMINA_DRAIN_CROUCHED_SPRINT_PER_SEC = 1

in units (how much sprint in crouch depletes stamina)

const int STAMINA_DRAIN_PRONE_SPRINT_PER_SEC = 3

in units (how much sprint in prone depletes stamina)

const int STAMINA_DRAIN_SWIM_FAST_PER_SEC = 5

in units (how much fast swimming depletes stamina)

const int STAMINA_DRAIN_LADDER_FAST_PER_SEC = 8

in units (how much fast ladder climb depletes stamina)

const float STAMINA_DRAIN_HOLD_BREATH_START = 0.2

in units (how much holding breath depletes stamina at the start)

const float STAMINA_DRAIN_HOLD_BREATH_END = 1.0

in units (how much holding breath depletes stamina at the end)

const float STAMINA_DRAIN_JUMP = 25

in units (how much jumping depletes stamina)

const float STAMINA_DRAIN_VAULT = 20

in units (how much jumping depletes stamina)

const float STAMINA_DRAIN_CLIMB = 42

in units (how much jumping depletes stamina)

const float STAMINA_DRAIN_MELEE_LIGHT = 5

in units (how much light melee punch depletes stamina)

const float STAMINA_DRAIN_MELEE_HEAVY = 25

in units (how much heavy melee punch depletes stamina)

const float STAMINA_DRAIN_MELEE_EVADE = 8

in units (how much evade depletes stamina)

const float STAMINA_DRAIN_ROLL = 5

in units (how much roll depletes stamina)

const float STAMINA_DRAIN_HOLD_BREATH_DURATION = 5.0

in seconds, time it takes to increase stamina drain from STAMINA_DRAIN_HOLD_BREATH_START to STAMINA_DRAIN_HOLD_BREATH_END

const float STAMINA_DRAIN_HOLD_BREATH_EXPONENT = 3

holding breath exponent

const int STAMINA_GAIN_JOG_PER_SEC = 2

in units (how much of stamina units is gained while jogging)

const int STAMINA_GAIN_WALK_PER_SEC = 4

in units (how much of stamina units is gained while walking)

const int STAMINA_GAIN_IDLE_PER_SEC = 5

in units (how much of stamina units is gained while iddling)

const int STAMINA_GAIN_SWIM_PER_SEC = 1

in units (how much of stamina units is gained while slowly swim)

const int STAMINA_GAIN_LADDER_PER_SEC = 1

in units (how much of stamina units is gained while slowly swim)

const int STAMINA_GAIN_ROLL_PER_SEC = 0

in units (how much of stamina units is gained while rolling)

const float STAMINA_GAIN_BONUS_CAP = 3.0

in units (tells how much extra units can be added at best to stamina regain)

const float STAMINA_KG_TO_STAMINAPERCENT_PENALTY = 1.75

in units (by how many units is max stamina bar reduced for each 1 kg of load weight)

const float STAMINA_MIN_CAP = 5

in units (overload won't reduce max stamina bar under this value)

const float STAMINA_HOLD_BREATH_THRESHOLD_ACTIVATE = 10

in units

const float STAMINA_HOLD_BREATH_THRESHOLD_DRAIN = 0

in units

const float STAMINA_JUMP_THRESHOLD = 25

in units

const float STAMINA_VAULT_THRESHOLD = 20

in units

const float STAMINA_CLIMB_THRESHOLD = 42

in units

const float STAMINA_ROLL_THRESHOLD = 5

in units

const float STAMINA_MELEE_HEAVY_THRESHOLD = STAMINA_DRAIN_MELEE_HEAVY

in units (how many units we need to make a heavy hit in melee)

const float STAMINA_MELEE_EVADE_THRESHOLD = 8

in units

const float STAMINA_REGEN_COOLDOWN_DEPLETION = 0.45

in secs (how much time we will spend in cooldown before the stamina will starts with regeneration)

const float STAMINA_REGEN_COOLDOWN_EXHAUSTION = 0.5
const float STAMINA_WEIGHT_LIMIT_THRESHOLD = 6000

in grams (weight where the player is not penalized by stamina)

const float STAMINA_KG_TO_GRAMS = 1000

for kg to g conversion

const float STAMINA_SYNC_RATE = 0.5

in secs

const float ENVIRO_TICKS_TO_WETNESS_CALCULATION = 2

each X (ticks) is processed wetness on items on player

const float ENVIRO_TICK_ROOF_RC_CHECK = 10

in secs. how often we should check if player is under the roof (raycast)

const float ENVIRO_WET_INCREMENT = 0.01

amount of wetness added to items wet value each tick if is raining

const float ENVIRO_DRY_INCREMENT = 0.00005

amount of wetness subtracted from items wet value each tick if is not raining due to player heat

const float ENVIRO_SUN_INCREMENT = 0.002

(not used) amount of wetness subtracted from items wet value each tick if is not raining due to sun

const float ENVIRO_FIRE_INCREMENT = 23.5

how much is the generic temp effect increased when player is next to a fireplace

const float ENVIRO_CLOUD_DRY_EFFECT = 0.7

how many % of ENVIRO_SUN_INCREMENT is reduced by cloudy sky

const float ENVIRO_FOG_DRY_EFFECT = 0.9

how many % of ENVIRO_SUN_INCREMENT is reduced by fog

const float ENVIRO_FOG_TEMP_EFFECT = -2

how strong the effect of fog is

const float ENVIRO_WET_PENALTY = 0.5

at which state of item wetness (0-1) will heat isolation start having negative effect on heat comfort of item

const float ENVIRO_WET_PASSTHROUGH_COEF = 0.1

how many times slower is wetting/drying items in backpacks

const float ENVIRO_DEFAULT_ENTITY_HEAT = 2.5

heat entity generates if not moving

const float ENVIRO_TEMPERATURE_INSIDE_VEHICLE_COEF = 0.051

increases temp inside vehicles

const float ENVIRO_TEMPERATURE_UNDERROOF_COEF = 0.75

underroof wind multiplier

const float ENVIRO_TEMPERATURE_WIND_COEF = 2.5

windchill effect on base temperature

const float ENVIRO_WIND_EFFECT = 0.25

amount of % wind affect drying/wetting

const float ENVIRO_HIGH_NOON = 12

when is sun highest on sky

const float ENVIRO_HEATCOMFORT_MAX_STEP_SIZE = 0.25

max step of dynamic heatcomfort change (applies if diff between target and dynamic HC is bigger than this value)

static const float ENVIRO_HEATCOMFORT_HEADGEAR_WEIGHT = 0.05

how much this body part affects final heatcomfort

static const float ENVIRO_HEATCOMFORT_MASK_WEIGHT = 0.05
static const float ENVIRO_HEATCOMFORT_VEST_WEIGHT = 0.04
static const float ENVIRO_HEATCOMFORT_BODY_WEIGHT = 0.12
static const float ENVIRO_HEATCOMFORT_BACK_WEIGHT = 0.03
static const float ENVIRO_HEATCOMFORT_GLOVES_WEIGHT = 0.04
static const float ENVIRO_HEATCOMFORT_LEGS_WEIGHT = 0.12
static const float ENVIRO_HEATCOMFORT_FEET_WEIGHT = 0.06
static const float ENVIRO_HEATCOMFORT_HIPS_WEIGHT = 0.00
static const float ENVIRO_HEATCOMFORT_WEIGHT_SUMMARY = ENVIRO_HEATCOMFORT_HEADGEAR_WEIGHT + ENVIRO_HEATCOMFORT_MASK_WEIGHT +ENVIRO_HEATCOMFORT_VEST_WEIGHT + ENVIRO_HEATCOMFORT_BODY_WEIGHT + ENVIRO_HEATCOMFORT_BACK_WEIGHT + ENVIRO_HEATCOMFORT_GLOVES_WEIGHT + ENVIRO_HEATCOMFORT_LEGS_WEIGHT + ENVIRO_HEATCOMFORT_FEET_WEIGHT + ENVIRO_HEATCOMFORT_HIPS_WEIGHT

don't forget to update the weights from above if you are adding/removing them

const float ENVIRO_STOMACH_WEIGHT = 0.2

how much stomach content affects final heatcomfort

const float ENVIRO_LOW_TEMP_LIMIT = -20

lowest temperature(deg Celsius) where the player gets lowest possible heat comfort (-1)

const float ENVIRO_HIGH_TEMP_LIMIT = 70

highest temperature(deg Celsius) where the player gets highest possible heat comfort (1)

const float ENVIRO_PLAYER_COMFORT_TEMP = 24

comfort temperature of environment for the player

const float ENVIRO_TEMP_EFFECT_ON_PLAYER = 40

impact of enviro temperature on player (lower value = higher, cannot be zero or below!)

const float ENVIRO_PLAYER_HEATBUFFER_WATEREFFECT = 20

impact of water contact on player's heatbuffer

const float ENVIRO_PLAYER_HEATBUFFER_DECREASE = 0.01

How much heat buffer decreases per one enviro tick

const float ENVIRO_PLAYER_HEATBUFFER_INCREASE = 0.18

How much heat buffer increases per one enviro tick

const float ENVIRO_PLAYER_HEATBUFFER_TEMP_AFFECT = 0.4

How much heat buffer change rates are affected by temperature

const float ENVIRO_PLAYER_HEATBUFFER_CAPACITY_MIN = 0.35

Minimal heatbuffer capacity of naked character

const float ENVIRO_ISOLATION_WETFACTOR_DRY = 1.0

impact of item wetness to the heat isolation

const float ENVIRO_ISOLATION_WETFACTOR_DAMP = 0.9
const float ENVIRO_ISOLATION_WETFACTOR_WET = 0.5
const float ENVIRO_ISOLATION_WETFACTOR_SOAKED = 0.1
const float ENVIRO_ISOLATION_WETFACTOR_DRENCHED = -0.15
const float ENVIRO_ISOLATION_HEALTHFACTOR_PRISTINE = 1.0

impact of item health (state) to the heat isolation

const float ENVIRO_ISOLATION_HEALTHFACTOR_WORN = 0.9
const float ENVIRO_ISOLATION_HEALTHFACTOR_DAMAGED = 0.8
const float ENVIRO_ISOLATION_HEALTHFACTOR_B_DAMAGED = 0.5
const float ENVIRO_ISOLATION_HEALTHFACTOR_RUINED = 0.0
const float ENVIRO_TEMP_SOURCES_LOOKUP_RADIUS = 20.0
const float ENVIRO_NAKED_BODY_PENALTY_RAIN_MIN_VALUE = 0.2

how intensive a rain should be to enable rain penalty on naked body

const float ENVIRO_NAKED_BODY_PENALTY_SNOWFALL_MIN_VALUE = 0.4

how intensive a snowfall should be to enable snowfall penalty on naked body

const float LIQUID_RAIN_AMOUNT_COEF_BASE = 10.0
const float COLD_AREA_TEMPERATURE_THRESHOLD = 5

(deg Celsius) temperature limit up to which player is allowed to dig garden plots

const float COLD_AREA_DIG_WORMS_MODIF = 1.5

time modifier, how much longer it takes to dig up worms while in a cold area

const float ENVIRO_WIND_EFFECT_SLOPE = -35.0

Affects the slope of calculation

const float ENVIRO_WIND_CHILL_LIMIT = 30.0

Above this value, the wind effect increases the modified temperature

const float ENVIRO_SNOW_WET_COEF = 0.1
const float FIRE_ATTACHMENT_DAMAGE_PER_SECOND = 0.07

various damage per second constants

const float ITEM_TEMPERATURE_NEUTRAL_ZONE_LOWER_LIMIT = 15.0
const float ITEM_TEMPERATURE_NEUTRAL_ZONE_UPPER_LIMIT = 35.0
const float ITEM_TEMPERATURE_QUANTITY_WEIGHT_MULTIPLIER = 0.04
const float VEHICLE_FLIP_ANGLE_TOLERANCE = 45

Angle of the vehicle from the normal of the surface under the vehicle

const bool VEHICLE_FLIP_WHEELS_LIMITED = true

If the vehicle is not facing directly up, then don't use the "wheels early exit optimization"

const int CARS_FLUIDS_TICK = 1
const int CARS_LEAK_TICK_MIN = 0.02
const int CARS_LEAK_TICK_MAX = 0.05
const int CARS_LEAK_THRESHOLD = 0.5
const float CARS_CONTACT_DMG_THRESHOLD = 750.0
const float CARS_CONTACT_DMG_MIN = 150.0
const float CARS_CONTACT_DMG_KILLCREW = 1200.0
const float DAMAGE_PRISTINE_VALUE = 1.0
const float DAMAGE_WORN_VALUE = 0.7
const int STATE_HOT_LVL_FOUR = 600
const int STATE_HOT_LVL_THREE = 250
const int STATE_HOT_LVL_TWO = 70
const int STATE_HOT_LVL_ONE = 35
const int STATE_NEUTRAL_TEMP = 15
const int STATE_COLD_LVL_ONE = 3
const int STATE_COLD_LVL_TWO = -10
const int STATE_COLD_LVL_THREE = -50
const int STATE_COLD_LVL_FOUR = -100
const float WEIGHT_DRENCHED = 2.0
const float WEIGHT_SOAKING_WET = 1.66
const float WEIGHT_WET = 1.33
const float WEIGHT_DAMP = 1.0
const float WEIGHT_DRY = 1.0
const float WETNESS_RATE_WETTING_INSIDE = 0.0020
const float WETNESS_RATE_WETTING_LIQUID = 0.015
const float WETNESS_RATE_DRYING_INSIDE = -0.0016
const float WETNESS_RATE_DRYING_GROUND = -0.0008
static const float TEMPERATURE_RATE_MAX_ABS = TEMPERATURE_RATE_AVERAGE_ABS * 6

°C/s

static const float TEMPERATURE_INTERPOLATION_THRESHOLD_MIN_ABS = 1.0

difference in current - target temperatures

static const float TEMPERATURE_INTERPOLATION_THRESHOLD_MAX_ABS = 300.0

difference in current - target temperatures

static const float TEMPERATURE_FREEZETHAW_LEGACY_COEF = 0.2

artificially lowers the freeze/thaw progression on reverse-calculated time values

static const float TEMPERATURE_FREEZETHAW_ACCELERATION_COEF = 20.0

accelerates 'lowering' of the FT progress in the oposite direction

static const float TEMPERATURE_TIME_OVERHEAT_MIN = 180

minimal time in seconds to overheat any overheatable entity

static const float TEMPERATURE_TIME_FREEZE_MIN = 120

minimal time in seconds to freeze entity

static const float TEMPERATURE_TIME_THAW_MIN = 120

minimal time in seconds to thaw entity

static const float TEMPERATURE_FREEZE_TIME_COEF_DRIED = 0.25
static const float TEMPERATURE_FREEZE_TIME_COEF_BURNED = 0.25
static const float TEMPERATURE_THAW_TIME_COEF_BURNED = 0.25
static const float TEMPERATURE_THAW_TIME_COEF_DRIED = 0.25
static const float TEMPERATURE_SENSITIVITY_THRESHOLD = 0.1

changes lower than this will usually not be processed (absolute)

const float TEMP_COEF_WORLD = 1

entities on the ground

const float TEMP_COEF_INVENTORY = 1
const float TEMP_COEF_FIREPLACE_COOLING = 2.0
const float TEMP_COEF_FIREPLACE_HEATING = 2.0
const float TEMP_COEF_GAS_STOVE = 1.0
const float TEMP_COEF_UTS = 6.0

universal temperature sources

const float TEMP_COEF_COOKING_DEFAULT = 2.0
const float TEMP_COEF_COOLING_GLOBAL = 1.0

one universal coef for item cooling

const float TEMP_COEF_SWIMMING = 5.0

speed of change for items in player's inventory during swimming

const float HEATISO_THRESHOLD_BAD = 0.2
const float HEATISO_THRESHOLD_LOW = 0.4
const float HEATISO_THRESHOLD_MEDIUM = 0.6
const float HEATISO_THRESHOLD_HIGH = 0.8
const float TEMP_COEF_COOKING_CATCHUP = 3.0

DEPRECEATED, heating of child items that are below minimal cooking temperature (catching up)

const int BAREL_LIME_PER_PELT = 100

grams per pelt

const int BAREL_BLEACH_PER_CLOTH = 50

ml per item

const float BAREL_LIME_PER_PLANT = 50

grams per gram

const float DZPLAYER_CAMERA_FOV_EYEZOOM = 0.3926

FOV (vertical angle/2) in radians. Take care to modify also in "basicDefines.hpp"

const float DZPLAYER_CAMERA_FOV_EYEZOOM_SHALLOW = 0.610865

70deg

const float DZPLAYER_CAMERA_FOV_IRONSIGHTS = 0.5236

60deg

const float CLEAN_UNRESTRAIN_DAMAGE = 10
const int CAMERA_SHAKE_GRENADE_DISTANCE = 40

Camera shake

const int CAMERA_SHAKE_ARTILLERY_DISTANCE = 200
Referenced by DayZGame.OnRPC()
const int CAMERA_SHAKE_ARTILLERY_DISTANCE2 = 40000

Square distance used for distance check

Referenced by DayZGame.OnRPC()
const float MINING_WOOD_FAST = 2.0

Wood mining GameConstants, scaled by output. Should not be lower than ~1.5s!

const float MINING_WOOD_MEDIUM = 2.0
const float MINING_WOOD_SLOW = 3.0
const float PROJECTILE_CONVERSION_ANIMALS = 0.1

Non-lethal projectile damage QuantityConversions

const float PROJECTILE_CONVERSION_INFECTED = 0.44
const float PROJECTILE_CONVERSION_PLAYERS = 0.1
const float NL_DAMAGE_FIREARM_CONVERSION_ANIMALS = PROJECTILE_CONVERSION_ANIMALS
const float NL_DAMAGE_FIREARM_CONVERSION_INFECTED = PROJECTILE_CONVERSION_INFECTED
const float NL_DAMAGE_FIREARM_CONVERSION_PLAYERS = PROJECTILE_CONVERSION_PLAYERS
const float NL_DAMAGE_CLOSECOMBAT_CONVERSION_ANIMALS = 0.20
const float NL_DAMAGE_CLOSECOMBAT_CONVERSION_INFECTED = 0.20
const float NL_DAMAGE_CLOSECOMBAT_CONVERSION_PLAYERS = 0
const float ROOF_CHECK_RAYCAST_DIST = 20.0
const float ITEM_TEMPERATURE_TO_EXPLODE_MIN = 100

misc

Referenced by ItemBase.EEKilled()
const float LOADING_SCREEN_HINT_INTERVAL = 14

the time that elapses before a hint is switched during loading in screens that support hint switching

const float LOADING_SCREEN_HINT_INTERVAL_MIN = 8

the minimum time that needs to remain on the count-down counter for a hint to still be changed based on the 'LOADING_SCREEN_HINT_INTERVAL'(prevents last moment hint update where the player has no time to read it)

const int REFRESHER_MAX_DURATION_DEFAULT = 3600 * 24 * 40

max duration of refresher in seconds - 40 days (+ 5 days final refresh )

const int REFRESHER_FREQUENCY_DEFAULT = 3600 * 24 * 5

frequency of lifetime refreshes/refresher time decreases - 5 days

const float SALMONELLA_RETENTION_PREDATOR = 0.6

60% chance cooked predator meat will retain salmonella

const float DECAY_FOOD_RAW_MEAT = 21600
const float DECAY_FOOD_RAW_CORPSE = 32400
const float DECAY_FOOD_RAW_FRVG = 43200
const float DECAY_FOOD_BOILED_MEAT = 259200
const float DECAY_FOOD_BOILED_FRVG = 172800
const float DECAY_FOOD_BAKED_MEAT = 345600
const float DECAY_FOOD_BAKED_FRVG = 259200
const float DECAY_FOOD_DRIED_MEAT = 691200
const float DECAY_FOOD_CAN_OPEN = 172800
const int DECAY_FOOD_FRVG_DRIED_CHANCE = 43
const int DECAY_TIMER_RANDOM_PERCENTAGE = 25
const float DECAY_RATE_ON_PLAYER = 2.5
const int RESPAWN_MODE_RANDOM = 1
const int INVENTORY_ENTITY_DROP_OVERLAP_DEPTH = 2

How deep should it go looking for a free spot to drop an entity

const int INVENTORY_MAX_REACHABLE_DEPTH_ATT = 2

Inventory visibility depth, also governs default direct access for most cases. Actual inventory depth CAN be higher than this, but direct access from player should not be possible in the context of player inventory.

NoteContainerWithCargoAndAttachments::AttachmentAddedEx creates 'Attachments' and 'CargoContainer' objects at depth 3 (nature of the architecture)
const float AI_ATTACKSPEED = 1.5
const float AI_MAX_BLOCKABLE_ANGLE = 60

The angle under which an infected must be relative to player to be blockable

const float AI_CONTAMINATION_DMG_PER_SEC = 3

The amount of damage AI agents take per contaminated area damage event

const float PVP_MAX_BLOCKABLE_ANGLE = 60

The angle under which a Player must be relative to player to be blockable

const float ENVIRO_HEATCOMFORT_HEADPARTS_WEIGHT = 0.3

DEPRECATED

const float ENVIRO_HEATCOMFORT_BODYPARTS_WEIGHT = 0.8

how much this body parts (clothing) affects final heatcomfort

const float ENVIRO_HEATCOMFORT_FEETPARTS_WEIGHT = 0.4

how much this feet parts (clothing) affects final heatcomfort

const float ENVIRO_HEATISOLATION_BACK_WEIGHT = 0.3

weight of back for the sum of heat isolation

const float ENVIRO_HEATISOLATION_VEST_WEIGHT = 0.5

weight of vest for the sum of heat isolation

const float ENVIRO_ITEM_HEAT_TRANSFER_COEF = 0.01

converts temperature of items to entities heatcomfort gain

const float ENVIRO_TEMPERATURE_HEIGHT_REDUCTION = 0.02

amount of ?C reduced for each 100 meteres of height above water level

const float ENVIRO_CLOUDS_TEMP_EFFECT = 0.35

how many % of environment temperature can be lowered by clouds

const float ENVIRO_TEMPERATURE_INSIDE_COEF = 0.085

increases temp in interiors

const float ENVIRO_WATER_TEMPERATURE_COEF = 1.5

how many time is water colder than air

const float ENVIRO_PLAYER_HEATBUFFER_TICK = 0.011

Heat buffer static timer tick (set for 2s enviro tick, 180s to 1.0)

const float TEMPERATURE_RATE_COOLING_INSIDE = -0.17
const float TEMPERATURE_RATE_COOLING_GROUND = -0.34
const float TEMPERATURE_RATE_COOLING_PLAYER = -0.35

Members 3

static ref array<ref TFloatArray> ENVIRO_PLAYER_HEATBUFFER_STAGE_RATELIMIT = { {1.0, 1.0}, // not used now {1.82, 4.0}, {0.8, 1.6}, {1.0, 1.0}, // not used now }

heatbuffer per stage decrease rate limiting - each entry represents the {min, max} value per HB stage

static float RAIN_NOISE_REDUCTION_WEIGHT = 0.5
static float SNOWFALL_NOISE_REDUCTION_WEIGHT = 0.25