Far Cry
Farcry est un jeu de tir subjectif, développés par Crytek Studios, édité par UbiSoft il est sorti sur PC en mars 2004.
Présentation
Doté d'un moteur graphique novateur, l'originalité de Far Cry réside surtout dans son ambiance: c'est un des rares jeu de tir subjectif à se dérouler sous le soleil. En effet l'aventure se déroule sur une île paradisiaque du Pacifique sud entourée d'une mer turquoise par un temps de carte postale. Le jeu se parcourt en extérieur avec une certaine liberté de mouvement, notamment par la possibilité de conduire divers véhicules. (extrait wiki)
Le jeu se joue en mode solo ou multi-joueurs.
Mode solo
Échoué au paradis…
Jack Carver a laissé derrière lui un passé plein de mystère et d'amertume pour venir créer une société de transport maritime dans le Pacifique Sud. Il est engagé par Valérie Constantine pour emmener secrètement celle-ci sur une île inexplorée de la Micronésie. Après l'avoir amenée sur l'île, son bateau est attaqué par des mercenaires. Jack parvient à s'échapper mais échoue à des milliers de kilomètres de tout. Sans l'aide de Valérie, laquelle est perdue quelque part dans les profondeurs de la jungle, Jack doit retrouver le chemin de la civilisation. (extrait du manuel)
Pré-requis
- Système: voir la compatibilité plus bas
- Wine version supérieure ou égale à 0.9.25
- Un média d'installation de Far Cry.
- Une clé de Far Cry valide.
- Un patch cumulatif récent de Far Cry.
- Un exécutable No CD de Far Cry.
Installation
Avec le script de cbz
Avec le script de LOKI
Loki propose un excellent installateur de Far-Cry, très simple a utiliser.
- Télécharger le script d'installation ici
Attention ! ce site ne distribue plus le script de Far-Cry. La raison est officiellement que loki ne veut plus le distribuer car la dépendance à la version de Wine est trop importante. En pratique, sur la dapper ça fonctionne parfaitement. On peut trouver le script ici
Ou ici:
wget http://poiresdujardin.free.fr/loki_wine/far.cry_1.33-french.dvd.run
- Mettez le sur votre bureau.
- Vérifier que le nom du script est bien "far.cry_1.33-french.dvd.run".
- Mettez votre dvd de far cry dans le lecteur.
- Ouvrez un terminal et tapez :
cd Desktop sh far.cry_1.33-french.dvd.run
- Installez le jeu dans le répertoire voulu, installez le script de lancement où vous voulez (idéalement /home/votrenom/)
(il se peut que l'installeur vous affiche "PLease mount Farcry, choose Yes to retry, No to cancel", continuellement, alors même que le jeu est monté. Dans ce cas cliquez sur "cancel" puis exécutez
SETUP_CDROM=/chemin/vers/leCdRom ./far.cry_1.33-french_2.dvd.run
(où "far.cry_1.33-french_2.dvd.run" correspond au nom de l'exécutable que vous avez téléchargé.
Et relancez le script installation! )
Au bout d'un certain temps et de beaucoup de 100%, votre jeu est installé.
Pour lancer le jeu, vous devez éditer le script de lancement :
sudo gedit farcry
Puis remplacez la première ligne :
#!/bin/sh
par
#!/bin/bash
Vous pouvez aussi recopier le script dans /usr/local/bin pour pour lancer FarCry en tapant "farcry" dans une console :
sudo cp farcry /usr/local/bin/
Et voilà ça marche !! Avec les vidéos et en plein-écran !!! :)
Si par la suite vous voulez jouer sur internet ou corriger des bugs graphique, vous pouvez essayer d'installer le patch 1.33 ⇒ 1.4 ou 1.X ⇒ 1.4. (Apparemment le patch 1.33 ⇒ 1.4 ne fonctionne pas, essayer directement l'autre). N'essayez pas d'installer un patch si tout marche déjà correctement, car cela peut toujours poser problème…
Manuelle
Wine doit être configuré (avec winecfg), choisir dans les options d'affichage émuler un bureau virtuel.
Créer le fichier DirectX9c.reg dans le répertoire ~/.wine/drive_c/ avec comme contenu:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectX] "InstalledVersion"=hex:00,00,00,09,00,00,00,00 "Version"="4.09.00.0904"
Enregistrer la clé de registre crée ci-dessus (pour simuler la présence de DirectX9c).
cd ~/.wine/drive_c/ regedit DirectX9c.reg
Si besoin insérer le média d'installation de Far Cry
Dans la ligne suivante remplacer "/media/cdrom0" par le chemin du média d'installation.
cd /media/cdrom0
Pendant l'installation, choisir la langue, accepter la licence Crytek, (de préférence, pas testé) ne pas changer le chemin d'installation, (décocher les raccourcis,) décocher l'installation d'Acrobat Reader et de DirectX, si demandé accepter les termes du contrat de licence de DirectX (celui-ci ne sera pas installé grâce à la clé de registre enregistrée précédemment).
Le temps d'installation de Far Cry peut sembler assez long…
wine setup.exe
A la fin de l'installation tuer le serveur wine. ( Ouvrir un terminal )
wineserver -k
Modifier chaque ligne suivante du fichier system.cfg dans le répertoire Far Cry.
i_direct_input = "1" r_Driver = "Direct3D9" r_Fullscreen = "1"
par la ligne correspondante
i_direct_input = "0" r_Driver = "OpenGL" r_Fullscreen = "0"
Dans le répertoire Bin32 remplacer le fichier FarCry.exe par la version No CD.
Installation d'un patch
Télécharger la version cumulative du patch et la placer dans le répertoire ~/.wine/drive_c/
cd ~/.wine/drive_c/
Remplacer dans la ligne suivante le nom du patch par celui présent.
Pendant l'installation accepter sans changement les propositions faites.
Une erreur peut apparaîte à la fin de l'installation, ne pas en tenir compte.
wine far_cry_v1.4_cumulative.exe
A la fin de l'installation tuer le serveur wine.
wineserver -k
Problème de souris rencontré pendant le jeu, la souris ne semble pas fonctionner.
Avec l'arrivée du patch 1.4 Far Cry, le support des joypads a été ajouté.
Le fichier game.cfg généré automatiquement par Far Cry peut être configuré pour gérer le jeu par joypad par défaut au lieu de le gérer par souris.
Pour régler le problème, modifier chaque ligne suivante du fichier game.cfg dans le répertoire Far Cry.
Input:BindAction("TURNLR", "joy_rstick_ud", "binozoom", 0); Input:BindAction("TURNUD", "joy_rstick_lr", "binozoom", 0); Input:BindAction("TURNLR", "joy_rstick_ud", "default", 0); Input:BindAction("TURNUD", "joy_rstick_lr", "default", 0); Input:BindAction("TURNLR", "joy_rstick_ud", "vehicle", 0); Input:BindAction("TURNUD", "joy_rstick_lr", "vehicle", 0); Input:BindAction("TURNLR", "joy_rstick_ud", "zoom", 0); Input:BindAction("TURNUD", "joy_rstick_lr", "zoom", 0);
par la ligne correspondante
Input:BindAction("TURNLR", "maxisx", "binozoom", 0); Input:BindAction("TURNUD", "maxisy", "binozoom", 0); Input:BindAction("TURNLR", "maxisx", "default", 0); Input:BindAction("TURNUD", "maxisy", "default", 0); Input:BindAction("TURNLR", "maxisx", "vehicle", 0); Input:BindAction("TURNUD", "maxisy", "vehicle", 0); Input:BindAction("TURNLR", "maxisx", "zoom", 0); Input:BindAction("TURNUD", "maxisy", "zoom", 0);
Si le problème persiste modifier également ces lignes dans les fichiers game.cfg rencontrés sous l'arborescence Far Cry\Profiles.
Optimisation et astuces
Problème de son (crachotements)
Aller dans les Options Audio de Far Cry et cocher:
Mode compatible (redémarrage) A utiliser si problèmes audio.
Lancement sous Debian (Etch)
Si le jeu ne se lance pas :Erreur de segmentation (si besoin relancer le serveur X [CTRL]+[ALT]+[SUP]) essayer
strace /usr/lib/wine/wine.bin "C:\Program Files\Ubisoft\Crytek\Far Cry\Bin32\FarCry.exe" 2>/dev/null
Pour la version installée avec le dépôt winehq
strace wine "C:\Program Files\Ubisoft\Crytek\Far Cry\Bin32\FarCry.exe" 2>/dev/null
Pointeur souris figée
Si le pointeur de la souris reste figé au milieu de l'écran
Configurer wine avec un bureau virtuel, noter la définition (ex: 800X600)
winecfg
Configurer la résolution de Far Cry en reportant la résolution définie dans wine
gedit ~/.wine/drive_c/Program\ Files/Ubisoft/Crytek/Far\ Cry/system.cfg
dans les paramètres r_Height = "600" et r_Width = "800"
Problème de triangles noirs (bug d'affichage)
Far Cry permet de monter toute la configuration en très élevé, mais il m'a fallu descendre la qualité des éclairages en élevé pour ne pas avoir de bugs.
Options configuration graphiques
Supprimez le fichier "system.cfg" dans le dossier farcry/ et relancez le jeu. Vous pourrez alors configurer le jeu en détail, et si vous le désirer éditer les petites lignes manuellement avec des explications (allez dans Vidéo ⇒ Personnaliser).
Attention tout de même, vous ne pourrez changer Direct3D, il va falloir lancer le jeu une fois, le quitter, éditer le fichier system.cfg manuellement et mettre "OpenGL" au lieu de "Direct3D".
Sauvegardes incompatibles
Attention : les sauvegardes de la version 1.0 à 1.2 ne sont pas compatibles avec la 1.3 et supérieur.
Mode triche
Un mode bien pratique, notamment si vos sauvegardes ont été effacées/perdues :
Il faut faire en sorte de lancer FarCry.exe avec l'option "-DEVMODE". Pour le script de Loki par exemple, il faut éditer le fichier "farcry" (dans le dossier d'installation) et dans la ligne 9, faire comme ceci :
GAME_BINARY="FarCry.exe -DEVMODE"
Touche | Effet |
---|---|
P | toutes les armes à feu |
O | 999 munitions pour l'arme actuellement sélectionnée |
F2 | point de contrôle suivant de la mission |
F3 | "mode vol", avec les collisions |
F4 | "mode vol", sans les collisions |
- Pour avoir des vies en nombre illimité : Ouvrez la fenêtre de la console en pressant la touche "exposant 2" (le petit 2 situé à gauche du "1" au-dessus du "A". Pressez simultanément les trois touches suivantes de votre clavier : "CTRL" (en bas à gauche) "Alt" (deux touches à droite de "CTRL") "#" (la touche du chiffre "3", au-dessus des lettres "Z" et "E") Normalement, le signe "#" devrait apparaître. Tapez ensuite "god=1". Vous devriez donc lire : #god=1
Pressez la touche "ENTREE" de votre clavier. Faites disparaître la fenêtre de la console en pressant la touche "exposant 2" (le petit 2 situé à gauche du "1" au-dessus du "A". Normalement, vous devriez lire "GOD 0" en haut à gauche sur votre écran.
Extrait de la FAQ officielle.
Problèmes rencontrés
Ici les problèmes n'ayant pas de solutions…
Problème d'océan qui n'apparait pas
J'ai ce bug avec ma ATI9600XT (pilotes proprios, voir screen), j'ai tout essayer (EDIT: et je viens de réessayer de trafiquer pendant plus de 5h…) en vain pour le résoudre (configuration, patch 1.4…), mais rien n'y fais. Si vous avez une solution, éditez ce paragraphe !!
La souris
La molette de la souris fait planter le jeu. Il semblerait que le patch 1.4 en soit la cause. Peut-être une prochaine mise à jour de Wine corrigera-t-elle le bug… à moins d'un prochain patch compatible !
Configuration systèmes testés
Bureau | Noyau | Version | Wine | Test | Commentaires |
---|---|---|---|---|---|
… | … | … | … | … | … |
Gnome | 2.6.39 | Debian Wheezy | 1.3.28 | Ok | Fonctionne très bien en suivant le guide de l'installation manuelle (et surtout en utilisant OpenGL). DirectX cause des problèmes de clavier et souris. |
Gnome | 2.6.22 | Gutsy Gibbon | 0.9.50 | Ok | Marche parfaitement (rectangles noirs présents, pas trop génant mais certainement dûs à une mauvaise configuration…) |
Gnome | 2.6.20 | Feisty Fawn | 0.9.41 | Ok | Marche parfaitement |
Gnome | 2.6.18 | Debian Etch | 0.9.40 | Ok | |
Gnome | 2.6.18 | Debian Etch | 0.9.25 | Ok | voir optimisation et astuces |
Gnome | 2.6.20 | Feisty Fawn | 0.9.36 | OK | Installation par script sans soucis. Mode plein-écran OK Graphiquement, quelques petits soucis : ATI9600XT (pilote proprio) |
Gnome | 2.6.20 | Feisty Fawn | 0.9.36 | OK | Tout fonctionne à fond les ballons sur C2D E6300 + 7600GT + 1Go RAM en 1280x1024 :) |
KDE | 2.6.15-27 | Dapper Drake | 0.9.25 | Ok | Suite à un boot ne se lance qu'une fois puis crash X |
KDE | 2.6.17-10 | Edgy Eft | 0.9.25 | Ko | Problème de noyau à confirmer |
Captures d'écran
Ressources
Script d'installation
Créer un fichier texte et y coller le script. Attention à bien enregistrer votre fichier au format UTF-8 pour éviter les problèmes d'accents.
#!/bin/sh # Install Farcry # version 0.6 # par cbz # gksu (Debian) ou gksudo (Ubuntu) if [ "`cat /etc/debian_version`" = "" ]; then gks="gksudo" versionwine="Wine 0.9.24" tversionwine="Wine " else gks="gksu" versionwine="wine-0.9.24" tversionwine="wine-" fi if [ -a /usr/lib/wine/wineserver ]; then wineserv="/usr/lib/wine/wineserver" else wineserv="wineserver" fi # (Dépendances: zenity, cabextract, sed, wine) if ! [ "`dpkg -s zenity | grep 'Status:'`" = "Status: install ok installed" ]; then { #Recherche du paquet zenity dans les dépôts $gks --message "Installation du paquet Zenity nécessaire pour continuer l'installation." apt-get update if [ "`apt-cache search --names-only zenity`" = "" ]; then echo "Le paquet zenity n'est pas présent. Installation annulée." exit 1 else #Installation de zenity $gks apt-get install zenity if ! [ "`dpkg -s zenity | grep 'Status:'`" = "Status: install ok installed" ]; then echo "Le paquet zenity n'est pas présent.\nInstallation annulée." exit 1 fi fi } fi #Dépendance cabextract if ! [ "`dpkg -s cabextract | grep 'Status:'`" = "Status: install ok installed" ]; then #Recherche du paquet cabextract dans les dépôts $gks --message "L'installation du paquêt cabextract est nécessaire." apt-get update if [ "`apt-cache search cabextract`" = "" ]; then zenity --title="Installation Far Cry" --error \ --text="Le paquet cabextract n'est pas présent.\nInstallation annulée." exit 1 else #Installation de cabextract $gks --message "L'installation du paquêt cabextract est nécessaire." apt-get install cabextract if ! [ "`dpkg -s cabextract | grep 'Status:'`" = "Status: install ok installed" ]; then zenity --title="Installation Far Cry" --error \ --text="Le paquet cabextract n'est pas présent.\nInstallation annulée." exit 1 fi fi fi #Dépendance sed if ! [ "`dpkg -s sed | grep 'Status:'`" = "Status: install ok installed" ]; then #Recherche du paquet sed dans les dépôts $gks --message "L'installation du paquêt sed est nécessaire." apt-get update if [ "`apt-cache search sed`" = "" ]; then zenity --title="Installation Far Cry" --error \ --text="Le paquet sed n'est pas présent.\nInstallation annulée." exit 1 else #Installation de cabextract $gks --message "L'installation du paquêt sed est nécessaire." apt-get install sed if ! [ "`dpkg -s sed | grep 'Status:'`" = "Status: install ok installed" ]; then zenity --title="Installation Far Cry" --error \ --text="Le paquet sed n'est pas présent.\nInstallation annulée." exit 1 fi fi fi # Prérequis Wine if [ ! "`dpkg -s wine | grep 'Status:'`" = "Status: install ok installed" ]; then #Verifie si le paquet wine est installé zenity --title="Installation Far Cry" --error \ --text="Wine ne semble pas être installé.\nInstallation annulée." exit 1 fi #Verifie si wine est configuré (existence du répertoire ~/.wine/drive_c) if ! [ -d ~/.wine/drive_c ]; then zenity --title="Installation Far Cry" --question \ --text="Wine ne semble pas être configuré (~/.wine/drive_c absent).\nVoulez vous lancer Wine Config?" if [ "$?" = "0" ]; then winecfg 2>~/winecfg.log fi if ! [ -d ~/.wine/drive_c ]; then zenity --title="Installation Far Cry" --error \ --text="Wine ne semble pas avoir été configuré.\nInstallation annulée." exit 1 fi fi # Vérifie la version de wine (>=0.9.25 bon support de l'installation par msi) if ! [ "`wine --version 2>/dev/null | grep -i "$tversionwine"`" \> "$versionwine" ]; then zenity --title="Installation Far Cry" --error \ --text="Version de wine obsolète (`wine --version 2>/dev/null`).\nVeuillez faire la mise à jour de wine avec une version >= 0.9.25." exit 1 fi #Vérifie si le répertoire ~/.wine/drive_c est accessible en écriture if ! [ -w ~/.wine/drive_c ]; then zenity --title="Installation Far Cry" --error \ --text="Le répertoire racine du lecteur C (~/.wine/drive_c) ne permet pas un accès en écriture.\nInstallation annulée." exit 1 fi zenity --title="Installation Far Cry" --info \ --text="Ce programme est un installeur pour Far Cry.\n\nIl nécessite:\n-Un média d'installation de Far Cry.\n-Une clé de Far Cry valide.\n-Un patch cumulatif récent de Far Cry.\n-Un exécutable No CD de Far Cry\n-Les options vidéos de Wine configurés pour émuler un bureau virtuel.\n\nLors de l'installation, vous serez peut-être amener à clore manuellement la fenêtre wine desktop." # Sélection du média d'installation de Far Cry flag=1 while [ "$flag" = "1" ]; do media_farcry=`zenity --title="Sélectionner le média d'installation de Far Cry" --file-selection --directory` if [ "$?" != "0" ]; then zenity --title="Installation Far Cry" --error \ --text="Installation annulée." exit 1 fi # Verification du média d'installation de Far Cry if ! [ -e "$media_farcry/Far Cry.msi" ]; then zenity --title="Installation Far Cry" --info \ --text="Identification du média d'installation de Far Cry échouée.\nSi besoin veuillez insérer le DVD d'installation." else flag=0 fi done # Sélectionner du patch Far Cry à installer flag=1 while [ "$flag" = "1" ]; do patch_farcry=`zenity --title="Sélectionner du patch Far Cry à installer" --file-selection` if [ "$?" != "0" ]; then zenity --title="Installation Far Cry" --error \ --text="Installation annulée." exit 1 else flag=0 fi done # Sélectionner de l'exécutable Far Cry No CD flag=1 while [ "$flag" = "1" ]; do exeNoCD_farcry=`zenity --title="Sélectionner de l'exécutable Far Cry NoCD" --file-selection` if [ "$?" != "0" ]; then zenity --title="Installation Far Cry" --error \ --text="Installation annulée." exit 1 else flag=0 fi done echo "Installation de clés de registre pour simuler la présence de DirectX9c." #Installation des clés de registres mkdir -p ~/.wine/drive_c/Program\ Files/Ubisoft/Crytek/Far\ Cry/ cd ~/.wine/drive_c/Program\ Files/Ubisoft/Crytek/Far\ Cry/ # DirectX9c.reg echo 'Windows Registry Editor Version 5.00' >>DirectX9c.reg echo '' >>DirectX9c.reg echo '[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectX]' >>DirectX9c.reg echo 'InstalledVersion=hex:00,00,00,09,00,00,00,00' >>DirectX9c.reg echo 'Version="4.09.00.0904"' >>DirectX9c.reg # Mise à jour de la base de registre regedit DirectX9c.reg # Installation de Far Cry echo "Installation de Far Cry." # installation de Far Cry echo $media_farcy cd "$media_farcry/" wine setup.exe $wineserv -k # Installation du patch Far Cry echo "Installation du patch Far Cry." # installation du patch Far Cry (lancer avec wine via un lien symbolique) ln -s "$patch_farcry" ~/.wine/drive_c/patch.exe wine ~/.wine/drive_c/patch.exe 2>~/.wine/drive_c/patch_farcry.log $wineserv -k rm ~/.wine/drive_c/patch.exe cd ~/.wine/drive_c/Program\ Files/Ubisoft/Crytek/Far\ Cry/ # Copie de l'exécutable Far Cry No CD mv ./Bin32/FarCry.exe ./Bin32/original_FarCry.exe cp "$exeNoCD_farcry" ./Bin32/ # Exécution du programme de configuration de Far Cry zenity --title="Installation Far Cry" --info \ --text="Le programme de configuration de Far Cry va être exécuté.\nRenseigner un mode graphique compatible avec le mode défini dans wine." wine ./Bin32/FarCryConfigurator.exe $wineserv -k #Force openGL et un mode fenêtre dans le fichier system.cfg de Far Cry for namecfg in `find . -name '*system.cfg' -type f`;do sed -i 's/r_Driver = "Direct3D9"/r_Driver = "OpenGL"/g' $namecfg; sed -i 's/r_Fullscreen = "1"/r_Fullscreen = "0"/g' $namecfg; sed -i 's/i_direct_input = "1"/i_direct_input = "0"/g' $namecfg; done #r_TexResolution = "0" #Force l'utilisation de la souris à la place du pad cp ./Profiles/defaults/french/game.cfg . for namecfg in `find . -name '*game.cfg' -type f`;do sed -i 's/Input:BindAction("TURNLR", "joy_rstick_ud", "binozoom", 0);/Input:BindAction("TURNLR", "maxisx", "binozoom", 0);/g' $namecfg; sed -i 's/Input:BindAction("TURNUD", "joy_rstick_lr", "binozoom", 0);/Input:BindAction("TURNUD", "maxisy", "binozoom", 0);/g' $namecfg; sed -i 's/Input:BindAction("TURNLR", "joy_rstick_ud", "default", 0);/Input:BindAction("TURNLR", "maxisx", "default", 0);/g' $namecfg; sed -i 's/Input:BindAction("TURNUD", "joy_rstick_lr", "default", 0);/Input:BindAction("TURNUD", "maxisy", "default", 0);/g' $namecfg; sed -i 's/Input:BindAction("TURNLR", "joy_rstick_ud", "vehicle", 0);/Input:BindAction("TURNLR", "maxisx", "vehicle", 0);/g' $namecfg; sed -i 's/Input:BindAction("TURNUD", "joy_rstick_lr", "vehicle", 0);/Input:BindAction("TURNUD", "maxisy", "vehicle", 0);/g' $namecfg; sed -i 's/Input:BindAction("TURNLR", "joy_rstick_ud", "zoom", 0);/Input:BindAction("TURNLR", "maxisx", "zoom", 0);/g' $namecfg; sed -i 's/Input:BindAction("TURNUD", "joy_rstick_lr", "zoom", 0);/Input:BindAction("TURNUD", "maxisy", "zoom", 0);/g' $namecfg; done zenity --title="Installation Far Cry" --info \ --text="Installation de Far Cry terminée.\n\nBon frag !!!" exit 0
Contributeurs : cbz Guguscat adam0509