Mario64 con OpenGL y otras funciones.

Gracias al trabajo que se hizo con el port de Mario64, un port que se consiguió gracias a desensamblar el código del juego original en C  podemos disfrutar de este maravilloso juego con texturas mejoradas, soporte OpenGL en sistemas de menos recursos y multiples opciones, en nuestros sistemas Gnu/Linux moviéndose a no menos de 60 FPS (incluso en una raspberry ) , en este caso vamos a usar el port  sm64ex que trae  mejoras.

Un trabajo que permite que podamos ejecutar Mario64 de forma nativa en multiples sistemas de forma legal, sin que Nintento pueda decir ni mu, y que gracias a la comunidad cada dia tiene mejor pinta y mas funciones, cosa que seguramente nunca podra tener los refritos de remakes desfasados que nintendo vende a precio de oro(pero eso es otro tema)

Dependencias

Para debian 64 instalamos las siguientes dependencias:

sudo apt install build-essential git python3 libaudiofile-dev libglew-dev libsdl2-dev

Bajando la ROM original

Necesitamos la rom original del juego en cualquiera de sus versiones us,ue,jp  que podremos encontrar en cualquier pagina de ROMS

Una vez bajada la rom tenemos que renombrarla a baserom.<VERSION>.z64 donde version es la rom del idioma que nos hemos bajado por ejemplo baserom.us.z64

Bajando el repo

Como hemos comentado antes vamos  usar el port sm64ext que trae mejoras sobre el repo base

git clone https://github.com/sm64pc/sm64ex.git

Compilando

Copiamos la rom que hemos renombrado a la carpeta del repositorio que hemos clonado y realizamos un make sin parametros

make

Borrando los Assets originales

Una vez terminada la compilacion tenemos que eliminar los assets originales del juego para ello usamos python3 y el archivo extract_assets.py

python3 extract_assets.py

Compilando con opciones

Este nuevo port añade varias funciones interesantes como la posibilidad de usar el raton como camera en el juego, para ello tenemos que compilar usando el flag  BETTERCAMERA=1 otros flags interesantes son

# Disable no drawing distance by default
NODRAWINGDISTANCE ?= 0
# Disable texture fixes by default (helps with them purists)
TEXTURE_FIX ?= 0
# Enable extended options menu by default
EXT_OPTIONS_MENU ?= 1
# Disable text-based save-files by default
TEXTSAVES ?= 0
# Load resources from external files
EXTERNAL_DATA ?= 0
# Enable Discord Rich Presence
DISCORDRPC ?= 0

para ello tan solo tenemos que usar make seguido de los paremetros por ejemplo

make BETTERCAMERA=1  NODRAWINGDISTANCE=1

Una vez termine la compilacion tendremos nuestro juego disposible en la carpeta builds

Con las nuevas  opciones disponibles podemos saltarnos la cansina intro con  --skip-intro tambien tenemos otras opciones disponibles como cheats,etc..

Para configurar los controles podemos usar el archivo sm64config.txt que podemos encontrar en .local/share/sm64 en nuestra carpeta de usuario, el cual nos permitira ademas de cambiar otras funciones como la pantalla completa definir nuestros controles usando SDL codes(Si esa libreria de la que nadie habla pero se usa en TODO) los SDL codes los podeis encontrar aqui https://gist.github.com/tracend/912308

Por defecto las teclas del juego son:

N64 Controller Keyboard sm64config.txt
A L 0026
B , (comma) 0033
Start Space 0039
L . (period) 0034
R Right shift 0036
Z K 0025
C up Up arrow 0148
C down Down arrow 0150
C left Left arrow 014b
C right Right arrow 014d
Stick up W 0011
Stick down S 001f
Stick left A 001e

Para cambiar simplemente tenemos que modificar el primer valor por el scancode pertinente de SDL por ejemplo cambiar la tecla de salto L por J

key_l 0024 1007 1104

 

Otra de las funciones que han añadido es soporte para mandos XInput(de las consolas modernas) como no tengo no he podido probarlo.

En definitiva un buen juego para jugarlo con la family y si puede ser en una raspi conectada a la TV mucho mejor :P

Compartir

2 Comentarios

  1. maaaaaaaaaaaaaaaaadreee el sueño de mi vida <3. Hace un mes que ando enganchada a una consolita portátil con retroarch donde tengo un emulador de la n64 (entre otros) y revivo el mario que tantas alegrías me dió en la infancia (y miedos que me hacia caquitas con la morena en el Jolly Roger Bay, ahora como soy mayor ya no :)))<3.

    1. Jejeje es que ese bicho estaba muy chulo, recuerdo la primera vez que vi el mario64 en una feria de informatica llamada SIMO y lo flipe… ¿una consola rettro? cuenta cuenta :P

Deja una respuesta

Your email address will not be published. Required fields are marked *