Configuration
Your settings survive updates. In 3.0 every value you change is saved by tw-lib in the database (tw_lib_settings). When you install an update, tw-lib writes your values back into the new config file. You never have to back up or merge a config again.
Three Ways to Change a Setting
In game: /twlib → Settings
Pay, XP, bonus, cooldown, crew size, level rules, reward split, interaction style. Saved values apply when the job restarts: use the Restart button in the menu.
Edit defaults/config.lua / defaults/coordinate.lua
Everything else. Save the file and restart tw-gardenerv2: tw-lib notices your edit and stores it.
Server console: twlib set
Quick changes without opening a file: twlib set tw-gardenerv2 Config.MaxPlayersInLobby 3, then restart tw-gardenerv2. Undo with twlib unset tw-gardenerv2 Config.MaxPlayersInLobby.
Configuration Files
defaults/config.lua
General settings, interaction, lobby, commands, UI colours, regions & rewards, daily missions, tutorial videos, truck paint, flower planting rules, levels
defaults/coordinate.lua
Lawns, bushes, trees and flower beds of every region
defaults/locales/*.lua
Texts in 7 languages
hooks/*.lua
Your own functions (start/end hooks, notifications, prompts)
General
Language
Default is English. To change it, run twlib set tw-gardenerv2 Config.Locale tr in the server console and restart the job, or change 'en' in the Config.Locale line and restart the job. Both are kept across updates.
Interaction
Gardener uses one setting for every interaction, the job NPC as well as the mowers, branches and flowers:
resource
Meaning
'default'
Follow Config.InteractionHandler, which by default is the choice made once for all Tworst jobs in /twlib → Settings → All jobs (or twlib set tw-lib interaction ox-target)
'drawtext'
Tworst prompt with E; no target resource needed
'ox_target' / 'qb-target'
Target eye (the resource must be started)
'auto'
ox_target, then qb-target, then the fallback
How the prompt looks
In prompt mode, Config.DrawTextUI decides what draws it:
Config.DrawTextUI
Prompt
'twlib'
The shared Tworst prompt from tw-lib (default, same look in every Tworst job)
'default'
Same as 'twlib'
'ox_lib'
ox_lib TextUI (ox_lib must be started)
'qb'
qb-core DrawText
'esx'
GTA help notification
'custom'
Your own functions: Config.CustomDrawText / Config.CustomHideText (see Hooks)
Lobby & Job
Who Can Take the Job
The job rule is checked on the server when a lobby is opened and when an invite is accepted. On frameworks without jobs (standalone, vRP, TMC) everyone can join.
Commands
Truck Paint
Job Menu Look
The job menu is the shared Tworst job UI inside tw-lib. Gardener's colours and pictures:
Config.DefaultUIPositions sets where the crew list, score, invite and notification boxes sit on screen. Players can also move them in game.
Job Location & Blips
['missionBlips'] holds the blips of each task type, the truck and the delivery point.
Regions & Rewards
1
Vespucci Beach
$5,000
1,000
2
Pillbox Hill
$7,500
1,000
3
Rockford Hills
$10,000
1,000
4
Richman
$12,500
1,000
5
Vinewood Hills
$12,500
1,000
missionCount sets how many of each task a region can roll. The spots themselves are in defaults/coordinate.lua.
Crew Size and Pay
onlineJobExtraAwards decides how the pay changes with more players:
Positive, e.g. 2
Team bonus: 5000 × 2 = $10,000 per person
Negative, e.g. -2
Team penalty: 5000 / (2 × 2) = $1,250 per person
0
Split equally: 5000 / 2 = $2,500 per person
Reward Split
With Config.LetOwnerSplitRewards = true the lobby owner sets each member's share in the lobby menu: the crew's total (the reward per player × the members online at the payout) is shared by those percentages. With false every member gets the same reward.
Mission Completion Items
missioncompletedItems gives extra items at the end of a region. dropMode = "perItem" rolls each item on its own; "weightedPool" gives one item from the pool. A chance of 100 is always given.
Daily Missions
Flower Planting
Flowers can only be planted on suitable ground. Two methods are available:
Ground type list (false, default): only the ground types in Config.MaterialHashes (dirt, sand, mud, grass) are allowed. Config.AllowUnknownSurfaces = true also allows ground types the game does not report.
Height check (true): compares the player's height with the planting spot.
Tutorial
Config.TutorialList holds the tutorial videos. Players open them with /openTutorialgardenerv2. Replace a video's name with your own link to show your own tutorial.
Levels
Config.RequiredXP holds the XP needed for each of the 70 levels. XP above the requirement carries over to the next level.
Texts
All texts are in defaults/locales/<language>.lua. Edit the file and restart the job: tw-lib keeps your edited texts across updates like any other setting. A text missing in a language falls back to English.
Hooks
Functions cannot be stored in the database, so they live in hooks/. Copy hooks/hooks.example.lua to hooks/my-hooks.lua and edit it there. An update replaces only the example; your file is never touched, and it is loaded after the settings, so it wins.
Need Help?
Last updated

