For the complete documentation index, see llms.txt. This page is also available as Markdown.

Configuration


Three Ways to Change a Setting

Way
Best for

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-electrician: tw-lib notices your edit and stores it.

Server console: twlib set

Quick changes without opening a file: twlib set tw-electrician Config.MaxPlayersInLobby 3, then restart tw-electrician. Undo with twlib unset tw-electrician Config.MaxPlayersInLobby.

After tw-lib stores a value, the line in the config file shows the shipped default next to it, for example Config.MaxPlayersInLobby = 3 --[[twlib:4]]. That marker is how tw-lib tells your value from ours. Leave it there.


Configuration Files

File
What is inside

defaults/config.lua

General settings, lobby, commands, UI colours, regions & rewards, daily missions, tutorial videos, truck lift, levels

defaults/coordinate.lua

Work spots of every region (transformers, boards, lamps, traffic lights, poles)

defaults/locales/*.lua

Texts in 7 languages

hooks/*.lua

Your own functions (start/end hooks, notifications, prompts)

There is no Config.Framework, Config.Inventory or Config.SQL anymore: tw-lib detects them. The old key, fuel and skin functions are gone too; Config.Vehiclekey, Config.Removekeys and Config.ChangeClothesSystem still switch those features off.


General

Language

Default is English. To change it, run twlib set tw-electrician 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

Config.InteractionHandler

Meaning

'default'

Use 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

'ox-target' / 'qb-target'

Target eye

'auto'

ox_target if running, else qb-target, else the Tworst prompt

Config.DrawTextUI decides what draws the "[E] - Fix transformer" prompts:

Config.DrawTextUI

Prompt

"twlib"

The shared Tworst prompt from tw-lib (default, same look in every Tworst job)

"3dtext"

The job's own 3D text in the world

"qb"

qb-core DrawText

"esx"

GTA help notification (top left)

"ox_lib"

ox_lib TextUI. ox_lib must be started on your server

"custom"

Your own functions: Config.CustomDrawText / Config.CustomHideText (see Hooks)

Anything other than "3dtext" shows one prompt on screen: when several points are in range, the closest one wins. Config.DrawTextPosition is used by "ox_lib" and "qb".


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

Invite Keys

Truck Lift


Job Menu Look

The job menu is the shared Tworst job UI inside tw-lib. The electrician'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

The six regions (Alta, El Burro Heights, Vespucci, Rockford Hills, Strawberry, Mirror Park) all pay $5,000 and 1,000 XP by default. missionCount sets how many of each task a region can roll. The work spots themselves are in defaults/coordinate.lua under Config.Coordinate[regionID].

Your changes to a region are saved against its regionID. If a later update adds, moves or reorders regions, your money and XP stay with the right region. Keep regionID values unique and do not reuse them.

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.


Daily Missions

Changes to a daily mission are saved against its name. Keep the names unique.


Tutorial

Players open it with /openTutorialelectrician. Replace a name with your own video 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?

Join our Discord and open a ticket.

Last updated