I wrote this guide after building the bind maker,
which meant reading everything Facepunch has published about bind and testing
the edge cases against the game. Most of what follows is that testing written down —
including the crafts-versus-items mistake, which I made myself with pistol ammo before I
understood why the queue kept handing me four times what I asked for.
Crafting in Rust is a lot of clicking. Opening the crafting menu, finding the item, setting a quantity, repeating it for every piece of a kit — it is slow, and it is slowest exactly when you can least afford it, which is the thirty seconds after you respawn. A craft bind collapses all of that into a single keypress.
Binds are a stock feature of the Rust console. Nothing here is a mod, a macro, or a third-party program that replays input — it is one console command that ships with the game.
The two commands involved
A craft bind is really two commands stacked together. The first is
craft.add, which queues something into your crafting menu:
craft.add -1685290200 1
That takes two arguments: an item ID and a number of crafts. Typed on
its own in the console it queues the item once, immediately. The second command is
bind, which attaches any console command to a key:
bind numpad3 craft.add -1685290200 1
Now numpad 3 queues a craft of 12 gauge buckshot every time you press it. That is the whole mechanism. Everything below is detail on top of those two lines.
Where item IDs come from
Rust identifies every item by a signed 32-bit number. They are not sequential, they
are frequently negative, and there is no pattern to them —
-1685290200 is buckshot, 1079279582 is a syringe. You cannot
guess one, and using the wrong one silently queues the wrong item.
There are 1,264 of them. We keep the full list on the item ID reference, one page per item, each with the ID, the short name, the crafting recipe and a ready-made bind. If you would rather not look anything up, the bind maker searches them by name and writes the ID into the command for you.
ammo.shotgun. Those work with server-side commands such as
inventory.give, but craft.add wants the numeric ID.
The number is crafts, not items
This is the single most common mistake, and it is not obvious from the command. The
second argument to craft.add is how many times to run the recipe,
not how many items you end up holding.
Most items craft one at a time, so for them the distinction never comes up. But plenty of items come out in batches. One craft of 12 gauge buckshot produces 2 shells. One craft of pistol bullets produces 4 rounds. So:
craft.add 785728077 7
… is seven crafts of pistol bullets, which is 28 rounds, not 7. If you
wanted roughly 25 rounds, seven crafts is the right answer and you get three spare. If
you typed 25 expecting 25 rounds you would have queued 100.
Our craft yields guide lists every item in the game that produces more than one per craft. The bind maker handles the conversion automatically: you enter the number of items you actually want, and it emits the smallest number of crafts that reaches it.
Putting several items on one key
Console commands chain with semicolons, and bind accepts the whole chain
as one argument. That is what turns a craft bind into a loadout bind:
bind numpad3 craft.add 1079279582 6;craft.add -2072273936 6;craft.add 785728077 7
Six syringes, six bandages and 28 pistol rounds, in the order written, from one press. The practical limit on chain length is readability, not the game: a very long line is painful to retype if you get one digit wrong.
Order matters in one respect. The crafting queue processes in the order it was added, so put the thing you need first, first.
Choosing a key
Rust accepts a specific set of key tokens, and they are not always what you would
guess — it is numpad3, not num3 or kp3. We
keep the full list of 114 bindable keys with the
exact spelling for each.
The numpad is the usual home for craft binds, for a practical reason: those keys are not bound to anything by default and are nowhere near the movement keys, so a misfire during a fight is unlikely. Function keys F2 through F12 are the other common choice.
Avoid binding over a key you actually use. Overwriting w with a craft
command means w no longer walks forward, and the cause is not obvious in
the moment.
Modifier combinations
If you are out of free keys, Rust supports a two-key form using square brackets:
bind [leftshift+k] craft.add -1685290200 5
The documented modifiers are leftshift, rightshift,
leftcontrol, rightcontrol and leftcommand. The
combination form leaves the plain key free — binding [leftshift+k]
does not disturb whatever k already does.
Changing and removing a bind
To change a bind, just bind the key again. The new line replaces the old one and there is no need to clear it first.
To remove one, run bind with the key and nothing after it:
bind numpad3
That clears whatever was on numpad 3 and hands the key back to the default it had, if it had one.
Where binds are stored
Binds are written to the client config, in cfg/keys.cfg inside your Rust
installation folder, and they persist across sessions and servers. You set a craft bind
once and it is still there next wipe.
Two consequences worth knowing. Because it is a plain text file, a bind you spent time building can be backed up by copying that file somewhere safe. And because verifying game files or reinstalling can reset it, binds vanishing after an update is usually explained by that rather than by anything you did.
What a craft bind does not do
Worth being precise about, because craft.add is sometimes described as
though it bypasses something. It does not.
- It respects blueprints. If you have not learned the item, the craft does not queue.
- It respects workbench level. Away from the required bench it fails exactly the way clicking the item in the menu would.
- It respects resources. The command queues crafts; the crafts still cost the materials they always did.
- It is client side. Nothing reaches the server that would not be sent by crafting through the menu, which is why binds work on any server without permission.
A craft bind saves you clicks and nothing else. That is the entire appeal, and it is also why it is uncontroversial.
Troubleshooting
Nothing happens when I press the key
Check the key token spelling first. A typo fails silently, because Rust binds a key that does not exist rather than complaining. Then check that you have the blueprint and are in range of the right workbench.
I get far more items than I asked for
You have hit the crafts-versus-items distinction above. Divide what you wanted by the craft yield, and round up.
The console rejects the line
Usually a missing space between the item ID and the quantity, or a semicolon padded with spaces in a way that split the chain. The safest fix is to build the line with the bind maker and copy it whole.
A worked example
Say you want a med-and-ammo key: six syringes, six bandages, and enough pistol ammo for a fight. Pistol bullets craft 4 at a time, so 25 rounds means 7 crafts.
bind numpad3 craft.add 1079279582 6;craft.add -2072273936 6;craft.add 785728077 7
Press F1, paste, press enter, close the console. From then on numpad 3 queues the set. There are more ready-made examples in the loadout bind guide.
If you would rather not assemble the line by hand, the bind maker does the item lookup, the yield maths and the chaining, and gives you the finished line to copy.