FR | ASM | Sistema de Paletas de Overworlds Dinámico

Avisos


Like Tree28Gracias
Respuesta
 
Herramientas Desplegado
  #21  
01/12/2018
Predeterminado Respuesta: FR | ASM | Sistema de Paletas de Overworlds Dinámico
Dicho por Gooby Ver mensaje
Vaya que las condiciones para que ese bug suceda son extrañas. Creo que en dado caso habría que informar a Navenatox sobre el bug con la rutina. Aunque repito, las condiciones que pones son algo extrañas y dificiles de conseguir.
Yo también encontré ciertos bugs con algunos movimientos, cuando se acercaban otros minis mediante un applymovement, cambiaba la prioridad de las paletas, es un poco jodido, en lo personal deje de ocupar esta rutina por los diversos problemas que da, sería bueno juntar todo lo que ha pasado y hablar con Navenatox a ver que solución puede existir.


ORGULLOSO DE NACHO, UN EXCELENTE TRABAJO Y AFORTUNADAMENTE PUEDO DECIR QUE TIENE MI GRANO DE ARENA!


¡GRACIAS A TODOS!


  #22  
Hace 3 Semanas
Predeterminado Respuesta: FR | ASM | Sistema de Paletas de Overworlds Dinámico
Dicho por Gold Ver mensaje
Esta rutina pertenece a Navenatox, yo solo reposteo el tema


Muchos de nosotros hemos notado el extraño sistema de overworlds con el que funciona Fire Red, nos hemos dado cuenta que aunque expandamos la cantidad de paletas para overworlds, estos simplemente son ignorados y el juego carga las mismas paletas predefinidas, y hacer que cargue algúna paleta en un slot extra es un verdadero dolor de cabeza, esto se debe al inflexible sistema de overworlds de Fire Red, de hecho, los únicos slots que se cargan de manera dinámica son los slots 0x0 y 0xA, (Curiosamente, son las paletas de ambos protas), pero dichas paletas no son recomdables cambiar ya que hay varios gráficos que dependen de dicha paleta (Exclamaciones, flechas de salida, la cosa en la que haces surf, etc), pero gracias a Navenatox poner más paletas para overworlds es posible c:

¿Y como funciona la wea?
Cuando aplicas el parche los cuatro bits de la estructura de los NPC que indican en que slot cargar la paleta es ignorado, en vez de eso, el juego usa como referencia un sistema que cuenta el rastro de las paletas a las cuales tienen acceso los diversos OBJs. Cuando un sprite es mostrado en pantalla, su paleta es cargada de manera automática en un slot libre, cuando dicho sprite ya no está en pantalla, su slot es borrado y queda libre para que otro overworld en pantalla escriba en dicho slot.

Cabe mencionar que dicha rutina no afecta solo a los NPC, basicamente actúa de dicha manera con cualquier sprite que use los slots de overworlds. Los OBJs que son mostrados en pantalla no son afectados. Como sabrán FR por defecto soporta hasta 255 overworlds, y si extendemos la tabla de paletas podemos tener hasta 255 paletas, en resúmen, podemos hacer que cada overworld use su propia paleta.

Arreglos Adicionales
Aparte del gran cambio en el sistema de carga de overworlds, el parche tambien repara los siguiented bugs que son propios de BPRE:
  • Cuando el clima cambia de tormenta de arena o reflejo de nubes a otro clima, el juego no carga la nueva paleta y el efecto climático se vuelve bugeado.
  • Algunos overworlds no cambian a escala de grises durante los flashbacks, asi como las tormentas de arena, reflejo de nubes o bloqueo de animaciones durante el clima nublado.
  • Hablando de neblina, solo el tipo de clima 'Steady mist' hacen que los bloques de animación de niebla sea más brillante que el overworld, los otros tipos de niebla no.
Y como regalo, se ha hecho que los reflejos en el agua sean tambien dinámicos, por lo cual las paletas de reflejos en el agua son autogenerados por el engine.

El Parche
Puedes descargar el parche aquí. El código fuente lo puedes encontrar en el GitHub de Navenatox.

Loa datos son escritos en 0xF00000, lo cual lo hace compatible con la mayoría de hacks.Si en tu hack ya tienes usado esa offset puedes ensamblar la rutina en otro offset siguiendo las instrucciones en el repositorio de GitHub de Navenatox.

El parche solo funciona en FireRed 1.0.

En resúmen, para los que no le pillaron a esto, tras aplicar esto puedes poner en pantalla (Osea Rango Visible) hasta 16 paletas distintas, si miras la imágen del principio, verás que en ese rango visible hay 5 sprites, una exclamación y dos reflejos en el agua, lo que hace 8 paletas distintas en pantalla, puedes poner en un mapa muchos sprites con paletas distintas, pero cuida que en un mismo rango visible no hayan más de 16 paletas diferentes (Aunque nadie es tan bestia como para poner un montón de paletas en un mismo sitio).

Rom sin el parche


Rom con el parche y paletas extendidas



Si ves que hay un error en la rutina, no lo reported aquí, reportalo en el GitHub antes mencionado o informalo directamente a Navenatox en su perfil de Pokecommunity The PokéCommunity Forums - View Profile: Navenatox
Tengo la leve impresion de que esto me genera problemas con la rutina de cambio de Mini de Jpan, en principio la rutina funciona excelente, pero hay un callasm para refrescar la pantalla, la cosa es que ese call logra refrescar la pantalla y el mini hace el cambio de forma instantánea, pero... la paleta sigue siendo la misma y no logra cambiar, necesitando un WARP para poder hacerlo. No se si te ocurre alguna solucion (claramente no quiero hacer un warp) y el fadescreen tampoco funciona!
Gracias: hacanoca
Libertad

PREMIOS SABROSOS


Respuesta

Herramientas
Desplegado

Permisos para publicar mensajes
No puedes crear nuevos temas
No puedes responder mensajes
No puedes subir archivos adjuntos
No puedes editar tus mensajes

Los BB code están Activado
Los Emoticones están Activado
El código [IMG] está Activado
El Código HTML está Desactivado
Trackbacks are Activado
Pingbacks are Activado
Refbacks are Desactivado



Extra
Estilo clásico
La franja horaria es GMT +1. Ahora son las 01:24.

© Whack a Hack! 2019