Registrarse

[Scripting] Flags dinámicas : usos y virtudes

Nachoius

Caminante del cielo
Flags dinámicas

Una flag como la mayoria sabrá es una especie de interruptor que se activa y desactiva. Pero este puede ser dinamico, en FR están libres desde la 200 en adelante. Bueno yo he reservado las primeras 10 para uso dinámico. Es decir, que sirvan para eventos que una vez vueltas a entrar al mapa se reinicien, por ejemplo las uso para bayas en X mapas o cofre del tesoros aletorios, etc. Lo que tu quieras que pienses que solo se pueda usar una vez en el mapa pero si vuelves a entrar en el mapa puedas volver a obtener sus beneficios.

La solución es fácil usar un script de nivel donde las desactive, asi un clearflag permitirá cada vez que entres a ese mapa volver a sacar tesoros del cofre de forma aletoria o recoger bayas,etc. El uso se lo das tú, ya sabes como. Son muy útiles y pocos las implementan. Lo bueno es que puedes usarlas en cada mapa que quieras una y otra vez las mismas, yo uso esas primeras 10 desde el numero 200, en varios mapas para recoger conchas para cortar cactus y sacar agua. O prender antorchas en calabozos, es cosa de creatividad y lo mejor es que puedes usarlas donde quieras y las veces que quieras.
 
Última edición:

Bugrhak

A long time ago I used to call myself "Subzero".
Nada mal, la verdad. Es un modo de uso bastante eficiente el que planteas, pero es muy fácil liarla con este método, en especial si se trata de esto:

Nacho dijo:
... ejemplo las uso para bayas en X mapas o cofre del tesoros aletorios...
Efectivamente, los cofres aleatorios. Usar esto en un solo mapa está bien, pero no queda bonito que cada vez que entres al mapa siga estando el cofre ahí, pero imagínate cofres 100% aleatorios, cofres que puedan aparecer en cualquier mapa del juego y que no "desaparezcan" del mapa cuando el jugador vaya a otro sitio, sino que desaparezcan una vez que el jugador abra el cofre y extraiga el contenido de el.

Con flags, me atrevo a decir que es algo casi imposible de hacer, o por lo menos muy difícil.

Se me ocurren cosas muy chulas con esto que planteas:

- Descuentos en las tiendas (Recuerdo que en pokeco hay una rutina asm para lograr esto).

- Vendedores ambulantes.

- Aparición de POKéMON raros y fuertes. (No POKéMON salvajes de esos que te encuentras en la hierva al caminar, si no un POKéMON con el que puedas decidir enfrentarte y hasta capturarlo, dicho POKéMON aparecería en el mapa con su respectivo OW).
Y la lista podría seguir...

Sería muy bueno que mostraras un sctript en el cual demuestres el potencial de esto (y para que el tutorial tenga algo de contenido práctico y no solo teórico).

Att: El tito Sub.(^3^)_b
 
Última edición:

Samu

Miembro insignia
Miembro insignia
En realidad, esto es algo que hace el propio ROM. Cuando Game Freak desarrolló los juegos, también pensó que podía usar una serie de flags de forma común para pequeñas cosas dentro de cada mapa. Se trata de los flags entre 0x0 y 0x1F.

En lugar de usar los flags de 200 en adelante y limpiarlos con un script de nivel (que tienes que colocar en cada uno de los mapas), yo recomendaría usar los flags 0x0 a 0x1F para este tipo de eventos. Estos flags se limpian automáticamente al cargar un nuevo mapa y no necesitas el script de nivel.

Los flags que comento los podéis ver en pokefirered y pokeemerald.

Ahora bien, es importante recalcar una cosa. Estos flags estarán "libres" siempre y cuando se haya creado un mapa desde con scripts nuevos y este no cuente con scripts procedentes del ROM original que bien podrían usar alguna de estas flags.
@Nacho puede que te interese actualizar el post conociendo está información.
 

Gold

Porrero a tiempo parcial
Miembro insignia
En realidad usando las flags que se usan para árboles de corte/golpe roca son la mejor opción para flags dinámicas ya que se respetarán cada que cambias el mapa y queda mejor que un script de nivel en cada mapa.

EDIT: Aaaaaaaaaah pincshi Samu me robó el comentario.
 
Arriba