Localization
Localization
All text — notifications, the UI panel and control labels — is translated. Translations live in the locales/ folder as JSON files and are loaded by ox_lib.
Included languages
| Code | Language |
|---|---|
en |
English |
tr |
Turkish |
de |
German |
fr |
French |
es |
Spanish |
pt |
Portuguese |
ru |
Russian |
English (en) is the fallback used when a key is missing in the active language.
Setting the language
The active language is the ox:locale convar. Set it as a replicated convar in server.cfg so the client can read it.
setr ox:locale "tr"ox:locale is global to ox_lib — it sets the language for every ox_lib-based resource on your server, not just BUPA AnimPos.
Editing or adding a language
Each locale file is a flat JSON of key → string. To translate, copy locales/en.json and edit the values.
{
"mode_activated": "Animation position mode activated!",
"position_confirmed": "Position confirmed!",
"control_confirm": "Confirm Position",
"control_cancel": "Cancel"
}To add a brand-new language, drop a new locales/<code>.json file (for example it.json) into the folder — the manifest already loads locales/*.json, so no fxmanifest change is needed. Then point ox:locale at your new code.
Keep the key names identical to en.json. Only translate the values — changing a key will break the lookup and fall back to English for that string.