Super Mario 64 fue el primer juego en ser decompilado de la mítica consola de 1996 y a raíz de ello, a pesar de la persecución inicial por parte de Nintendo, el código fuente creado por la comunidad dio paso a que aparecieran una gran cantidad de mods y versiones del juego con esteroides.
Por casualidad me tope en YouTube un vídeo donde habían varios jugadores jugando simultáneamente de forma cooperativa Super Mario 64. En un principio pensé que era emulación + alguna hack ROM que permitiera esto, hasta que se me ocurrió buscarlo en Google. Para sorpresa mía el primer resultado era precisamente lo que buscaba, un repositorio en github de djoslin0 que permite extraer assets del juego y hacer un clon idéntico al original pero con la opción de multijugador cooperativo.
Ni corto ni perezoso, me puse manos a la obra en la laptop de Danté. Luego de unos pocos minutos estaba haciendo lo mismo en la laptop de Derek. Y al cabo de un rato estaban los dos jugando Súper Mario 64 cooperativo.
La instalación es sencilla. Solo necesitas una ROM de Super Mario 64 en su versión US, renombrarla como baserom.us.z64
, y compilar el juego luego de clonar el repositorio.
Antes de descargar el repositorio y compilar, hay que instalar algunas dependencias:
1 | sudo dnf install make gcc python3 glew-devel SDL2-devel zlib-devel libcurl-devel |
Ahora sí, clonamos el repositorio:
1 | git clone git@github.com:djoslin0/sm64ex-coop.git |
Para seguir un patrón, respecto a la instalación de Legend of Zelda Ocarina of Time y Majora’s Mask, en directorios ocultos dentro de /home/usuario/
renombramos el directorio
1 | mv sm64ex-coop .sm64ex-coop |
Ahora nuestra ROM obtenida volcando el contenido del cartucho original a un archivo .z64
😅 la renombramos a baserom.us.z64
. En la documentación oficial hay un paso para extraer los assets de la ROM, pero en mi caso lo obvie por error y pase directamente a compilar. Durante el mismo proceso de compilación, se extraen los assets así que no fue problema este salto.
Para compilar:
1 | make -j4 |
Luego de algunos minutos tendremos el juego listo para usar. El ejecutable se encuentra en el directorio build/us_pc/
, nos movemos al directorio y para iniciarlo ./sm64.us.f3dex2e
.
1 2 | cd build/us_pc ./sm64.us.f3dex2e |
Hasta aquí, con estas opciones tendremos una experiencia de juego cercana a la original, solo que en multiplayer cooperativo. Ahora unas capturas.
Lo siguiente será crear un lanzador para el juego, tal y como hice con ambos LoZ. Lo primero será dentro de build/us_pc/
crear un archivo launcher.sh
con el siguiente contenido:
1 2 | #!/bin/bash cd /home/usuario/.sm64ex-coop/build/us_pc && ./sm64.us.f3dex2e && exit |
Le damos permisos de ejecución
1 | chmod +x launcher.sh |
Ahora creamos el archivo sm64-coop.desktop
en .local/share/applications/
con el siguiente contenido:
1 2 3 4 5 6 7 8 | [Desktop Entry] Name=Super Mario 64 Comment=Port para PC del popular juego de Nintendo 64 Exec=sh -c '/home/usuario/.sm64ex-coop/build/us_pc/launcher.sh' Icon=/home/usuario/.sm64ex-coop/build/us_pc/sm64.png Terminal=false Type=Application Categories=Games; |
Y ya tendremos nuestro respectivo ícono dentro de gnome shell:
@linkmoises
Aún no hay comentarios...