Jouer à Duke Nukem 3D sous Linux

Pour retomber en enfance…

Lorsque j’étais collégien et que j’utilisais encore Windows 95, mon jeu favori s’appelait Duke Nukem 3D. Un jeu qui ne nécessitait pas 2 Go de RAM (je crois que 16 Mo suffisaient, peut-être même 8), mais avec lequel on s’amusait bien. Si vous aussi vous avez envie de rejouer à ce jeu qui traine parmis vos CD-ROM les plus anciens, sous une couche de poussière, alors cet article est fait pour vous.

 

Ma méthode consiste à utiliser Dosemu. En effet, étant donné que ce jeu tournait sous MS-DOS et que Linux (sur x86) dispose de cet excellent émulateur DOS et de FreeDOS, pourquoi chercher plus compliqué ?

Pour commencer, je dispose d’un x86 qu’on pourrait qualifier d’ultra puissant : en effet, avec 400 MHz et 128 Mo de RAM, c’est le genre de configuration dont je rêvais à l’époque où je jouais sur mon Pentium 200. Et que dire de mon pote J.M. qui n’avait qu’un 486 DX4 à 100MHz ! Mais cela ne nous empêchait pas de faire des duels acharnés à Duke Nukem avec des câbles Null Modem.

Mais revenons à nos moutons : j’ai donc un x86. Et il tourne sous Debian GNU/Linux 4.0 (Etch), ça va de soi.

Commençons par installer Dosemu : apt-get install dosemu dosemu-freedos xfonts-dosemu.

Ensuite, éditons le fichier /etc/dosemu/dosemu.conf.

Les modifications que l’on va effectuer sont les suivantes :

  • $_cpu = « 80586″ car ça améliore surement les performances.
  • $_rdtsc = (on) pour la même raison.
  • $_hogthreshold = (0), toujours pour la même raison.

En fait, j’ai modifié ces variables un peu au hasard car j’avais un souci : le jeu se bloquait si je ne bougeais pas la souris en permanence. Après modification de ces trois variables, le souci a disparu. Je n’ai pas regardé en détails laquelle des trois modifications avait réglé mon problème.

Dernière modification :

  • $_layout = « fr » pour me débarrasser d’un message d’erreur énervant au lancement de Dosemu, et surtout pour avoir un clavier correct.

Ensuite, il faut lancer une fois dosemu, et appuyer sur Entrée quand il le demande. Puis, on tape yes quand il le demande, on valide et on le ferme en tapant exitemu. C’est nécessaire pour dire à Dosemu qu’on accepte sa licence et sa non-garantie, sinon il ne démarrera pas.

Maintenant, on va lancer xdosemu en plein écran, en tapant xdosemu -w &.

Nous voici dans quelque chose qui ressemble à s’y méprendre à MS-DOS. On tape d:, car cela va nous amener dans notre répertoire personnel, puis cd duke3d (en supposant que c’est là que nous avons copiés les fichers de notre jeu). Le jeu se lance en tapant duke3d.

Chez moi, le jeu ne démarre pas à tous les coups. Parfois il s’arrête sur le message « Could not detect FM chip. ». Dans ce cas, je le relance et ça fonctionne. Ne me demandez pas pourquoi…

Maintenant, amusez-vous bien ! Chez moi ça fonctionne vraiment très bien, avec une image parfaitement fluide et du son. Quand vous avez terminé, quittez le jeu puis tapez exitemu pour revenir au monde merveilleux de Debian.

P.-S.

Une autre méthode est d’utiliser Eduke32, fork de JFDuke3D, qui permet de faire fonctionner le jeu nativement sans émulateur… mais son installation est assez lourde. On est obligé de compiler plusieurs choses, il n’y a pas de README clair expliquant la procédure à suivre, et lorsque j’ai enfin réussi à le compiler sur mon pentium II, le jeu était injouable tellement c’était lent, ce qui est un comble pour un jeu qui tournait à l’origine sur des 486…

Par contre, sur une machine actuelle, je pense qu’essayer Eduke32 peut valoir le coup, puisqu’il permet de faire tourner le jeu agrémenté du High Resolution Pack, qui vous permet de jouer à Duke Nukem 3D avec des graphismes actuels. J’ai vu tourner cette version du jeu sur le PC de mon frère (mais sous Windows) et c’est impressionnant.

Ce contenu a été publié dans Astuces. Vous pouvez le mettre en favoris avec ce permalien.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>