Skip to content

Rust AI, NPC and animal convars

Quick answer: these are the Rust server convars for AI, NPCs, scientists, turrets, wildlife and farm animals, with the value each starts at. Type a name and a value in the server console or RCON, or put that line in server.cfg to apply it at every start. This list comes straight from a Rust dedicated server (Rust build 26431843, read 2026-11-06), and it is refreshed after every Rust update.

A Saved variable is written to cfg/serverauto.cfg by server.writecfg and read back at the next start, before server.cfg. The common ones are on Rust server variables. The other groups: Server and gameplay variables, Antihack, network and RCON variables, World, event and vehicle variables.

VariableDefaultSavedWhat it does
ai.accuratevisiondistanceTrueWhen enabled, vision distance checks use per-bone raycasts for accuracy; disable to use a single origin ray for performance
ai.aimedatangle10The angle under which the AI will think it’s being aimed at at by a player
ai.animal_ignore_foodTrueIf animal_ignore_food is true, animals will not sense food sources or interact with them (server optimization). (default: true)
ai.critters_frametime0.2Frame time budget in milliseconds for the critter FSM ticks
ai.critters_startle_distance0.5How close can a player get before a critter gets startled and runs away
ai.debug_seed0Seeds every Gen2 NPC’s random numbers from this and the order it spawned in, so a run repeats. 0 seeds each one at random
ai.debugmovedrawTrueYesWhether ai.selectnpc and ai.movenpc draw their DDraw markers - turn it off to keep the view clean while commanding NPCs.
ai.debugmovegaitrunYesGait ai.movenpc uses when called without one - set it to walk to keep commanded NPCs at walking speed. One of: sneak, walk, jog, run, sprint, fullsprint
ai.debugmovespacing2YesGap in metres between the destinations ai.movenpc hands out when more than one NPC is selected, so they don’t all path to the same point.
ai.defaultinterpolationdelay0.1Default network interpolation delay in seconds applied to NPC entity movement; lower values reduce visual lag at the cost of jitter on unstable connections
ai.designingenabledFalseYes
ai.effectaiweaponsFalseWhen enabled, AI weapons deal real damage when fired; disable to make NPC weapons harmless for testing AI behaviour safely
ai.frametime5Target frame time budget in seconds for AI tick processing; default is 5s in production (1s in editor) to cap CPU usage per AI frame
ai.fsm_frametime_animals2Frame time budget in milliseconds for wild animal FSM ticks, on top of what the scientists left unused
ai.fsm_frametime_livestock0.2Frame time budget in milliseconds for livestock FSM ticks, on top of what the scientists and animals left unused
ai.fsm_frametime_scientists0.5Frame time budget in milliseconds for scientist FSM ticks. Whatever they leave unused rolls down to the animals, then the livestock
ai.groupsTrueWhen enabled, AI group logic is active allowing NPCs to coordinate as squads; disable to make all NPCs act as independent individuals
ai.ignoreplayersFalseWhen enabled, AI entities ignore player presence and will not target or react to players; useful for building/testing without NPC interference
ai.logissuesFalseWhen enabled, logs AI-related warnings and issues to the server console; useful for diagnosing pathfinding and brain errors
ai.moveTrueWhen enabled, AI entities move toward their NavMesh destinations; disable to freeze NPC movement while keeping brain logic running
ai.nav_carve_height2The height of the carve volume. (default: 2)
ai.nav_carve_min_base_size2The minimum size we allow a carving volume to be. (default: 2)
ai.nav_carve_min_building_blocks_to_apply_optimization25The minimum number of building blocks a building needs to consist of for this optimization to be applied. (default: 25)
ai.nav_carve_size_multiplier4The size multiplier applied to the size of the carve volume. The smaller the value, the tighter the skirt around foundation edges, but too small and animals can attack through walls. (default: 4)
ai.nav_carve_use_building_optimizationFalseIf nav_carve_use_building_optimization is true, we attempt to reduce the amount of navmesh carves for a building. (default: false)
ai.navthinkTrueWhen enabled, AI entities update their NavMesh agent destinations each tick; disable to freeze AI movement while keeping brain logic running
ai.npc_alertness_drain_rate0.01npc_alertness_drain_rate define the rate at which we drain the alertness level of an NPC when there are no enemies in sight. (Default: 0.01)
ai.npc_alertness_to_aim_modifier0.5This is multiplied with the current alertness (0-10) to decide how long it will take for the NPC to deliberately miss again. (default: 0.33)
ai.npc_alertness_zero_detection_mod0.5npc_alertness_zero_detection_mod define the threshold of visibility required to detect an enemy when alertness is zero. (Default: 0.5)
ai.npc_check_spawner_is_on_navmeshTrueWhen enabled, NPC spawn points are validated to ensure they are on a valid NavMesh position before spawning; prevents NPCs from spawning in unreachable locations
ai.npc_cover_compromised_cooldown10npc_cover_compromised_cooldown defines how long a cover point is marked as compromised before it’s cleared again for selection. (default: 10)
ai.npc_cover_info_tick_rate_multiplier20The rate at which we gather information about available cover points. Minimum value is 1, as it multiplies with the tick-rate of the fixed AI tick rate of 0.1 (Default: 20)
ai.npc_cover_path_vs_straight_dist_max_diff2npc_cover_path_vs_straight_dist_max_diff defines what the maximum difference between straight-line distance and path distance can be when evaluating cover points. (default: 2)
ai.npc_cover_use_path_distanceTrueIf npc_cover_use_path_distance is set to true then npcs will look at the distance between the cover point and their target using the path between the two, rather than the straight-line distance.
ai.npc_deliberate_hit_randomizer0.85The percentage away from a maximum miss the randomizer is allowed to travel when shooting to deliberately hit the target (we don’t want perfect hits with every shot). (default: 0.85f)
ai.npc_deliberate_miss_offset_multiplier1.25The offset with which the NPC will maximum miss the target. (default: 1.25)
ai.npc_deliberate_miss_to_hit_alignment_time1.5The time it takes for the NPC to deliberately miss to the time the NPC tries to hit its target. (default: 1.5)
ai.npc_door_trigger_size1.5npc_door_trigger_size defines the size of the trigger box on doors that opens the door as npcs walk close to it (default: 1.5)
ai.npc_enableTrueIf npc_enable is set to false then npcs won’t spawn. (default: true)
ai.npc_families_no_hurtTrueIf npc_families_no_hurt is true, npcs of the same family won’t be able to hurt each other. (default: true)
ai.npc_gun_noise_silencer_modifier0.15The modifier by which a silencer reduce the noise that a gun makes when shot. (Default: 0.15)
ai.npc_htn_player_base_damage_modifier1.15Baseline damage modifier for the new HTN Player NPCs to nerf their damage compared to the old NPCs. (default: 1.15f)
ai.npc_htn_player_frustration_threshold3npc_htn_player_frustration_threshold defines where the frustration threshold for NPCs go, where they have the opportunity to change to a more aggressive tactic. (default: 3)
ai.npc_ignore_chairsTrueIf npc_ignore_chairs is true, npcs won’t care about seeking out and sitting in chairs. (default: true)
ai.npc_junkpile_dist_aggro_gate8npc_junkpile_dist_aggro_gate define at what range (or closer) a junkpile scientist will get aggressive. (Default: 8)
ai.npc_junkpilespawn_chance0.07defines the chance for scientists to spawn at NPC junkpiles. (Default: 0.1)
ai.npc_max_junkpile_count30npc_max_junkpile_count define how many npcs can spawn into the world at junkpiles at the same time (does not include monuments) (Default: 30)
ai.npc_max_population_military_tunnels3npc_max_population_military_tunnels defines the size of the npc population at military tunnels. (default: 3)
ai.npc_max_roam_multiplier3This is multiplied with the max roam range stat of an NPC to determine how far from its spawn point the NPC is allowed to roam. (default: 3)
ai.npc_only_hurt_active_target_in_safezoneTrueIf npc_only_hurt_active_target_in_safezone is true, npcs won’t any player other than their actively targeted player when in a safe zone. (default: true)
ai.npc_patrol_point_cooldown5npc_patrol_point_cooldown defines the cooldown time on a patrol point until it’s available again (default: 5)
ai.npc_reasoning_system_tick_rate_multiplier1The rate at which we tick the reasoning system. Minimum value is 1, as it multiplies with the tick-rate of the fixed AI tick rate of 0.1 (Default: 1)
ai.npc_respawn_delay_max_military_tunnels1920npc_respawn_delay_max_military_tunnels defines the maximum delay between spawn ticks at military tunnels. (default: 1920)
ai.npc_respawn_delay_min_military_tunnels480npc_respawn_delay_min_military_tunnels defines the minimum delay between spawn ticks at military tunnels. (default: 480)
ai.npc_sensory_system_tick_rate_multiplier5The rate at which we tick the sensory system. Minimum value is 1, as it multiplies with the tick-rate of the fixed AI tick rate of 0.1 (Default: 5)
ai.npc_spawn_on_cargo_shipTrueSpawn NPCs on the Cargo Ship. (default: true)
ai.npc_spawn_on_deep_sea_islandsTrueSpawn NPCs on deep sea islands (default: false)
ai.npc_spawn_on_junkpileTrueSpawn NPCs on junkpiles (default: true)
ai.npc_spawn_per_tick_max_military_tunnels1npc_spawn_per_tick_max_military_tunnels defines how many can maximum spawn at once at military tunnels. (default: 1)
ai.npc_spawn_per_tick_min_military_tunnels1npc_spawn_per_tick_min_military_tunnels defineshow many will minimum spawn at once at military tunnels. (default: 1)
ai.npc_speed_crouch_run0.25npc_speed_crouch_run define the speed of an npc when in the crouched run state, and should be a number between 0 and 1. (Default: 0.25)
ai.npc_speed_crouch_walk0.1npc_speed_walk define the speed of an npc when in the crouched walk state, and should be a number between 0 and 1. (Default: 0.1)
ai.npc_speed_run0.4npc_speed_walk define the speed of an npc when in the run state, and should be a number between 0 and 1. (Default: 0.4)
ai.npc_speed_sprint1npc_speed_walk define the speed of an npc when in the sprint state, and should be a number between 0 and 1. (Default: 1.0)
ai.npc_speed_walk0.18npc_speed_walk define the speed of an npc when in the walk state, and should be a number between 0 and 1. (Default: 0.18)
ai.npc_use_new_aim_systemTrueIf npc_use_new_aim_system is true, npcs will miss on purpose on occasion, where the old system would randomize aim cone. (default: true)
ai.npc_use_thrown_weaponsTrueIf npc_use_thrown_weapons is true, npcs will throw grenades, etc. This is an experimental feature. (default: true)
ai.npc_valid_aim_cone0.8npc_valid_aim_cone defines how close their aim needs to be on target in order to fire. (default: 0.8)
ai.npc_valid_mounted_aim_cone0.92npc_valid_mounted_aim_cone defines how close their aim needs to be on target in order to fire while mounted. (default: 0.92)
ai.npcbarksenabledFalse
ai.npchealthmultiplier1Global health multiplier applied to all NPCs; 1.0 = normal, 2.0 = double health; useful for difficulty scaling without modifying individual NPC prefabs
ai.npcswimmingTrueWhen enabled, NPCs can enter and swim in water; disable to prevent all NPCs from entering water bodies
ai.ocean_critters_movement_frametime0.2Frame time budget in milliseconds for the ocean critters’ swimming movement
ai.ocean_patrol_path_iterations100000Maximum number of path-finding iterations used when calculating NPC ocean patrol routes; higher values produce better paths at more CPU cost
ai.scientist_spawners_enabledTrueDo any kind of scientists spawn on the map (default: true)
ai.sensetime1How frequently in seconds the NPC sensory system updates its awareness of nearby entities; higher values reduce CPU cost but make NPCs slower to react
ai.setdestinationsamplenavmeshTrueWhen enabled, NavMesh destinations are sampled to the nearest valid NavMesh position before being set; prevents NPCs getting stuck off-mesh
ai.showstateflashduration1.5How long (in seconds) a value that has just moved stays coloured in the ai.showState read-out; 0 stops it colouring at all
ai.sleepwakeTrueWhen enabled, AI information zones can sleep inactive NPCs and wake them when players approach; disable to keep all NPCs awake at all times
ai.smokegrenadenpcradius4Radius in metres within which a thrown smoke grenade suppresses NPC vision and targeting
ai.spliceupdatesTrueWhen enabled, AI updates are spliced across multiple frames to spread CPU cost; disable to run all AI updates synchronously every tick
ai.thinkTrueWhen enabled, AI entities run their brain Think() logic each tick; disable to freeze all AI decision-making while leaving entities in place
ai.tickrate5Number of AI think ticks per second; default is 5 (every 200ms); higher values make AI more responsive at higher CPU cost
ai.usecalculatepathTrueWhen enabled, NavMesh path calculation uses the full CalculatePath API; disable to use the simpler SetDestination fallback only
ai.usegridTrueWhen enabled, AI uses the spatial grid for entity queries; disable to fall back to brute-force entity iteration for debugging spatial query issues
ai.usesetdestinationfallbackTrueWhen enabled, falls back to SetDestination if CalculatePath fails to find a valid path to the target
ai.watchedangle50The angle under which the AI will think it’s being watched by another entity
VariableDefaultSavedWhat it does
aimanager.ai_dormantTrueIf ai_dormant is true, any npc outside the range of players will render itself dormant and take up less resources, but wildlife won’t simulate as well.
aimanager.ai_dormant_max_wakeup_per_tick30ai_dormant_max_wakeup_per_tick defines the maximum number of dormant agents we will wake up in a single tick. (default: 30)
aimanager.ai_htn_animal_tick_budget4ai_htn_animal_tick_budget defines the maximum amount of milliseconds ticking htn animal agents are allowed to consume. (default: 4 ms)
aimanager.ai_htn_player_junkpile_tick_budget4ai_htn_player_junkpile_tick_budget defines the maximum amount of milliseconds ticking htn player junkpile agents are allowed to consume. (default: 4 ms)
aimanager.ai_htn_player_tick_budget4ai_htn_player_tick_budget defines the maximum amount of milliseconds ticking htn player agents are allowed to consume. (default: 4 ms)
aimanager.ai_htn_use_agency_tickTrueIf ai_htn_use_agency_tick is true, the ai manager’s agency system will tick htn agents at the ms budgets defined in ai_htn_player_tick_budget and ai_htn_animal_tick_budget. If it’s false, each agent registers with the invoke system individually, with no frame-budget restrictions. (default: true)
aimanager.ai_to_player_distance_wakeup_range160If an agent is beyond this distance to a player, it’s flagged for becoming dormant.
aimanager.nav_disableFalseIf set to true the navmesh won’t generate.. which means Ai that uses the navmesh won’t be able to move
aimanager.nav_obstacles_carve_state2nav_obstacles_carve_state defines which obstacles can carve the terrain. 0 - No carving, 1 - Only player construction carves, 2 - All obstacles carve.
aimanager.nav_waitTrueIf true we’ll wait for the navmesh to generate before completely starting the server. This might cause your server to hitch and lag as it generates in the background.
aimanager.pathfindingiterationsperframe100The maximum amount of nodes processed each frame in the asynchronous pathfinding process. Increasing this value will cause the paths to be processed faster, but can cause some hiccups in frame rate. Default value is 100, a good range for tuning is between 50 and 500.
aimanager.setdestination_navmesh_failsafeFalseIf set to true, npcs will attempt to place themselves on the navmesh if not on a navmesh when set destination is called.
VariableDefaultSavedWhat it does
basenavigator.basenavmovementframeinterval2How many frames between base navigation movement updates
basenavigator.maxstepupdistance1.7The max step-up height difference for pet base navigation
basenavigator.navtypedistance1
basenavigator.navtypeheightoffset0.5
basenavigator.stucktriggerduration10How long we are not moving for before trigger the stuck event
VariableDefaultSavedWhat it does
beeswarmai.breakrange15Range to leave current target alone (should be higher than search)
beeswarmai.disableFalse
beeswarmai.flamesettingdistance5.5How far away fire has to be to set the swarm on fire
beeswarmai.killwithouttargettime150How long a swarm will stick around without a target
beeswarmai.searchrange10Range to find new targets
beeswarmai.think_budget_ms0.1How many milliseconds to spend on thinking per frame
beeswarmai.waterthreshold0.6How much water a player needs to be in to be ignored
VariableDefaultSavedWhat it does
birdflock.corpseinterestpriority-1How much crow flocks want to circle corpses over other interest points. Below 0 loses to anything else.
birdflock.crowpopulation0.4444444Crow flocks per square km. Default is four per 3km map.
birdflock.explosionstartleradius300How far away an explosion sends bird flocks fleeing, in metres.
birdflock.seagullpopulation0.4444444Seagull flocks per square km. Default is four per 3km map.
VariableDefaultSavedWhat it does
boatai.allow_sleepingFalseWhen enabled, boat AI entities can enter a sleep state when no players are nearby; reduce CPU usage for idle boats
boatai.avoidance_update_interval0.8How often to update the avoidance cache. Lower number means a more accurate cache at the expensive of performance.
boatai.boat_ai_frame_budget_ms0.3YesHow long per frame to spend on boat ai
boatai.draw_debugsFalseWhen enabled, draws DDraw visualisations of boat AI steering, avoidance, and pathfinding state
boatai.enable_mount_sync_distance750Distance players need to be to start syncing mounted seats
boatai.max_speed_percentage0.9YesMaximum speed as a fraction of the boat’s top speed that AI-controlled boats will use; default 0.9; saved and shown in admin UI
boatai.print_debugsFalseWhen enabled, logs verbose boat AI decision-making output to the server console each AI tick
boatai.roaming_egress_minutes10Minutes a roaming boat has to sail off the map before it is removed where it is
boatai.seconds_until_sleep30Number of seconds a boat AI will wait without player interaction before entering sleep mode; default 30s
VariableDefaultSavedWhat it does
livestock.agescale1Multiplier applied to how long a livestock infant takes to grow up; 0.5 = grow up twice as fast, 0 = disable aging entirely
livestock.allowmountingTrueWhether livestock can be mounted into vehicle flatbeds
livestock.breedcooldown600How long (in seconds) a male livestock animal waits before breeding again, counted from conception. The female’s is derived from how long her calf takes to grow up
livestock.breedingenabledTrueWhether livestock look for a mate on their own; disabling it leaves livestock.makepregnant working
livestock.breedingfloorperhead8Floor in square metres each head needs in a pen to breed and to have full personal space. A 2x2 of foundations floods about 27, so it houses three
livestock.breedpausecondition0.6Condition at or below which a livestock animal stops being willing to breed
livestock.breedresumecondition0.7Condition at or above which a livestock animal that stopped breeding is willing again
livestock.breedsearchradius30How far (in metres) a male livestock animal looks for a mate
livestock.calmedtrustfloor60The seconds a livestock animal credits to a player under a livestock handling effect; kept inside the tolerated band on purpose
livestock.calvingcooldownscale1Scales how long a mother waits after calving before she can carry again. 1 is one calf grown up per birth
livestock.conditionfallseconds3600How many seconds a totally neglected livestock animal takes to fall from full health to 1 hp, or to dead when it has no personal space left
livestock.conditionfullcontentment1Contentment at which a livestock animal is in full condition; below it the condition target falls in proportion, so a herd held at the shelter floor sits at half condition
livestock.conditionriseseconds3600How many seconds a well kept livestock animal takes to heal from nothing back to full health
livestock.curiousbreakdistance20How far (in metres) a player can get before a curious livestock animal gives up following them
livestock.curiouschance0.2The share of livestock born curious, so they follow a player they know without needing a lead; 0 disables curious animals
livestock.debugconditionFalseAdds the condition and its breeding band to a livestock animal’s ai.showState read-out
livestock.debugdaybudgetFalseAdds the day budget shares to a livestock animal’s ai.showState read-out
livestock.debuggaitFalseAdds walk speed and gait penalty to a livestock animal’s ai.showState read-out
livestock.debuggenesFalseAdds an animal’s genes to its ai.showState read-out
livestock.debugspecialsFalseLogs each special livestock animal as it spawns
livestock.defendreactiontime5How recently (in seconds) a player the herd counts as one of its own must have been attacked for a bull to come after whoever is doing it; 0 stops him defending players
livestock.devnamechance0The chance a freshly named livestock animal is given a developer’s handle instead of an ordinary name; one named that way never founds a dynasty
livestock.drawradius60How far (in metres) around you livestock.drawpens and livestock.drawherds draw
livestock.dungconditionfloor0.15Condition below which a livestock animal stops dunging at all. A starving animal never dungs whatever this says
livestock.dungconditionfull0.8Condition at or above which a livestock animal dungs at its full authored rate
livestock.dungslowestscale3How much longer a livestock animal at the condition floor waits between dung drops than one in its prime
livestock.dynasticnamesTrueWhether a newborn livestock animal takes its same-sex parent’s name one generation on, so a line reads Melk then Melk Junior then Melk the 3rd
livestock.estimatestandingshare0.38The share of its waking day a livestock animal is assumed to spend on its feet when a trough’s remaining time is estimated
livestock.familiaritydistresspenalty30How many seconds of familiarity a player loses with the herd around an animal they hurt
livestock.familiarityhurtpenalty60How many seconds of familiarity a player loses with a livestock animal they hurt
livestock.familiarityradius20How close (in metres) a player has to be for a livestock animal to count the time; must sit inside the animal’s sense radius; 0 disables familiarity
livestock.familiarityrate1Multiplies how fast livestock familiarity builds up; 20 makes a five minute bond take fifteen seconds. For testing, leave at 1 for play
livestock.freerangelinkradius40How far (in metres) apart two livestock animals out of a pen can stand and still be linked into one free range herd for livestock.maxFreeRangeHerd
livestock.friskythreshold0.85How well met a livestock animal’s worst need must be (0-1) before it will canter about for the fun of it; above 1 disables it
livestock.genebadchance0.3The chance each allele of a wild livestock animal is rolled Bad; the rest come out Ok
livestock.genedungbad0.6How often a Bad Dung livestock animal drops dung, as a share of an average one
livestock.genedunggood1.6How often a Good Dung livestock animal drops dung, as a multiple of an average one
livestock.genefertilitybad0.65How often a Bad Fertility livestock animal breeds, as a share of an average one; litter size never falls below one
livestock.genefertilitygood1.6How often a Good Fertility livestock animal breeds, and how many young it carries, as a multiple of an average one
livestock.genegoodchance0.2The chance each allele of a wild livestock animal is rolled Good
livestock.genehardinessbad0.667What an average animal’s food, water, room, grass and sun needs are divided by for a Bad Hardiness livestock animal, so below 1 it needs more of everything
livestock.genehardinessgood2What an average animal’s food, water, room, grass and sun needs are divided by for a Good Hardiness livestock animal, so at 2 it gets by on half
livestock.genemutationchance0The chance each inherited livestock allele is rerolled from scratch instead of coming from its parent; leaving this at 0 is what makes breeding predictable enough to reason about
livestock.genesenabledTrueWhether livestock genes do anything; off makes every animal an average one without touching the genomes they carry
livestock.geneyieldbad0.6How much milk or wool a Bad Yield livestock animal gives, as a share of an average one
livestock.geneyieldgood1.6How much milk or wool a Good Yield livestock animal gives, as a multiple of an average one
livestock.grazehelpingmax50The longest time (in seconds) a livestock animal of any species grazes in one helping, at a trough or on grass
livestock.grazehelpingmin30The shortest time (in seconds) a livestock animal of any species grazes in one helping, at a trough or on grass
livestock.grudgeduration45How long (in seconds) a livestock animal stays wary of a player that hurt it or one of its herd, moving off when they come close again; 0 disables grudges
livestock.grudgerange8How close (in metres) a remembered aggressor has to get before a wary livestock animal moves off
livestock.inbredscale0.5What every gene’s slider position is multiplied by on an inbred livestock animal, for its coat and for what it produces alike. At 0.5 a Good gene looks and performs as Ok and an Ok gene falls halfway to Bad. An animal is inbred when both its lineage markers match
livestock.leadbreakdistance15How far (in metres) a player can get from an animal they are leading before the lead breaks. 0 never breaks it
livestock.lethalfloorperhead4.5Floor in square metres per head at or below which a pen leaves livestock no personal space at all, which kills them. Half a foundation by default
livestock.maxfreerangeherd5How many livestock animals of one species can share open ground, linked through any within livestock.freeRangeLinkRadius of each other, litters on the way counted at their largest, before none of them breeds, 0 never caps
livestock.maxlittersize3The most young one livestock birth can ever produce, however good the mother’s Fertility is
livestock.maxperspecies300How many livestock animals of one species a server holds before none of that species breeds. Cattle and sheep are counted apart against the same number, 0 never caps
livestock.maxtrust900The most seconds of trust a player can build with a livestock animal, which is the full bond: it defends you. Only its owner reaches it, see livestock.nonOwnerTrustShare
livestock.motherlyduration300How long (in seconds) a mother stands her ground for her own calf after something has threatened it, rather than running like any other cow; 0 disables maternal defence
livestock.namelocaleenThe language a livestock animal is named in when its first owner is offline or speaks a language the game has no names for
livestock.needsframetime0.1Main thread time budget per frame in milliseconds for the livestock needs queue
livestock.nonownertrustshare0.95The share of livestock.maxTrust a player can reach with an animal they do not own, kept short of 1 so only the owner has the full bond and is defended. At 1 anybody can
livestock.panelageTrueWhether a farm animal’s status panel says how long it has lived while owned
livestock.panelallelesFalseWhether both copies of every livestock gene are shown rather than only the one the animal expresses. Reveals what an animal carries without breeding it
livestock.paneldungFalseWhether a farm animal’s status panel shows how often it dungs, after its genes
livestock.panelgenderTrueWhether the male and female symbols are shown next to a farm animal’s name on its status panel
livestock.panelgenesFalseWhether the gene discs are shown on the livestock status panel, along with the inbred warning that explains them
livestock.panelpotentialTrueWhether a farm animal’s status panel shows its potential, how content it was raised, which its sale price is multiplied by
livestock.paneltrustTrueWhether a farm animal’s status panel shows how much it trusts you, as one segment per band of the trust ladder
livestock.panelyieldFalseWhether the milk or wool row of a farm animal’s status panel also says what it produces and how often, after its genes
livestock.potentialfallseconds900How many seconds a totally unhappy young livestock animal takes to drop its potential from full to nothing
livestock.potentialriseseconds600How many seconds a perfectly happy young livestock animal takes to raise its potential from nothing to full
livestock.potentialunbredcap0The most potential a livestock animal with no mother can reach, from 0 to 1. Covers animals bought from a vendor, caught wild or spawned in
livestock.priceconditionfloor0.15Condition at or below which a livestock animal sells for the least a vendor will pay
livestock.priceconditionfull0.8Condition at or above which a livestock animal sells for the vendor’s full price
livestock.pricefullqualityscale1.5The livestock sale value that counts as full quality, which is a full budget for the vendor’s sale table
livestock.pricegeneweight1How far a livestock animal’s genes move what a vendor pays, where 1 pays its full gene advantage and 0 prices every animal as an average one
livestock.priceworstscale0.4What a livestock animal at the condition floor sells for, as a share of the vendor’s full price
livestock.profileFalseTimes how long livestock spend in their needs queue and FSM tick, for livestock.census. Off by default because the measurement itself costs
livestock.remoteeatafter60How long (in seconds) a hungry livestock animal fails to get a place at a stocked trough before it eats from it where it stands
livestock.remoteeatdistance6How far (in metres) from a trough a livestock animal may stand to eat from it without a place of its own
livestock.shelterneedfloor0.5The least a livestock animal’s grass and sun needs count for in its overall mood, so a floored or roofed barn herd is kept below full rather than at nothing. The needs themselves still read down to 0
livestock.sleepychance0.2The share of livestock born sleepy, so once grown they spend most of the day lying down away from the herd. An animal is never curious and sleepy at once; 0 disables sleepy animals
livestock.specialchance0.005The chance each wild livestock spawn is one of the named special animals; births, purchases, age-ups and saves never roll for one
livestock.starvedsearchinterval30How often (in seconds) a livestock animal lying down for want of food or water looks for some again
livestock.sunfullshare0.5The share of a floor’s sampled polys the sun must reach at some hour of a simulated day for the sun need to read full
livestock.sunresampleminutes30How many minutes a floor keeps its sun verdict before it is measured again, for shade that arrives without a navmesh change
livestock.sunsamplehours12How many sun positions between sunrise and sunset each sampled poly is tested against
livestock.sunsamplepolys64How many of a floor’s navmesh polys are sampled for sunlight when it is measured
livestock.trustfloor60The seconds a livestock animal credits to its owner’s team and to the cupboard authed and door code sharers of its home; kept inside the tolerated band on purpose
livestock.trusttofollow5How many seconds near a livestock animal before a curious one follows you without a lead
livestock.trusttolead300How many seconds near a livestock animal before it accepts being led, milked or sheared by you
livestock.trusttotolerate30How many seconds near a livestock animal before a bull stops squaring up at you
livestock.vendorannoyedtime900How many seconds a livestock vendor refuses to look at goods whose every offer was turned down
livestock.vendorgenerouschance0.05The chance each livestock offer is a generous one, where the vendor pays for a better animal than the one in front of him; 0 disables it
livestock.vendorgenerousmax0.25The most a generous livestock offer lifts an animal’s quality by
livestock.vendorgenerousmin0.1The least a generous livestock offer lifts an animal’s quality by
livestock.vendorlowpotential0.5Potential below which a livestock vendor opens his first offer by saying the animal was neglected growing up; 0 disables it
livestock.vendoroffercount3How many offers a livestock vendor makes for one animal before he is annoyed and stops buying
livestock.vendorofferitems2How many items a livestock vendor picks for one offer before paying the rest of its value in the sale table’s fallback
livestock.vendoroffervariance0.05How far a livestock vendor’s offer can swing either side of what an animal is really worth
livestock.vendorwoollotsize400How much wool counts as a full lot, which is a full budget for the vendor’s wool table
livestock.vendorwoolminimum25How much wool a player must be carrying before a livestock vendor will haggle over it at all
VariableDefaultSavedWhat it does
npc.vendor_attack_heli_enabledTrue
npc.vendor_hab_enabledTrue
npc.vendor_minicopter_enabledTrue
npc.vendor_rhib_enabledTrue
npc.vendor_rowboat_enabledTrue
npc.vendor_scrap_heli_enabledTrue
npc.vendor_sub_duo_enabledTrue
npc.vendor_sub_solo_enabledTrue
VariableDefaultSavedWhat it does
npcvendingmachine.dynamicpricingenabledTrueYesWhether to run the the dynamic pricing system
npcvendingmachine.maximumpricemultiplier2YesThe maximum point that a price can increase to (2 = 200%)
npcvendingmachine.minimumpricemultiplier0.5YesThe Minimum point that the price can drop to (0.5 = 50% off)
npcvendingmachine.pricedecreaseamount0.05YesHow much to decrease the price for if it is underselling (0.05 = 5%)
npcvendingmachine.priceincreaseamount0.1YesHow much to increase the price by if it is selling a lot (0.05 = 5%)
npcvendingmachine.priceupdatefrequencybiweekly2YesHow many realtime hours are checked when looking for price increases. Max 72 (10 days), min 0.5 (half an hour)
npcvendingmachine.priceupdatefrequencydefault3YesHow many realtime hours are checked when looking for price increases. Max 72 (10 days), min 0.5 (half an hour)
npcvendingmachine.priceupdatefrequencyweekly1YesHow many realtime hours are checked when looking for price increases. Max 72 (10 days), min 0.5 (half an hour)
npcvendingmachine.startingpricemultiplier2YesWhat discount surcharge should be applied to items when the server starts
VariableDefaultSavedWhat it does
petbrain.controldistance100
petbrain.drownindeepwaterTrue
petbrain.drowntimer15
petbrain.idlewhenownermountedTrue
petbrain.idlewhenownerofflineordeadTrue
VariableDefaultSavedWhat it does
rustnav.addtilebudgetms2Main-thread time budget per frame (ms) for adding built navmesh tiles to their navmesh. A base rebuild lands dozens of results in one frame and the rest waits for the next one. 0 or less adds every result that is ready, which is what shipped before the budget existed
rustnav.bakestatsenabledFalseCollect navmesh bake statistics (rustnav.bakestats to read them). Defaults on in the editor, off on servers; flip on live to diagnose bake issues, then reset with rustnav.bakestats true
rustnav.collectbudgetms1Main-thread time budget per frame (ms) for navmesh tile geometry collection. The full-map bake wall clock is roughly tiles / (budget-worth of tiles per frame) / fps, so raise this while baking to trade frame time for bake speed
rustnav.detailsampledistmult12Detail mesh sample distance as a multiple of cellSize (Recast default 6). Larger = cheaper detail mesh, coarser surface height. Applies to tiles built after the change
rustnav.detailsamplemaxerrormult1Detail mesh max sample error as a multiple of cellHeight (Recast default 1). Larger = cheaper detail mesh, more height error. Applies to tiles built after the change
rustnav.doorreassertspertick24How many doors re-assert their gate state per navmesh drain tick. A rebuilt tile bakes its apertures shut, so every open or npc-openable door over the rebuilt area has to write its state again, and a megabase queues hundreds of them at once. 0 or less applies the whole queue in one frame, which is what shipped before the budget existed
rustnav.drawkbps512Max KB per second of navmesh tiles streamed to each rustnav.draw viewer
rustnav.drawmanifestinterval10
rustnav.drawradius100
rustnav.drawrefreshrate0.25
rustnav.enableverboselogsFalse
rustnav.legacybuildFalseA/B kill switch: build navmesh tiles with the stock pre optimization algorithms (clip rasterizer, full ledge and region rescans, unfused filters). Combine with detailsampledistmult 6 to approximate the old build end to end. Applies to tiles built after the change
rustnav.maxshoredistance100Metres of open water past which default navmesh tiles are dropped instead of baked. A tile only drops when every point in it is that far from land, so shores keep their navmesh and so do rivers and lakes, which are never that wide. Independent navmeshes (oilrigs, tropical islands, ghost ships) are never touched. 0 or less bakes the open sea like before. Applies to tiles queued after the change
rustnav.numthreads4Navmesh tile builder worker thread count. Applied when the builder is (re)created - at boot, or via rustnav.setnumthreads at runtime. ~half the cores is the sweet spot for full-map bakes
rustnav.savecompressionTrueLZ4-compress navmesh saves (smaller .navmesh files, no extra save time)
rustnav.savedeltaTrueAppend only the tiles that changed to the navmesh file instead of rewriting all of it. The first save after a boot or a rebuild is always a full write, and a full write also happens once the appended part grows past rustnav.savedeltabudget
rustnav.savedeltabudget0.5How large the appended part of the navmesh file may grow, as a fraction of the full file, before the next save rewrites the whole thing. A save whose changed tiles are a larger share of the mesh than this rewrites it too. Bounds both file growth and boot load time. 0 or less removes the bound, to stop appending altogether use rustnav.savedelta false
rustnav.savethreads0Worker threads for navmesh save/load compression. 0 = auto
rustnav.savewarnms1000Log the navmesh save completion line as a warning past this many milliseconds. 0 or less never warns
VariableDefaultSavedWhat it does
sentry.debugpreventduplicatesTruePrevents auto turrets getting added more than once to the IO queue
sentry.hostileduration120how long until something is considered hostile after it attacked
sentry.interferenceradius40radius to check for other turrets
sentry.maxinterference12max interference from other turrets
sentry.scantimer1How quickly can a turret acquire a potential target. Less is faster, but perf taxing
sentry.targetallFalsetarget everyone regardless of authorization
VariableDefaultSavedWhat it does
wildlifehazard.chancetorepositionmultiplier1Global multiplier applied to the per-tick probability that a wildlife hazard attempts to reposition
wildlifehazard.clienttickrate0.1Interval in seconds between client-side tick updates for wildlife hazard entities
wildlifehazard.reactiontimemultiplier1Global multiplier applied to wildlife hazard reaction time; higher values make hazards slower to react to player presence
wildlifehazard.repositionattempts5Maximum number of position candidates sampled when a wildlife hazard searches for a valid reposition destination
wildlifehazard.repositionradiusmultiplier1Global multiplier for the radius used when choosing a new reposition destination for a wildlife hazard
wildlifehazard.repositiontimermultiplier1Global multiplier applied to the cooldown timer between wildlife hazard reposition attempts

Groups with only a few entries, in one list.

VariableDefaultSavedWhat it does
aibrainsenses.humanknownplayerslosupdateinterval0.2Interval in seconds between line-of-sight update ticks for human-type NPCs tracking known player positions
aibrainsenses.knownplayerslosupdateinterval0.5Interval in seconds between line-of-sight update ticks for all NPC types tracking known player positions
aibrainsenses.updateinterval0.5Interval in seconds between full AI brain senses update ticks; controls how frequently NPCs refresh their awareness of surroundings
aiinformationzone.usesimpleloscheckFalse
aithinkmanager.animalframebudgetms0.2
aithinkmanager.framebudgetms2
aithinkmanager.petframebudgetms1
autoturret.ammo_update_ms0.1How many milliseconds to spend on ammo updating per frame
autoturret.scan_budget_ms0.5How many milliseconds to spend on target scanning per frame
autoturret.tick_update_ms1How many milliseconds to spend on a tick per frame
basepet.movementupdatebudgetms1
basepet.onlyqueuebasenavmovementsTrue
basepet.queuedmovementsallowedTrue
bear.population2Population active on the server, per square km
beehive.updatehiveinterval120How long before a Beehive will update
beehive.updatehivestatsinterval120How long before the Beehive will perform temperature and inside checks
beehive.xpincreaseperhoneycomb2How much the Nucleus’s XP should be increased per honeycomb generated
beeswarmmaster.amounttospawn3How many child swarms a master swarm will create
beeswarmmaster.killwithoutatargettime150How long a master swarm will stick around without a target
beeswarmmaster.secondsbetweenspawns60How long before a master swarm will create a child
boar.population5Population active on the server, per square km
chicken.population3Population active on the server, per square km
coverpointvolume.cover_point_sample_step_height2cover_point_sample_step_height defines the height of the steps we do vertically for the cover point volume’s cover point generation (smaller steps gives more accurate cover points, but at a higher processing cost). (default: 2.0)
coverpointvolume.cover_point_sample_step_size6cover_point_sample_step_size defines the size of the steps we do horizontally for the cover point volume’s cover point generation (smaller steps gives more accurate cover points, but at a higher processing cost). (default: 6.0)
cow.population2Population active on the server, per square km
crabs.population2Population active on the server, per square km
crocodile.population1Population active on the server, per square km
dungeonnavmesh.use_baked_terrain_meshTrue
dynamicnavmesh.use_baked_terrain_meshFalse
frankensteinbrain.movetowardsrate1
frankensteinpet.decayminutes180How long before a Frankenstein Pet dies un controlled and not asleep on table
frog.population2Population active on the server, per square km
jellyfish.population2Population active on the server, per square km
monumentnavmesh.use_baked_terrain_meshTrue
npcautoturret.forcedamageblockedsleepersTrueIf an npc turret is firing at a sleeping player and the player is blocked, still apply damage
npcautoturret.sleeperhostiledelay1200How many seconds until a sleeping player is considered hostile
panther.population0.5Population active on the server, per square km
polarbear.population1Population active on the server, per square km
rabbit.population2Population active on the server, per square km
seagullgroup.deepseafill0.5Share of the deep sea’s seagull land points given a group when it opens
seagullgroup.population0.6Seagull groups active on the server, per square km
seaturtle.forcesurfaceamount0
seaturtle.population2Population active on the server, per square km
sensecomponent.maxrefreshintervalseconds1
sensecomponent.minrefreshintervalseconds0.2
sheep.population2Population active on the server, per square km
simpleshark.disableFalse
simpleshark.forcesurfaceamount0
snakehazard.population5Population active on the server, per square km
squirrel.population2Population active on the server, per square km
stag.population3Population active on the server, per square km
tiger.population0.5Population active on the server, per square km
tigerfsm.chargerange20The range at which the tiger will charge instead of fleeing if aimed at
tigersneaktelegraphgrowl.minangle60Minimum angle for the tiger to growl when stalking a player
tigersneaktelegraphgrowl.mintimebetweengrowls5Time between growls when stalking a player
wolf2.population2Population active on the server, per square km
zombie.population0Population active on the server, per square km