vegastrike / Vega-Strike-Engine-Source

Vega Strike Engine
Other
255 stars 42 forks source link

Make Vega Strike user-facing text localizable #5

Open stephengtuggy opened 4 years ago

stephengtuggy commented 4 years ago

Not just English, in other words.

What approach should we take? Open for discussion.

See also #4 , which may be affected by our eventual localization approach.

stephengtuggy commented 4 years ago

Here is one possibility: http://www.gnu.org/software/gettext/manual/gettext.html

BenjamenMeyer commented 4 years ago

Another possibility: Boost Locale

It's also compatible with gettext - https://www.boost.org/doc/libs/1_68_0/libs/locale/doc/html/messages_formatting.html

stephengtuggy commented 4 years ago

Yes, I also saw Boost Locale. It looks really good. The only problem is that it requires an additional library to be pulled in, which I didn't want to do just yet. But if the devs are on board with using Boost Locale, let's do it!

LifWirser commented 4 years ago

As far as using Boost Locale, its just another module for boost, which is extensively used with Python and C++ code

However, the question of how "Politically Correct" will VS have to become should be asked? To be culturally sensitive must VS lose it's "wild West" appeal?

BenjamenMeyer commented 4 years ago

@LifWirser I'm not sure this is a conversation about being PC. Translations only happen/get contributed when someone familiar with a given language takes the time to contribute such translations or someone figures out how to automate translate.google.com (very rough) into the build system for basic translations of one's choosing. So even if this is done, only expect the current English to be there for a long time to come. The advantage is:

As to PC, a proof-of-concept to show the text changes every where could be done using gibberish or doing like a lot of old Linux installers did, creating some kind of Red Neck Edition until there's sufficient other languages to test with - and honestly, having a second translation (regardless of what language/joke is selected) should be a requirement for doing this to show that all the user facing text has been captured into the translation mechanisms.

šŸ’° FWIW

LifWirser commented 4 years ago

First, On behave Of the Vegastrike team IĀ  appreciate your interest. Second The core issue as stated in the GH issue title "Make Vega Strike localizable into multiple natural languages, cultures, etc." has at least 2 seperate feature request 1 Locale support ie "multiple natural languages" which consist of two main parts. Ā  A > Engine support Ā  B > Asset/Data requirements

2 The cultures issues which is where IĀ  was refering tp by using th term "PC",Ā  I am unsure if making a new" faction or a whole "culture " mod is required.Ā  Aside from the " mechanics" ,I feelĀ  being culturaly sensitive may in fact bring (unwanted?) changes to the gameplay dynamics, which is beyond my scope of participation atm.

As having just recently being invited in the address Coding issues, my focus atm is on working on long standing issues involving bringingĀ  engine code to current standards . I short the current state of the engine is IMHO not read for this improvment. and I am unsure if any "official" engine is even read for mods (yet untested by myself)

My current understanding of the Vegastrike is tha this issue is need to be addressed inĀ  Xml, C++ and Python coding as well in the non executable data. A complex project on it's own.

I nwasn't expecting to write a book but at least I covered the basics

This reply is being sent via email, expect onather copy fro GH when I get ther

BenjamenMeyer commented 4 years ago

@LifWirser I think that's fair, and from my attempts to get involved I do think there needs to be some core work done first before starting major things like localization support. So FTR I'm in favor of leaving this open to track, but put it on hold until VS is in a better state to tackle this.

LifWirser commented 4 years ago

For someone who may be interested I sure there are things that could be done ie setting up a " locale "translating program "independant of game engine and try translationg some xml files or something. anybody with GH accnt can set up a personal repo and clone assets repo to play with or even use git to clone straight to your pc ( no GH accnt needed). For possible inclusion in future Vegastrike releas please use Cmake for for configuring to be compatable with VS. Also Any translations will be the responsibility of who/what created them, including but not limited to any possible legal actions/issues that may arise. finally as Vegastrike in generally under the terms listed Vega-Strike-Engine-Source/doc/LICENSE any code/data containing conflicting copyright/patents WILL NOT be included in this Sset of repositories. This still does allow For mods compliant with th VS engine/data structure of any sort, but no support by VS TEAM will be given

Just another brick in the code

stephengtuggy commented 4 years ago

There are at least a few other countries who have had Wild West-type things, you know.

But I agree: as far as actually translating VS into other languages, that would need to be something for the VS community as a whole to decide on.

The immediate benefits would be as @BenjamenMeyer described: low-hanging fruit; plus making it easier to identify/isolate user-facing text.

What do you think, guys? And should we bring this up on the forums, too?

stephengtuggy commented 4 years ago

I just updated the title of the issue to reflect its new focus/emphasis.

LifWirser commented 4 years ago

Here is a bit of a problem. Some of what you may think as text is actually a picture so a whole new picture needs to be made. Also some text could be a variable name so code needs to be localized as well FWIW . Does anybody know where the text to localize is located ?

As far as being " low-hanging fruit" , I won't bet on it

as for forums,do a search it may be a topic already

stephengtuggy commented 4 years ago

@LifWirser All very good points. Thanks for the input.

Loki1950 commented 4 years ago

An other complication there is some user facing text that is embedded in Python print statements as literals.When we do have a localisation structure using Transfix should be looked at they provide translation infrastructure for hundreds of FOSS projects

BenjamenMeyer commented 4 years ago

Apparently there is a project section that has attempted some localization: https://github.com/vegastrike/Localization

Loki1950 commented 4 years ago

Yeah set up 5 years ago and no activity since something of a long shot :lol: