How to localize default rules and font?

Bufan

Chieftain
Joined
Apr 11, 2017
Messages
2
The background is our proxy has closed, so we can't get the lastest localized game.
But, there are a lot of people who love civ3, and they translated all the text by themselves.

However, there are still two big problems:

1. It seems that we have to edit the default rules in order to translate unit's name and so on, but
if we do, the tutorial will not work, because it detected the rule is modified.

2. Maybe the game is not well supported for non-Latin characters, after we translated the text, all the page title (
advisers/load scenarios and so on) became garble, but normal text was not affected. The only thing we know is our proxy has modified the jgl.dll in order to localize, but we don't know what they actually did, so we can't do the same thing for the lastest jgl.dll.

Does somebody can help us?
 
This is a complex subject, but I dove into it a couple times in the past, so let me see what I can remember and what I took notes on. I may edit this post a couple times as I check notes and hop over to my desktop where most of them are stored.

On point (1), I'm afraid I don't know the answer as I haven't played with the tutorial, and don't really remember it. Do you mean the three intro scenarios by chance?

On point (2), however, you are right that the game does not have very good support for non-Latin characters. Civ4 does a much better job of that. However, there is some support for non-Latin characters, although no Unicode support. There is the ability to convert between different character sets, however, though this is also limited to particular character sets. In particular, I've been able to convince my English-language copy of Civ3 to properly load scenarios with Cyrillic (Russian) characters, as well as Chinese characters, neither of which it does by default. It's unfortunately not a simple process.

At this point I will check my notes on how I did this, but as I recall it required registry editing. I am curious which Civ community you are from; I know there are sizable communities in France, Germany, Poland, Russia, and China, but only the German community seems to have a lot of members active on both the German-language site and CFC; most of the rest are disconnected, and there may be more that are even less well-known here.

*currently checking notes*

Edit: Okay, found some notes I took in early 2014. It may actually be easier than I remembered, though it does still require a registry edit (and figuring it out in the first place was not easy). In short, there is a particular registry folder that handles something called Font Substitutes. It allows you to replace one character set with another. Although Civ3 doesn't have a way to switch character sets, by using this you can effectively cause Civ3 to use a different one without realizing it.

Thus, the first step is to open the registry editor in Windows (Win+R for the Run prompt, then type "regedit" without quotes, then OK). Navigate to the key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes (at least as of Windows XP; as far as I know this hasn't changed since but I haven't tested this on a later version than XP). It should have a number of entries such as the following, which a fresh XP install had for me in 2014:

Code:
"Arial CE,238"="Arial,238"
"Arial CYR,204"="Arial,204"
"Arial Greek,161"="Arial,161"
"Arial TUR,162"="Arial,162"
"Courier New CE,238"="Courier New,238"
"Courier New CYR,204"="Courier New,204"
"Courier New Greek,161"="Courier New,161"
"Courier New TUR,162"="Courier New,162"
"Helv"="MS Sans Serif"
"Helvetica"="Arial"
"MS Shell Dlg 2"="Tahoma"
"Times"="Times New Roman"
"Times New Roman CE,238"="Times New Roman,238"
"Times New Roman CYR,204"="Times New Roman,204"
"Times New Roman Greek,161"="Times New Roman,161"
"Times New Roman TUR,162"="Times New Roman,162"
"Tms Rmn"="MS Serif"
"Arial Baltic,186"="Arial,186"
"Courier New Baltic,186"="Courier New,186"
"Times New Roman Baltic,186"="Times New Roman,186"
"MS Shell Dlg"="Microsoft Sans Serif"

The format for each row can be either:

Original_Font_Name = Substitute_Font_Name

or

Original_Font_Name,Charset = Substitute_Font_Name,Charset

According to my notes, adding a single new String Value with the following Name and Data was the necessary change to switch my Civ3 to Russian:

"Lucida Sans,0"="Lucida Sans,204"

This will effectively switch the Lucida Sans font, which Civ3 uses by default, from using the Windows-1252 code page (Windows terminology for a character set) to the Windows-1251 code page. The 0 and 204, as far as I've been able to determine, are integer values that Windows used to refer to code pages in the Windows 3.1 era, and which have stuck around until the present day. Somewhere I have a document showing about 6 other values from that era which could likely be plugged in there as well - although they certainly are not sufficient to cover every language.

I should also note that at one point I downloaded and ran a program that set Civ3 to displaying Russian automatically. After some experimenting in a clean virtual machine, I was able to determine that it added the following keys to the registry:

Code:
"Lucida Sans,0"="Lucida Sans,204"
"Tahoma,0"="Tahoma,204"
"Courier,0"="Courier,204"
"Courier New,0"="Courier New,204"
"Arial,0"="Arial,204"
"Times New Roman,0"="Times New Roman,204"

However, only the first one was sufficient to switch Civ3 when I manually modified a fresh Windows install.

I will see if I can find my notes on other code pages, as well as the correct number for Chinese support, on the chance that it's the Chinese civ community that you are representing. There is a chance that it will work for other languages and alphabets as well, but I've never tried others myself as western European languages generally work with the Windows-1252 charset, and beyond that I've never found a Civ3 scenario in any other languages than Russian or Chinese to test with.

Edit 2: One question. The question is, by proxy do you mean the company that translated Civ3 for your local market? If so, I'm curious if you mean that they didn't release all the updates for Civ3 (not the last patch, or even expansion?).
 
Last edited:
This is a complex subject, but I dove into it a couple times in the past, so let me see what I can remember and what I took notes on. I may edit this post a couple times as I check notes and hop over to my desktop where most of them are stored.

Thank you for your replied, since there has been no progress I almost gave up……

First, on point 1, it isn't the three intro scenarios, the tutorial is for vanilla and PTW, it's on the menu.

And on point 2, in fact, I have searched in there and found the post explained that (Maybe it is yours, I can't remember) , and I have tried to use "Lucida Sans,0"="Lucida Sans,134" for chinese (the number here maybe wrong, I can't remember, but at that time, I used the right number that found on Microsoft's website). But unfortunately, it doesn't work, the title is still something like "???", and the normal text is correct even if I don't edit registry……Perhaps because my windows OS is Chinese version.

PS: OK, I did a quick search, the posts I have found are yours, they are https://forums.civfanatics.com/threads/localized-versions-of-civ3.507295/ and https://forums.civfanatics.com/threads/win-a-different-way-to-change-civ3-fonts.557096/

About the proxy, yes, I mean the company, I don't know if my English is too weak to make a misunderstanding. They release both the vanilla and PTW, but without any patch.

I'm from China but not from any Civ community, in fact, I am a single game player for a long time (because I only bought the vanilla), and when I known there were a lot of communities (and the expansions), most of them had disconnected, what a pity. However, I love civ3 than sequels for many reasones, so I try to make a perfect localized version and finally came here for help, I do these just for interest.

I am really glad to meet someone do the same. I mean, thank you for your replied very much.
 
Top Bottom