Saltar al contenido
56K

56K

Slow IT Notes – Just 4 Fun

Menú
Menú

FCEUX – Alterando Legend of Zelda con Lua

Publicada el 02/03/202502/03/2025 por fanta

Hola. En este post vamos a ver como programar scripts en Lua para alterar juegos tan míticos como el Legend of Zelda.

En el primer post (0x00) ya hablamos de como se puede montar el tinglado para poder comenzar con estos «trasteos». Concretamente aquí: 56k.es/fanta/fceux-0x00-compilar-la-ultima-version/

Vamos al turrón.

 

Mostrar en pantalla la posición de Link

Link es el nombre del Heroe. Zelda es la princesa.

Una forma de hacer esto es ejecutar fceux y cargar la rom (el zip). Luego cargar el script lua y mover a link por el escenario.
Tendríamos que ver en pantalla como la posición cambia cuando vamos desplazándonos.

(si falla el wget es porque ya no tengo ese archivo .nes allí. Tendrás que buscarte la vida para encontrarlo)

 

$ wget -q "http://fanta.56k.es/00-Games/03-Nes/Legend_of_Zelda-English.nes" -O Zelda-The_legend_of_Zelda-English.zip
$ touch Zelda-The_legend_of_Zelda-English.lua
while true do
    link = {}
    link.x = memory.readbyte("0x0070"); -- Link posición x
    link.y = memory.readbyte("0x0084"); -- Link posicion y

    gui.text(10,10,"x: " .. link.x .. " y: " .. link.y);
    -- print("x: " .. link.x .. " y: " .. link.y);
    emu.frameadvance();
end

 

Esto nos permite por ejemplo poder mover a Link de forma automatizada.

 

Moviendo a Link por zonas en las que no es posible

Podemos cargar un script como este para que se mueva.

while true do
    link = {}
    link.x = memory.readbyte("0x0070"); -- Link posición x
    link.y = memory.readbyte("0x0084"); -- Link posicion y
    gui.text(10,10,"x: " .. link.x .. " y: " .. link.y);
    memory.writebyte("0x0070",(link.x - 1))
    memory.writebyte("0x0084",(link.y + 1))
    emu.frameadvance();
end

 

Es un ejemplo amigo de modo que relaja un poco si no le ves el sentido.

Y eso es por tanto un ejemplo de cosas que podemos hacer con este «emulador».

En futuros fascículos veremos como hacer más cosas y con otros juegos.
Espero que esto le gustase.

Saludos cordiales.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

fanta de naranja
💾 QEMU
💾 SOLARIS
💾 ESXi
💾 FREEBSD
💾 DEBIAN
💾 AMIGA
💾 SYSADMIN
💾 JUNOS
💾 IMPRIMIR
💾 MSDOS
💾 WINDOWS
💾 FAIRPHONE
💾 GAMING
💾 STREAMING
💾 REDHAT
💾 GRÁFICOS
💾 CACHARROS
💾 SONIDO
💾 NETWORKING
💾 ROCKY
💾 SUSE
💾 TMP
©2025 56K | Construido utilizando WordPress y Responsive Blogily tema por Superb