What does not
Game doesn't install or run without the necessary libraries. Windows version must be set on XP and no higher.
I made this work with digital backups of the three install CDs I had. If you own the CDs, simply copy the contents of each into the same folder. This should eliminate the need for disk switching.
Use winetricks get the necessary libraries (warning - this used over a gig and a half of internet):
winetricks corefonts d3dx9 quartz mfc42 l3codecx msxml4 vcrun6 riched20
After they're installed, run winecfg and under the "drives" tab set drive D: to the folder containing the the data from the CDs. Now:
should install it with no hiccups. In order to run the game, I had to use winecfg to set the Windows version to XP. To run it without a CD, update it by running the patch you can find here.
Sound doesn't work? See here. In my case I had to set quartz back to "builtin" in winecfg. Weird! Wasn't that way on my brother's Kubuntu install.
What was not tested
Some notes on the winetricks: I don't actually know how many of those are necessary. I compiled them from around the web. d3dx9_36, quartz, mfc42, and l3codecx are all in the original instructions, and you may be able to get away with the old method of manually gathering these dlls if you want to save internet. corefonts fixes a nasty bug where you can't fit the product key into the boxes. riched20 was necessary for me to run the game due to this error when trying to accept the licence:
0009:err:richedit:ReadStyleSheet skipping optional destination 0009:err:richedit:ReadStyleSheet skipping optional destination wine: Unhandled page fault on read access to 0x001f0900 at address 0x7ac2b592 (thread 0009), starting debugger...
|Operating system||Test date||Wine version||Installs?||Runs?||Used|
|Current||Arch Linux x86_64||Dec 09 2018||4.0-rc1||Yes||Yes||Yes||Gold||Isaac Horvath|
|Show||macOS 10.13 "High Sierra"||Nov 26 2018||3.0.3||Yes||Yes||Yes||Gold||YVES|
|Show||macOS 10.13 "High Sierra"||Dec 13 2017||2.0.3||Yes||Yes||Yes||Gold||YVES|
|Show||Arch Linux x86_64||Jul 18 2016||1.9.14||Yes||Yes||Gold||an anonymous user|
|Show||Ubuntu 14.04 "Trusty" amd64 (+ variants like Kubuntu)||Jan 15 2016||1.9.1||No, but has workaround||Yes||Gold||Isira Seneviratne|
|Bug #||Description||Status||Resolution||Other apps affected|
|657||Many games and applications need 'mfc42.dll' ('winetricks -q mfc42' is a workaround)||NEW||View|
|14026||Installshield Wizard does not exit after it finishes||NEW||View|
|18773||Multiple apps need DirectShow MPEG Layer-3 decoder filter / l3codecx.ax (The Westerner, 3D Mark 2001SE)||NEW||View|
|20456||Multiple applications have text rendering issues with 'Courier New' font using distro provided Liberation fonts (cut off/partial text display)(FEAR, AoE 3, Supreme Commander, fasmw 1.x)||STAGED||View|
Installing Age of Empires III
The Age Of Empires III install will require 4 DLLs
mfc42.dll - dlldump
quartz.dll - dllfiles
d3dx9_36.dll - dllfiles
l3codecx.ax - This one is not available on the Internet to acquire this file please see the section below about "Acquiring l3codecx.ax".
Place all but the Quartz.dll file above in C:\WINDOWS\SYSTEM32 and set them to "Native" or "Native, Builtin" in winecfg -> libraries. Backup any pre-existing files in case you need them later.
Open a terminal and cd to the C:\WINDOWS\SYSTEM32 directory and type "wine regsvr32 l3codecx.ax" (Without quotes)
Install Age of Empires III as usual.
When prompted to switch disks use "wine eject" to eject the cd and place the next in.
Once installed copy the Quartz.dll file into C:\WINDOWS\SYSTEM32 directory and set it to "Native" in winecfg, then run the game with CD1 in the drive and the game should start.
Next time you run the game you must remove the ~/My Games/Age of Empires 3/Users/NewProfile.xml file in order for the game to start again.
2015-02-11 Admin note: some users have also reported needing native dsound.dll in addition to the above DLLs.
Acquiring the l3codecx.ax file
There are a few ways you are able to get this file. Choose one of the following:
Adding Registry Keys
When trying to patch AoE III or install an expansion if the install complains about a problem is the AoE III installation and suggests you reinstall to fix the problem, you are probably just missing a few Registry Keys.
-Run "wine regedit" from a terminal
-Navigate to HKEY_LOCAL_MACHINE->SOFTWARE->Microsoft->Microsoft Games->Age of Empires 3->1.0
-Right click in the right pane and click "New->String Value" Name it "CDPath".
-Right click on the new key and select "Modify".
-For "Value Data" enter wine's path to your cd drive, ex: "D:\".
Do the same for the following Key/Value pairs:
Value: Leave it blank
Value: wine's path to your install, ex: "C:\Program Files\Microsoft Games\Age of Empires III\"
Now re-run the patch or expansion install and it should complete.
If when you try to install an expansion you get an error that says "Age of Empires III was not installed for all users or the current user..." do the following:
Alternative but Reliable How to:
This how-to explains how to get AOEIII working if you've tried the other how-tos and just want the game to get running. Wine-0.9.53 was the latest version of wine that ran AOE without ANY bugs (including the VSYNC/newprofile.xml bug). You will need the above DLLs put into your system32 directory and the library links in winecfg made (see above instructions).
Install wine-0.9.53. You will most likely have to compile, but if you use Ubuntu there are still binaries available here: http://wine.budgetdedicated.com/archive/index.html If you have to compile, download the source and make sure that you have all the dependencies. (You can actually look on the 64bit page for the list, although you will only need the 32bit packages. If you are compiling on 64 bit, look at this page. http://wiki.winehq.org/WineOn64bit
Get the DLLs mentioned above and install them exactly as prescribed. d3dx9_36.dll (You may also need d3dx9_25.dll, depending on your system.) mfc42.dll, and quartz.dll. Make sure to add the appropriate library references in winecfg. If you want MP3s to work, also get l3codecx.ax, and remember to register the file using 'wine regsvr32 l3codecx.ax'.
Install the game. Remember to use 'wine eject' when it asks for the next disc.
Play! The amazing thing is, there is no VSYNC/newprofile error! I have tried to work on a patch to fix the regression that took place after wine-0.9.53, but my patch would apparently hurt other programs. For those of you who gave up, though, I've never failed to get AOE working on 0.9.53. Good luck!
(Alternative How-to written by D.M.)
Supposedly, there is a Play on Linux script that installs/patches/runs AoE III. The script may be found here:
Although I have not tested it, I will post my own results if I do. Good luck with it...
If Age of Empires III is crashing when you start it, make sure you have deleted the ~/My Games/Age of Empires 3/Users/NewProfile.xml file.
--Edit-- This problem shouldn't exist if you set VSYNC to "ON" the very first time you start the game.
These HowTo's may be needed for older versions of wine. If you are experiencing problem with the main HowTo try one of these.
Alternative HowTo 1
** Note ** Where there is a quote, it means to type everything in
between the quotes. If there is a word enclosed in brackets, the word
will be printed on a key on the keyboard.
1. Copy all .dll's from Disk1 to .wine/drive_c/windows/system32
2. Download mfc42.dll (or copy from XP) and put it in your .wine/drive_c/windows/system32 directory otherwise it will complain that the file is missing. If you have any problems complaining about mfc42.dll, it means you have a bad copy of it.
3. Set your Windows version to Windows XP using the winecfg tool or it will complain that this game can only be installed on Windows XP
4. At a command prompt, type "mkdir ~/tempaoe3". Copy all 3 CD contents into ~/tempaoe3.
5. Change to .wine/dosdevices
6. Delete d: (At a command prompt, type "rm d:"). Type "ln -s
10. Once you see the first screen click next
11. Click I agree and move the window to the lower right corner (just leave enough of the window, to drag it back up, after the next step, you have to move it because if you don't you will not see the serial input screen and you will need to restart the installation), Then press ENTER. (You are actually pressing the NEXT button, but you can't see it)
12. Enter the serial and click next.
13. Now drag the other window back up, and Choose custom or standard installation (whichever you like and click next).
14. Now AOE3 will begin to install, and though it appears to hang, again be patient it takes about 3 minutes for the installation to react).
15. If it asks for Disk 1 again, just quit the installer.
16. Once you are done click finish, go to the console and kill the IDriver.exe and IDriverT.exe as it will have created the nescassary registry entries, but the installer will keep hanging in the memory.
Alternative HowTo 2
1. Copy all ".dll" of disc 1 in "~/.wine/drive_c/windows/system32"
2. Download "mfc42.dll" and "d3dx9_25.dll" in "~/.wine/drive_c/windows/system32"
3. Open two Terminal windows.
4. In the first console, type "wine cmd", to start the WIne's CMD shell, also make the same to the second console.
5. In the first console, type "d:\autorun", to start the game's installation (CD1 must be inserted).
6. Follow the on-screen instructions. The installation should run normally, without delays.
7. When the installer asks for the next CD, switch to the second console and type: "eject d:". It will eject the Cd flawlessly.
8. Put in the next CD, and wait for it to mount.
9. It's better waiting about 15-20 seconds before click on "Retry" button, or the installer fails.
10. Repeat the act 7,8,9 as necessary when switch a CD.
11. Copy CD crack to Installation path