Godot 4 has decent BiDi support, but Arabic still breaks in a few common cases: fonts without the right OpenType features (pixel fonts especially), BBCode in RichTextLabel, and mixed Arabic/English/number lines that wrap wrong.
I make community Arabic patches for PC games (30+ so far), and I kept hitting these, so I built an addon for them:
- Joins Arabic letters correctly (initial/medial/final forms, lam-alef ligatures), keeps diacritics
- Correct order for mixed Arabic + English + numbers (full Unicode bidi algorithm; passes all 91,605 cases of Unicode’s BidiCharacterTest)
- BBCode-aware for RichTextLabel
- Correct line wrapping for RTL text
- Tested in Godot 4.3 and 4.7
It also comes with a short guide on when Godot’s built-in RTL is already enough and you don’t need the addon at all.
Full disclosure: it’s a paid addon ($19 launch price), and the package also includes a Unity version in beta. Details: Arabic Text Fix for Unity (Beta) & Godot 4
Happy to answer any Arabic/RTL questions here, even if you don’t buy anything. What edge cases have you hit?
