> For the complete documentation index, see [llms.txt](https://visionstore.gitbook.io/visionstore-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://visionstore.gitbook.io/visionstore-docs/scripts/crafting/guides/staff.md).

# Staff guide

Everything staff can do in game - giving, placing and moving benches, XP, validation and player progress.

All staff commands sit under one command, `/crafting` (change it with `Config.Command`). They also work in the **server console** without the slash: `crafting validate`. Who counts as staff is explained in [Permissions](/visionstore-docs/scripts/crafting/configuration/general.md#permissions).

## Giving benches to players

Every way of giving a bench creates a **new** bench with its own level, XP, condition and stash.

| How                                                         | When to use it                                                                                                            |
| ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| `/crafting give <id> <benchType> [amount]`                  | Give portable bench items to a player.                                                                                    |
| `/givecraftingbench <id> <benchType> [amount]`              | The same, as a shortcut.                                                                                                  |
| `/crafting place <benchType>`                               | Place a bench where you stand, no item needed. It can be picked up later.                                                 |
| `/crafting place <benchType> fixed`                         | The same, but it can never be picked up. Great for public stations.                                                       |
| `exports.Chapo_Crafting:GivePortableBench(src, 'tools', 1)` | From your own shops, jobs or rewards (see [Exports](/visionstore-docs/scripts/crafting/developers/exports.md)).           |
| Hidden NPC vendors                                          | Players earn them in game (see [Hidden NPC vendors](/visionstore-docs/scripts/crafting/configuration/npc-vendors.md)).    |
| `Config.StaticBenches`                                      | Permanent map benches (see [Static benches](/visionstore-docs/scripts/crafting/configuration/benches.md#static-benches)). |

Bench types included: `tools`, `medical`, `weapons`.

## Finding and moving benches

```
/crafting benches
```

Lists every deployed bench: short id, type, level, routing bucket, house and coordinates. Static benches are marked `[static]`.

```
/crafting bench <benchId>
```

Shows one bench in detail: XP, level, progress to the next level, category levels and where it is. Use the **full** bench id here.

```
/crafting move [benchId]
```

Opens the normal placement preview to move a bench. Without an id it takes the **nearest** bench. The short id from `/crafting benches` is enough. Static benches are moved in `Config.StaticBenches` instead.

## Levels

```
/crafting set-xp <benchId> <xp>
```

Sets a bench's overall XP (the level follows). Handy to test a recipe that needs level 5: look up the total XP in [Bench levels](/visionstore-docs/scripts/crafting/configuration/progression.md#the-curve) (level 5 = 2,966 XP).

## Checking your config

```
crafting validate
```

Rebuilds the recipe catalogue and lists every problem: typos, unknown categories and items missing from ox\_inventory. When everything is fine it prints `OK — N recipes, N categories, N bench types, N blueprints, no problems.`

`crafting reload` does the same from the config already loaded in memory. **Edited files still need `restart Chapo_Crafting`.**

## Hidden NPCs

| Command                            | What it does                                                                  |
| ---------------------------------- | ----------------------------------------------------------------------------- |
| `/crafting npcs`                   | Every NPC: unlock id, the bench it's wired to, entry fee, and `[in custody]`. |
| `/crafting npc-progress <id>`      | One player's NPC challenges.                                                  |
| `/crafting npc-reset <id> [npcId]` | Wipe a player's NPC progress (all NPCs, or one).                              |

## Crafting Mastery

| Command                                  | What it does                                                                                                                     |
| ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `/crafting mastery <id>`                 | A player's mastery: XP, unlocked and equipped perks.                                                                             |
| `/crafting mastery-xp <id> <amount>`     | Grant Mastery XP (counts toward their daily soft cap).                                                                           |
| `/crafting mastery-reset <id>`           | Wipe a player's mastery, including lifetime XP.                                                                                  |
| `/crafting mastery-why <id> <recipeKey>` | Explain what one craft of that recipe would give that player, step by step (short craft, repetition, daily cap, Knowledge perk). |

## Developer tools

For lining up the screen on a custom bench prop. See [Bench props and the screen](/visionstore-docs/scripts/crafting/configuration/models.md).

| Command                                 | What it does                                                               |
| --------------------------------------- | -------------------------------------------------------------------------- |
| `/craftingcalibrate`                    | Live-adjust the screen, camera and player spot, then print a config block. |
| `/craftingdui`                          | Toggle the screen debug overlay and print its state to F8.                 |
| `/craftingduireload`                    | Rebuild the bench screens without restarting the resource.                 |
| `/craftingbackdrop <metresX> <metresY>` | Size the black sheet behind the screen.                                    |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://visionstore.gitbook.io/visionstore-docs/scripts/crafting/guides/staff.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
