The forum

Need For Speed World

Author Replies
Massawi33 Thursday 19 September 2013 at 16:18
Massawi33

Bonjour
voila mon script pour Need for speed world , il marche parfaitement chez moi le seule problème c'est que pendant le premier téléchargement le gamelancher bug et il faut le redémarrer pour continuer le téléchargement.
Je désire activer le GLSL pouvez vous me donner le code a écrire .
Merci

[code language=playonlinux]#!/bin/bash
# Date : 19/09/2013
# Last revision : 19/09/2013
# Wine version used : 1.5.30
# Distribution used to test : Ubuntu-GNOME 13.04
# Author : Massawi33
[ "$PLAYONLINUX" = "" ] && exit 0
source "$PLAYONLINUX/lib/sources"
TITLE="Need For Speed World"
PREFIX="NFSW"
POL_SetupWindow_Init
POL_Debug_Init
 
 
POL_SetupWindow_presentation "$TITLE" "Konami" "http://world.needforspeed.com/" "Massawi33" "$PREFIX"
POL_SetupWindow_message "$(eval_gettext 'register or log in and download the installation file : https://world.needforspeed.com/')" "$TITLE"

POL_Wine_SelectPrefix "$PREFIX"
POL_Wine_PrefixCreate "1.5.30"

    cd "$HOME"
    POL_SetupWindow_browse " $(eval_gettext 'Please select your setup file')" "$TITLE"
    POL_SetupWindow_wait "$(eval_gettext 'Please wait while $TITLE is installed')" "$TITLE"
    POL_Wine start /unix "$APP_ANSWER"

POL_Wine_WaitExit "$TITLE"
#------------------------------
POL_call POL_Install_dotnet20
POL_call POL_Install_wininet
POL_call POL_Install_corefonts
#------------------------------
POL_Shortcut "GameLauncher.exe" "$TITLE"
POL_SetupWindow_message "$(eval_gettext 'If the download update stuck close and run until the download is finished.')" "$TITLE"
POL_SetupWindow_message "$(eval_gettext '$TITLE has been successfully installed')" "$TITLE"
POL_SetupWindow_Close
exit[/code]

Edit SuperPlumus : Mise en forme du code.

Edited by SuperPlumus

petch Thursday 19 September 2013 at 19:57
petch
Developer


Bonjour,
Le script semble ok, il vaut mieux prendre des noms de préfixe plus long cependant, pour réduire les possibilités de collision avec d'autres scripts.

Pour désactiver GLSL:
POL_Wine_Direct3D "UseGLSL" "disabled"

Edited by petch

Massawi33 Friday 20 September 2013 at 0:32
Massawi33

Voila Version finale qu'en pensez vous ??

[code language=playonlinux]#!/bin/bash
# Date : 19/09/2013
# Last revision : 19/09/2013
# Wine version used : 1.5.30
# Distribution used to test : Ubuntu-GNOME 13.04
# Author : Massawi33
[ "$PLAYONLINUX" = "" ] && exit 0
source "$PLAYONLINUX/lib/sources"
TITLE="Need For Speed World"
PREFIX="NFSWORLD"
POL_SetupWindow_Init
POL_Debug_Init
 
 
POL_SetupWindow_presentation "$TITLE" "Electronic Arts" "http://world.needforspeed.com/" "Massawi33" "$PREFIX"
POL_SetupWindow_message "$(eval_gettext 'Register or log in and download the installation file : https://world.needforspeed.com/')" "$TITLE"

POL_Wine_SelectPrefix "$PREFIX"
POL_Wine_PrefixCreate "1.5.30"
#------------------------------
POL_Call POL_Install_dotnet20
#------------------------------
POL_SetupWindow_message "$(eval_gettext 'Please uncheck "Launch Need For Speed" at the end of the installation box')" "$TITLE"
    cd "$HOME"
    POL_SetupWindow_browse " $(eval_gettext 'Please select your setup file')" "$TITLE"
    POL_SetupWindow_wait "$(eval_gettext 'Please wait while $TITLE is installed')" "$TITLE"
    POL_Wine start /unix "$APP_ANSWER"

POL_Wine_WaitExit "$TITLE"
#------------------------------
POL_Call POL_Install_wininet
POL_Call POL_Install_corefonts
POL_Call POL_Install_ie8
POL_SetupWindow_VMS "128"
#------------------------------
POL_Shortcut "GameLauncher.exe" "$TITLE"
POL_SetupWindow_message "$(eval_gettext 'If the download update stuck close and run until the download is complete.')" "$TITLE"
POL_SetupWindow_message "$(eval_gettext '$TITLE has been successfully installed')" "$TITLE"
POL_SetupWindow_Close
exit[/code]

Edit SuperPlumus : mise en forme du code

Edited by SuperPlumus

SuperPlumus Friday 20 September 2013 at 12:46
SuperPlumusAnonymous
Admin

Bonjour Massawi33,

Il faudrait aussi faire 2-3 petites corrections, afin que ce soit parfait.
  • Il faudrait remplacer le code ci-dessous
    [code language=playonlinux]POL_SetupWindow_wait "$(eval_gettext 'Please wait while $TITLE is installed')" "$TITLE"[/code]
    par
    [code language=playonlinux]POL_Wine_WaitBefore "$TITLE"[/code]
    Cela permet d'éviter une multiplication des phrases du genre (car il est inutile de faire traduire sur le Launchpad 10 phrases différentes qui veulent dire la même chose).
  • Remplacer ceci
    [code language=playonlinux]POL_SetupWindow_browse " $(eval_gettext 'Please select your setup file')" "$TITLE"[/code]
    par
    [code language=playonlinux]POL_SetupWindow_browse "$(eval_gettext 'Please select the setup file to run')" "$TITLE"[/code]
    Pour la même raison que ci-dessus.
  • Quant au message pour dire que l’installation s'est bien passée, on évite de le mettre depuis le nouveau système de rapports de bug, car en cas de problème, on dit à l'utilisateur que l'installation s'est bien passée, puis juste après (au moment du POL_SetupWindow_Close), on lui dit qu'une erreur s'est produite
  • Et pour le nom du préfixe, ce serait bien si il était encore un peu plus clair, afin de savoir du premier coup d'oeil dans le dossier des préfixes, de quel jeu il s'agit.
    Exemple de nom correct : NeedForSpeedWorld.
  • Et une dernière chose, il serait bien de mettre le message demandant de ne pas lancer le jeu à la fin de l’installation, après le POL_SetupWindow_browse. L'utilisateur à plus de chance de s'en rappeler ainsi.

Autrement, c'est bien.
Et c'est normal que tu ne puisse pas savoir tout ce que je t'ai dit, la doc n'étant pas totalement à jour.

Massawi33 Friday 20 September 2013 at 14:07
Massawi33

En fait si on enlève POL_Wine_Waitbefore ça changerai quoi ??
[code language=playonlinux]POL_Wine_WaitBefore "$TITLE"[/code]

Edited by Massawi33

SuperPlumus Friday 20 September 2013 at 15:04
SuperPlumusAnonymous
Admin

Le POL_Wine_WaitBefore (tout comme le POL_Wine_WaitExit) permet d'afficher une barre qui fait des allers-retours, et dit à l'utilisateur de patienter.
Quant à la variable $TITLE qui est donnée en argument à cette fonction, elle permet de faire un message du genre : "Veuillez patienter pendant l'installation de $TITLE..." ou un truc du genre "Installation de $TITLE en cours..." je sais plus vraiment, mais c'est utile dans la plupart des cas.

Car sinon, en cliquant sur le bouton suivant de POL_SetupWindow_message (ou POL_SetupWindow_browse, selon sa place dans le script), l'assistant d'installation de PlayOnLinux se fige (vu que l'interface attend la prochaine fonction (un message à afficher, ou fichier à séléctionner, etc.).
L'utilisateur croit alors à un bug si le setup du programme ne se lance pas tout de suite.

Mais, dans certains cas, elle n'est pas utile, si la commande POL_Wine rend la main tout de suite (rendre la main signifie que le programme lancé est peut-être toujours en cours d'éxécution, mais que la commande POL_Wine est terminée, et dans ce cas, c'est le rôle de la commande POL_Wine_WaitExit d'attendre (avec un message identique à POL_Wine_WaitBefore) que le programme lancé avec POL_Wine soit vraiment terminé. Cela afin d'éviter que le script passe à la création du raccourci, mais que l'installation soit toujours en cours, donc le script va planter (Binary not found...).

Pour des raisons de simplification, on met donc toujours maintenant POL_Wine_WaitBefore avant l'installation, même si le setup rend la main tout de suite, ce qui fait que ça ne sert à rien. Mais comme ça ne gène absolument pas. Cela permet d'éviter d'éventuelles ereurs.

PS : Si tu veux utiliser les balises code, pour encadrer le code comme je le fais, clique sur le bouton citer d'un de mes messages, et regarde les balises que j'utilise pour le faire.

PS 2 : Inutile de chercher cette fonction parmi les boutons de la zone de texte, elle n'est pas là. Malheureusement il n'a pas été possible pour le moment d'ajouter un bouton permettant de l'utiliser dans la nouvelle interface des zones de texte.
Massawi33 Friday 20 September 2013 at 15:28
Massawi33

Merci beaucoup pour ces informations . Le scirpt est parfait maintenant je le postule :)
SuperPlumus Saturday 21 September 2013 at 7:45
SuperPlumusAnonymous
Admin

Script validé, et j'ai retiré la mention testing, vu que tu l'a testé, et qu'il fonctionne chez toi.

Merci pour ton travail.
Massawi33 Saturday 21 September 2013 at 15:09
Massawi33

Merci a vous pour vos aides :) et vive le Open Source :D