Here's the situation (if I'm not mistaken):
- The original games and the Windows console expect text to be encoded in old-fashioned Windows codepages.
- The EE games and the Mac and Linux consoles expect text to be encoded in UTF8.
HANDLE_CHARSETS can take care of the discrepancy between the games themselves.
But what about console output, e.g. translated component names that are shown to the user during interactive mod installation?
Before the EE's came along, strings would just be printed to standard output using the Windows encoding, and Mac and Linux users were left to fend for themselves. Not a great solution, but since Mac/Linux users are a minority and the games didn't officially support those platforms anyway, no-one complained too much.
But now things are more complicated... Not just because the EE's upgraded Mac and Linux to officially supported platforms, but also because porting old mods to EE can now cause encoding problems for Windows users as well:
Many mods out in the wild use a combined "setup.tra" (or similar) containing both the component names seen during installation,
and item descriptions etc. which will end up in the game's dialog.tlk.
So if I (or the BigWorld/EET guys etc.) want to patch such abandoned mods to make them EE-compatible, I
have to add HANDLE_CHARSETS to reload that TRA file, because otherwise the game might misbehave or even crash for non-English users.
But this conversion will also cause non-English Windows users to see scrambled strings instead of component names during installation, right?
Does weidu provide a solution that?