Super Mario 64 ahora es biblioteca open source: 866 desarrolladores ya la usan en GitHub

Super Mario 64 gameplay en PC con libsm64
libsm64 convierte a Super Mario 64 en una biblioteca reutilizable para cualquier motor de juegos

Hay una línea muy delgada entre el modding y la ingeniería inversa. Y libsm64 acaba de cruzarla con una elegancia que debería darle envidia a Nintendo.

El proyecto —que ya acumula 866 estrellas en GitHub y 50 forks— logró algo que parecía imposible: extraer todo el gameplay de Super Mario 64 y convertirlo en una biblioteca C reutilizable. Sin emuladores, sin ROMs pirateadas, sin capas de abstracción que degraden el rendimiento. El Mario original, en C, listo para integrarse en cualquier motor que puedas imaginar.

¿Qué es libsm64 exactamente?

A diferencia de los emuladores que ejecutan la ROM completa (con todo el overhead que eso implica), libsm64 tomó el código original decompilado de SM64 y lo reempaquetó como una biblioteca independiente. El resultado: una API limpia que expone funciones como sm64_init(), sm64_update() y sm64_set_mario_geometry().

En palabras simples: tomas la biblioteca, la enlazas a tu proyecto, y tienes a Mario corriendo, saltando y coleccionando estrellas dentro de tu propio motor gráfico. Ya sea Unity, Unreal, Godot, o un engine custom hecho desde cero.

Esto no es un emulador

La diferencia fundamental es filosófica y técnica. Los emuladores ejecutan instrucciones de consola una por una, traduciéndolas en tiempo real. libsm64 compila el código nativo de Mario 64 directamente a tu arquitectura. Es como si Mario 64 hubiera sido lanzado oficialmente para PC en 1996.

El proyecto usa el código decompilado de SM64 (un esfuerzo de la comunidad que años atrás logró reconstruir todo el juego original en C legible) y lo transforma en una biblioteca con una interfaz pública bien definida.

Lo que puedes construir con libsm64

La comunidad ya está experimentando con cosas fascinantes:

Crossovers imposibles. Mario en Half-Life 2. Mario en Minecraft. Mario en un shooter en primera persona. Las restricciones de consola desaparecen cuando el personaje es solo una biblioteca que puedes importar.

Herramientas educativas. Usar el gameplay de uno de los juegos más estudiados de la historia como plataforma para enseñar diseño de niveles, física de juegos e inteligencia artificial.

Niveles personalizados sin límites. Olvídate de emuladores que se traban con niveles homebrew demasiado complejos. Con libsm64, los límites los pone tu creatividad, no la arquitectura de la Nintendo 64.

¿Es esto legal?

Ah, la pregunta del millón. libsm64 no incluye ningún asset propietario de Nintendo. No distribuye texturas, modelos 3D, música ni datos de niveles. Solo el motor de juego decompilado, que es código reconstruido mediante ingeniería inversa limpia.

La legalidad del decompilado de SM64 ya fue probada en tribunales. Nintendo demandó a LoveROMs y LoveRetro en 2018 y ganó, pero eso fue por distribución de ROMs con copyright. La decompilación como técnica tiene precedentes mixtos: Sega vs. Accolade (1992) estableció que la ingeniería inversa para interoperabilidad es fair use.

¿Eso significa que Nintendo no va a tomar acciones? Por supuesto que no. Es Nintendo. Pero el proyecto está diseñado para operar en una zona gris que —hasta ahora— se ha mantenido firme.

¿Por qué es importante?

Porque la preservación de videojuegos no debería depender de la buena voluntad de las corporaciones. Cuando Nintendo decida que la Nintendo 64 Online ya no es rentable, los jugadores perderán acceso legal a cientos de juegos. Proyectos como libsm64 garantizan que el gameplay —la parte más importante de un videojuego— sobreviva a cualquier cierre de servidores o cambio de estrategia corporativa.

Mientras tanto, cualquier desarrollador con una idea loca puede tener a Mario 64 corriendo en su motor en cuestión de minutos. Y eso, desde cualquier ángulo que lo mires, es impresionante.

Comparte esto con alguien que todavía cree que solo Nintendo puede hacer juegos de Mario.