Duke Nukem 3D en GNU/Linux, Come get some!!
Hace tiempo, concretamente el pasado 12 de Enero de 2004, 3DRealms liberó el código fuente de uno de sus mejores juegos de todos los tiempos, Duke Nukem 3D. Desde aquel momento muchos programadores comenzaron a intentar adaptar el juego a los nuevos sistemas operativos. No tardaron en llegar las primeras versiones para GNU/Linux, que con mas o menos dificultades consiguieron que se pudiese jugar. |
Ingredientes
- Código fuente de JFBuild
- Código fuente de JFDuke3D
- Parche para JFBuild: Descarga
- Parche para JFDuke: Descarga
- Librería fmod
-
Librerías SDL
- libsdl-dev
- libsdl-mixer-dev
- libsdl-ttf-dev
- libsdl-image-dev
- Fichero duke3d.grp: El de la versión Shareware te servirá.
- Compilador GCC < 4.0: Yo he usado gcc-3.3 y gcc-3.4, ambas funcionan.
- Ensamblador nasm
Preparación
Antes de nada hay que instalar las librerías necesarias para compilar el juego. La mas rara de instalar es fmod por lo que vamos a explicarla la primera de todas.FMOD
Descomprimimos el fichero fmodapi3741linux.tar.gz que nos creará el directorio fmodapi3741linux. Dentro de ese directorio veremos varios mas. Solo nos interesa el directorio api. La manera mas limpia de instalar la librería es utilizando stow. Creamos el directorio /usr/local/stow/fmod y dentro de el toda la jerarquía de directorios necesaria. Esto hay que hacerlo a mano ya que fmod no trae un makefile. Estos son los pasos.SDL
Ahora hay que instalar las librerías SDL. En mi caso, uso Ubuntu, sería así de sencillo (sería lo mismo si usas Debian, Molinux, Guadalinex o cualquier otro derivado de Debian).DUKE3D.GRP
Para obtener el fichero duke3d.grp necesitaremos el compresor orange. Así que instalamos orange y para simplificar mas las cosas el descompresor universal unp.Compilación del juego
Vamos a crearnos una carpeta para meter todo lo que vamos necesitando. Yo he creado un directorio llamado jonof, el nombre da igual. Dentro he puesto el código fuente y los parches de JFBuild y JFDuke. En primer lugar descomprimimos tanto jfbuild_src_20051009.zip como jfduke3d_src_20051009.zip y después aplicamos los parches. Estos son los pasos.-I$(INC:/=) -I$(EINC:/=) -I$(SRC)jmact -I$(SRC)jaudiolib #-I../jfaud/incPues bien lo retocamos para que quede así.
-I$(INC:/=) -I$(EINC:/=) -I$(SRC)jmact -I$(SRC)jaudiolib -I/usr/local/include/fmod #-I../jfaud/incComo veis he añadido la ruta donde he puesto la librería fmod, es tan solo esa la modificación que hay que hacer. Después de todo esto, cruzamos los dedos y ejecutamos lo siguiente.
Cómo jugar
Si has llegado hasta aquí, ¡enhorabuena! Imagino que ahora querrás jugar con mas gente porque es lo que mas gracia tiene de este juego. Si os fijáis en el directorio donde esta el código fuente hay un fichero llamado releasenotes.html que explica como se lanza el modo multijugador. Este juego no dispone de un servidor dedicado por lo que será necesario que uno de los jugadores sea el servidor y el resto clientes. Es necesario saber de antemano cuantos jugadores va a haber y que todos estos tengan la mismas versión del fichero duke3d.grp. Vamos a explicarlo con un ejemplo. Supongamos que queremos organizar una partida entre tres jugadores.- jugador1 : 66.249.93.104
- jugador2 : 68.142.197.86
- jugador3 : 212.85.32.12
Mapas de usuario
Si queremos utilizar mapas extras, en primer lugar el fichero duke3d.grp shareware no nos servirá, necesitaremos alguno de la versión comercial del juego. Nos vale tanto el normal como el de la edición "Atomic". Para lanzar el juego en red con un mapa de usuario tendremos que hacerlo así.Epílogo
Espero que disfrutéis con este juegazo por el que apenas pasa el tiempo. ¿O será que me estoy haciendo mayor? [ show comments ]
blog comments powered by Disqus