# Configuration

This script uses two real config files:

* `config/main.lua`
* `config/job.lua`

If you remember only one rule, remember this:

* `config/main.lua` = menu, XP, payout style, clothing, UI, global behavior
* `config/job.lua` = employers, blips, route pools, garbage bag behavior, scenarios, rewards, and steps

## Quick Answers

Use this map when you want one direct answer fast:

* Menu command, key, or tablet item: `config/main.lua` -> `Config.GarbageMenu`
* Leave command: `config/main.lua` -> `Config.GarbageMenu.leaveCommand`
* XP levels: `config/main.lua` -> `Config.Levels`
* Clothing or UI box position: `config/main.lua`
* Disable a scenario: `config/job.lua` -> `scenarios.<scenario>.disabled = true`
* Change cooldown: `config/job.lua` -> `scenarios.<scenario>.cooldown`
* Cooldown does not work: `config/main.lua` -> set `Config.BypassCooldown = false`
* Change team size or max active teams: `config/job.lua` -> `teamSize` and `maxActiveTeams`
* Change rewards or vehicles: `config/job.lua` -> scenario `rewards` and `vehicles`
* Change route pools: `config/job.lua` -> `scenarioSlots`
* Change garbage bag open rewards: `config/job.lua` -> `garbageBag.openRewards`
* Change bag search distance or open chance: `config/job.lua` -> `garbageBag`

## What Is Inside config/main.lua?

The source file controls these main systems:

* `Config.locale`
* `Config.GarbageMenu`
* `Config.Levels`
* `Config.XPMultipliersBetweenLevels`
* `Config.InfoBox`
* `Config.ScoreBox`
* `Config.CleanMoney`
* `Config.GarbageBagMoneyPerBag`
* `Config.IncludeOpenedBagRewardsInPayout`
* `Config.JobClothing`
* `Config.debug`
* `Config.BypassCooldown`

This means `config/main.lua` is the correct place for player-facing behavior, not route design.

## What Is Inside config/job.lua?

The source file controls the job itself:

* `employers`
* `blips`
* `garbageBag`
* `scenarioSlots`
* `scenarios`

Default scenario groups in the real source:

* `easy`
* `medium`
* `freelance`

Each scenario block contains fields such as:

* `disabled`
* `name`
* `teamSize`
* `maxActiveTeams`
* `cooldown`
* `vehicles`
* `rewards`
* `steps`

## How Do I Disable A Scenario?

Open:

```lua
config/job.lua
```

Then set the scenario you do not want to use to disabled:

```lua
easy = {
    disabled = true,
}
```

Do this inside the scenario you want to remove from the menu.

## How Do I Add Or Change Cooldown?

Cooldown is also inside the scenario entry:

```lua
medium = {
    cooldown = 600,
}
```

That example means 600 seconds.

If you added cooldown and it still feels ignored, check this line in `config/main.lua`:

```lua
Config.BypassCooldown = false
```

If `Config.BypassCooldown` is `true`, your scenario cooldown values will not behave the way you expect.

## How Do I Change Rewards, Vehicles, Or Team Size?

Edit the scenario block you are using in `config/job.lua`.

The most common fields are:

* `teamSize = { min = 1, max = 4 }`
* `maxActiveTeams = 3`
* `vehicles = { ... }`
* `rewards = { money = ..., exp = ... }`
* `steps = { ... }`

If you changed the wrong scenario, nothing changes in game. Make sure you are testing the same scenario you edited.

## How Do I Change Route Pools?

Route slot pools are not inside the scenario reward section. They are under:

```lua
scenarioSlots
```

Use this when you want to change which dumpster or route locations a scenario can pick from.

If your route changes do not show up, you probably edited the scenario block but not the matching slot pool, or the other way around.

## Garbage Bag Settings

The `garbageBag` section controls the bag system itself. Real source fields include:

* `depositDistance`
* `rearSearchDistance`
* `openDuration`
* `openRewardChance`
* `openRewards`

Use this section when the question is about:

* how close the player must be to deposit a bag
* how far the truck rear search works
* how long the bag opening takes
* how often bag loot should drop
* which reward items can come out of a bag

## Which Step Modules Exist?

The default job file uses these step keys:

* `cleaning_garbage_container`
* `garbage_processing`
* `garbage_container_search`
* `freelance_cleaner`

When you change the `steps` order inside a scenario, you are changing which part of the gameplay runs and in what order.

## If Your Changes Do Not Apply

Check these in order:

1. Did you edit `config/main.lua` or `config/job.lua` in the correct place?
2. Did you edit the scenario you are actually testing?
3. Did you restart `0r-garbage-v2` after the change?
4. Did you add cooldown but forget `Config.BypassCooldown`?
5. Did you change route pools in `scenarioSlots` when your real problem was inside `scenarios`, or the reverse?
