This script uses two real config files:
config/main.luaconfig/job.lua
If you remember only one rule, remember this:
config/main.lua= menu, XP, payout style, clothing, UI, global behaviorconfig/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-> setConfig.BypassCooldown = false - Change team size or max active teams:
config/job.lua->teamSizeandmaxActiveTeams - Change rewards or vehicles:
config/job.lua-> scenariorewardsandvehicles - 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.localeConfig.GarbageMenuConfig.LevelsConfig.XPMultipliersBetweenLevelsConfig.InfoBoxConfig.ScoreBoxConfig.CleanMoneyConfig.GarbageBagMoneyPerBagConfig.IncludeOpenedBagRewardsInPayoutConfig.JobClothingConfig.debugConfig.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:
employersblipsgarbageBagscenarioSlotsscenarios
Default scenario groups in the real source:
easymediumfreelance
Each scenario block contains fields such as:
disablednameteamSizemaxActiveTeamscooldownvehiclesrewardssteps
How Do I Disable A Scenario?#
Open:
config/job.lua
Then set the scenario you do not want to use to disabled:
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:
medium = {
cooldown = 600,
}
That example means 600 seconds.
If you added cooldown and it still feels ignored, check this line in config/main.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 = 3vehicles = { ... }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:
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:
depositDistancerearSearchDistanceopenDurationopenRewardChanceopenRewards
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_containergarbage_processinggarbage_container_searchfreelance_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:
- Did you edit
config/main.luaorconfig/job.luain the correct place? - Did you edit the scenario you are actually testing?
- Did you restart
0r-garbage-v2after the change? - Did you add cooldown but forget
Config.BypassCooldown? - Did you change route pools in
scenarioSlotswhen your real problem was insidescenarios, or the reverse?