[Civ2] Civilization II MGE User Interface Additions (CIV2UIA)

Here it is. Do note, however, a few things:
1. My Civ2 Installation is in French. The .FRE files are functionally the same as .TXT files (so rules.fre is actually rules.txt) No idea if it matters.
2. My original Civ2 executable (from the CD) was actually 5.3.0 patch 2. I tried to upgrade it to 5.4.0 using this patch: https://forums.civfanatics.com/resources/civ2-multiplayer-gold-edition-v1-3-us.52/ which didn't work. I ended up DL'ing an already-patched 5.4.0 patch 3 civ2.exe from this place instead (don't remember from where exactly) which did work with the 1.7 version of your program on my old computer.
3. Before using your launcher, I was using both a stand-alone MGE attitude patch and a cpu throttle fix, both from this site. Neither of those modified the .exe as it is included here.

EDIT: Can't get the .zip to attach for some reason, please bear with me.
Edit 2: should work now, perhaps old file was too big even despite clearing the sub-154mb bar. Had to get rid of some old saves and a scenario after making a copy.
 

Attachments

Last edited:
Here it is. Do note, however, a few things:
1. My Civ2 Installation is in French. The .FRE files are functionally the same as .TXT files (so rules.fre is actually rules.txt) No idea if it matters.
2. My original Civ2 executable (from the CD) was actually 5.3.0 patch 2. I tried to upgrade it to 5.4.0 using this patch: https://forums.civfanatics.com/resources/civ2-multiplayer-gold-edition-v1-3-us.52/ which didn't work. I ended up DL'ing an already-patched 5.4.0 patch 3 civ2.exe from this place instead (don't remember from where exactly) which did work with the 1.7 version of your program on my old computer.
3. Before using your launcher, I was using both a stand-alone MGE attitude patch and a cpu throttle fix, both from this site. Neither of those modified the .exe as it is included here.

EDIT: Can't get the .zip to attach for some reason, please bear with me.
Edit 2: should work now, perhaps old file was too big even despite clearing the sub-154mb bar. Had to get rid of some old saves and a scenario after making a copy.

Because it is French version, it needs some entries in registry set there by installer. DefaultLanguage=2 will point the game to *.FRE files.
Make text file with *.reg extension, and launch it.

Code:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MicroProse Software]

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MicroProse Software\Civilization II Multiplayer Gold Edition]
"DefaultLanguage"=dword:00000002

(Edited: added one line to reg code.)
 
Last edited:
There is currently no path heading to MicroProse software -> CivII MGE, since I didn't install off the disk. Am I meant to make new registry folders with those names, then create the .reg file off Notepad with the code you displayed?
And would I need to create, run or otherwise "drop" the .reg file in a specific location?
 
There is currently no path heading to MicroProse software -> CivII MGE, since I didn't install off the disk. Am I meant to make new registry folders with those names, then create the .reg file off Notepad with the code you displayed?
And would I need to create, run or otherwise "drop" the .reg file in a specific location?
Just create new text file anywhere. Name it 'something.reg'. Insert all text from code section from my previous message above. Save it. Close it. Double click it. Answer Yes/Ok to all popups.

EDIT: Sorry! Just one more line to the code.
Code:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MicroProse Software]

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MicroProse Software\Civilization II Multiplayer Gold Edition]
"DefaultLanguage"=dword:00000002
 
The registry entry was created successfully, and does show in RegEdit. However, I still get the same behaviours/error message as before.
 
Ok. Then after launching civ2.exe find and open file smeds.log. Before adding those registry entries I had the same behaviour: process just appeared for some moment and then closes. And smeds.log contained this errors:
Code:
******************** SMEDS LOG *********************
File Output to: smeds.log
SMEDS32 Version: 2.0.0  

(    0) 5.4.0f Multiplayer 26-March-99
(    0) Patch 3
(    0) Disconnecting from network:
(    0)    XD_ResetLibrary();
(    0) Bottom-up orientation recommended.
(    0) Error "-8" in module "4" data: 0 0
(    0)
(    0) File open failed: MODULES.DB
(    0) Most recent DOS error:    2
(    0)
Error "-8" means FileOpen.
https://forums.civfanatics.com/thre...map-exe-and-civ2scen-exe.188712/#post-4622937
Debugging with IDA revealed that indeed game determined language as 1 (English) and tried to open .TXT files instead of .FRE.
upload_2021-3-1_2-23-22.png

The dword_626960 here is determined based on the registry entry DefaultLanguage in
Software\MicroProse Software\Civilization II Multiplayer Gold Edition
I assumed you have 64-bit OS version. So the path should be
Software\WOW6432Node\MicroProse Software\Civilization II Multiplayer Gold Edition
After adding those entries game started normally.
upload_2021-3-1_2-28-34.png


So you have to work in this direction. Somehow your game doesn't read FRE files. First try registry path for 32-bit OS
Software\MicroProse Software\Civilization II Multiplayer Gold Edition
If it doesn't help, then try to find what registry entries was on your old hardware.
And finally you can use Sysinternals Process Monitor to check and analyze what registry entries or files the game tries to read (and fails).
https://docs.microsoft.com/en-us/sysinternals/downloads/procmon
 
Last edited:
Can confirm, my old computer had the same 64-bit registry path as my new one. It also had language=French (and funnily enough version 1.2, which obviously isn't the version I was running)

Old one, however, had many more entries pertaining to Game and CD path, which aren`t present in my new computer (see attachment). New one only has the default language entry you gave me. My SMEDS file did mention "failed to open CD device", which might be a clue. Give me a sec so I can get back on my newer computer again.

I downloaded the ProcMon utility on my new computer, and started a process monitor filter on civ2.exe. It gives me a lot of SUCCESS operations and a few NAME NOT FOUND. Interestingly enough it fails at opening a few GAME.txt-like files in a row. (Log files attached below: they are in .xml format since it was the only one out of 3 choices this forum would accept.)

EDIT: Old computer does launch Civ2 just fine. The iParam=0 message does pop-up, and I do need to re-establish the links to civ2.exe and civ2uia.dll within the launcher (otherwise it hangs with version 1.13) but it does play. Now to download procmon on old laptop and see the difference.

EDIT 2: Old computer does attempt to open .FRE files instead of .TXT files, per Procmon. Renaming those files with a .txt extension on my new one didn't seem to work.

EDIT 3: SMEDS log on new laptop is as follows:
******************* SMEDS LOG *********************
File Output to: smeds.log
SMEDS32 Version: 2.0.0
( 0) Failed to open CDAUDIO device
( 0) 5.4.0f Multiplayer 26-March-99
( 0) Patch 3
( 0) Disconnecting from network:
( 0) XD_ResetLibrary();
( 0) Bottom-up orientation recommended.
( 0) Error "-8" in module "4" data: 0 0
( 0)
( 0) File open failed: MODULES.DB
( 0) Most recent DOS error: 2
( 0)
 

Attachments

Last edited:
Can confirm, my old computer had the same 64-bit registry path as my new one. It also had language=French (and funnily enough version 1.2, which obviously isn't the version I was running)

Old one, however, had many more entries pertaining to Game and CD path, which aren`t present in my new computer (see attachment). New one only has the default language entry you gave me. My SMEDS file did mention "failed to open CD device", which might be a clue. Give me a sec so I can get back on my newer computer again.

I downloaded the ProcMon utility on my new computer, and started a process monitor filter on civ2.exe. It gives me a lot of SUCCESS operations and a few NAME NOT FOUND. Interestingly enough it fails at opening a few GAME.txt-like files in a row. (Log files attached below: they are in .xml format since it was the only one out of 3 choices this forum would accept.)

EDIT: Old computer does launch Civ2 just fine. The iParam=0 message does pop-up, and I do need to re-establish the links to civ2.exe and civ2uia.dll within the launcher (otherwise it hangs with version 1.13) but it does play. Now to download procmon on old laptop and see the difference.

EDIT 2: Old computer does attempt to open .FRE files instead of .TXT files, per Procmon. Renaming those files with a .txt extension on my new one didn't seem to work.

EDIT 3: SMEDS log on new laptop is as follows:
******************* SMEDS LOG *********************
File Output to: smeds.log
SMEDS32 Version: 2.0.0
( 0) Failed to open CDAUDIO device
( 0) 5.4.0f Multiplayer 26-March-99
( 0) Patch 3
( 0) Disconnecting from network:
( 0) XD_ResetLibrary();
( 0) Bottom-up orientation recommended.
( 0) Error "-8" in module "4" data: 0 0
( 0)
( 0) File open failed: MODULES.DB
( 0) Most recent DOS error: 2
( 0)
I see in Win10 ProcMon log that the registry value of DefaultLanguage is read from VirtualStore path instead of normal one.
HKCU\Software\Classes\VirtualStore\MACHINE\SOFTWARE\WOW6432Node\MicroProse Software\Civilization II Multiplayer Gold Edition\DefaultLanguage
And it is equal to 1.
That VirtualStore is something to do with Registry Virtualization.
https://docs.microsoft.com/en-us/windows/win32/sysinfo/registry-virtualization
When I was testing your Civ2 setup on my Win10 virtual machine I faced this behavior, but thought that it is related to virtual environment. But it turns out that it is some new technology from Microsoft related to UAC and access privileges.
So all you have to do is to either delete this branch to stop it from shading normal one
HKCU\Software\Classes\VirtualStore\MACHINE\SOFTWARE\WOW6432Node\MicroProse Software\
Or just change its DefaultLanguage to "2" right there.

EDIT: I believe the value DefaultLanguage = 1 was put into VirtualStore path at first launch of Civ2.exe.
 
Last edited:
That was it, it worked! Thank you very much!

EDIT: That specific problem was probably due to the mix of foreign civ2.exe, and the original .exe not installed from CD on that computer specifically. If the 2nd registry key was created on start-up, then it makes sense that absent an installation from the French CD it would use the English settings as default from the .exe.

Only need to figure out a way to save this forum post and I'm set!
 
Last edited:
Fox, you are made of win and awesome.

I'm sitting here with CivII music playing without skipping, enjoying using the mousewheel and watching the game not freeze up between turns during a war. I owe you a reasonable art job - would you like a smilie to order?
 
Fox, you are made of win and awesome.

I'm sitting here with CivII music playing without skipping, enjoying using the mousewheel and watching the game not freeze up between turns during a war. I owe you a reasonable art job - would you like a smilie to order?
@Buster's Uncle , you are welcome! Glad that you liked it!
Smilie... well, may be a fox-like? :) Or is it a joke? Sorry, I'm not an English speaker, so I may not understand some of the figures of speech.
 
I do forum art and game-art modding. I'm told I'm good. -Here, enjoy these:

Civ2Shuffle.gif
2Seal32x.png
civII3.gif
WeirdUnity57x40c.gif


-So, I've got over a million golds amassed in my current game, where everything over 32.000 used to go to waste between turns. I figure I owe you at least a day's worth of something, and art's what people usually want...
 
Hello, sorry if this has been covered already and hijack the thread but I'm on day 4 of trying to get civ 2 to work and it's driving me nuts. I'm on Windows 10 and have the gold edition version required. I've downloaded your patch and when I run the game it looks like it's going to start, get the wheel spinning as if to get ready to launch then nothing. Please can anyone help? I can't see it running in the background anywhere. Direct play is enabled, tried compatibility settings even tried setting up a virtual machine, but that is beyond my skill set
 
Back
Top Bottom