Change Default Numeric Localization for a Culture (Arabic)?

Hey folks,

I am doing some localization for Arabic. The default Unreal number generation for Arabic uses Eastern Arabic (Indian/indic) numerals. Unfortunately, a lot of the Arabic-speaking world uses (or is moving toward using) Western Arabic numerals (English-style) numerals, and that’s what I’d like to use. I know I can use “locale=en” (for example) to change to English-style characters, but all I really want is to use Western Arabic (1234) instead of Eastern Arabic (١٢٣٤), and I’d prefer to not have to continually update locale separately from culture, as people will be able to choose other languages as well.

Does anyone know any way to permanently change the default numeric localization for a culture? Thanks for any help!

Is this for gameplay?
if so, wouldn’t you just need to swap font?

This is in the UI. It’s not an issue with the font, ١ is a different unicode character (U+0661) than 1 (U+0031), it’s not just “1” in a different font.

Hi Xepel,

have you solved this issue yet?
if not then its as simple as swapping a node. also go to editor preferences -> General, Region & Languages -> Uncheck “Use Localized numeric input” , so even when a user enter’s numebrs it wont show as ١٢٣٤, but 1234.

instead of using “Set Current Language and Local”, Use “Set Current Language” and the numbers wont change to Arabic numeric even if you do some math multiply and divide and so on.

if you notice the node “Set current language and local” changes the engine numeric configuration and some words to Arabic, so not the ideal way to flip a language using that node.

glad to know we have Arab’s using unreal engine! Good Luck!

1 Like

Thank you so much
it works