Systems With Their Own Control Panels
Under Rust
When a Feature Becomes More Than an Object
Some things in Rust begin as objects.
Then they accumulate rules.
Timing.
AI.
Population.
Economy.
Lifecycle.
Performance limits.
Administrative operations.
Eventually, what looked like one object has enough machinery behind it to justify its own console namespace.
Current Rust contains many examples:
beehive.*
beeswarmai.*
beeswarmmaster.*
npcvendingmachine.*
travellingvendor.*
bike.*
clan.*
deepsea.*
The existence of a namespace does not automatically mean the system is huge.
Some contain only a handful of controls.
Others expose dozens.
But they all give us the same clue:
Facepunch decided this feature needed its own administrative vocabulary.
Bees Became Three Systems
Bees arrived as part of the March 2025 Crafting Update.
The player-facing feature sounds relatively simple:
find wild honeycomb;
raise bees in a Beehive;
produce honey;
or put bees in a grenade and make them someone else’s problem. (Rust)
The console tells a more complicated story.
Rust does not have merely:
bee.*
It currently separates:
beehive.*
beeswarmai.*
beeswarmmaster.* (Corrosion Hour)
That is already three layers.
The Hive Has Its Own Schedule
| ConVar | Default | Unit / Range | Function |
|---|---|---|---|
beehive.updatehiveinterval |
120 |
seconds | Hive update interval |
beehive.updatehivestatsinterval |
120 |
seconds | Temperature / inside checks |
beehive.xpincreaseperhoneycomb |
2 |
Undocumented | Nucleus XP per honeycomb |
These values are publicly documented in the current admin-command list and Corrosion Hour’s Beekeeping guide. (Corrosion Hour)
The distinction between the first two is useful.
The hive can have a general update schedule while environmental conditions such as temperature and enclosure are checked on their own interval.
Facepunch’s player-facing description confirms that hives care about being outside, humidity and temperature. (Rust)
So the Beehive is not simply:
wait X minutes → honey appears.
It is periodically evaluating an environment.
The Swarm Has AI
Then there is:
beeswarmai.*
| ConVar | Default | Unit / Range | Function |
|---|---|---|---|
beeswarmai.breakrange |
15 |
distance | Leave current target |
beeswarmai.searchrange |
10 |
distance | Find new targets |
beeswarmai.flamesettingdistance |
5.5 |
distance | Fire ignition distance |
beeswarmai.killwithouttargettime |
150 |
time, unit not publicly stated | No-target lifetime |
beeswarmai.think_budget_ms |
0.1 |
milliseconds | AI thinking budget per frame |
beeswarmai.waterthreshold |
0.6 |
Undocumented | Water threshold for ignoring player |
beeswarmai.disable |
FALSE |
TRUE / FALSE |
Swarm AI disable |
This is an excellent miniature version of the AI architecture from The Living Island.
The swarm needs:
target acquisition
target abandonment
environmental reactions
lifetime
and even:
a CPU thinking budget.
Facepunch’s released gameplay mirrors several of these concepts: bee swarms attack nearby players, can be countered with fire or water, and were later rebalanced as a distinct combat system. (Rust)
Then Something Has to Create the Swarms
The third namespace is:
beeswarmmaster.*
| ConVar | Default | Unit | Function |
|---|---|---|---|
beeswarmmaster.amounttospawn |
3 |
count | Child swarms created |
beeswarmmaster.secondsbetweenspawns |
60 |
seconds | Spawn interval |
beeswarmmaster.killwithoutatargettime |
150 |
time, unit not publicly stated | No-target lifetime |
Facepunch describes the Bee Grenade as creating a swarm that can itself create up to three smaller attacking swarms. (Rust)
So one feature already separates:
Beehive production
Swarm AI
and:
Swarm creation / management
A jar of angry bees turns out to have architecture.
NPC Vending Machines Became an Economy
An NPC vending machine looks even simpler.
There is an item.
There is a price.
Buy it.
But in July 2024 Facepunch introduced dynamic vendor pricing. Prices began changing according to how popular each item was on that server. (Rust)
That immediately required a control system of its own:
npcvendingmachine.*
Current Dynamic Pricing Controls
| ConVar | Default | Range / Format | Function |
|---|---|---|---|
npcvendingmachine.dynamicpricingenabled |
TRUE |
TRUE / FALSE |
Dynamic pricing |
npcvendingmachine.minimumpricemultiplier |
0.5 |
multiplier | Minimum price |
npcvendingmachine.maximumpricemultiplier |
2 |
multiplier | Maximum price |
npcvendingmachine.startingpricemultiplier |
2 |
multiplier | Starting price |
npcvendingmachine.pricedecreaseamount |
0.05 |
0.05 = 5% |
Price decrease |
npcvendingmachine.priceincreaseamount |
0.1 |
0.1 = 10% |
Price increase |
npcvendingmachine.priceupdatefrequencydefault |
3 |
0.5–72 hours |
Monthly/default update interval |
npcvendingmachine.priceupdatefrequencybiweekly |
2 |
0.5–72 hours |
Biweekly update interval |
npcvendingmachine.priceupdatefrequencyweekly |
1 |
0.5–72 hours |
Weekly update interval |
The public admin list provides both the current defaults and, unusually, an explicit accepted range of 0.5 to 72 real-time hours for the three update-frequency variables. (Corrosion Hour)
That is exactly the kind of documented range we want to preserve rather than merely showing the default.
The Control Panel Evolved With the Feature
The original July 2024 implementation evaluated sales in six in-game-hour windows, increasing prices by 10% when demand was above average and decreasing them by 5% when demand was below average. Prices were constrained between 50% and 200% of the original cost. (Rust)
It did not stay that way.
In August, Facepunch moved the calculations to real time and changed the default update period to five real-time hours. (Rust)
In September, the cadence became wipe-length dependent:
monthly: 3 hours
biweekly: 2 hours
weekly: 1 hour (Rust)
That development history is useful.
The namespace did not appear because somebody wanted more console commands.
The feature itself became complex enough that administrators needed independent control over:
enablement
minimum
maximum
starting condition
upward movement
downward movement
and:
sampling cadence
The vending machine had become an economy.
It Also Has Administrative Operations
Commands include:
npcvendingmachine.printallpricechanges
and:
npcvendingmachine.resetdynamicpricing
as well as tools for simulating time through the vending system. (Corrosion Hour)
That distinction appears repeatedly in dedicated namespaces:
ConVars configure the system.
Commands inspect or manipulate its current state.
The Travelling Vendor Has a Lifecycle
The Travelling Vendor arrived in the same July 2024 update. Facepunch described it as an event roaming the roads for roughly 30 minutes, with an administrative command available to force the event to start. (Rust)
Current controls include:
| ConVar | Default | Unit / Values | Function |
|---|---|---|---|
travellingvendor.should_spawn |
TRUE |
TRUE / FALSE |
Event spawning |
travellingvendor.alive_time_seconds |
1800 |
seconds | Vendor lifetime |
travellingvendor.attempt_pullovers |
TRUE |
TRUE / FALSE |
Pullover attempts |
travellingvendor.max_speed |
5 |
Undocumented | Maximum speed |
travellingvendor.should_destroy_buildings |
FALSE |
TRUE / FALSE |
Building destruction |
Commands include:
travellingvendor.spawn
and:
travellingvendor.startevent. (Corrosion Hour)
Facepunch added the adjustable travellingvendor.max_speed control in August 2024. (Rust)
Again, one NPC encounter is actually an event with:
permission to exist
spawn operation
lifetime
movement
stopping behavior
and:
interaction with obstacles.
Bikes Have a Small Control Panel
Bicycles and motorbikes arrived together in July 2024.
Facepunch deliberately gave them different world placement: bicycles could appear along roadsides and at monuments, while motorbikes appeared at selected monuments. (Rust)
The current bike.* namespace mirrors some of that distinction:
| ConVar | Default | Unit / Values | Function |
|---|---|---|---|
bike.motorbikemonumentpopulation |
1 |
population setting | Motorbikes at monuments |
bike.pedalmonumentpopulation |
1 |
population setting | Pedal bikes at monuments |
bike.pedalroadsidepopulation |
1 |
population setting | Pedal bikes at roadside spawns |
bike.outsidedecayminutes |
1440 |
minutes | Outside decay |
bike.doplayerdamage |
TRUE |
TRUE / FALSE |
Crash damage |
bike.playerdamageragdolltheshold |
10 |
damage threshold | Rider ragdoll threshold |
This is a much smaller namespace than AI or Deep Sea.
But it still demonstrates the same principle.
A vehicle is not merely:
model + wheels.
The server may need controls for:
where it appears
how long it survives unattended
and:
what its collisions do to the player.
Clans Became More Than Teams
Rust’s new Clan System entered the released game in July 2026.
Facepunch describes clans as an advanced version of teams with more members, roles and permissions, separate clan chat, announcements, Clan Tables and clan-member map information. The system is disabled in Hardcore mode. (Rust)
That feature also brought a dedicated:
clan.*
namespace.
Examples include:
| ConVar | Publicly documented default | Function |
|---|---|---|
clan.editsrequireclantable |
TRUE |
Require Clan Table for changes |
clan.maxmembercount |
100 |
Maximum clan members |
clan.scorefordestroyingbradley |
10 |
Bradley score |
clan.scorefordestroyingtoolcupboards |
10 |
Enemy TC score |
clan.scoreforhackingcrates |
5 |
Hack score |
clan.scoreforkillingplayerinotherclan |
10 |
Enemy-clan kill score |
clan.scoreforkilledbyplayerinotherclan |
-10 |
Death penalty |
A dedicated Corrosion Hour guide published around the system’s release documents these defaults. (Corrosion Hour)
One value currently deserves a warning rather than a false certainty:
clan.enabled
The general Corrosion Hour command inventory currently reports a raw default of FALSE, while its dedicated June 2026 Clan guide reports TRUE. Facepunch’s released July documentation confirms that the Clan System is active in normal Rust and specifically disabled in Hardcore. (Corrosion Hour)
So this is one of those places where:
public documentation disagrees
and the disagreement itself should be recorded rather than silently resolved.
A Social System Can Have Scores
The interesting part of clan.* is not simply that an administrator can change the maximum clan size.
Rust also exposes scoring for actions such as:
destroying Bradley;
destroying Tool Cupboards;
hacking crates;
killing players from other clans;
and being killed by players from another clan. (Corrosion Hour)
That tells us the Clan System is not only:
membership + chat.
It contains the beginnings of a measurable activity layer.
A social group has become an independently configurable gameplay system.
Then There Is Deep Sea
At the opposite end of the scale is:
deepsea.*
The Deep Sea arrived in February 2026 as an offshore region accessed by sailing toward the map edge. Facepunch describes it as an intermittently opening and closing high-risk region containing Tropical Islands, Floating Cities, Ghost Ships and Scientist-controlled boats. Building is disabled there, and ordinary content does not respawn while the region is active. (Rust)
This is not a tiny feature.
And its namespace looks like it.
Deep Sea Has World Structure
A selection of current controls:
| ConVar | Default | Unit / Values | Function |
|---|---|---|---|
deepsea.enabled |
TRUE |
TRUE / FALSE |
Deep Sea enabled |
deepsea.block_building |
TRUE |
TRUE / FALSE |
Building restriction |
deepsea.floatingcity_count |
1 |
count | Floating Cities |
deepsea.ghostship_count |
4 |
count | Ghost Ships |
deepsea.hackablecrate_count |
1 |
count | Hackable crates |
deepsea.island_count |
6 |
count | Deep Sea islands |
deepsea.rhib_count |
4 |
count | RHIB groups |
deepsea.portals_use_whitelist |
TRUE |
TRUE / FALSE |
Portal whitelist |
deepsea.forceentranceportaldirection |
0 |
enum | Portal direction |
For forceentranceportaldirection, the public command list actually documents the enum:
0 = map-based
1 = North
2 = East
3 = South
4 = West (Corrosion Hour)
That is exactly the kind of non-obvious numbered mode that needs to be explained.
Deep Sea Also Has a Lifecycle
The region is temporary.
Current controls include:
| ConVar | Default | Unit | Function |
|---|---|---|---|
deepsea.wipecooldown |
5400 |
seconds | Time before reopening |
deepsea.wipeduration |
10800 |
seconds | Deep Sea wipe duration |
deepsea.wipeendphaseduration |
1800 |
seconds | Final wipe phase |
deepsea.wiperadiationphaseduration |
300 |
seconds | Radiation ramp phase |
That gives Deep Sea something most ordinary monuments do not have:
a configurable death cycle.
Facepunch designed the region to open and close like a world event rather than remain permanently available. (Rust)
So its control panel needs to manage not only what exists inside the region, but:
when the region exists
when it becomes dangerous
when it closes
and:
when it can return.
Deep Sea Has Administrative Tools Too
The namespace also contains commands such as:
deepsea.open
deepsea.close
deepsea.createdeepsea
deepsea.enterdeepsea
deepsea.leavedeepsea
deepsea.printstate
deepsea.printentitycount
deepsea.printloot
deepsea.printtimetowipe
deepsea.spawnfloatingcityhere
deepsea.spawnghostshiphere
deepsea.spawnislandhere
deepsea.settimetowipe (Corrosion Hour)
This is a completely different scale from:
weather.rain = 0.5
The Deep Sea namespace behaves almost like an administration interface for a secondary world.
Even a Dedicated Namespace Does Not Contain Everything
This is important.
Having:
deepsea.*
does not mean every Deep Sea setting lives there.
Current Rust also exposes:
server.deepseafogofwar = TRUE
and:
net.visibilityradiusdeepsea = 20 (Corrosion Hour)
Those belong respectively to:
server.*
and:
net.*
because they concern systems broader than Deep Sea itself.
This is a useful correction to the idea of namespaces as sealed boxes.
A dedicated namespace tells us:
This feature has its own control surface.
It does not tell us:
Every system affecting this feature lives inside that prefix.
The feature still uses networking.
Mapping.
AI.
Weather.
NPC vendors.
Safe zones.
Navigation.
Those belong to their own systems.
Small Namespace, Large Namespace
Compare the examples.
A Beehive has three direct controls.
A bike has six.
The Travelling Vendor has a small event lifecycle.
NPC vending machines have enough economic state to manage dynamic prices.
Clans have membership rules and scoring.
Deep Sea has counts, placement, portals, world lifecycle, administrative teleportation and its own wipe process.
There is no minimum size that makes a namespace important.
The namespace itself tells us something:
this feature has enough independent state that Facepunch wanted administrators and developers to address it by name.
The Object Is Often the Least Interesting Part
A Beehive is an object.
But:
beehive.*
is a production system.
A Bee Grenade is an object.
But:
beeswarmai.*
is AI.
A vending machine is an object.
But:
npcvendingmachine.*
is an economy.
A vendor is an NPC.
But:
travellingvendor.*
is an event lifecycle.
A bicycle is a vehicle.
But:
bike.*
includes distribution, decay and collision consequences.
A Clan Table is a deployable.
But:
clan.*
is a social system.
Floating City is a monument.
But:
deepsea.*
is part of a temporary secondary world.
That is what these small control panels reveal.
Rust’s visible world is full of objects.
Underneath them are systems.
And once a system becomes complicated enough, sooner or later it tends to acquire a name.
Views: 4


