Russian-Doom / russian-doom

A limit-removing source port of Doom, Heretic and Hexen. It has numerous vanilla bug fixes, enhanced 640x400 and 1280x800 rendering resolutions, improved game palettes and offers many optional aesthetic game enhancements along with the maximum possible translation to the Russian language.
GNU General Public License v2.0
81 stars 13 forks source link

[Feature] Adding support for latin characteres and support for other languages #390

Open HerrDethnout opened 2 years ago

HerrDethnout commented 2 years ago

Is your feature request related to a problem? Please describe.

Something that bugs my head is the fact that the sourceport although is called "International Doom" it only supports Russian and English. I understand the origins of the sourceport and the reason of the name, but it will be great to support other languages and the addition of the missing Latin characteres in the font (eg the tilde vocals and the spanish special character ñ) to give even more significance to the word "International". I'm making this request based on International Hexen and Heretic, since I don't use International Doom I don't know if this feature is on that version.

Describe the solution you'd like

I want to do a entire translation on Spanish (Latin America) language for Hexen and Heretic. I can do all the edits to the font to add the latin characteres and making translations of the hud and even some textures if possible.

I think a way to handle this is making a special folder and language lump like, for example, GZDoom.

Describe alternatives you've considered

No response

Add any other context or screenshots about the feature request here.

No response

Dasperal commented 2 years ago

This is planned.

We currently limited by the size of original ASCII char set, so we just switch fonts for different languages. To overcome this, we need to add support for Unicode fonts and UTF char set (probably UTF-8) all over the code base. Then replace all strings with lookup table and add support for LANGUAGE lump and most likely language.csv.

This is quite intrusive changes that require a lot of work and time. And also some preparations like consolidating all text drawing routines in one place. And Hexen ACS also adds some quirks to this system.

HerrDethnout commented 2 years ago

I see, it will be a hard to implementing with extended ASCII (Like Latin-1) too I guess.

Anyway, I'm glad to hear that this will be a feature in a (near I hope) future. Thanks for all!