lestar escribió:Skullomartin escribió:Yo lo que me pregunto es... ¿como debía estar de aburrido el tipo que descubrió esto?
aca está explicado
http://deanyd.net/smw/index.php?title=Credits_Warp_Runen resumen, no es que todo esto sea descubierto por aburrimiento, esta gente investiga la memoria del juego y busca formas de modificarla durante el gameplay, este glitch esta basado en la documentacion que hizo Masterjun para poder ejecutar codigo arbitrario en el juego usando TAS, de hecho, el mismo glitch ya fue hecho antes en un menor tiempo
https://www.youtube.com/watch?x-yt-cl=8 ... ns7H8#t=17, aunque claro, fue ejecutado por una maquina teniendo precision de fotograma por fotograma, algo imposible para un ser humano.
Lo que hace el chaval en el video es ejecutar varios glitch complejos que deben ser realizados en un orden exacto. primero, para ejecutar codigo arbitrario, debe redireccionar la ejecucion de codigo del warp glitch a las tablas de posicionamiento X de los sprites, para aquello, el sprite del boton "P" debe estar en cierta posicion X de la memoria (por eso se ve al tipo colocar el segundo boton P cuidadosamente en una posicion fija en el video) y debe estar en el septimo espacio de sprites (al iniciar un nivel, el juego almacena una lista de todos los sprites que se van a ocupar), pero por defecto está en el octavo, para cambiarlo al septimo, debe coger el boton "P" y un cubo arrojadizo al mismo tiempo y realizar un ciclo de viajes a traves del cuarto donde obtiene el cubo arrojadizo para cambiar la posicion del boton "P" al espacio 7 de forma permanente.
una vez hecho esto. debe posicionar la ejecucion de codigo en una direccion exacta, para aquello, utiliza el posionamiento Y de los trozos que genera uno de esos cubos que se arrojan al romperse con una concha verde, pero debe tener cuidado de que una vez roto el cubo, no debe aparecer en pantalla un topo saltando de la tierra y la animacion de yoshi saliendo del huevo, porque los tozos de tierra o del cascaron del huevo cambiarian la direccion de memoria (por eso rapidamente realiza un paneo de pantalla cuando saca a yoshi del huevo).
Lo anterior ejecuta codigo en la tabla de posicionamiento Y de los sprites y por defecto hay codigo no deseado que podria crashear el juego, por eso antes de ejecutarlo hay que asegurarse de tener valores seguros, para aquello utiliza el posicionamiento Y del hongo en reserva y la planta que sale del cubo, asegurandose de no saltar y coger el hondo a la vez que se golpea el cubo de la planta que la hace crecer.
Una vez redireccionado el codigo a la tabla de pocision X de debe escribir el codigo para transportarse a los creditos, para aquello se utiliza la posicion X de las conchas de los koopas, cada concha (de los espacios de sprites del 0 al 6) deben ser posicionadas en un lugar exacto, sino, podria ejecutarse codigo no deseado y crashear el juego. ademas, para tener un valor seguro en la tabla de posicion Y de las conchas en los espacios 5 y 6, se deben romper antes de que toquen el suelo.
Una vez escrito el codigo, este debe ser ejecutado al realizar el warp glitch al hacer que yoshi se coma a un chuck (los bichos esos con traje de jugador de futbol americano), lo cual se hace comienzo una moneda con yoshi e inmediatamente comerse al chuck, como el juego no espera que yoshi se coma un chuck la rutina que deberia hacer el checkeo de si lo que se comio en un power up o no, no se ejecuta, si no se ejecuta otra parte, en este caso, en la tabla de posicion de sprites X donde se escribio el codigo arbitrario, permitiendo saltarse a los creditos.
si, todo esto parece muy jodidamente complejo y rebuscado, pero todo tiene su logica y proposito para manipular la memoria a gusto y lo que hizo el chaval tiene un gran merito y por eso su cara de impresion y agregria al poder realizarlo por primera vez en una snes real y por un humano.