Ya antes había publicado una pequeña guía de concejos sencillos pero siempre a tomar en cuenta a la hora de hacer scripts, así que… ¿Por qué volverlo a hacer? Pues primero porque he visto que nosotros los hackers (uy sí!), desde los más principiantes hasta los más experimentados, en ocasiones dejamos pasar desapercibidos ciertos detalles a la hora de hacer scripts que seguro proporcionarían un alto nivel de calidad a los eventos con apenas un poquitillo de esfuerzo y conocimiento en el tema…
Y segundo porque el viejo tutorial ha quedado perdido en la marea de la vieja internet.
Así que antes de comenzar te explicaré la dinámica de este tutorial:
He adjuntado un video que posee cortos de scripts de mi hack, Pokémon Never, en ellos presento scripts sencillos numerados de acuerdo a la sección de este documento para así entenderlo mejor… Éste está dividido en 5 segmentos para "facilitar" el proceso.
Los puntos a tratar son básicos y en realidad no necesitas un nivel de hacker avanzado para comprender pero desde luego es recomendable que tengas bien entendido qué es un msgbox o un applymovement (Hay muchos tutos aquí… muchos muy buenos y siempre podemos contar con el compendio de comandos que trae consigo el XSE).
Ah y recuerda, esto no es un tutorial acerca de cómo funcionan comandos para hacer un script…
Por último, y quizá lo más importante, debo decir que lo que te presento no está tallado en piedra y que solamente es una referencia para que tú mismo desarrolles tu propio estilo, y si es que lo deseas nos compartas tus ideas o mañas en este espacio.
Ahora permiteme pedir una disculpa ya que mi lista de sounds y otras cosas que había venido recolectando han quedado perdidas en la vieja memoria de la antigua Pc... sin embargo me permito dejarte aquí esta lista de manos de mi buen amigo y gran hacker AlexMad que ha recopilado unos cuantos sonidos y nos da hilarantes explicaciones que servirán como ejemplos para darte una idea de cómo usarlos: [spoiler=Lista de sonidos by AlexMad: tomado de Wah]sound 0xA ? salto
sound 0x9 ? puerta
sound 0x8 ? puerta2
sound 0x7 ? golpe con algo
sound 0x6 ? sonido de cuando abres el menu
sound 0x5 ? de cuando cierras el menu
sound 0x4 ? pokenav
sound 0x3 ? cierras pokenav
sound 0x1 ? sube nivel
sound 0xC ? golpe
sound 0xD ? golpe diferente
sound 0xE ? huida de pokemon
sound 0xF ? cuando sale de pokebola
sound 0x13 ? cuando el barco zarpa
sound 0x29 ? rompe un cristal
sound 0x27 ? como tipo temblor
sound 0x2A ? agrietando piso
sound 0x2B ? caes del cielo
sound 0x2C ? cuando ya caiste
sound 0x2D ? teletrasportacion ida
sound 0x2E ? teletransportacion regreso
sound 0x2F ? cuando se abre la puerta del camión
sound 0x30 ? pokeblok
sound 0x31 ? camión
sound 0x34 ? golpe aleteo
sound 0x35 ? sonido de avión
sound 0x3D ? como vuelo rápido
sound 0x3E hasta sound 0x42 ? sonido de campanas
sound 0x46 ? cuando caminas en el agua
sound 0x47 ? algo sobre la mesa
sound 0x48 ? dinero
sound 0x49 ? dig dog!!
sound 0x4A sound 0x4B sound 0x4C ? sonido con agua diferentes buenos
sound 0x51 ? lluvia
sound 0x50 ? viento
sound 0x4F ? envenenado
sound 0x57 ? trueno
sound 0x58 ? trueno 2
sound 0x5A ? te mueres
sound 0x5B ? cuando llegas al tope de experiencia
sound 0x5C ? otro camión
sound 0x5D ? aleteos
sound 0x65 ? alerta !!
sound 0x66 ? pk brillante o shiny
sound 0x67 ? mega power
sound 0x6A ? gente gritando
sound 0x6B ? yet
sound 0x70 ? te llaman!!
sound 0x80 ? cut
sound 0x83 ? rocas rotas
sound 0x8D ? para el temblor
sound 0x90 ? fuego
sound 0x91 ? fuego
sound 0x92 ? fuegoooo
sound 0x93 ? golpe con fuego
[/spoiler]
[spoiler=He aquí el script que se muestra en el video (sección 5)]special 0x113 'Aunque no estamos usando un apply es necesario este special que independiza la cámara del movimiento del player
fadescreen 0x1
writebytetooffset 0x12 0x2025734 'Es la nueva coordenada x de la cámara en el mapa (escrita en la RAM)
writebytetooffset 0x5 0x2025736 'Es la nueva coordenada y de la cámara en el mapa (escrita en la RAM)
special 0x8E 'Actualizamos con este comando y vualá!... la pantalla cambiará de posición.
movesprite 0xFF 0x14 0x9 'Un problema con el WBTO para mover la cámara es que se llevará consigo a los minis que aparecen en la posición original además de los datos para los movimientos permitidos, esto se resuelve fácil con un movesprite aplicado al protagonista… ¿A dónde lo moverás? Sonará raro pero debes moverlo a su posición original, esto lo mantendrá en su lugar, observa el video... Maiden continúa frente al poster.
movesprite 0x7 0xF 0x4 'También este mini debe mantener su posición
fadescreen 0x0
msgbox 0x86D54D0 0x6 '"EL AVE DE LOS SIETE COLORES..."
fadescreen 0x1 'repetimos el ciclo pero ahora a la inversa.
special 0x113 '¿De nuevo?... sí, es necesario.
writebytetooffset 0x14 0x2025734 'Posición x original
writebytetooffset 0x9 0x2025736 'Posición y original
special 0x8E 'Refrescamos o actualizamos la pantalla
special 0x114 'Este special anclará de nuevo el movimiento de la cámara al movimiento del player.
movesprite 0xFF 0x14 0x9 'Sí… de nuevo (como verás las posiciones x,y son las mismas)
movesprite 0x7 0xF 0x4 'Sí… de nuevo
fadescreen 0x0
end
[/spoiler]
Bueno, pues hasta aquí la primera parte, como dije allá arriba espero que este tema tenga un poco de retroalimentación por parte del resto de los foreros y espero también que pese a ser un conjunto de tips bastante obvios te sea útil de alguna forma...
Para la siguiente parte hablaremos de lo que quedó pendiente además de:
Las variables usadas para comprobar hacia donde está mirando el player.
La importancia de los gatillos y su relación con el mapeado.
Más sobre applymovements y el pause.
El sprite sobre la caja de texto.
El uso de las animaciones.
Entre otras cosas que se me ocurran, a mí, o por qué no a ustedes...
Deja tus comentarios y dudas si es que las hay... Ah y si te agradó el video no olvides puntuarlo!