Forums

[Script]Need for Speed World

Auteur Réponses
Willemoes Dimanche 23 Octobre 2011 à 0:16
WillemoesAnonymous

Hi everyone, recently i could manage to make this game works, suddenly i decided to make an script and well here i am. I based my script on Raziels one for NFSUnderground2 so i think it needs some corrections spite it works fine (at least for me) so chek it out.
#!/bin/bash
# Date : (2011-22-10 18-00)
# Last revision : (2011-22-10 18-00)
# Wine version used : 1.3.30
# Distribution used to test : Ubuntu Oneric 11.10
# Author : Woile based on Raziel's for NFSUnderground2
# Licence : Free to play
 
[ "$PLAYONLINUX" = "" ] && exit 0
source "$PLAYONLINUX/lib/sources"
 
TITLE="Need For Speed World"
PREFIX="NFSWorld"
WORKING_WINE_VERSION="1.3.30"

if [ "$POL_LANG" == "fr" ]; then
LNG_CHOOSE_MEDIA="Quelle version possédez-vous?"
LNG_DDV="Version Digital Download"
LNG_CHOOSE_DDV="Veuillez selectionner votre executable Digital Download de $TITLE"
LNG_WAIT_END="Appuyez sur \\"Suivant\\" UNIQUEMENT quand l'installation du\\njeu sera terminée sous peine de devoir recommencer l'installation."
LNG_INSTALL_ON="Installation en cours..."
LNG_GAME_VMS="Quelle est la quantité de mémoire (Mo) de votre carte graphique ?\\n(minimum pour ce jeu : 256)" 
LNG_VMS_ERROR="Ce jeu ne fonctionnera correctement qu'avec une carte graphique ayant plus de 256Mo de mémoire."
LNG_SUCCES="$TITLE a été installé avec succès."
else
LNG_CHOOSE_MEDIA="What version do you have?"
LNG_DDV="Digital Download Version"
LNG_CHOOSE_DDV="Please select your $TITLE Digital Download executable"
LNG_WAIT_END="Click on \\"Next\\" ONLY when the game installation is finished\\nor you will have to redo the installation."
LNG_INSTALL_ON="Installation in progress..."
LNG_GAME_VMS="How much memory does your graphics board have?\\n(minimum for this game : 256)" 
LNG_VMS_ERROR="This game will work correctly only with a graphic card with more than 256Mo of memory."
LNG_SUCCES="$TITLE has been installed successfully."
fi

#starting the script
rm "$REPERTOIRE/tmp/*.jpg"
POL_SetupWindow_Init
 
POL_SetupWindow_presentation "$TITLE" "EA Games" "N/A" "Woile" "$PREFIX" 
 
select_prefix "$REPERTOIRE/wineprefix/$PREFIX"
 
#downloading specific Wine
POL_SetupWindow_install_wine "$WORKING_WINE_VERSION"
Use_WineVersion "$WORKING_WINE_VERSION"
 
#fetching PROGRAMFILES environmental variable
POL_LoadVar_PROGRAMFILES
 
#Choose Digital Download version
POL_SetupWindow_menu "$LNG_CHOOSE_MEDIA" "Actions" "$LNG_DDV" "~"
 
GAME_MEDIAVERSION="DD"

#Installing mandatory dependencies
Set_GLSL "On"
POL_Wine_InstallFonts
winetricks d3dcompiler_43
winetricks ie7
POL_SetupWindow_reboot
POL_Call POL_Install_vcrun2008
POL_Call POL_Install_dotnet20
POL_Call POL_Install_gdiplus
POL_Call POL_Install_mono26
POL_Call POL_Install_d3dx9
POL_SetupWindow_reboot

#Asking then installing DDV of the game
cd $HOME
POL_SetupWindow_browse "$LNG_CHOOSE_DDV" "$TITLE"
SETUP_EXE="$APP_ANSWER"
POL_SetupWindow_wait_next_signal "$LNG_INSTALL_ON" "$TITLE"
wine start /unix "$SETUP_EXE"
INSTALL_ON="1"
until [ "$INSTALL_ON" == "" ]; do
sleep 5
INSTALL_ON=`ps aux | grep "wineserver" | grep -v "grep"`
done
POL_SetupWindow_detect_exit

#Fix for this game
cd "$REPERTOIRE/ressources"
if [ ! -e "dinput8.zip" ]; then
wget -c "http://www.useyourbrain.co.uk/dlldownloads-files/dinput8.zip"
fi
cd "$WINEPREFIX/drive_c/windows/temp/"
unzip "$REPERTOIRE/ressources/dinput8.zip"
mv DINPUT8.DLL "$WINEPREFIX/drive_c/windows/system32/dinput8.dll"
 
echo "[HKEY_CURRENT_USER\\\\Software\\\\Wine\\\\DllOverrides]" > "$WINEPREFIX/drive_c/windows/temp/NFSU2_Fix.reg"
echo "\\"dinput8\\"=\\"native\\"" >> "$WINEPREFIX/drive_c/windows/temp/NFSU2_Fix.reg"
regedit "$WINEPREFIX/drive_c/windows/temp/NFSU2_Fix.reg"
 
#asking about memory size of graphic card
POL_SetupWindow_menu_list "$LNG_GAME_VMS" "$TITLE" "128-256-320-384-512-640-768-896-1024-1792-2048" "-" "256"
VMS="$APP_ANSWER"
 
cd "$WINEPREFIX/drive_c/windows/temp/"
echo "[HKEY_CURRENT_USER\\\\Software\\\\Wine\\\\Direct3D]" > vms.reg
echo "\\"VideoMemorySize\\"=\\"$VMS\\"" >> vms.reg
regedit vms.reg
if [ "$VMS" -lt "256" ]; then
	POL_SetupWindow_message "$LNG_VMS_ERROR" "$TITLE"
fi

## PlayOnMac Section
[ "$PLAYONMAC" == "" ] && Set_SoundDriver "alsa"
[ "$PLAYONMAC" == "" ] || Set_Managed "Off"
## End Section
 
#cleaning temp
if [ -e "$WINEPREFIX/drive_c/windows/temp/" ]; then
	rm -rf "$WINEPREFIX/drive_c/windows/temp/*"
	chmod -R 777 "$REPERTOIRE/tmp/"
	rm -rf "$REPERTOIRE/tmp/*"
fi
 
#making shortcut
POL_SetupWindow_auto_shortcut "$PREFIX" "GameLauncher.exe" "$TITLE" "" ""
Set_WineVersion_Assign "$WORKING_WINE_VERSION" "$TITLE"
 
POL_SetupWindow_message "$LNG_SUCCES" "$TITLE"
 
POL_SetupWindow_Close
exit


Thanks for reading and hope u like it

Edité par Willemoes

Quentin PÂRIS Dimanche 23 Octobre 2011 à 10:28
Quentin PÂRISAnonymous

Sorry, we don't accept winetricks use in à script
Willemoes Dimanche 23 Octobre 2011 à 15:27
WillemoesAnonymous

Sorry, we don't accept winetricks use in à script

Quote from Tinou

Oh! i didn't know, and i couldn't find a way to add them without winetricks, how should i do?

Thanks a lot
Quentin PÂRIS Dimanche 23 Octobre 2011 à 17:55
Quentin PÂRISAnonymous

You can write some POL_Call scripts :)

But before, make sure that ie7 and d3dcompiler_43 are really needed (especially ie7)

Fore corefonts, why don't you simply use POL_Wine_InstallFonts ?
Willemoes Dimanche 23 Octobre 2011 à 19:37
WillemoesAnonymous

You can write some POL_Call scripts :)

But before, make sure that ie7 and d3dcompiler_43 are really needed (especially ie7)

Fore corefonts, why don't you simply use POL_Wine_InstallFonts ?

Quote from Tinou

Thanks a lot now i'll try to fix it and yes, according to what i've read on wine website its recommended to install it.
http://appdb.winehq.org/objectManager.php?sClass=version&iId=20659
(i added some more mentioned below in the website and combined all of them, finally it worked)

I was reading the documentation but i don't know how to call ie7 and d3dcompiler_43 with POL_Call could u explain it a bit better or point me to the correct guide?

Sorry for my ignorance i'm doing my best :)
Thanks again!

Quentin PÂRIS Dimanche 23 Octobre 2011 à 20:58
Quentin PÂRISAnonymous

There are no ie7 and d3dcompiler_43 POL_Call scripts

You need to make them if you want to use them into POL
Willemoes Dimanche 23 Octobre 2011 à 22:01
WillemoesAnonymous

There are no ie7 and d3dcompiler_43 POL_Call scripts

You need to make them if you want to use them into POL

Quote from Tinou


Oh! so, a solution could be adding this script http://www.playonlinux.com/repository/?script=369 as a function on my script? is there a way to call this script that has already been done?
Quentin PÂRIS Dimanche 23 Octobre 2011 à 22:21
Quentin PÂRISAnonymous

Are you sure that your script REALLY needs ie7 ?

Edité par Tinou

viphybs Dimanche 18 Novembre 2012 à 19:43
viphybsAnonymous

Recipe that worked for me in Ubuntu 12.10 with POL 4.1.8 and Wine 1.4.1 is dotnet20, mono26 and running command runas /user:[hostname]\\administrator to exec before running the program. The command is necessary to run program as administrator to avoid update error. Enjoy!

Edité par viphybs