3akev / godot-arabic-text

MIT License
22 stars 7 forks source link

Markers are one letter behind where they should #18

Closed eh-jogos closed 2 years ago

eh-jogos commented 2 years ago

So I don't know Arabic, so bear with me if I'm describing anything wrong, but here is the issue: I'm trying to add Arabic as one of the languages for a project I'm working on and the project's Lead/Creator (@MariCore) sent me this text to use as example: لعبتُ لعبةَ في مرحلةٍ الأَخْيرةً I hope this is displayed correctly, but she did confirm to me that Visual Studio Code is showing it correctly: image

But what we get in Godot 3.5 after using this plugin is this: image

She said the markings are one letter behind where they should be. Am I using this plugin wrong? should I have configured something that I missed?

nightblade9 commented 2 years ago

Hi,

This plugin has many limitations, and was intended as a stopgap measure until Godot 4 (with proper support for right-to-left languages, ligatures, shaping, etc.) comes out. Since Godot 4 Beta 1 is now out, I highly recommend upgrading your project and using that, instead.

eh-jogos commented 2 years ago

Hi,

This plugin has many limitations, and was intended as a stopgap measure until Godot 4 (with proper support for right-to-left languages, ligatures, shaping, etc.) comes out. Since Godot 4 Beta 1 is now out, I highly recommend upgrading your project and using that, instead.

Yeah, the problem is we have a whole game that is one month and a week away from release, already integrated to steam. Converting it to Godot 4 now would probably be kind of a very risky move, and converting it before was not really an option as we had no Idea when Godot 4 would reach beta, or would be stable enough. I'd also have to change the steam module as well.

All in all, pretty risky move.

nightblade9 commented 2 years ago

In that case, you don't have a lot of good options. The ones I see are:

Also, please drop your Steam game link here, I'm always interested in seeing Arabic games on Steam.

eh-jogos commented 2 years ago

In that case, you don't have a lot of good options. The ones I see are:

* Use Arabic without harakaat (vowel/diacritical markings). This will probably make it impossible for non-native Arabic speakers to read (as they have to "guess" what it's saying), and to a lesser extent, may cause confusion for native Arabic speakers.

* Defer Arabic support to the next release, at which point, you will have a bigger window to update to 4.0. You can also branch now/soon and start the upgrade to Godot 4 (they included some tooling to help auto-migrate scripts).

* Try upgrading now (maybe in a branch) and see how many things break. Maybe it's not a big risk; you will likely be re-testing everything prior to release anyway.

Also, please drop your Steam game link here, I'm always interested in seeing Arabic games on Steam.

Yeah, I was thinking of upgrading to Godot 4 in a separate branch as well and try my luck! But beta 1 has a bug with preloads that break game exports so I'm thinking of waiting for beta 2 to have that fixed at least as it's the one bug I know will break the game when exported even after I finish converting the code base.

Right now Mari is going through the text and removing the harakaat so that we have an alternative for keeping the release date with Godot 3.5.

the game is this one: https://store.steampowered.com/app/1834000/KaRu/ Hope you like it!

I guess this issue can be closed then?

nightblade9 commented 2 years ago

Yes, you can close this if you have a path forward.

Also, I highly recommend looking through Steam's recommendations on how to set up a game page, and Chris Zukowski's stuff, including this and this. If you would like any help/advice/etc., feel free to drop into the #gamedev channel on my Discord server.

eh-jogos commented 2 years ago

Thanks, Mari is the one in charge of the steam page, I'll send your comment to her!