Rust’s F1 console isn’t a cheat menu. It’s a settings panel Facepunch never bothered to build — every FPS cap, FOV slider, and combat replay tool in the game lives behind a single key, and almost none of it is exposed in the options menu. Miss it, and you’re playing with a fatter gun model, a hard 60 FPS ceiling your GPU could blow past, and zero way to check whether that fight you just lost was a bad peek or a genuine desync.
The next force wipe lands Thursday, September 3 at 2pm ET — first Thursday of the month, like every wipe before it. Binds you set now survive it; they live in a local config file, not on the server. Set them once, and you never touch this again.
Quick Start: 7 Things to Bind Before You Log In
Open the console with F1, paste each line, hit Enter. Do these in order — the first four matter in a fight, the last three save you from redoing this next wipe.
- Bandage on demand:
bind h "craft.add -2072273936 1"— queues one bandage instantly instead of digging through your crafting menu mid-fight - Combat replay:
bind j combatlog— see exactly what hit you, from where, and for how much, the second you die - Skinny gun:
graphics.vm_fov_scale false— pulls your weapon model back so it stops eating your peripheral vision - Uncap your framerate:
fps.limit -1— removes the client-side FPS ceiling; only worth it if your rig can actually push past it - Auto-run:
bind x forward;sprint— one tap holds a straight sprint, W cancels it - Spare push-to-talk:
bind mouse3 +voice— frees up V and puts voice on a button you won’t fat-finger - Save it:
writecfg— writes every bind above to your local config so it survives the September 3 wipe without re-entering anything
That’s the floor. Everything below explains what each command is actually doing under the hood, plus a few more worth adding depending on how you play.
How the Console Actually Works
Press F1 and you get five tabs — Console, Info, Net, Items, Tools — but the Console tab is the only one most players ever need. Everything you type there is either a command (an action, like kill) or a convar (a variable you set, like graphics.fov 100). Binds just attach either one to a key.
The syntax rules that trip people up:
- Basic bind:
bind key action— for examplebind k killrespawns you instantly - Chaining actions: a semicolon runs multiple commands off one key —
bind f1 consoletoggle;combatlogopens the console and prints your combat log in the same keypress - Hold vs. toggle — the part everyone gets backwards: a leading
+means the action only runs while the key is physically down.bind x forward;sprinttoggles a permanent sprint with one tap;bind x +forward;+sprintonly sprints while x is held, and stops the instant you let go. Neither is “correct” — a toggle is better for a long base run, a hold is better anywhere you might need to stop on a dime, like a monument doorway. - Multi-key combos: bracket syntax requires two keys together —
bind [leftshift+k] killstops you from rage-quitting a fight with a stray tap of K
Type find followed by any word and the console lists every command or convar containing it, with a one-line description — the fastest way to check whether a convar you saw in a Reddit thread still exists this patch.

combatlog: Reading Your Own Death, Not Just Reacting to It
Type combatlog and Rust prints your last engagements as a table: time, attacker, attacker’s Steam ID, target, weapon, ammo type, hit location, distance, your HP before and after, and a status flag. Twelve columns, one command, and it’s the difference between “I got sniped, RNG” and “he hit three headshots from 180 meters with an AK, so my base is spotted and I need to relocate.”
Two numbers control what you’re actually seeing. server.combatlogsize caps how many entries the log holds — the default dropped from 100 to 30 on most servers, so a long firefight can push earlier hits out of the log before you check it. server.combatlogdelay holds entries back for roughly 10 seconds before they appear, which is a server-side anti-stream-sniping measure, not a bug — don’t expect the log to update in real time mid-fight. Both are server convars, so a modded server’s owner can raise or lower them; official servers run the defaults.
I keep combatlog bound to a spare key instead of typing it out, because the moment I actually need it — right after dying — is the worst possible moment to be hunting for a command name. Bind it once, and every death becomes a data point instead of a guess.
FPS and FOV: The Two Settings That Change What You Can Actually See
Rust’s options menu gives you a framerate cap slider and a field-of-view slider that don’t tell you what they’re really doing. The console versions do.
fps.limit -1 removes the FPS ceiling entirely — worth setting only if your GPU has headroom to push past the client’s default cap; on hardware that’s already maxed out, an uncapped limit just adds heat and coil whine for zero extra frames. If you’re running mid-range or older hardware, our Rust low-end PC settings guide covers the graphics trade-offs that matter more than FPS caps on that hardware, and our best Rust PC settings guide has the full render-distance and shadow-quality breakdown for higher-end rigs.
perf followed by a number from 0 to 6 drops a live overlay in the corner showing FPS, frame latency, RAM, ping, and engine task counts — set it to 2 or higher when you’re troubleshooting stutter instead of guessing whether it’s your CPU or your connection.
graphics.fov sets your camera’s field of view — default 90, and most competitive players push it toward 100–110 for wider peripheral awareness, at the cost of objects at range looking smaller and slightly more distant. graphics.vm_fov_scale false is the “skinny gun” toggle: it only accepts true or false, not a number, and flipping it to false pulls your weapon model back and shrinks it, opening up the exact chunk of screen an AK normally blocks. Run the two together and you get a genuinely wider sightline in close-quarters fights — set graphics.fov 100, then graphics.vm_fov_scale false, and compare a compound doorway peek before and after.

Combat and Utility Binds Worth Building
Beyond the Quick Start list, two more are worth the thirty seconds to set up:
- Console clear:
bind o console.clear— wipes a cluttered console log so you’re not scrolling past old lines to find your last combatlog entry - Auto-run, hold version:
bind c +forward;+sprint— sprints only while c is held, useful in tight monument corridors where a toggle-sprint runs you into a wall; bind it to a second key alongside your toggle version and use whichever fits the moment
The bandage bind’s item ID — -2072273936 — is tied to the item itself, not a server setting, so it’s identical everywhere. The same craft.add [item ID] [amount] pattern works for any item once you know its ID, though bandages are worth setting up first since they’re what you need fastest under fire.
Which of These Actually Matter for How You Play
Not every command here earns a slot on your keyboard. This is roughly how I’d prioritize them by playstyle:
| If you are… | Set up first | Skip for now |
|---|---|---|
| New to Rust | combatlog bind, bandage bind, auto-run — these fix the “I don’t understand what just happened” problem before anything else | FOV/FPS tuning — get comfortable with default settings before changing what you see |
| Casual, limited playtime | The full Quick Start list — it’s a five-minute setup that pays off every session | Multi-key combos and the console-clear bind — marginal time savings not worth the setup for infrequent play |
| Hardcore PvP / clan play | combatlog with a low server.combatlogdelay awareness, skinny gun, uncapped FPS, hold-version auto-run for monument fights | Nothing — set all of it, plus check find fov and find craft each patch for new convars |
| Base builder / farmer | Auto-run toggle for long resource runs, craft.add binds for common farming items (not just bandages) | FOV tuning — matters far less when you’re not in frequent PvP |
If a Bind Isn’t Sticking
Three things break binds, in order of how often they actually happen:
You forgot writecfg. Binds set in the console apply immediately but don’t persist to disk until you save them — type writecfg once after setting any bind, or it resets next time you launch Rust. This is the single most common reason a bind “worked yesterday” and doesn’t today.
The key’s already taken. Binding over a default key (like rebinding E, which handles interact/loot/mount) silently overwrites the old function — if interacting with doors stops working after a bind session, check what you bound to E. Use unbind [key], then re-bind with a spare key instead.
The convar got renamed. Console commands occasionally change between updates. If a command you copied from an old guide throws an “unknown command” error, run find plus a keyword from the command to see its current name.
FAQ
Will using console commands get me banned?
No — every command here is a standard client convar, not a protected one. EAC gates a separate category of “cheat convars” behind server-side flags that can’t be enabled on official or verified community servers at all; FOV, FPS caps, combatlog, and crafting shortcuts sit outside that gate entirely, which is why they’re openly documented on Facepunch’s own wiki. The risk isn’t the console — it’s third-party software that claims to unlock commands the game itself blocks.
Why does my combatlog look empty after a fight?
Either you’re inside the roughly 10-second delay window Facepunch built in to stop players metagaming a fight from a stream, or the server’s server.combatlogsize is set low enough that older entries got pushed out before you checked. Wait a few seconds and check again before assuming it’s broken.
Is uncapping FPS with fps.limit -1 always worth it?
Only if your GPU is the bottleneck holding you under the client’s default cap. If you’re CPU-bound instead, removing the ceiling just lets your GPU run hotter for frames you weren’t going to see smoothly anyway. Check your actual FPS with the fps command before and after to see if it changed anything.
Should I use the toggle or hold version of auto-run?
Toggle for open resource runs where you won’t need to stop suddenly; hold for anywhere with doorways or a fight that could start without warning. Most players who bind both end up defaulting to hold once they’ve eaten a wall at full sprint during a toggle run.
Key Takeaways
Rust’s real settings menu is the F1 console, and almost none of it requires admin access or a modded server — these are the same convars every player has, just not exposed anywhere the game bothers to tell you about. Set the seven Quick Start binds before the September 3 wipe, run writecfg so they stick, and bind combatlog somewhere you’ll actually reach for it after a bad fight — that one command turns “I got outplayed” into “here’s exactly what happened and what I do differently next time.”
Sources
- Useful Console Commands — Rust Wiki (Facepunch)
- Keybinds — Rust Wiki (Facepunch)
- F1 Console — Rust Wiki (Facepunch)
- RUST Combat Log Command, Hints and Tips — Corrosion Hour
- Rust Keybinds & Console Commands (2026) — RustMates
- How to Set FOV Keybind in Rust — Physgun
- Rust Auto Run Bind (2026) — TradeIt.gg
- RUST Admin Commands List — Corrosion Hour
- Rust Force Wipe Schedule — RustBaseDesign
I've been playing video games for over 20 years, spanning everything from early PC titles to modern open-world games. I started Switchblade Gaming to publish the kind of accurate, well-researched guides I always wanted to find — built on primary sources, tested in-game, and kept up to date after patches. I currently focus on Minecraft and Pokémon GO.
