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!
Oh por Dios! R!cci, te has lucido xD
Creo que ésta información es tan valiosa
para un novato como para un experto...
Siempre hay cosas que mejorar en un
script, y éstas son de las más importantes,
amerito tu esfuerzo y dedicación para éste
tutorial y te pongo un +1 Rep y +1 Gracias.
¡Saludos!
la verdad es que esto esta excelente, sinceramente aprendi unas cosillas q no sabia, como los sounds :P jajaja pero tengo una duda, como encontras la posicion del mapa en el rom, osea como ahces para averiguar el offset de (X) y de (Y)
buscandolo en cheats? o como? gracias, el " pulidor de scripts " muy bueno :P suerte
Wow, debes conciderarte un exelecte hacker, es la primera vez que veo los script explicados de una forma sencilla y entendible mas que técinca, te felicito...
Siempre me hubiese gustado hacer el mismo efecto con el WBTO en FR, es realmente genial...
Es la primera vez que le doy al "gracias" estaba esperando un post que mereciera la pena darlas, es el primero...
Este tipo de tutoriales ya no se ven más.
Ahora Skoria, puedes puir hasta que el scritp brille, pero también es posible pulir un mapa como en los viejos tiempos, que el detalle de un blocke hacia la diferencia y esas cosas se perdieron con el tiempo.
Muy buenos consejos amigo :) son muy buenos, xD, espero que sigas con la siguiente parte, y encima me viene bien, para algunos fallos mios, xD, Gracias =), y en cuanto a lo de la cámara congelada y el personaje se mueve sin que le siga es muy fácil, si lo acabas de explicar tu, quien no se dé cuenta es que no sabe leer...
¿Lo puedo explicar para la gente que no lo pille?
(Bueno lo explico y si molesta me lo decís D:)
En cuanto a nuestro colega a explicado Bien el script que usó en el cartel de ho-oh
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
se Observa que dice...
special 0x114 'Este special anclará de nuevo el movimiento de la cámara al movimiento del player.
con esto me refiero, que esto es lo que hace hacer que la cámara no siga el movimiento del prota.....
es decir que si vosotros hacéis un script así:
special 0x113
fadescreen 0x1
writebytetooffset 0x(Posicion de la x) 0x2025734
writebytetooffset 0x(posicion de la Y 0x2025736
special 0x8E
movesprite 0xFF 0x(posición de la x(pero ponéis la posición donde está el prota, pero directamente se pone la posicion donde esta el script porque el prota al pisarlo se queda ahí x)) 0x(Posicion de la Y)
fadescreen 0x0
end
lo que hace es mover la camara y tener tu propia libertad para mover tu protagonista o personaje sin que la cámara te siga, y para hacer que te siga es hacer otro script que centre la cámara al protagonista y poner special 0x114
y voilá
Podrás darle más dramatismo al juego
PD: De nuevo Gracias r!cci o skoria como prefieras... yo no lo sabia pero al leerlo lo he comprendido...
Jjjj
PD: No se si me explico, porque yo me explico fatal
espero que no moleste mi explicación, si molesta, la borro...
Esperaré la explicación con ansias, la explicacion de:
Las variables usadas para comprobar hacia donde está mirando el player.
Porque eso está genial, porque en los script que he echo siempre e puesto 1 personaje y solo un mismo sitio para poder hablar.... es decir que solo hay una posibilidad por que como no se hacer lo de las variables para comprovar donde está mirando el player... pues eso...
bien amigo...es todo bien explicado...luego voy a preguntarte algo mas... ^^"
antes de todo, tu sabes que yo estoy de vacacciones y luego no puedo probar nada de esto...luego disculpame si mi preguntas son un poco idiota XD
bien vamos...
1 - tu has postado una lista de sonidos echa por el vejo MAD...pero yo quiero saber..eso es igual tambien para el Fire red?
2 - El dominio de la camera...tú sabes que yo estoy tratando de hacer compatibles tu saber tambien para fire red y no solo para ruby.
Bien, como tu ya sabes, fire red no tiene el offsets de camera estàticos como ruby...pero he notado que en la primera mapa (después la elección de Boy/Girl) los offset de la coordenada x y de la coordenada y es siempre la misma! Pronto voy a publicar mi investigación aquí si puede ser útil ^^
3 - gracias a tu ayuda, yo ya sabes como usar el sprite en el msgbox...pero amigo, puedo pedirte un favor?? Puedes explicar como hacer esto tambien en fire red...(en la segunda parte)?? =)
bien...esto es todo...(oh my god!! My spanish is terrible!! T__T)! gracias amigo! ^^
Mis felicidades, te mereces una de repu, en mi vida vi tal presentación, tenía uno tut igual o parecido que explica lo mimso, pero el tuyo tiene un 10 en presentación, y también explica mas cosas, asi que me retiro y te hago el pasillo,llegar a casa lo leo, apenas leí nada aquí,bueno, qu estoy en el ciber y el tiempo es pasta.
Sigue así y te mereces agradecimientos en un hack
Edito:
Ya lo vi xD,me gusta mucho,le veo el jugo del tuto en que explicas mas la fomra de hacerlos que los comandos, mola el ejemplo del gold, todo el día el A xD, bue ejemplo, y tus scripts dle vidoe me encantan, y lo de los pokes están chulos,me gusta también, que te as currado la simgs en photshop o algo así, bueno, me despido xD
El mejor tutorial que he visto en mi vida, la presentación es excelente y sus contenidos nos ayudan a mejorar notablemente los scripts.:heart:
Te mereces un gracias+1 y un repu+1.:D
Ojalá saques la parte 2 del tutorial.:blush:
(¿Cómo haces para que un sound 0x... no se repita?)¿:.
¡Wow Ricci! ¡ésto es el tutorial de script que estaba buscando!! Gracias :heart::heart:
pero tengo una pregunta...¿:.
en el mando Faiden, el 0x(...) qué es? y qual'è la diferencia entre faiden y faidefault?
Te has lucido!! Es un gran tutorial, nos ayudará mucho a todos, tanto a los que empiezan como a los que ya son más avanzados.
Está todo muy bien explicado y perfectamente acompañado del video y de algunas imagenes.
Muchisimas gracias! Te mereces un +1 Gracias!
Ahora que tengo tiempo comento,esta muy bien ^^ fue un rollo leerselo pero una parte de lo que pusiste ya lo sabia,lo unico que no sabia era lo de applymovements y lo de la camara,sounds playsounds y cry,esta muy bueno suerte ;)