The forum

Age of Empires III - CD to disk fails

Installation fails

Author Replies
TheUnknownCylon Tuesday 7 December 2010 at 13:53
TheUnknownCylonAnonymous

In response to my earlier script-bug report. (http://bugs.playonlinux.com/en/issue-83.html).

The installer still does not copy the data from CD-drive to hard disk properly.
I get the following message during the installation (playonlinux-cmd ----start-install "Age Of Empires III")

Age Of Empires III
Wait while the installation is prepared...
cp: cannot stat `/media/AoE III Disc 1/*': No such file or directory

Currently, the copy-lines are
	cp -r "$CDROM/*" "$TEMP"
, This however is not a valid path, it should be
	cp -r "$CDROM"/* "$TEMP"
instead.

$ > cp -r "/media/AoE III Disc 1/*" ~/aoe3
cp: cannot stat `/media/AoE III Disc 1/*': No such file or directory
$ > cp -r "/media/AoE III Disc 1"/* ~/aoe3
$ > (no error)

Hope you can it fix soon.
Thanks in advance!

(OS: OpenSuse 11.3)

Edited by TheUnknownCylon

GNU_Raziel Tuesday 7 December 2010 at 15:07
GNU_Raziel

...I was busy and not at home for the first fix, sorry for that, fixed now, thx for reporting.
TheUnknownCylon Tuesday 7 December 2010 at 16:24
TheUnknownCylonAnonymous

GNU_Raziel, thanks for looking into it.
The script now copies the data to the disk, however there is another problem.

See the output-snippet below, the CD-ROM question is for the third disc.
CD-ROM
Where is your CD-ROM mounted?
Press: 1 for entry: AoE III Disc 3
Press: 2 for entry: cdrom
Press: 3 for entry: WD schijf Eva
Press: 4 for entry: Other


(clearscreen)


Age Of Empires III
Wait while the installation is prepared...
find: `./WD schijf Eva': Permission denied
wine: cannot find 'd:\\instalar.exe'


(clearscreen, the AOE wizzard has not been started...)


Age Of Empires III
Click on "Next" ONLY when the game installation is finished
or you will have to redo the installation.

Type: '1' for continue or '2' to cancel. Your answer:

As you can can see, it searches the wrong place for the installer. The data is correctly put into the dosdevice d:$ ~/.PlayOnLinux/wineprefix/AOE3/dosdevices/d:> ls
00001.tmp AOE3 Disk1C~1.cab ISScript11.Msi setupInc.idx SSIFSDAT.SYS
00002.tmp autorun.exe Disk2C~1.cab mgspid.dll Setup.ini WindowsInstaller-KB893803-x86.exe
0x0409.ini autorun.inf Disk3C~1.cab PidGen.dll setup.isn
Age 3 Survey.url Autorun.inf docs Readme.rtf splash.exe
Age of Empires III CDCheck.exe instmsia.exe SetupENU.dll splashimage.bmp
Age of Empires III.msi directx9 instmsiw.exe setup.exe SSE.dll

I checked the script, I think I have found the problem here:
chmod 777 "$TEMP" -R
	CHECK=$(find . -iwholename ./setup.exe)
 	if [ "$CHECK" == "" ]; then
		wine "d:\\\\instalar.exe"
	else
		wine "d:\\\\setup.exe"
	fi

find can not find setup.exe, because it is searching in /media (it is not allowed to access the ./WD schijf Eva)

I can think of two possible solutions.
1. CD to $TEMP, and then execute find
2. or (maybe prefered) change the find line into:
CHECK=$(find "$TEMP" -iname setup.exe)

Hope this will do the trick :)


Edit
Also the Asian Dynasties and War Chiefs have this find-bug. In those scripts,
CHECK=$(find . -iwholename ./setup.exe)
may be replaced with
CHECK=$(find "$CDROM" -iname setup.exe)
Thanks in advance!

Edited by TheUnknownCylon

GNU_Raziel Tuesday 7 December 2010 at 17:04
GNU_Raziel

Thx for your help, it's kinda dfifficult to track bugs since I do not have those games, I've updated olds scripts.

Must be fixed, now, please test and report :)
TheUnknownCylon Tuesday 7 December 2010 at 20:01
TheUnknownCylonAnonymous

GNU_Raziel, thanks for the update. The install runs fine now.
Still, there seem te bo some (minor) problems (involving some regedit stuff)

Age Of Empires III
Click on "Next" ONLY when the game installation is finished
or you will have to redo the installation.

Type: '1' for continue or '2' to cancel. Your answer: 1


(...)


Age Of Empires III
How much memory does your graphics board have?
(minimum for this game : 128)
Type: 01 for entry: 128
Type: 02 for entry: 256
Type: 03 for entry: 320
Type: 04 for entry: 384
Type: 05 for entry: 512
Type: 06 for entry: 640
Type: 07 for entry: 768
Type: 08 for entry: 896
Type: 09 for entry: 1024
Type: 10 for entry: 1792
Type: 11 for entry: 2048

Waiting: 05
regedit: File not found "override.reg" (2)
No internet icon...
/home/remco/playonlinux/lib/interface_v3: line 700: wrestool: command not found
ls: cannot access *.ico: No such file or directory


(...)


PlayOnLinux Wizard
Would you like a shortcut for:
Press: 1 for entry: On your desktop
Press: 2 for entry: In your menu
Press: 3 for entry: to confirm your choices.

Press: [1] for entry: On your desktop
Press: 2 for entry: In your menu
Press: 3 for entry: to confirm your choices.

Press: [1] for entry: On your desktop
Press: [2] for entry: In your menu
Press: 3 for entry: to confirm your choices.


I believe the .reg error can be fixed as follows:

#Fix for this game
cd "$WINEPREFIX/drive_c/windows/temp/"
echo "[HKEY_CURRENT_USER\\\\Software\\\\Wine\\\\DllOverrides]" > AoE3_Fix.reg
echo "\\"quartz\\"=\\"native\\"" >> AoE3_Fix.reg
echo "\\"devenum\\"=\\"native\\"" >> AoE3_Fix.reg
echo "\\"msxml4\\"=\\"native\\"" >> AoE3_Fix.reg
regedit override.reg
change last line to
regedit AoE3_Fix.reg


________
If that's resolved, this part is finished then. I'll come back here if I find any (other) Age of Empires III (related) problems (i.e. updates or expansions)

Edited by TheUnknownCylon

GNU_Raziel Tuesday 7 December 2010 at 21:18
GNU_Raziel

TheUnknownCylon Thursday 9 December 2010 at 11:11
TheUnknownCylonAnonymous

All right. At least "Age Of Empires III" install works fine now....
however the expansion packs AND updates are all broken.

For the War Chiefs expansion, POL tells me that it can not find the CDROM!
Welcome to PlayOnLinux's Installation Wizard.
This wizard will help you install Age Of Empires III : The WarChiefs on your computer.

This program was created by: Ensemble Studios
(www.ageofempires3.com)

This installation program is provided by: NSLW & GNU_Raziel

Age Of Empires III : The WarChiefs will be installed in: /home/remco/.PlayOnLinux/wineprefix/AOE3

PlayOnLinux is not responsible for the anything that might happen as a result of using these scripts.

Click Next to start

Type: '1' for continue or '2' to cancel. Your answer: 1





Actions
What version do you have?
Press: 1 for entry: CD Version
Press: 2 for entry: Digital Download Version




Please insert Age Of Empires III : The WarChiefs media into your disk drive
if not already done.

Type: '1' for continue or '2' to cancel. Your answer: 1






CD-ROM
Where is your CD-ROM mounted?
Press: 1 for entry: AOE3X
Press: 2 for entry: Other




CD-ROM
Error: Unable to find the CD-ROM!

Type: '1' for continue or '2' to cancel. Your answer: 2


========================================================

For the AOE update, I get another error, that the game is not installed...
Also, the patch version is outdate, patch 114 is the newest official patch (including no-cd!)

Age of Empires III
This wizard will help you to install patch for Age of Empires III.

Type: '1' for continue or '2' to cancel. Your answer: 1


(...)


Age of Empires III
Install Age of Empires III first.

Type: '1' for continue or '2' to cancel. Your answer: 1

I hope you can fix both scripts (and I hope you will also check the Asian Dynasties, War chiefs patch and Asian Dynasties patch).

Thanks in advance!

Edited by TheUnknownCylon

TheUnknownCylon Friday 10 December 2010 at 20:41
TheUnknownCylonAnonymous

Fix for the Warchiefs installer (duh...)

Change
POL_SetupWindow_check_cdrom "Age of Empires III - The Asian Dynasties.msi"

to
POL_SetupWindow_check_cdrom "age of empires iii - the warchiefs.msi"

Thanks in advance for that.


I have also rewritten the patch-installers. I will post them later (It's now installing the Warchiefs and Asian Dynasties, I'll create a patch-installer for those as well...)

Edit:
Right, I have a version in which all files are in lowercase, but that's certainly not true for all CDs(!)
Maybe it is wise to do a check for both "Age of..." and "age of..." (in lowercases)? (both Asian and Warchiefs), or omit the CD-check...?

Edited by TheUnknownCylon

TheUnknownCylon Saturday 11 December 2010 at 11:13
TheUnknownCylonAnonymous

Ooops, sorry for this stupid double post...

Edited by TheUnknownCylon

TheUnknownCylon Saturday 11 December 2010 at 11:15
TheUnknownCylonAnonymous

Since I can not update the patches myself, I will post them. I've updated them, and I really hope some one can update the files in the repository.

As you can see, the files are almost identycal (except for the header (all before "#langvars"))

Age of Empires III Patch

#!/bin/bash
# Date : (2009-12-02 15-30)
# Last revision : (2010-10-10 20-00)
# Wine version used : 1.3.5
# Distribution used to test : OpenSuse 11.3
# Author : NSLW & GNU_Raziel & TheUnknownCylon
# Licence : Retail
#
# This script can be used as a template for the Age Of Empires III updates
# including the Warchiefs and Asian Dynasties updates
 
[ "$PLAYONLINUX" = "" ] && exit 0
source "$PLAYONLINUX/lib/sources"

PREFIX="AOE3"
WORKINGWINEVERSION="1.3.5"

PATCHVERSION="114"
PATCHVERSIONSTR="1.14"
TITLE_FOR="Age Of Empires III"
TITLE="$TITLE_FOR Update $PATCHVERSIONSTR"
DOWNLOAD_POSTFIX=""

#langvars
LNG_GAME_UPDATE_WELCOME="This wizard will help you install the latest patch for $TITLE_FOR."
LNG_SUCCES="$TITLE has been installed successfully."
LNG_INSTALL_GAME_FIRST="Please install $TITLE first."
LNG_CHOOSE_MEDIA_DOWNLOAD_AUTO="Download patch $PATCHVERSIONSTR automatically"
LNG_LANGUAGE="What is your language version?"
LNG_GAME_UPDATE_DL="Please wait while the patch is being downloaded...\\nThis operation can take some time, depending of you internet connection." 
LNG_INSTALLATIONINPROGRESS="Installing the patch... please wait..."

LNG_CHOOSE_MEDIA="Please choose between an auto-download of the patch, browse, or install from disk."
LNG_CHOOSE_MEDIA_DOWNLOAD_AUTO="Download patch $PATCHVERSIONSTR automatically"
LNG_CHOOSE_MEDIA_DISK="Patch from a local file"
LNG_CHOOSE_MEDIA_DISK_CHOOSE="Please specify the location of the patch"

#starting the script
rm "$REPERTOIRE/tmp/*.jpg"
POL_SetupWindow_Init
POL_SetupWindow_presentation "$TITLE" "Ensemble Studios" "http://www.agecommunity.com/gameUpdates.aspx" "NSLW & GNU_Raziel & TheUnknownCylon" "$PREFIX"
  
POL_SetupWindow_checkexist()
{	
	if [ ! -e $REPERTOIRE/wineprefix/$1 ]; then
		POL_SetupWindow_message "$LNG_INSTALL_GAME_FIRST" "$TITLE"
		POL_SetupWindow_Close
		exit
	fi
}
 
POL_SetupWindow_checkexist "$PREFIX"
select_prefix "$REPERTOIRE/wineprefix/$PREFIX" 
Use_WineVersion "$WORKING_WINE_VERSION"
POL_LoadVar_PROGRAMFILES

#How does the user wants to continue with the installation? Auto-download or disk?
POL_SetupWindow_menu "$LNG_CHOOSE_MEDIA" "Actions" "$LNG_CHOOSE_MEDIA_DOWNLOAD_AUTO~$LNG_CHOOSE_MEDIA_DISK" "~"

if [ "$APP_ANSWER" == "$LNG_CHOOSE_MEDIA_DOWNLOAD_AUTO" ]; then
	#autodownload:

	POL_SetupWindow_menu "$LNG_LANGUAGE" "Languages" "english~french~italian~german~spanish~brazilian~polish~japanese~korean~chinese~czech~hungarian~russian" "~"
	LANGUAGEVERSION=$APP_ANSWER
	if [ "$APP_ANSWER" == "english" ]; then
	LANGUAGEVERSIONSHRT="EN"
	elif [ "$APP_ANSWER" == "french" ]	then
	LANGUAGEVERSIONSHRT="FR"
	elif [ "$APP_ANSWER" == "italian" ]
	then
	LANGUAGEVERSIONSHRT="IT"
	elif [ "$APP_ANSWER" == "german" ]
	then
	LANGUAGEVERSIONSHRT="DE"
	elif [ "$APP_ANSWER" == "spanish" ]
	then
	LANGUAGEVERSIONSHRT="ES"
	elif [ "$APP_ANSWER" == "brazilian" ]
	then
	LANGUAGEVERSIONSHRT="BP"
	elif [ "$APP_ANSWER" == "polish" ]
	then
	LANGUAGEVERSIONSHRT="PL"
	elif [ "$APP_ANSWER" == "japanese" ]
	then
	LANGUAGEVERSIONSHRT="JP"
	elif [ "$APP_ANSWER" == "korean" ]
	then
	LANGUAGEVERSIONSHRT="KOR"
	elif [ "$APP_ANSWER" == "chinese" ]
	then
	LANGUAGEVERSIONSHRT="CHT"
	elif [ "$APP_ANSWER" == "czech" ]
	then
	LANGUAGEVERSIONSHRT="CZE"
	elif [ "$APP_ANSWER" == "hungarian" ]
	then
	LANGUAGEVERSIONSHRT="HU"
	elif [ "$APP_ANSWER" == "russian" ]
	then
	LANGUAGEVERSIONSHRT="RU"
	fi

	EXE_STR="aoe3$DOWNLOAD_POSTFIX-$PATCHVERSION-${LANGUAGEVERSION}.exe"
	DOWNLOAD_URI="http://aom.zone.com/MGS/ES/loc/patch$DOWNLOAD_POSTFIX$PATCHVERSION/$LANGUAGEVERSIONSHRT/$EXE_STR"

	#Do the download, execute it, and finish it :)
	cd "$REPERTOIRE/tmp"
	#remove old download if tried before
	if [ -e "$EXE_STR" ]; then
		rm "$EXE_STR"
	fi
	#start the download
	POL_SetupWindow_download "$LNG_GAME_UPDATE_DL" "$TITLE" "$DOWNLOAD_URI"
	POL_SetupWindow_wait_next_signal "$LNG_INSTALLATIONINPROGRESS" "$TITLE"
		wine "$REPERTOIRE/tmp/$EXE_STR"
		rm "$EXE_STR"
	POL_SetupWindow_detect_exit

else
	#patch from local disk
	POL_SetupWindow_browse "$LNG_CHOOSE_MEDIA_DISK_CHOOSE" "$TITLE" ""
	POL_SetupWindow_wait_next_signal "$LNG_INSTALLATIONINPROGRESS" "$TITLE"
		wine "$APP_ANSWER"
	POL_SetupWindow_detect_exit
fi
 
 
POL_SetupWindow_message "$LNG_SUCCES" "$TITLE"
POL_SetupWindow_Close
exit


Age of Empires III : The Warchiefs Patch
#!/bin/bash
# Date : (2009-12-02 15-30)
# Last revision : (2010-10-10 20-00)
# Wine version used : 1.3.5
# Distribution used to test : OpenSuse 11.3
# Author : NSLW & GNU_Raziel & TheUnknownCylon
# Licence : Retail
#
# This script can be used as a template for the Age Of Empires III updates
# including the Warchiefs and Asian Dynasties updates
 
[ "$PLAYONLINUX" = "" ] && exit 0
source "$PLAYONLINUX/lib/sources"

PREFIX="AOE3"
WORKINGWINEVERSION="1.3.5"

PATCHVERSION="106"
PATCHVERSIONSTR="1.06"
TITLE_FOR="Age Of Empires III : The WarChiefs"
TITLE="$TITLE_FOR Update $PATCHVERSIONSTR"
DOWNLOAD_POSTFIX="x"

#langvars
LNG_GAME_UPDATE_WELCOME="This wizard will help you install the latest patch for $TITLE_FOR."
LNG_SUCCES="$TITLE has been installed successfully."
LNG_INSTALL_GAME_FIRST="Please install $TITLE first."
LNG_CHOOSE_MEDIA_DOWNLOAD_AUTO="Download patch $PATCHVERSIONSTR automatically"
LNG_LANGUAGE="What is your language version?"
LNG_GAME_UPDATE_DL="Please wait while the patch is being downloaded...\\nThis operation can take some time, depending of you internet connection." 
LNG_INSTALLATIONINPROGRESS="Installing the patch... please wait..."

LNG_CHOOSE_MEDIA="Please choose between an auto-download of the patch, browse, or install from disk."
LNG_CHOOSE_MEDIA_DOWNLOAD_AUTO="Download patch $PATCHVERSIONSTR automatically"
LNG_CHOOSE_MEDIA_DISK="Patch from a local file"
LNG_CHOOSE_MEDIA_DISK_CHOOSE="Please specify the location of the patch"

#starting the script
rm "$REPERTOIRE/tmp/*.jpg"
POL_SetupWindow_Init
POL_SetupWindow_presentation "$TITLE" "Ensemble Studios" "http://www.agecommunity.com/gameUpdates.aspx" "NSLW & GNU_Raziel & TheUnknownCylon" "$PREFIX"
  
POL_SetupWindow_checkexist()
{	
	if [ ! -e $REPERTOIRE/wineprefix/$1 ]; then
		POL_SetupWindow_message "$LNG_INSTALL_GAME_FIRST" "$TITLE"
		POL_SetupWindow_Close
		exit
	fi
}
 
POL_SetupWindow_checkexist "$PREFIX"
select_prefix "$REPERTOIRE/wineprefix/$PREFIX" 
Use_WineVersion "$WORKING_WINE_VERSION"
POL_LoadVar_PROGRAMFILES

#How does the user wants to continue with the installation? Auto-download or disk?
POL_SetupWindow_menu "$LNG_CHOOSE_MEDIA" "Actions" "$LNG_CHOOSE_MEDIA_DOWNLOAD_AUTO~$LNG_CHOOSE_MEDIA_DISK" "~"

if [ "$APP_ANSWER" == "$LNG_CHOOSE_MEDIA_DOWNLOAD_AUTO" ]; then
	#autodownload:

	POL_SetupWindow_menu "$LNG_LANGUAGE" "Languages" "english~french~italian~german~spanish~brazilian~polish~japanese~korean~chinese~czech~hungarian~russian" "~"
	LANGUAGEVERSION=$APP_ANSWER
	if [ "$APP_ANSWER" == "english" ]; then
	LANGUAGEVERSIONSHRT="EN"
	elif [ "$APP_ANSWER" == "french" ]	then
	LANGUAGEVERSIONSHRT="FR"
	elif [ "$APP_ANSWER" == "italian" ]
	then
	LANGUAGEVERSIONSHRT="IT"
	elif [ "$APP_ANSWER" == "german" ]
	then
	LANGUAGEVERSIONSHRT="DE"
	elif [ "$APP_ANSWER" == "spanish" ]
	then
	LANGUAGEVERSIONSHRT="ES"
	elif [ "$APP_ANSWER" == "brazilian" ]
	then
	LANGUAGEVERSIONSHRT="BP"
	elif [ "$APP_ANSWER" == "polish" ]
	then
	LANGUAGEVERSIONSHRT="PL"
	elif [ "$APP_ANSWER" == "japanese" ]
	then
	LANGUAGEVERSIONSHRT="JP"
	elif [ "$APP_ANSWER" == "korean" ]
	then
	LANGUAGEVERSIONSHRT="KOR"
	elif [ "$APP_ANSWER" == "chinese" ]
	then
	LANGUAGEVERSIONSHRT="CHT"
	elif [ "$APP_ANSWER" == "czech" ]
	then
	LANGUAGEVERSIONSHRT="CZE"
	elif [ "$APP_ANSWER" == "hungarian" ]
	then
	LANGUAGEVERSIONSHRT="HU"
	elif [ "$APP_ANSWER" == "russian" ]
	then
	LANGUAGEVERSIONSHRT="RU"
	fi

	EXE_STR="aoe3$DOWNLOAD_POSTFIX-$PATCHVERSION-${LANGUAGEVERSION}.exe"
	DOWNLOAD_URI="http://aom.zone.com/MGS/ES/loc/patch$DOWNLOAD_POSTFIX$PATCHVERSION/$LANGUAGEVERSIONSHRT/$EXE_STR"

	#Do the download, execute it, and finish it :)
	cd "$REPERTOIRE/tmp"
	#remove old download if tried before
	if [ -e "$EXE_STR" ]; then
		rm "$EXE_STR"
	fi
	#start the download
	POL_SetupWindow_download "$LNG_GAME_UPDATE_DL" "$TITLE" "$DOWNLOAD_URI"
	POL_SetupWindow_wait_next_signal "$LNG_INSTALLATIONINPROGRESS" "$TITLE"
		wine "$REPERTOIRE/tmp/$EXE_STR"
		rm "$EXE_STR"
	POL_SetupWindow_detect_exit

else
	#patch from local disk
	POL_SetupWindow_browse "$LNG_CHOOSE_MEDIA_DISK_CHOOSE" "$TITLE" ""
	POL_SetupWindow_wait_next_signal "$LNG_INSTALLATIONINPROGRESS" "$TITLE"
		wine "$APP_ANSWER"
	POL_SetupWindow_detect_exit
fi
 
 
POL_SetupWindow_message "$LNG_SUCCES" "$TITLE"
POL_SetupWindow_Close
exit


Age of Empires III : The Asian Dynasties Patch
#!/bin/bash
# Date : (2009-12-02 15-30)
# Last revision : (2010-10-10 20-00)
# Wine version used : 1.3.5
# Distribution used to test : OpenSuse 11.3
# Author : NSLW & GNU_Raziel & TheUnknownCylon
# Licence : Retail
#
# This script can be used as a template for the Age Of Empires III updates
# including the Warchiefs and Asian Dynasties updates
 
[ "$PLAYONLINUX" = "" ] && exit 0
source "$PLAYONLINUX/lib/sources"

PREFIX="AOE3"
WORKINGWINEVERSION="1.3.5"

PATCHVERSION="103"
PATCHVERSIONSTR="1.03"
TITLE_FOR="Age Of Empires III : The Asian Dynasties"
TITLE="$TITLE_FOR Update $PATCHVERSIONSTR"
DOWNLOAD_POSTFIX="y"

#langvars
LNG_GAME_UPDATE_WELCOME="This wizard will help you install the latest patch for $TITLE_FOR."
LNG_SUCCES="$TITLE has been installed successfully."
LNG_INSTALL_GAME_FIRST="Please install $TITLE first."
LNG_CHOOSE_MEDIA_DOWNLOAD_AUTO="Download patch $PATCHVERSIONSTR automatically"
LNG_LANGUAGE="What is your language version?"
LNG_GAME_UPDATE_DL="Please wait while the patch is being downloaded...\\nThis operation can take some time, depending of you internet connection." 
LNG_INSTALLATIONINPROGRESS="Installing the patch... please wait..."

LNG_CHOOSE_MEDIA="Please choose between an auto-download of the patch, browse, or install from disk."
LNG_CHOOSE_MEDIA_DOWNLOAD_AUTO="Download patch $PATCHVERSIONSTR automatically"
LNG_CHOOSE_MEDIA_DISK="Patch from a local file"
LNG_CHOOSE_MEDIA_DISK_CHOOSE="Please specify the location of the patch"

#starting the script
rm "$REPERTOIRE/tmp/*.jpg"
POL_SetupWindow_Init
POL_SetupWindow_presentation "$TITLE" "Ensemble Studios" "http://www.agecommunity.com/gameUpdates.aspx" "NSLW & GNU_Raziel & TheUnknownCylon" "$PREFIX"
  
POL_SetupWindow_checkexist()
{	
	if [ ! -e $REPERTOIRE/wineprefix/$1 ]; then
		POL_SetupWindow_message "$LNG_INSTALL_GAME_FIRST" "$TITLE"
		POL_SetupWindow_Close
		exit
	fi
}
 
POL_SetupWindow_checkexist "$PREFIX"
select_prefix "$REPERTOIRE/wineprefix/$PREFIX" 
Use_WineVersion "$WORKING_WINE_VERSION"
POL_LoadVar_PROGRAMFILES

#How does the user wants to continue with the installation? Auto-download or disk?
POL_SetupWindow_menu "$LNG_CHOOSE_MEDIA" "Actions" "$LNG_CHOOSE_MEDIA_DOWNLOAD_AUTO~$LNG_CHOOSE_MEDIA_DISK" "~"

if [ "$APP_ANSWER" == "$LNG_CHOOSE_MEDIA_DOWNLOAD_AUTO" ]; then
	#autodownload:

	POL_SetupWindow_menu "$LNG_LANGUAGE" "Languages" "english~french~italian~german~spanish~brazilian~polish~japanese~korean~chinese~czech~hungarian~russian" "~"
	LANGUAGEVERSION=$APP_ANSWER
	if [ "$APP_ANSWER" == "english" ]; then
	LANGUAGEVERSIONSHRT="EN"
	elif [ "$APP_ANSWER" == "french" ]	then
	LANGUAGEVERSIONSHRT="FR"
	elif [ "$APP_ANSWER" == "italian" ]
	then
	LANGUAGEVERSIONSHRT="IT"
	elif [ "$APP_ANSWER" == "german" ]
	then
	LANGUAGEVERSIONSHRT="DE"
	elif [ "$APP_ANSWER" == "spanish" ]
	then
	LANGUAGEVERSIONSHRT="ES"
	elif [ "$APP_ANSWER" == "brazilian" ]
	then
	LANGUAGEVERSIONSHRT="BP"
	elif [ "$APP_ANSWER" == "polish" ]
	then
	LANGUAGEVERSIONSHRT="PL"
	elif [ "$APP_ANSWER" == "japanese" ]
	then
	LANGUAGEVERSIONSHRT="JP"
	elif [ "$APP_ANSWER" == "korean" ]
	then
	LANGUAGEVERSIONSHRT="KOR"
	elif [ "$APP_ANSWER" == "chinese" ]
	then
	LANGUAGEVERSIONSHRT="CHT"
	elif [ "$APP_ANSWER" == "czech" ]
	then
	LANGUAGEVERSIONSHRT="CZE"
	elif [ "$APP_ANSWER" == "hungarian" ]
	then
	LANGUAGEVERSIONSHRT="HU"
	elif [ "$APP_ANSWER" == "russian" ]
	then
	LANGUAGEVERSIONSHRT="RU"
	fi

	EXE_STR="aoe3$DOWNLOAD_POSTFIX-$PATCHVERSION-${LANGUAGEVERSION}.exe"
	DOWNLOAD_URI="http://aom.zone.com/MGS/ES/loc/patch$DOWNLOAD_POSTFIX$PATCHVERSION/$LANGUAGEVERSIONSHRT/$EXE_STR"

	#Do the download, execute it, and finish it :)
	cd "$REPERTOIRE/tmp"
	#remove old download if tried before
	if [ -e "$EXE_STR" ]; then
		rm "$EXE_STR"
	fi
	#start the download
	POL_SetupWindow_download "$LNG_GAME_UPDATE_DL" "$TITLE" "$DOWNLOAD_URI"
	POL_SetupWindow_wait_next_signal "$LNG_INSTALLATIONINPROGRESS" "$TITLE"
		wine "$REPERTOIRE/tmp/$EXE_STR"
		rm "$EXE_STR"
	POL_SetupWindow_detect_exit

else
	#patch from local disk
	POL_SetupWindow_browse "$LNG_CHOOSE_MEDIA_DISK_CHOOSE" "$TITLE" ""
	POL_SetupWindow_wait_next_signal "$LNG_INSTALLATIONINPROGRESS" "$TITLE"
		wine "$APP_ANSWER"
	POL_SetupWindow_detect_exit
fi
 
 
POL_SetupWindow_message "$LNG_SUCCES" "$TITLE"
POL_SetupWindow_Close
exit

Quote from TheUnknownCylon



Edit: click quote or edit to get the code with indention
GNU_Raziel Saturday 11 December 2010 at 11:47
GNU_Raziel

TheUnknownCylon Saturday 11 December 2010 at 13:58
TheUnknownCylonAnonymous

No, thank you!

Four(!) more notes:
* I have problems with the sound (it just won't work with sound)
* Shortcuts for the expansions are not created (?)
* The Asian Dynasties script checks for the war chiefs CD (see http://www.playonmac.com/repository/?script=536)
     POL_SetupWindow_check_cdrom "age of empires iii - the warchiefs.msi"
must be:
     POL_SetupWindow_check_cdrom "Age of Empires III - The Asian Dynasties.msi"

* The patch 1.14 (http://www.playonmac.com/repository/?script=650) starts with a ], it results in a notice message, however install starts normally


I will redo the installations. Let's hope it all works well, and for myself I hope that will fix my sound problem.
I will come back here to report the installation.
GNU_Raziel Saturday 11 December 2010 at 14:37
GNU_Raziel

Errors fixed and addons cdrom check disabled as you're probably right about cases.

Try setting SoundHardwareAcceleration to Emulation in winecfg, if your distro use pulseaudio it's a common bug.
Expansions shortcuts are not mandatory right ? if you launch main game, you can still use expansions ?
TheUnknownCylon Saturday 11 December 2010 at 16:04
TheUnknownCylonAnonymous

All right. Installation is working properly, for all patches and games.

I invoke the games with a special tool (AoE loader, it's a fix for multiplayer over hamachi).
When starting the game without sound, it works perfectly.

When I start the game with sound, I hear sounds during the cinematics (startup movies), but the game crashes. I am told by the game that it can not find "l3codecx.ax". However I can find the file in the system32 folder of my prefix.

I'll post my log on how I will try to get sound.

=================================

remco@linux-xikw:~> ls /home/remco/.PlayOnLinux/wineprefix/AOE3/drive_c/windows/system32/l3codecx.ax
/home/remco/.PlayOnLinux/wineprefix/AOE3/drive_c/windows/system32/l3codecx.ax

In order to solve this problem, I try to register the DLL
remco@linux-xikw:~> env WINEPREFIX="/home/remco/.PlayOnLinux/wineprefix/AOE3" wine regsvr32 l3codecx.ax
Successfully registered DLL l3codecx.ax

Voila, the game starts now!
But... there is no sound on speakers yet (only at the cinematics again)

Let's try the emulation now...
Setting DirectSound to Hardware Accelartion: Emulation. (Sound driver set to OSS)

Result: no progress...

Let's try ALSA now...
Result: Booh! Even no sound during intro cinematics

Switching back to OSS.
I read something about extracting the l3codecx.ax from a Windows XP CD.
Maybe that will work then... I will use it to overwrite the l3codecx.ax, and see what happens.
I will also put in in ~/.wine//home/remco/.wine/drive_c/windows/system32
Result: Does not work... Only intro cinematics sound...


What can be wrong? I have no pulseaudio installed...
I am 100% that I got the sound working before my complete system reinstall (also using OpenSuse 11.3, and PlayOnLinux (the older installationscript).


Edited by TheUnknownCylon

GNU_Raziel Saturday 11 December 2010 at 16:56
GNU_Raziel

You can read AppDB entries for AoE3 and see if you can find something usefull.
TheUnknownCylon Saturday 11 December 2010 at 20:00
TheUnknownCylonAnonymous

All right. Got sound to work, back ground music and taunts not yet.
I'll see if I can get that also to work, but that will be on monday.

I'll post a how-to later.
GNU_Raziel Sunday 12 December 2010 at 17:09
GNU_Raziel

I've Updated wine version to 1.3.9 for thoses games since it fix some issues (sound one included) dixit changelog. Please retry and report.
TheUnknownCylon Monday 13 December 2010 at 21:14
TheUnknownCylonAnonymous

Ok, wine 1.3.9 works, however the Age Of Empires III installation script needs one change and one addition.
It will enable sound, but no MP3 playback (computer taunts and background music are taunts).

The change (this will enable the in-game sound, native doesn't work, no crash):
the library quartz should be change from "native" to "builtin" (so change the following line)
echo "\\"quartz\\"=\\"native\\"" >> AoE3_Fix.reg
to
echo "\\"quartz\\"=\\"builtin\\"" >> AoE3_Fix.reg
(please double check if builtin is spelled correctly...)

Also the game starts with a complaint that is not able to find the l3codecx.ax. This file is being installed by Age Of Empires itself, but not correctly registrated. If I execute the following command after the install, the complaint goes away.
env WINEPREFIX="/home/remco/.PlayOnLinux/wineprefix/AOE3" wine regsvr32 l3codecx.ax It won't fix the music problem, however the annoying "can not find..." error is gone :)
(I don't know how to properly register this file within a playonlinux script. The file should be registered after the gameinstall is complete).

I believe these changes should only be made in http://www.playonmac.com/repository/?script=437


I can play the game over (a linux native install of) hamachi network with my friends who are on Windows :D
(the game works better under wine than under my current Windows installation...?!?!?)

Edited by TheUnknownCylon

GNU_Raziel Monday 13 December 2010 at 21:23
GNU_Raziel

TheUnknownCylon Tuesday 14 December 2010 at 13:42
TheUnknownCylonAnonymous

Ok, this game both installs and plays fine now.
Including the patches and expansions.

I will mark it as solved.

Only one 'problem' is that I have to set the wine sounddriver to OSS manually. But I think that is a (mis)configuration for my PC only??

Edited by TheUnknownCylon

This site allows content generated by members, and we promptly remove any content that infringes copyright according to our Terms of Service. To report copyright infringement, please send a notice to dmca-notice@playonlinux.com