Localization
Localization
Every player-facing string — the interface, the target labels, the placement hint line, the notifications and the errors — runs through ox_lib's locale system. Translation files live in locales/*.json.
Set the language
setr ox:locale "tr"It is a global convar, so every BUPA script on your server follows the same setting from one line.
Shipped languages
| Code | Language |
|---|---|
en |
English (fallback) |
de |
German |
es |
Spanish |
fr |
French |
it |
Italian |
nl |
Dutch |
pl |
Polish |
pt |
Portuguese |
ru |
Russian |
tr |
Turkish |
English is always the fallback, so a key you leave out of a translation shows the English text rather than a raw key.
Key groups
| Prefix | Used for |
|---|---|
ui_* |
The bag interface — headings, hints, the quantity prompt, buttons |
target_* |
The third-eye options: Open weapon bag, Pick up bag |
place_* |
The placement hint line, the rotation and height readout, and the blocked warning |
slot_<id> |
One per entry in Config.Slots |
cat_<category> |
One per category used by Config.CategoryRules or Config.DefaultCategory |
notify_* |
Success notifications |
err_* |
Every failure message |
The placement hint
place_hint is the line shown along the bottom while a player is aiming the bag:
"place_hint": "[E] Place [X] Cancel [Wheel] Turn [↑↓] Height [←→] Distance [SHIFT] Fine [G] Reset"The keys themselves are not configurable, so keep them as they are and translate only the words around them.
If you add a pocket or a category to config.lua, add the matching slot_<id> or cat_<category> line to every locale file.
The locales/ folder is escrow-ignored, so it stays open for editing.