Skip to content

difficulty.ron

Difficulty presets a new game offers. Read by the game’s rules: a change here changes how the game plays, and a world remembers the content it was made with.

File: assets/data/difficulty.ron

Difficulty presets (sim::difficulty): what a new game offers under “World”. Easiest first. Every number is a multiplier on the game’s own (1 = as shipped) unless it says otherwise; anything left out is 1 (or the game’s own).

id, name, about
zombies how many (the population)
fast_zombies Some(share 0..1) of them that are fast; None: population.ron's
zombie_senses how sharp their eyes and ears are
zombie_toughness their hit points
zombie_accuracy how often their strikes land
respawn Some(true/false): do far regions fill up again; None: population.ron's
loot, rare_loot how much containers hold; how often the rare things turn up
xp how fast skills grow
needs how fast hunger, thirst and tiredness come
infection Off | Survivable | Deadly
day_minutes Some(real minutes a game day lasts); None: the game's own (60)
tuning any other tuning number, set outright, e.g.
tuning: (zombie: Some((memory_secs: 30)), combat: Some((player_hp: 150)))

The new-game screen lets the player change zombies, loot, xp, respawn, infection, the day’s length and the hour they wake on top of a preset. Names and numbers are ours.

The file is one DifficultyData.

difficulty.ron, checked.

Field Type What it is
presets Vec<DifficultyDef>

One preset.

Field Type What it is
id String Lower-case letters, digits and _.
name String
about String A line for the new-game screen.
zombies f32 How many zombies (a multiplier on the population).
fast_zombies Option<f32> The share of them that are fast (None: the population file’s).
zombie_senses f32 How sharp their eyes and ears are (a multiplier on their alertness).
zombie_toughness f32 How much it takes to put one down (a multiplier on their hit points).
zombie_accuracy f32 How often their strikes land.
respawn Option<bool> Do far regions fill up again (None: as the population file says)?
loot f32 How much there is to find, and how often the rare things.
rare_loot f32
xp f32 How fast skills grow.
needs f32 How fast hunger, thirst and tiredness come.
infection Infection
day_minutes Option<f32> Real minutes a game day lasts (None: the game’s own).
tuning Tunings Any other tuning number, set outright (before the multipliers above).

What becomes of someone a zombie’s wound infects.

Value What it means
Off Nobody catches it.
Survivable It burns out after the fever.
Deadly It ends in death, and the body rises.

Tuning numbers a preset sets outright. Each is the whole tuning, with what the preset leaves out at its default: zombie: Some((memory_secs: 30)).

Field Type What it is
zombie Option<crate::ai::ZombieTuning>
combat Option<crate::combat::CombatTuning>
health Option<crate::health::HealthTuning>
needs Option<crate::needs::NeedsTuning>
carry Option<crate::inventory::CarryTuning>
movement Option<crate::players::MoveTuning> Speeds and endurance (crate::players::MoveTuning).

Zombie senses and behaviour numbers. Part of WorldConfig; serde with defaults for every field, so a data file or sandbox options can override just a few. Distances in metres, times in seconds.

Field Type What it is
sight_day f32 Range dead ahead at a walking, moving player in full daylight / at night.
sight_night f32 Range dead ahead at a walking, moving player in full daylight / at night.
sight_cone_deg f32 Half-angle of the full-range cone, and of the wider peripheral cone (degrees).
peripheral_deg f32 Sight.
peripheral_mult f32 Range multiplier in the peripheral band.
rear_range f32 Range behind the zombie (outside the peripheral cone), before the stance multiplier.
sneak_sight_mult f32 Range multipliers for a sneaking / running player, and for one standing still.
run_sight_mult f32 Range multipliers for a sneaking / running player, and for one standing still.
still_sight_mult f32 Range multipliers for a sneaking / running player, and for one standing still.
sure_sight_frac f32 Within this fraction of the range a check always notices; beyond it the chance per check falls from notice_chance to 0 at full range. A wandering zombie that notices someone beyond it only glimpses them: it turns and shuffles over to look (investigates), and chases only if it notices them again (or they come within this fraction).
notice_chance f32 Within this fraction of the range a check always notices; beyond it the chance per check falls from notice_chance to 0 at full range. A wandering zombie that notices someone beyond it only glimpses them: it turns and shuffles over to look (investigates), and chases only if it notices them again (or they come within this fraction).
sight_interval_ticks u8 Each zombie looks once every this many ticks.
chase_sight_mult f32 A chaser keeps its own player in view out to this multiple of the range, without luck.
window_sight_mult f32 Range multiplier when it looks through a window (shut, open or broken): a survivor indoors is hard to make out from the street.
alertness (f32, f32) Some zombies are sharper than others: each one’s sight range, notice chance and hearing are multiplied by its alertness, from a hash of its id, between these two. Skewed by alertness_skew (1 even, higher: most near the low end, a few sharp ones), so the defaults average about 1.
alertness_skew f32 Some zombies are sharper than others: each one’s sight range, notice chance and hearing are multiplied by its alertness, from a hash of its id, between these two. Skewed by alertness_skew (1 even, higher: most near the low end, a few sharp ones), so the defaults average about 1.
sneak_noise f32 Footstep noise radius per tick while moving, by stance.
walk_noise f32 Hearing.
run_noise f32 Hearing.
door_noise f32 A door opening or closing.
groan_noise f32 A hunting zombie’s groan, and the seconds between groans.
groan_min_secs f32 Hearing.
groan_max_secs f32 Hearing.
alert_groan_secs f32 About how soon a zombie groans after first noticing someone.
wall_muffle f32 Fraction of a sound’s radius that carries through walls (no line of sight).
herd_chance f32 A wanderer choosing where to shuffle next heads back toward the zombies round it (within herd_radius) with this chance, when their middle is more than herd_keep away, so groups stay groups instead of spreading over the map.
herd_radius f32 A wanderer choosing where to shuffle next heads back toward the zombies round it (within herd_radius) with this chance, when their middle is more than herd_keep away, so groups stay groups instead of spreading over the map.
herd_keep f32 A wanderer choosing where to shuffle next heads back toward the zombies round it (within herd_radius) with this chance, when their middle is more than herd_keep away, so groups stay groups instead of spreading over the map.
memory_secs f32 How long a chaser keeps after a player it can’t see.
investigate_secs f32 How long a zombie looks around a sound (or a lost player’s last spot), on top of the time it takes to walk to a sound (capped at max_travel_secs).
max_travel_secs f32 How long a zombie looks around a sound (or a lost player’s last spot), on top of the time it takes to walk to a sound (capped at max_travel_secs).
investigate_speed_mult f32 Speed multiplier while investigating (of the zombie’s own top speed).
wander_speed f32 Idle shuffle speed.
search_radius f32 Milling about around a point it reached: how far it strays.
lunge_range f32 A chaser this close (centre to centre) with line of sight lunges.
lunge_secs f32 Lunge and attack.
lunge_speed_mult f32 Lunge speed: the zombie’s speed times this, but at least lunge_min_speed.
lunge_min_speed f32 Lunge speed: the zombie’s speed times this, but at least lunge_min_speed.
lunge_cooldown f32 Lunge and attack.
attack_reach f32 Strikes land within this distance (centre to centre).
attack_windup f32 Seconds from reaching a player to the first strike, and between strikes.
attack_cooldown f32 Lunge and attack.
attack_leave f32 It gives up attacking and chases again once the player is this much beyond reach.
door_hp f32 Hit points of a shut door and of an intact window.
window_hp f32 Doors and windows.
thump_damage f32 Damage per thump, and seconds between one zombie’s thumps (each jittered by ±20%, so a crowd doesn’t thump in step).
thump_cooldown f32 Doors and windows.
thump_reach f32 A zombie this close to a door or window (centre to edge) can batter it.
thump_noise f32 Noise radius of one thump, of glass breaking (battered or smashed by a player) and of a door giving way.
glass_break_noise f32 Doors and windows.
door_break_noise f32 Doors and windows.
window_noise f32 A player opening or closing a window (quieter than a door).
climb_speed f32 Top speed while climbing through an open or broken window.
thump_interest_secs f32 A thumper keeps at it this long after it last saw or heard a player (any player’s noise refreshes it, so someone moving about inside keeps the crowd battering), then gives up.
crowd_reach f32 Crowd pressure: a zombie this close to the door or window (centre to edge) behind one battering it pushes in too, and each of its thumps does crowd_thump_frac of a thump.
crowd_thump_frac f32 Crowd pressure: a zombie this close to the door or window (centre to edge) behind one battering it pushes in too, and each of its thumps does crowd_thump_frac of a thump.
give_up_secs f32 A chaser or investigator held back by walls (not by the crowd) that hasn’t moved stuck_move metres for give_up_secs gives up, as does one whose target has no way to it at all (not even through a door or window).
stuck_move f32 A chaser or investigator held back by walls (not by the crowd) that hasn’t moved stuck_move metres for give_up_secs gives up, as does one whose target has no way to it at all (not even through a door or window).
bored_secs f32 After giving up (stuck, or a thumper that lost interest) it mills about where it is, then wanders. For this long it ignores other zombies’ noise and noise that isn’t a player’s, and only notices a player close up (within sure_sight_frac of its sight range).
max_corpses u32 Corpses kept at most (the oldest go first), and how long one lies before it’s removed.
corpse_secs f32 Corpses.
knockback_slide f32 A staggered or downed zombie’s slide (from a shove or a blow) keeps this share of its speed each tick, so it slides farther than a walker’s (0.75) before it stops: a shove can push one back about 0.25 m x slide / (1 - slide) at most (1.5 m at 0.86).

Player health and every combat number that isn’t a weapon’s. Serde with defaults, like crate::ZombieTuning. Distances in metres, times in seconds, chances 0..1.

Field Type What it is
player_hp f32 A player’s full hit points.
zombie_hp (f32, f32) Zombie hit points are rolled per zombie in this range.
tired_below f32 Below this endurance actions weaken and slow down, down to tired_power (damage, knockback and knockdown chance) and tired_slow (time multiplier) at 0.
tired_power f32 Below this endurance actions weaken and slow down, down to tired_power (damage, knockback and knockdown chance) and tired_slow (time multiplier) at 0.
tired_slow f32 Below this endurance actions weaken and slow down, down to tired_power (damage, knockback and knockdown chance) and tired_slow (time multiplier) at 0.
action_buffer_secs f32 An action asked for this close to the end of the last one is queued instead of dropped.
multi_hit_falloff f32 Each target after the first in one swing takes this much more of the damage (0.8 → 80%, 64%…).
behind_dot f32 A zombie facing away from the attacker (its forward · attacker→zombie above this) is hit from behind.
behind_crit_bonus f32 From behind: added crit chance, and knockdown chance multiplier.
behind_knockdown_mult f32 Hitting.
staggered_knockdown_mult f32 Knockdown chance multiplier against a zombie already staggered.
stagger_secs (f32, f32) How long a stagger and a knockdown last. A knockdown’s last zombies::GET_UP_SECS (2 s) are getting up; before that the client plays a 1.3 s fall, so the shortest leaves ~0.7 s lying still.
down_secs (f32, f32) Hitting.
shove_range f32 Shove: hands, or the weapon held across the body, to push them off and make room to swing.
shove_arc_degrees f32 Shove: hands, or the weapon held across the body, to push them off and make room to swing.
shove_targets u32 Shove: hands, or the weapon held across the body, to push them off and make room to swing.
shove_knockback f32 How far a shove pushes a zombie back (metres, before Strength and how tired you are; at most about 1.5 m, ZombieTuning::knockback_slide).
shove_knockdown_chance f32 Knockdown chance of a shove (it always staggers), before the staggered / behind multipliers.
shove_weapon_range f32 A shove with a melee weapon in hand (pushed with its shaft): this much more reach, and knockback times shove_weapon_knockback.
shove_weapon_knockback f32 A shove with a melee weapon in hand (pushed with its shaft): this much more reach, and knockback times shove_weapon_knockback.
shove_repeat_secs f32 Shoves on the same zombie this close together add up: each earlier one (at most shove_repeat_max) adds shove_repeat_knockdown to the knockdown chance. A knockdown starts it over.
shove_repeat_knockdown f32 Shoves on the same zombie this close together add up: each earlier one (at most shove_repeat_max) adds shove_repeat_knockdown to the knockdown chance. A knockdown starts it over.
shove_repeat_max u32 Shoves on the same zombie this close together add up: each earlier one (at most shove_repeat_max) adds shove_repeat_knockdown to the knockdown chance. A knockdown starts it over.
shove_windup f32 Shove: hands, or the weapon held across the body, to push them off and make room to swing.
shove_seconds f32 Shove: hands, or the weapon held across the body, to push them off and make room to swing.
shove_endurance f32 Shove: hands, or the weapon held across the body, to push them off and make room to swing.
shove_noise f32 Shove: hands, or the weapon held across the body, to push them off and make room to swing.
stomp_range f32 Reach from the player’s centre to a downed zombie’s centre.
stomp_arc_degrees f32 Stomp.
stomp_damage (f32, f32) Stomp.
down_head_offset f32 A zombie on the ground lies on its back with its head this far behind its feet (its position): the line between is the body a stomp can land on.
stomp_head_reach f32 A stomp from within this of the head (and in the arc) is a stomp to the head: its damage times stomp_head_mult.
stomp_head_mult f32 A stomp from within this of the head (and in the arc) is a stomp to the head: its damage times stomp_head_mult.
stomp_pin_secs f32 A stomp that doesn’t kill keeps the zombie on the ground at least this long before it starts to get up (one getting up is stamped back down).
stomp_crit_chance f32 Stomp.
stomp_crit_multiplier f32 Stomp.
stomp_windup f32 Stomp.
stomp_seconds f32 Stomp.
stomp_endurance f32 Stomp.
stomp_noise f32 Stomp.
zombie_hit_chance f32 Chance a strike lands, plus this for every other zombie attacking the same player, at most zombie_hit_max. What a landed strike does is up to the wound it leaves (HealthTuning).
zombie_crowd_bonus f32 Zombie strikes.
zombie_hit_max f32 Chance a strike lands, plus this for every other zombie attacking the same player, at most zombie_hit_max. What a landed strike does is up to the wound it leaves (HealthTuning).
pvp bool Swings, shoves and stomps hit other players as they hit zombies. Off in single-player and co-op (players are never targets); a multiplayer server turns it on unless started with --pvp off.
pvp_damage_mult f32 A swing’s or stomp’s damage to a player is its damage to a zombie times this (the player also gets the wound).
pvp_shot_mult f32 A bullet’s damage to a player is its damage to a zombie times this.
pvp_blunt_gash f32 Chance a blunt weapon’s blow splits the skin (a gash, not a bruise); a crit always does.
pvp_stopped_damage f32 A cut that clothing stops is a bruise, and takes this much of its damage.
player_stagger_secs (f32, f32) How long a player reels from a blow, and how long one stays on the ground.
player_down_secs (f32, f32) Players and each other (PLAN §4.8).
lag_comp_max_secs f32 A blow of a player whose client reports what it shows (one over the network) is tested against its targets where they stood at most this long ago; 0 turns it off. It is also the most by which a blow about to land survives its player being floored (a trade of blows). 0.35 s covers a 150 ms ping with the client’s own tick and snapshot cushion on top.
cramped_damage f32 A blow at a target nearer than the weapon’s close_range does this much of its damage.
one_hand_power f32 A two-handed weapon swung in one hand (its item’s one_hand, the other hand full) hits this much as hard, and takes one_hand_slow times as long.
one_hand_slow f32 A two-handed weapon swung in one hand (its item’s one_hand, the other hand full) hits this much as hard, and takes one_hand_slow times as long.
battered_below f32 With this share of its life or less left a weapon is battered, and does battered_damage of its damage.
battered_damage f32 With this share of its life or less left a weapon is battered, and does battered_damage of its damage.
broken_damage f32 A broken weapon (every knock taken: crate::wear) stays in the hand as an item, but its swing does this much of its damage and knockback, and never crits or knocks down.
wear_skill_less f32 Each level of the weapon’s skill makes a knock this much less likely.
found_wear_max f32 A weapon found in furniture has had at most this share of its life (0: every one is sound).

Every wound and illness number but the infection’s. Serde with defaults, saved with the world’s settings. Times in game hours, chances 0..1. Ours.

Field Type What it is
bruise WoundTuning
scratch WoundTuning
gash WoundTuning
bite WoundTuning
glass_cut WoundTuning
burn WoundTuning A burn from standing in a fire (crate::fire): doesn’t bleed, hurts, heals slowly.
heal_spread f32 Each wound’s healing time is rolled within ± this share of its kind’s.
stitched_heal_speed f32 A stitched wound heals this many times as fast.
dressed_gash_bleed f32 A dressed but unstitched gash still bleeds at this share of its rate.
regen_awake_per_h f32 HP back per game hour with nothing bleeding or festering, no fever and not hungry; asleep more.
regen_asleep_per_h f32
front PartWeights Where strikes land from in front and from behind (zombies reach the upper body best).
behind PartWeights
behind_dot f32 A zombie facing a player’s back (the player’s facing · the direction of the blow above this).
strike StrikeWounds
arm_power_per f32 Effects of open wounds (each counted by its kind’s effect), with their caps.
arm_power_max f32 Effects of open wounds (each counted by its kind’s effect), with their caps.
arm_time_per f32 Effects of open wounds (each counted by its kind’s effect), with their caps.
arm_time_max f32 Effects of open wounds (each counted by its kind’s effect), with their caps.
leg_walk_per f32 Effects of open wounds (each counted by its kind’s effect), with their caps.
leg_run_per f32 Effects of open wounds (each counted by its kind’s effect), with their caps.
leg_max f32 Effects of open wounds (each counted by its kind’s effect), with their caps.
leg_gash_stops_running bool A gash or bite on a leg (not a foot) means no running.
torso_regen_per f32 Effects of open wounds (each counted by its kind’s effect), with their caps.
torso_regen_max f32 Effects of open wounds (each counted by its kind’s effect), with their caps.
head_pain_mult f32 Effects of open wounds (each counted by its kind’s effect), with their caps.
fester_undressed f32 Festering: chance per game hour by dressing; what it does.
fester_dirty f32 Festering: chance per game hour by dressing; what it does.
fester_clean f32 Festering: chance per game hour by dressing; what it does.
fester_cleaned_mult f32 Cleaning a wound before dressing it multiplies the chance by this.
fester_pain f32 Festering: chance per game hour by dressing; what it does.
fester_heal_mult f32 Festering: chance per game hour by dressing; what it does.
fester_hp_per_h f32 Festering: chance per game hour by dressing; what it does.
smash_cut_chance f32 Smashing a window with no weapon cuts the hand that did it this often (gloved: the other).
smash_cut_gloved f32 Glass.
climb_cut_chance f32 Climbing in through a broken window: a cut on a hand, arm or leg this often (clothing protects).
poison_hours (f32, f32) Food poisoning (#11 decides when; these are its numbers).
poison_regen_mult f32 Food poisoning (#11 decides when; these are its numbers).
poison_thirst_mult f32 Food poisoning (#11 decides when; these are its numbers).
poison_rotten f32 Chances for mouldy or rotten food, stale food and unsafe water.
poison_stale f32 Food poisoning (#11 decides when; these are its numbers).
poison_water f32 Food poisoning (#11 decides when; these are its numbers).
first_aid FirstAidTuning First aid: treatment times, dressings, painkillers, antibiotics.

One wound kind’s numbers.

Field Type What it is
damage (f32, f32) Hit points it takes at once.
bleed_per_h f32 HP per game hour while it bleeds, and how long it bleeds by itself (None: until dressed).
bleeds_for_h Option<f32>
heal_h f32 Game hours to heal (each wound rolls ±HealthTuning::heal_spread of it).
pain f32
protection f32 How much clothing counts against it (1 = its protection in full).
effect f32 How much it counts toward arm, leg and torso effects (an open gash 1, a scratch half).
can_fester bool

Where zombie strikes land: a weight per part (each arm, hand, leg and foot on its own).

Field Type What it is
head f32
torso f32
arm f32
hand f32
leg f32
foot f32

Which wound a zombie strike leaves (weights), before clothing.

Field Type What it is
scratch f32
gash f32
bite f32
grabbed_bite_bonus f32 Added to bite when two or more zombies are on you, or the strike comes from behind.

First aid’s numbers (HealthTuning::first_aid). Seconds of play for the treatments, game hours for the rest. Ours.

Field Type What it is
dress_secs f32
plaster_secs f32
clean_secs f32
stitch_secs f32
pill_secs f32
remove_secs f32
own_hand_mult f32 Dressing a hand (with the other one) takes this much longer.
skill_faster_per_level f32 Each First Aid level makes treatment this much faster; from skill_stitch_level up, stitching hurts half as much.
skill_stitch_level u32 Each First Aid level makes treatment this much faster; from skill_stitch_level up, stitching hurts half as much.
plaster_clean_h f32 Hours a clean dressing stays clean: a plaster, any other, and any other put on a bleeding wound.
dressing_clean_h f32
bleeding_clean_h f32
clean_pain f32 Pain cleaning and stitching cause, and for how many game hours.
clean_pain_h f32
stitch_pain f32
stitch_pain_h f32
painkiller_relief f32 Pain a painkiller dose takes away, for how long; this many doses at once make you drowsy.
painkiller_h f32
drowsy_doses u32
antibiotic_course u8 Antibiotics: doses in a course; a dose counts from min_gap hours after the last, the course lapses after max_gap hours without one; each dose keeps festering off for cover hours.
antibiotic_min_gap_h f32
antibiotic_max_gap_h f32
antibiotic_cover_h f32

Every needs and sleep number. Serde with defaults, saved with the world’s settings. Rates per game hour, needs 0..1. Ours.

Field Type What it is
hunger_per_h f32
hunger_asleep_per_h f32
thirst_per_h f32
thirst_asleep_per_h f32
run_thirst_per_h f32 Extra thirst per game hour spent running, and per swing.
swing_thirst f32
tired_per_h f32
rest_bed_per_h f32 Tiredness lost per game hour asleep on a bed, a sofa, the floor.
rest_sofa_per_h f32
rest_floor_per_h f32
mild f32 Where a need turns mild, strong and severe.
strong f32
severe f32
hungry_regen f32 Endurance recovery while hungry, thirsty (multipliers; both can apply).
thirsty_regen f32
starving_hp_per_h f32 HP per game hour starving, parched.
parched_hp_per_h f32
starving_swing_power f32 Swing power while starving; swing time tired and exhausted; walking speed exhausted.
tired_swing_time f32
exhausted_swing_time f32
exhausted_walk f32
tired_sight f32 The client’s view cone while tired or worse (a multiplier on its angle).
tired_endurance f32 The most endurance there can be while tired, and while exhausted (MoveMods::max_endurance): a tired survivor runs out of breath sooner, so sleep matters for getting away too.
exhausted_endurance f32
pain_sore f32 Pain levels (sore, hurting, agony) and swing power at each.
pain_hurting f32
pain_agony f32
pain_swing_power (f32, f32, f32)
eat_secs (f32, f32) Eating or drinking takes eat_secs.0 plus this per unit of hunger and thirst it does, at most eat_secs.1.
eat_secs_per f32
waste_below f32 Food eaten with hunger under this does nothing for hunger.
stale_food f32 Share of the hunger and thirst stale and mouldy food gives.
mouldy_food f32
found_food_age (f32, f32) Food found in furniture was made this share of its spoils_hours before the world began (each stack rolls within the range).
min_tiredness_to_sleep f32 No sleeping with tiredness below this; asleep, you wake once it’s below rested_below.
rested_below f32 No sleeping with tiredness below this; asleep, you wake once it’s below rested_below.
wake_noise_m f32 A sound this close (and loud enough to reach you) wakes you.
hunger_wakes_after_h f32 Starving or parched, you wake after this many game hours asleep.
floor_sore_pain f32 A night on the floor: pain for this many game hours.
floor_sore_h f32
sleep_time_scale f32 Game time runs this many times as fast while every living player is asleep (1: never).
sleep_through_night bool After dark you can lie down however rested you are, and being rested doesn’t wake you until sunrise: a night can be slept through, unless something else wakes you.

Carrying: limits, burden stages and how long handling things takes. Serde with defaults, saved with the world like the other tunings. All numbers are ours.

Field Type What it is
limit_kg f32 What a player carries without effect (kg)…
strength_kg f32 …plus this per Strength level.
pockets_l f32 Room in pockets (litres), always there.
burdened_at f32 Burden stages start at these shares of the limit.
heavy_at f32
overloaded_at f32
max_load f32 Nothing more can be picked up past this share of the limit.
burdened_speed f32
burdened_run_drain f32
heavy_speed f32
heavy_action_cost f32 Swings, shoves and stomps cost this much more endurance from Heavy on.
overloaded_speed f32
move_secs f32 Seconds to move one stack, and one heavier than heavy_stack_kg.
heavy_move_secs f32
heavy_stack_kg f32 Seconds to move one stack, and one heavier than heavy_stack_kg.
reopen_secs f32 Seconds to open a container that has been searched before.
use_secs f32 Seconds to eat or drink something.
sneak_search_mult f32 Searching while sneaking takes this much longer, and makes this share of the noise.
sneak_noise_mult f32
max_jobs u32 Jobs a player can have queued.

How fast a survivor moves and how its endurance (stamina) drains and comes back (WorldConfig::movement; ours). Saved with the world’s settings, and reachable from a difficulty preset’s tuning. The world hands it to its map (TileMap::movement), which is what step_movement reads, so a client’s prediction has the server’s numbers too (sent in the join’s tunings). The *_SPEED, RUN_DRAIN and *_ENDURANCE constants are its defaults.

Field Type What it is
walk_speed f32 Speeds in m/s, before load, wounds and needs (MoveMods).
run_speed f32
sneak_speed f32
aim_speed f32 Walking while aiming.
climb_speed f32 Top speed while climbing through a window or over a fence.
run_drain f32 Endurance a second spent running.
stand_regen f32 Endurance a second regained standing still (or sitting: SitTuning::endurance_regen on top).
walk_regen f32 …walking (or aiming, or climbing): catching your breath on the move is slow.
sneak_regen f32 …sneaking.
run_min_endurance f32 Running needs more endurance than this; running down to it winds you.
run_recover_endurance f32 Winded, you can’t run again until endurance is back above this.
The whole file as shipped
// Difficulty presets (sim::difficulty): what a new game offers under "World". Easiest first.
// Every number is a multiplier on the game's own (1 = as shipped) unless it says otherwise;
// anything left out is 1 (or the game's own).
//
// id, name, about
// zombies how many (the population)
// fast_zombies Some(share 0..1) of them that are fast; None: population.ron's
// zombie_senses how sharp their eyes and ears are
// zombie_toughness their hit points
// zombie_accuracy how often their strikes land
// respawn Some(true/false): do far regions fill up again; None: population.ron's
// loot, rare_loot how much containers hold; how often the rare things turn up
// xp how fast skills grow
// needs how fast hunger, thirst and tiredness come
// infection Off | Survivable | Deadly
// day_minutes Some(real minutes a game day lasts); None: the game's own (60)
// tuning any other tuning number, set outright, e.g.
// tuning: (zombie: Some((memory_secs: 30)), combat: Some((player_hp: 150)))
//
// The new-game screen lets the player change zombies, loot, xp, respawn, infection, the day's
// length and the hour they wake on top of a preset. Names and numbers are ours.
[
(id: "easy_street", name: "Easy street",
about: "Fewer of the dead, duller ones, and full cupboards. For learning the town.",
zombies: 0.6, zombie_senses: 0.8, zombie_toughness: 0.85, zombie_accuracy: 0.8,
loot: 1.5, rare_loot: 1.5, xp: 1.5, needs: 0.8, infection: Survivable),
(id: "survivor", name: "Survivor",
about: "The game as it is meant to be played."),
(id: "hard_times", name: "Hard times",
about: "More of them, sharper, and the houses have been picked over.",
zombies: 1.5, fast_zombies: Some(0.25), zombie_senses: 1.15, zombie_accuracy: 1.1,
loot: 0.7, rare_loot: 0.7, needs: 1.15, respawn: Some(true)),
(id: "last_one_left", name: "Last one left",
about: "The town is full, they miss nothing, and there is very little left to find.",
zombies: 2.2, fast_zombies: Some(0.4), zombie_senses: 1.3, zombie_toughness: 1.15, zombie_accuracy: 1.2,
loot: 0.45, rare_loot: 0.5, xp: 0.8, needs: 1.3, respawn: Some(true)),
]