> For the complete documentation index, see [llms.txt](https://atiysus-organization.gitbook.io/aty-scripts/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://atiysus-organization.gitbook.io/aty-scripts/restaurant-creator/features/cooking-and-recipes.md).

# Cooking & Recipes

#### The kitchen chain

A finished order flows through a realistic chain:

```
Raw ingredient (freezer/storage)
   → Cook (grill / fryer / microwave / oven / espresso / dispenser)
   → Assemble on the Prep Board
   → Serve (POS / delivery tray)
```

Every step uses a hand prop and animation, and cooking items show a **floating 3D countdown tag** above the station.

#### Grill

Place raw patties/meats on the grill. Items pass through cook **stages** — `cooking → rare → medium → well-done → burnt`. Collect within the burn window or the food burns.

* Base cook time: `Config.CookTime`
* Burn window: `Config.BurnTime`
* Meat stage timings: `Config.MeatCookTimes` (`Rare`, `Medium`, `WellDone`)

#### Fryer

Fry potatoes/onion rings in a basket. Some items support **fryer modifiers** — adding an ingredient while frying changes the output (e.g. `raw_potato + salt → French Fries`, `+ spice → Serrated Fries`). Defined per-item in `config_items.lua` (`fryerModifiers`).

#### Prep / Assembly Board

Combine cooked items and ingredients into the final dish. The rewritten board is one-click and self-explanatory:

* **Recipes tab** — each recipe shows *Ready / From Inventory / Missing* based on what's on the board and in your inventory.
* **Auto-deposit crafting** — missing ingredients are pulled from your inventory automatically when you craft.
* **Source hints** — chips tell you where each ingredient comes from (Supplier, Grill, Fryer…).
* **Take-to-hand** — only meats/potatoes (items with a `propType`) can be taken back to hand.

Spoiled items on the board can be cleared with the **Clean Prep Board** action.

#### Recipe configuration

Recipes and menu presets live in `shared/config_recipes.lua`:

* `Config.MeatCookTimes` — grill stage durations.
* `Config.MicrowaveRecipes` — microwave inputs → outputs (optimal power/time, perfect window, explosion limit).
* `Config.DrinkDispenser` / drink recipes — per-drink ingredients.
* Restaurant **templates** (Burger Shot, Pizzeria, uwu Café, Coffee Shop, Taco Stand, Sushi Bar, Juice Stand) — one-click menus an owner can apply.

Owners can also build their own recipes from the management tablet. To add brand-new items, see Adding Items & Recipes.

{% hint style="info" %}
3D cook/fill countdowns are computed **client-side** and are immune to server clock skew — they will not get stuck at `0s` even if your server clock is unsynced.
{% endhint %}
