Advanced
Localization
Change the UI language or add your own.
All text in the UI and notifications comes from JSON locale files in:
locales/
├── en.json (English — default)
├── de.json (German)
└── tr.json (Turkish)
Selecting a language
Set Config.Locale in config.lua:
config.lua
Config.Locale = 'en' -- 'en', 'de', 'tr' or any custom file in locales/
If the chosen file is missing, the resource automatically falls back to
en.json and logs a warning.Locale file structure
Each file has two sections: ui (interface labels) and notify (messages).
en.json
{
"ui": {
"leave": "Leave",
"search_placeholder": "Search..",
"category_all": "All",
"to_basket": "to Basket",
"shopping": "Shopping",
"cart": "CART",
"cart_empty": "Your cart is empty",
"total": "Total",
"price": "Price",
"pay_by_cash": "Pay by Cash",
"pay_by_card": "Pay by Card",
"currency_symbol": "$"
},
"notify": {
"purchase_success": "Purchased items for $%s!",
"not_enough_money": "Not enough money. Need $%s",
"no_job_access": "You are not allowed to use this shop.",
"payment_not_allowed": "This payment method is not allowed here."
}
}
UI keys
| Key | Where it shows |
|---|---|
leave | Leave / exit button |
search_placeholder | Search box hint |
category_all | "All" category tab |
to_basket | Add-to-cart label |
shopping | Shopping label |
cart | Cart heading |
cart_empty | Empty cart message |
total | Total label |
price | Price label |
pay_by_cash / pay_by_card | Payment buttons |
currency_symbol | Currency prefix (e.g. $, €) |
Notify keys
These power purchase + error messages. Some contain %s placeholders that are filled at runtime (e.g. the price).
Keep the
%s placeholders where they appear — they are replaced with values like the total cost or item name. Removing them breaks the message.Changing wording
Just edit the value of any key in your active locale and restart:
en.json
"pay_by_cash": "Pay with Cash",
"currency_symbol": "€"
Adding a new language
Copy en.json
Duplicate locales/en.json to e.g. locales/fr.json.
Translate the values
Translate the values only, never the keys. Keep all %s placeholders.
Activate it
config.lua
Config.Locale = 'fr'
Restart
restart alamo-market
The locale files stay editable in the protected release, so translations are always yours to change.

