Chernobyl Simulator has a built-in console where you can tweak settings, control
the reactor, and run handy commands. Most things you can do from the menus can
also be typed here, plus a few extras.
Open the console with F1. Type a command and press Enter. Press F1 again
to close it.
Looking for the keyboard and mouse controls instead? See
Controls & Key Bindings.
How the console works (the short version)
There are two kinds of things you can type:
- Settings (called convars) hold a value, like your mouse sensitivity or
master volume.
- Type the name on its own to see its current value:
camera.fov
- Type the name followed by a value to change it:
camera.fov 75
- Commands do something when you run them, like
quit or noclip.
A few handy helpers:
| Type this |
What it does |
help <name> |
Explain what a setting or command does |
find <word> |
Search every setting and command for a word (e.g. find volume) |
reset <setting> |
Put a setting back to its default value |
cheats 1 |
Turn on cheats (see Cheats — disables achievements) |
Saving: Your changes are remembered between sessions automatically for most
settings. A few live-only settings (the ones used for held buttons, plus debug
toggles) intentionally reset every time you play.
Cheats
A handful of commands are locked behind cheat mode because they let you bend the
rules of the simulation. To use them:
⚠️ Turning cheats on disables achievements for that session. Cheat-only
settings are marked (cheat) throughout this page. Set cheats 0 to turn them
back off.
Display
| Setting / command |
What it does |
display.mode |
Window mode: Windowed, FullScreenWindow, ExclusiveFullScreen, MaximizedWindow |
display.monitor |
Which monitor to play on (0 = first) |
display.resolution |
Resolution as "1920x1080", or "native" |
display.resolutions |
List the resolutions your monitor supports |
display.monitors |
List your connected monitors |
Graphics
| Setting / command |
What it does |
graphics.quality |
Overall quality preset |
graphics.render_scale |
Render resolution multiplier (1 = full, lower = sharper performance) |
graphics.vsync |
VSync: 0 off, 1 on (2–4 sync every N frames) |
fps.limit |
Frame-rate cap (0 = uncapped) |
graphics.lod_bias |
How far away detailed models stay visible (0.5–5) |
graphics.af_limit |
Texture sharpness at angles / anisotropic filtering (1–16; 1 = off) |
graphics.global_texture_mipmap_limit |
Lower texture resolution to save memory (0 = full) |
graphics.hud |
Show or hide the in-game HUD overlay |
graphics.rem_units |
Show radiation dose in rem instead of sieverts |
Audio
All volumes go from 0 (silent) to 1 (full).
| Setting |
What it controls |
audio.master |
Overall volume |
audio.environment |
Ambience / environment |
audio.sfx |
Sound effects |
audio.music |
Music |
audio.alarms |
Alarms |
audio.ui |
Menu / interface sounds |
Camera & look
| Setting / command |
What it does |
camera.fov |
Field of view, in degrees (40–90) |
camera.fov_zoomed |
Field of view while zoomed in (10–90) |
camera.sensitivity_x |
Horizontal look sensitivity (0.1–5) |
camera.sensitivity_y |
Vertical look sensitivity (0.1–5) |
camera.invert_y |
Invert vertical mouse look |
camera.preset <n> |
Snap to a fixed camera view (1, 2, 3…); run again to return to the player |
Game & interface
| Setting / command |
What it does |
global.locale |
Language code (e.g. en, ru, ko) |
game.show_tooltips |
Show interaction tooltips |
game.show_tasks |
Show the task / objective list |
game.pause_in_manual |
Pause the simulation while the manual is open |
game.pause_in_menu |
Pause the simulation while the menu is open |
general.open_manual |
Open or close the in-game manual |
version |
Print the current game version |
quit |
Quit the game |
Console housekeeping
| Command |
What it does |
console.toggle |
Open or close the console (F1) |
console.clear |
Clear the console text |
console.copy |
Copy the console log to your clipboard |
ping |
Replies "Pong!" — a quick check that the console is alive |
Reactor controls
The reactor is operated from the VIUR control panel, but every control also has a
console name so you can bind it to a key (see
Controls & Key Bindings). Most of these are held actions:
they do something while the key is held down.
Power & rods
| Setting / command |
What it does |
reactor.running |
Pause or resume the reactor simulation |
reactor.rods_withdraw |
Held: raise the selected control rods |
reactor.rods_insert |
Held: lower the selected control rods |
reactor.rods_reset |
Held: clear the current rod selection |
reactor.setpoint_increase |
Held: raise the master power setpoint |
reactor.setpoint_decrease |
Held: lower the master power setpoint |
Emergency protection (AZ)
| Command |
What it does |
reactor.az5_trigger |
Trigger AZ-5 — full emergency SCRAM (all rods in) |
reactor.az3_trigger |
Trigger AZ-3 — partial emergency rod insertion |
Alarms
| Setting |
What it does |
reactor.alarm_remove_signal |
Held: acknowledge / clear the alarm signal |
reactor.alarm_remove_flashing |
Held: stop the alarm panel flashing |
reactor.alarm_remove_sound |
Held: silence the alarm sound |
Automatic regulators (AR / ARM / AR1 / AR2)
The reactor's automatic power regulators. ARM, AR1 and AR2 are individual
channels; each works the same way. (AR below refers to the shared master
setpoint controls.)
| Setting |
What it does |
reactor.ar_setpoint_increase / ..._decrease |
Held: raise / lower the AR setpoint |
reactor.arm_engage / reactor.ar1_engage / reactor.ar2_engage |
Enable that automatic regulator |
reactor.arm_deblock / reactor.ar1_deblock / reactor.ar2_deblock |
Unlock (deblock) that regulator |
reactor.arm_control / reactor.ar1_control / reactor.ar2_control |
Mode: 0 automatic, 1 remote, 2 individual |
reactor.arm_rods_up / ..._down (and ar1_, ar2_) |
Held: drive that regulator's rods up / down |
reactor.arm_sync_rods / reactor.ar1_sync_rods / reactor.ar2_sync_rods |
Synchronize that regulator's rods |
reactor.arm_increase_setpoint / ..._decrease_setpoint |
Held: change the ARM setpoint |
reactor.ar1_setpoint_increase / ..._decrease (and ar2_) |
Held: change that channel's setpoint |
Advanced regulator interlocks
| Setting |
What it does |
reactor.arm_deblock_measurement / ar1_ / ar2_ |
Deblock the measurement-fault interlock |
reactor.arm_measurement_mode / ar1_ / ar2_ |
Hard measurement-blocking mode |
reactor.arm_execution_mode / ar1_ / ar2_ |
Hard synchronizer (execution) mode |
reactor.kaleidoscope |
Display select: 0 AR1, 1 Kaleidoscope, 2 AR2 |
reactor.pk_reset |
Reset the power-compensation (PK) system |
Local regulators (LAR / LAZ)
| Setting |
What it does |
reactor.lar_enable |
Switch the local regulator to automatic control |
reactor.lar_engage |
Power on the local automatic regulator |
reactor.lar_deblock |
Unlock (deblock) the local regulator |
reactor.lar_setpoint_increase / ..._decrease |
Held: raise / lower the LAR setpoint |
reactor.lar1_setpoint_increase / ..._decrease |
Held: change the LAR1 setpoint |
reactor.lar2_setpoint_increase / ..._decrease |
Held: change the LAR2 setpoint |
reactor.laz_enable |
Enable local emergency protection |
reactor.laz_setpoint_increase / ..._decrease |
Held: raise / lower the LAZ setpoint |
reactor.lower_power_enable |
Enable lower-power protection |
reactor.lower_period_enable |
Enable lower-period (reactor-period) protection |
Reactor cheats
These let you override the safety systems and speed up the physics. They require
cheats 1.
| Setting / command |
What it does |
reactor.admin_knobs |
Show the admin override knobs (cheat) |
reactor.rods_admin_up |
Instantly withdraw the next control rod (cheat) |
reactor.max_rods_withdrawal |
Max rods that can be withdrawn at once (cheat) |
reactor.bypass_az |
Bypass the AZ emergency-protection interlocks (cheat) |
reactor.bypass_power_lock |
Bypass the high-power rod-withdrawal lock (cheat) |
reactor.bypass_prohibition |
Bypass rod-movement prohibition interlocks (cheat) |
reactor.fuel_thermal_delay |
Fuel thermal response delay, in seconds (cheat) |
reactor.xenon_speedup_multiplier |
Speed up xenon dynamics (cheat) |
reactor.burnup_speedup_multiplier |
Speed up fuel burnup (cheat) |
reactor.xenon_absorption_multiplier |
Xenon neutron-absorption multiplier (cheat) |
Reactor hall crane
The polar crane in the reactor hall. All held actions.
| Setting |
What it does |
crane.forward / crane.backward |
Held: drive the trolley forward / backward |
crane.left / crane.right |
Held: drive the bridge left / right |
crane.winch_up / crane.winch_down |
Held: raise / lower the hook |
Player & movement
The movement controls below are held buttons — you normally drive them by
holding the bound key (see Controls & Key Bindings) rather
than typing them.
| Setting / command |
What it does |
move.forward / move.backward |
Held: move forward / back |
move.left / move.right |
Held: strafe left / right |
move.jump |
Held: jump |
move.sprint |
Held: sprint |
move.duck |
Held: crouch |
buttons.interact |
Interact with whatever you're looking at, or drop a held object |
buttons.increase |
Held: primary interact (e.g. turn a knob up) |
buttons.decrease |
Held: secondary interact (turn a knob down), or throw a held object |
buttons.zoom |
Held: zoom in |
camera.locked |
Lock the mouse to the window for mouselook |
player.printpos |
Print your current position |
player.resetpos |
Teleport back to spawn |
noclip |
Toggle free-fly mode (no gravity, walk through walls) |
Advanced & developer tools
Most players won't need these — they're for performance tuning and debugging.
Performance & system
| Setting / command |
What it does |
global.perf |
Performance overlay: 0 off, 1 FPS, 2 + memory, 3 + frame breakdown |
system.cpu_priority |
Main-thread priority |
system.uid |
Print this device's unique ID |
sysinfo |
Print system information |
textures |
Print the memory size of every loaded texture |
gc.buffer |
Memory growth (MB) before an automatic cleanup |
gc.unload |
Unload unused assets now |
gc.collect |
Force a garbage collection now |
Physics
| Setting |
What it does |
physics.bounce_threshold |
Minimum speed for a collision to bounce |
physics.sleep_threshold |
Energy below which objects go to sleep |
physics.solver_iteration_count |
Physics solver iterations per step |
Reactor simulation tuning
| Setting |
What it does |
reactor.tick_rate |
Simulation steps per second |
reactor.cpu_priority |
Reactor thread priority |
reactor.diffusion_tolerance |
Solver k-eff convergence tolerance |
reactor.flux_tolerance |
Solver flux convergence tolerance |
reactor.max_iterations |
Solver max iterations per step |
reactor.diffusion_verbose |
Log solver diagnostics |
Debug
| Setting / command |
What it does |
debug.admin_panel |
Toggle the admin panel (cheat) |
debug.draw_colliders |
Draw collision boxes (blue interactable, yellow trigger, green other) |
debug.surf |
Log per-frame movement state |
Profiler
The profiler is only included in special profiling builds (it does nothing in the
normal game). When available, a typical session is
profiler.enabled 1; profiler.overlay 1.
| Setting / command |
What it does |
profiler.enabled |
Master profiler switch |
profiler.overlay |
Show the on-screen profile tree |
profiler.overlay_refresh |
Overlay rebuild interval (seconds) |
profiler.min_ms |
Hide tree nodes faster than this |
profiler.depth |
Max tree depth shown |
profiler.sort |
Child sort key: time, alloc, or calls |
profiler.spike_ms |
Auto-dump the tree on frames over this many ms (0 = off) |
profiler.spike_cooldown |
Minimum seconds between spike dumps |
profiler.capture_min_ms |
Skip CSV rows under this many ms |
profiler.playerloop |
Bracket every engine system |
profiler.alloc |
Track memory allocated per scope |
profiler.smoothing |
Smoothing factor for the average column |
profiler.frame_ms |
Smoothed main-thread frame time (read-only) |
profiler.dump [depth] |
Print the profile tree |
profiler.reset |
Clear the profile tree and stats |
profiler.capture [frames] |
Record per-frame data to a CSV file |
profiler.capture_stop |
Stop a running capture early |