# Drafting & Quality

Blueprint benches can open the drafting interface. The client sends the detected blueprint type and drawing quality to the server.

## Server validation

The server:

1. Normalizes the detected blueprint ID.
2. Confirms the definition exists in the database.
3. Clamps quality to **1–100**.
4. Reads drafting ingredients from the database.
5. Verifies and removes materials.
6. Creates the `blueprint` item with metadata.
7. Refunds materials when adding the final blueprint item fails.

## Quality metadata

The blueprint item label includes its quality percentage, for example:

```text
Pistol Blueprint (85%)
```

Quality is stored in:

```lua
metadata.quality
```
