26646-ASM:_¿Que_te_gustaría_hacer_realidad\?
#20
eing 12479
Iniciado por Elpollo
No necesitas cambiar todo el juego para nada. Lo que haces es cargar al principio del juego una única paleta e 256 colores en RAM. Apartir de ahí sñolo tiene que encargarte de borrar los accesos de las rutinas que cargan los datos de las paletas en RAM para que no las toquen. En teoría con eso valdría, pero como no he tenido ni tiempo ni ganas d einvestigar como lo hace el golden sun no está confirmado, pero la respuesta está ahí.
Lo de desprestigiar, lo desprestigio porque literalmente es basura. Algo que te permite tener todas las paletas que quieras (eso sí de sólo 16 colores) pero que no te permite usarlas a tu antojo, no se le puede catalogar como algo más que una ñapa.
Y con lo de cambiar TODO el juego, me parece que te equivocas, pues como ya te he dicho sólo hay que hacer la rutina que carga los 256 colores, modificar la rutina que cambia los minis (esta está completamente investigada con su código y todo, subida por cierto y lo mejor explicada que la pude explicar para que TODOS pudiesen aprender de ella) que sé exactamente que tocar y si hiciese falta la/s rutina/s que se ejecutan al entrar en un mapa y acceden a las paletas en memoria (Creo que con modificar la de los minis sólo basta, pero no me atrevo a afirmarlo). En el peor de los casos habría que mirar cómo guarda la información de los píxeles del mini en memoria, porque para poder acceder a 256 colores necesitará un byte completo y no creo que lo use en este juego.
Como bien dije al principio debuggeando el golden sun tienes el mejor de los ejemplos para poder implementarlo de la mejor manera.


Pues que quieres que te diga, pero tu tutorial de la "carga de minis" deja bastante que desear en cuanto a explicación.
Mayormente, porque usas bastante la palabra "creo", o es o no es.
Si no no pongas creo, así confundirás a quien quiera estructurar la información.
Respecto a encontrar la rutina, tampoco es muy dificil eh..

1- NSE, modo profesional. Mirar sprite pointer.
2- Buscar el pointer. (permutando el offset que te dan)
3- Abres VBA SDLH y bpr $offset 4.
4- Esperas a que los lea, te vas al Debugger normal (El que tiene scroll) y buscas un push.
5-Borras el breakpoint de lectura anterior, y ahora colocas un breakpoint de cuando se ejecuta esa rutina.
6- Analizas la rutina, teniendo antes todos los datos de los minis, para así saber cuando carga y no.

Uh, que dificil.. Y sí, si tu repunteas una paleta a la ram, las tools dejan de funcionar, porque no pueden leer dicha información.
Por lo tanto si el Rom hacker quiere ver minis, o lo que sea, ha de cambiar el pointer de nuevo apuntando al rom, a la paleta que habia antiguamente.
Así que es cambiar muchas cosas del rom, para eso y el dejar de funcionar muchas tools. (Por no decir la mayoria que carguen paletas de los OBJ, vease Advance MAP, NSE, Overworld Editor, la herramienta de javi para aumentar nº minis.. ¿sigo? ¿O creo que ya he nombrado las más utiles hoy en dia?)

Respecto a lo de los minis en 255 ... GBATEK - GBA/NDS Technical Info = )

Y sí, sigo diciendo que es mejor con 16 colores y usando esa "mierda", como tu le llamas. Pero eso ya es MUCHO MÁS, de lo que tú has conseguido con tu investigación, y es de utilidad.
Y tambien, el estar a 16 colores, dice mucho del DG que esté haciendo las cosas.. porque ha de estructurarlo todo muy bien para no pasarse y montar una especie de puzzle con lo que hay.
Vamos, nice challenge.


PD. Y sí, tienen una calidad gráfica que te cagas.. ahí to pixelao xDD que parece que sean 8 colores en vez de "255" como tú dices..