Ya estoy de vuelta.
Voy a empezar respondiendo a
@Alien_crrpt .
Alien_crrpt escribió:Supongo que el resto de personajes toma el tamaño maximo , donde estaba el personaje con la pantalla dividida al principio. Por eso pasan de pequeños a grandes y luego a pequeños otra vez.
Para solucionarlo abria que bajarlos como hicistes con el personaje que controlamos. Suena muy facil, a ver que pasa en realidad.
A ver... Todos los personajes toman el tamaño de la franja que les corresponde por distancia. Si se hacen grandes o pequeños no es porque haya un error, sino simplemente porque cambian de franja al variar su distancia respecto a la cámara. A veces reducen o aceleran y los vemos cambiar de tamaño.
Que haya gente a la que le dé la sensación de que los rivales cambian a tamaños que no deberían es solo una falsa impresión por el cambio de perspectiva (la nueva cámara a pantalla completa altera la relación visual entre el suelo, la distancia y el tamaño de los sprites). El resultado es puro cálculo matemático:
• Cuando un rival gira, su cuerpo se estrecha lateralmente y puede dar la falsa impresión de encogerse.
• Cada personaje tiene su propio repertorio de sprites. El sprite de Toad en una franja no mide los mismos píxeles que el de Bowser o Donkey Kong en esa misma franja. Todo ese baile de tamaños de personajes puede contribuir a la confusión.
• Dependiendo de la pose, la altura del objeto o un salto, las dimensiones en pantalla varían.
Esto no son suposiciones, sino que está medido y verificado en la v1.5. Te aseguro que los rivales tienen el tamaño exacto que les corresponde en cada punto del circuito.
Alien_crrpt escribió:Según la explicación que me has dado, has duplicado la escala de la imagen principal, pero no la del plano de los enemigos (la zona que define si se ven grandes o pequeños). Si duplicas esa capa y la desplazas hacia abajo, el problema se solucionará.
Y tampoco has duplicado el tamaño de los rivales ni del personaje principal.
Resumen de la perspectiva de lo que está pasando:
Falta modificar la zona de ampliación y reducción: seguramente tengas que doblar el alto manteniendo el ancho, tal como doblaste las líneas. Y bajar la zona.
Te estás liando con el funcionamiento de la consola:
• No hay nada duplicado. No se coge la imagen de la pantalla dividida y se "estira" hacia arriba o hacia abajo. Lo que hace el hack es cambiar el ángulo y la distancia de la cámara para que en lugar de ver solo un trozo, se vea todo el circuito a pantalla completa.
• La Super Nintendo no puede "estirar" ni "encoger" personajes al vuelo. En esta consola, el plano del suelo sí se deforma para dar sensación de profundidad, pero los karts son dibujos fijos (sprites). No existe una "capa de escala" que se pueda duplicar o mover hacia abajo. El juego solo tiene 11 tamaños de dibujo predefinidos para los karts, y tiene que usar sí o sí uno de esos 11.
• El juego no mira en qué altura de la pantalla está el kart para darle un tamaño. Lo que calcula el juego en todo momento es a qué distancia está el rival de ti. Según lo lejos que esté, el juego va a una lista con esos 11 tamaños y le asigna el que le toca. Da igual la línea vertical de la pantalla en la que se dibuje: lo que manda es la distancia matemática. El diagrama que puse simplemente plasma dicha distancia a través de las líneas en la pantalla en función de la perspectiva que usamos.
• Mario Kart 64 solo sirve como ejemplo visual de perspectiva. La Super Nintendo no tiene la capacidad técnica de escalar esas imágenes al vuelo, así que en este caso no aplica.
Alien_crrpt escribió:@Xfactor Por probar no se pierde nada.
Hombre... Quizá mi tiempo. 🕺🏼
Alien_crrpt escribió:Sigo notando que los enemigos que estan un poco por delante de Mario estan mas grandes y cuando se ponen a su lado mas pequeños pero bueno ya no se nota apenas.
Técnicamente eso es imposible con el código de la v1.5. El selector de rivales excluye al jugador (el jugador y el 2P usan su propia regla original). Además, el sistema asigna los tamaños rigurosamente por lejanía/distancia. Si ves a un rival al lado que parece más pequeño que uno que va por delante, es por la pose, por el personaje o por un efecto óptico de la cámara, no porque el juego esté asignando mal la franja. Para salir de dudas, medí capturas pixel a pixel y la IA comprobó los savestates con los datos de la ROM. Está todo correcto.
Alien_crrpt escribió:Lo que si he visto es que , nunca se llega a las zona superiores de la pantalla ya que eso suele ser cielo y montañas.
(Abrir para ver imagen)
y tendria que ser algo similar a esto
(Abrir para ver imagen)
Te estás equivocando en la interpretación del diagrama:
Esa tabla de franjas solo representa los puntos de referencia donde se dibujan los karts según su distancia, no la pantalla completa. No son límites universales ni el mapa entero de la pantalla.
Las referencias de las franjas van desde abajo del todo (Y=218) hasta la línea horizontal Y=29 en la parte superior. Los aproximadamente 28 píxeles por encima de esa línea (Y=0 a Y=28) pertenecen a la zona reservada exclusivamente para el fondo (cielo, montañas, marcador), donde por lógica del circuito y de la perspectiva nunca va a haber un kart rodando.
@aleroh @yuragalo @Dene Si de verdad queréis proponerlo como juego del mes, yo me esperaría porque el cambio que se viene (de manera inminente, creo) es
GORDO, y va a mejorar el hack radicalmente. Ya casi lo tengo listo (estoy terminando unos arreglos en pixel art). Estoy hasta emocionado. 😄
Por cierto, me estoy planteando el compartir el parche sólo en este foro y en mi cuenta de GitHub. Los usuarios de RomHacking.net me tienen hasta los cojones. Uno te escribe un review negativa sólo porque a él no le funciona el juego en su flashcard (cuando en este hilo ya lo han probado unos cuantos usuarios). A ver, una review tiene que valorar el parche, no que a ti no te funcione. Si lo probara y no le gustara, lo vería bien, pero cuando sólo se queja aquel al que no le funciona y porque a lo mejor simplemente no sabe ni aplicar el puñetero parche, pues te toca los huevos (ese mismo usuario ha terminado insultándome por MP 😂). Otro te pregunta algo, le pasas un diagrama hecho con IA y te dice que parece hecho con un IA (nos ha jodido, qué avispado) y que no le causa confianza. La madre que lo parió. A mí su confianza me importa menos que la opinión de Bad Bunny sobre los neutrinos. Pero, no me jodas, ahora me voy a poner yo a hacerle un diagrama a mano, por su cara bonita. Y a mí que me perdonen, pero para una explicación técnica, casi que me da más confianza una IA. Luego, en YouTube ya me han insultado varios (en inglés) por hacer Vibe Coding ( 🤯 ), y otro me ha "acusado" de usar IA , como si lo hubiera estado ocultando 🤦🏻, cuando me he cansado de repetirlo desde el primer momento. Yo entiendo que, sobre todo en EEUU, el tema de la IA es un poco sensible porque ya ha empezado a quedarse gente sin empleo, y allí ya sabemos como son: manifestaciones, altercados, etc., pero, joder, dos neuronas.