Skip to content

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.

server.cfg
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.

locales/en.json
{
  "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.