tuts_gba
Thread Id: 8675
Thread Name: GBA | Scripting | ¡Cómo hacer tu primer script!
#0
Loony Boo♪ 12263
Hola a todos, ya hace bastante tiempo que no subo manuales, ¿eh? Bueno, creo que muchos recordaréis que los retiré justo antes de mi retiro temporal. Tal vez os preguntaréis a dónde fueron a parar esos manuales. Pues bien, esos manuales los tengo yo. ¿Qué ocurre? Que para aquellos que les cueste aprender cosas nuevas pues puede resultarles un poco difícil. ¡Pues he decidido empezar una remasterización de mis manuales! ¿Y cómo los remasterizo? ¡Pues con vídeos y nuevas aclaraciones!

Para iniciar la remasterización, y como celebración de esta nueva etapa de manuales sencillos hasta la médula, me he puesto manos a la obra y he hecho, ni más ni menos... ¡un manual sobre cómo hacer tu primer script! Así es, vienen muchas cosas explicadas en ese manual, desde cómo estructurar el script con cada uno de los comandos hasta cómo actualizar el XSE, ¡incluso hay instrucciones para asignar el editor de scripts al Advance Map!

Os voy a ser sincero, yo me llevé muchísimo tiempo sin aprender scripts, por el simple hecho de que necesito un manual desmenuzado, a la mínima cosa que no entienda ya me lío. Antes no era tan sencillo scriptear, no estaba el XSE (estaba la chatarra andante del Scripted y el PokeScript) y, podríamos decir que todos los manuales de la época eran para superdotados (aquel que haya entendido completamente uno de ellos le doy un premio). Afortunadamente, llegué a aprender scripts y me dije a mí mismo: "no permitiré que aquellas personas que quieran aprender un tiempo después de mí pasen lo mismo que he pasado yo, me he llevado tres duros años sin saber ni mu, a partir de ahora, las cosas van a cambiar". Pues bien, este manual está pensado para gente como yo, así como otros que son capaces de coger las cosas a la primera (cosa que dudo, siempre cuesta la primera vez).

Este manual incluye dos partes, una parte es la parte teórica (el manual en sí, escrito en un documento de Microsoft Word) y la parte práctica (un vídeo demostrativo que está subido en YouTube). Bien, pues una vez dicho esto, aquí os dejo los dos links, tanto para el vídeo como para el manual escrito:




La contraseña del archivo comprimido es: leucisco

Bueno, espero que disfruten del manual, así como del vídeo. Si tienen alguna duda no tienen más que preguntarme, yo las resolveré con mucho gusto. Si os ha gustado y/o servido el manual, podéis darle al botón "Gracias" (me he llevado por lo menos 3 ó 4 horas preparándolo todo).

Bueno, ¡hasta el próximo manual!
#1
grotle09 13000
Gracias Rey boo cada dia aprendo mas y mas
#2
vediel 12331
mmm extrañamente interactivo diria, esta muy bueno aunque confunde la parte de , demasiado no es igual que mucho bueno me libraste de algunas dudas asi que me gusto el tuto bueno ojala sigas con mas como el apply bueh chau graxx
#3
Shawn 14970
Que buen tutorial :blush:
gracias a ti pude hacer mi primer script
espero que saques otro tutorial ;D
me va a servir mucho :)
salu2

~Javs: Amigo, acompleta un poquito más
el comentario. No pasa nada xD!
#4
LnX 14145
Gracias =D

Ahora se como hacer un script con XSE, ya no me tengo que complicar usando pokescript

Solo una duda ¿:.

Siempre es #DYNAMIC 0x800000

o tiene que cambiar el offset

aun asi gracias :blush:
#5
losbatoz 13921
Bien! Me gusto mucho el tutorial esta muy bien explicado y didactico.
Espero los siguientes Tutoriales :furia:

Y sobre la duda de ~LanXe~ esta resuelta en el tutorial word.

[quote="Rey Boo"]
#DYNAMIC 0x(offset)

Como offset puedes coger el que se te antoje, pero yo te recomiendo el 800000, porque a partir de ese offset hay mucho espacio en blanco y no habrán problemas a la hora de jugar al rom (que si hay fallos, que si se me cuelga, etc.). Así que vamos a escribir lo siguiente:
#DYNAMIC 0x800000[/quote]

Salu2!
#6
Max! 13026
Muy buen tutorial...no hay emoticon que describa lo que siento...
Sin duda eres el "Rey" :D
Me gustaria que el proximo sea sobre otro campo del hacking...ASM tal vez :awesome:
Bueno....MUCHAS GRACIAS!!!!!!!!!!

MAX!
#7
Txchpxz 14209
Hola que tal :D, oye rey Boo. seguí el tutorial de word al pie de la letra, hice todo lo que decias ahí (no, no me bote ninguna parte lo leí todo) y cuando le hablo al mini que se supone que le inserte el script. Solo se escucha "CLICK", pero no me aparece el msgbox aca esta mi codigo :
'-----------------------
#org 0x800000
lock
faceplayer
msgbox 0x880000B '"¿Hola que tal,/nmira mi primera med..."
release
end


'---------
' Strings
'---------
#org 0x80000B
= ¿Hola que tal,/nmira mi primera medalla/l, el lider es tipo fuego y/p es muy fuerte.


(si piensas que no tengo medio cerebro para esto es cierto '¬¬)
¿Cual es el problema aquí? ¿:. mi rom es pokemon ruby..
Ah y antes de que me suban el warn diganme :s para cambiar de aquí a dudas.


Buen tuto! :D
#8
Javi4315♪ 13374
Iniciado por Txchpxz

Hola que tal :D, oye rey Boo. seguí el tutorial de word al pie de la letra, hice todo lo que decias ahí (no, no me bote ninguna parte lo leí todo) y cuando le hablo al mini que se supone que le inserte el script. Solo se escucha "CLICK", pero no me aparece el msgbox aca esta mi codigo :
[quote]'-----------------------
#org 0x800000
lock
faceplayer
msgbox 0x880000B '"¿Hola que tal,/nmira mi primera med..."
callstd 0x6
release
end


'---------
' Strings
'---------
#org 0x80000B
= ¿Hola que tal,/nmira mi primera medalla/l, el lider es tipo fuego y/p es muy fuerte.


(si piensas que no tengo medio cerebro para esto es cierto '¬¬)
¿Cual es el problema aquí? ¿:. mi rom es pokemon ruby..
Ah y antes de que me suban el warn diganme :s para cambiar de aquí a dudas.


Buen tuto! :D[/quote]

Te falta el tipo de msgbox:

#org 0x800000
lock
faceplayer
msgbox 0x880000B '"¿Hola que tal,/nmira mi primera med..."
callstd 0x6
release
end

Aparentemente es eso. Pero la próxima vez o si te sigue dando problemas este script, postea en dudas.
___________________________
Ya de paso comento el tutorial.

Bueno, ¿Qué puedo decir? Ya sabía hacer estas cosas (xD), pero está bastante bien y con el video y todo supongo que la gente lo entenderá perfectamente (exceptuando algunos pequeños errores que puedan comenterse xD).

En fin, un buen tutorial Boo.

Espero alguno más avanzado.

Saludos!!
#9
Loony Boo♪ 12263
Iniciado por javi4315

[QUOTE]Iniciado por Txchpxz

Hola que tal :D, oye rey Boo. seguí el tutorial de word al pie de la letra, hice todo lo que decias ahí (no, no me bote ninguna parte lo leí todo) y cuando le hablo al mini que se supone que le inserte el script. Solo se escucha "CLICK", pero no me aparece el msgbox aca esta mi codigo :
[quote]'-----------------------
#org 0x800000
lock
faceplayer
msgbox 0x880000B '"¿Hola que tal,/nmira mi primera med..."
callstd 0x6
release
end


'---------
' Strings
'---------
#org 0x80000B
= ¿Hola que tal,/nmira mi primera medalla/l, el lider es tipo fuego y/p es muy fuerte.


(si piensas que no tengo medio cerebro para esto es cierto '¬¬)
¿Cual es el problema aquí? ¿:. mi rom es pokemon ruby..
Ah y antes de que me suban el warn diganme :s para cambiar de aquí a dudas.


Buen tuto! :D[/quote]

Te falta el tipo de msgbox:

#org 0x800000
lock
faceplayer
msgbox 0x880000B '"¿Hola que tal,/nmira mi primera med..."
callstd 0x6
release
end

Aparentemente es eso. Pero la próxima vez o si te sigue dando problemas este script, postea en dudas.
___________________________
Ya de paso comento el tutorial.

Bueno, ¿Qué puedo decir? Ya sabía hacer estas cosas (xD), pero está bastante bien y con el video y todo supongo que la gente lo entenderá perfectamente (exceptuando algunos pequeños errores que puedan comenterse xD).

En fin, un buen tutorial Boo.

Espero alguno más avanzado.

Saludos!![/quote]

Bueno, este tutorial está pensado para los novatos en la materia, ya que veía que hacía mucha falta un manual en condiciones (ya de paso, un manual que presentara estructuras de scripts con una combinación de comandos no erróneas).

He pensado traer un manual de algo que logré aprender recientemente, algo un poco más profesional (hexadecimal).

Iniciado por VICTORVAL

Muchas gracias, estoy recién iniciando y esto me va de maravilla:)


Eso me parece excelente. Pues ahora, complementa este manual con el de Diegoisawesome: http://www.pokecommunity.com/showthread.php?t=164276

Y a todo esto, ¿por qué le doy preferencia a los manuales de Pokecommunity? Pues bueno, normalmente tienen una estructura más depurada y no suelen cometer errores a la hora de scriptear (esto incluye el usar el tipo de msgbox 2 en scripts que no son sólo hablar a un mini y que te diga un mensajito o usar release sin lock, por ejemplo). La verdad es que hay veces que cometen errores, nadie es perfecto, pero sus manuales son la fuente más adecuada para aprender scripts (de paso aprende variables, los scripts de gatillo que veo por WAH están MUY ANTICUADOS, parecen tenerle miedo a las variables o algo así).

Saludos.
#10
Sproud 15127
Gracias a los tutos como estos ya me se casi todas las cosas que hay que saber de los scripts, las flags, los msgbox, givepokemon, giveegg wildbattle battletrainer, etc..
Ahora voy a cambiar al profesor.

Y haber si poneis algun tuto de como usar las variables, el de wah no lo entiendo.


Salu2
#11
Loony Boo♪ 12263
Iniciado por Sproud

Gracias a los tutos como estos ya me se casi todas las cosas que hay que saber de los scripts, las flags, los msgbox, givepokemon, giveegg wildbattle battletrainer, etc..
Ahora voy a cambiar al profesor.

Y haber si poneis algun tuto de como usar las variables, el de wah no lo entiendo.


Salu2


Mejor que no sigas los tutos de WAH para los scripts de gatillo y las variables, parece ser que les tienen "miedo". Tal vez haga uno, pero próximamente.

Saludos.
#12
Sephiroth 13677
Hamijo, esto me ayudó mucho. Le has añadido una buena dosis de ironía, no resulta para nada aburrido leer el manual, y eso está muy bien.

Te mereces un +Gracias, de verdad se nota que está curradísimo y awesome.

Lo he pasado a .doc, si quieres lo subo porque muchos de aquí no tienen el Word 2007 sino el 2003 y es imposible abrir archivos con extensión .docx a menos que no tengas la versión más moderna.

Pues, como ya dije, estoy más que seguro que con esto has ayudado a muchos, muchísimos usuarios (aunque muy pocos se pasan por manuales) a aprender y conocer los scripts para que a su vez ellos puedan ayudar a otros y quien sabe, hagan un manual.

Si alguien logra hacer un manual como éste, que me despierte [pelota off]

Bueno, como acordado y para no hacer un post inútil, publico el link de la versión DOC/Word 97-2003.

http://www.mediafire.com/?9m7hp639bvly8aw

Un saludo.
#13
Sproud 15127
Añado al post un link del manual subido al scribd para los que no quieran descargarselo.

Scribd | Como empezar a hacer scripts

Salu2
#14
Zack303 14478
Gracias Melboo yo sabia un poco de scripts pero gracias a ti podre volverlos ha hacer despues de 4 meses ^^ un gracias
#15
sergesvi 15239
Gracias.
Con este tutorial he aprendido porfin a hacer un script.
Pensava que nuna los entenderia gracias Rey boo.
#16
Zack303 14478
Muchisiiiiiiiiimas gracias,hace 5 meses que no hago un script,porque los hacia con pokescript,ahora los hago con XSE y gracias por explicarlo detalle a detalle,el gracias ya te lo di,suerte :)
#17
pppablooo 15471
tengo algunas dudas:
cuando tu usas #DYNAMIC 0x800000, ¿que hace dynamic exactamente, buscarme un offset mayor al 800000 no?¿siempre tengo q poner 800000?
#18
Javi4315♪ 13374
Iniciado por pppablooo

tengo algunas dudas:
cuando tu usas #DYNAMIC 0x800000, ¿que hace dynamic exactamente, buscarme un offset mayor al 800000 no?¿siempre tengo q poner 800000?


Mira, el dynamic lo que hace es buscar los bytes necesarios para compilar el script a partir de la dirección que tú le especifiques. Es decir, si utilizas "#dynamic 0x800000", lo que hará XSE será esto:
1) Pasar el script a código hexadecimal.
2) Calcular los bytes del script.
3) Buscar un espacio vacío en el rom (necesita tantos bytes libres como bytes tiene el script) a partir del offset que indicaste (en tu caso, el 800000).
4) Escribe los bytes en la parte vacía del rom que a encontrado.

Lo que hace el dynamic es que busca esos bytes vacíos que necesitas para compilar tu script sin que tengas que buscarlos tú con FSP.

Bueno, espero que lo hayas entendido xD.

Saludos!!
#19
Stupidest Kiwi Ever 15154
Solo una palabra: Gracias :D

~Javs: Sólo una palabra: Warn :awesome:
#20
dark_sl 15820
agradesco mucho que hayas subido un manual de iniciacion, yo antes era desordenado, ahora aprendere bien, algun dia quiero hacer un rom para que la gente lo juegue y le guste

te mereces un gracias
#21
Darkess 15877
Hola. He hecho todo lo que has puesto en el tutorial. Primero te daré un consejo, en lugar de liarnos con el /l /n dino pulsad CTRL+T o iros a herramientas=>Ajuste de línea.

Ahora una pregunta. ¿El offset 800000 es solo para rojo fuego y verde hoja o tambien vale para rubí?

Y por último el error que me da. He seguido todos tus pasos y me da un error al hablar con el tío al que le puse el script. Aquí la imagen:

Por si no ves el error porque está muy pequeño y no se acerlo más grande, aparece un cuadrado negro en los pies del tío.
Por si me dices lo del callstd 0x6 tambien lo he hecho
#22
Loony Boo♪ 12263
Iniciado por Darkess

Hola. He hecho todo lo que has puesto en el tutorial. Primero te daré un consejo, en lugar de liarnos con el /l /n dino pulsad CTRL+T o iros a herramientas=>Ajuste de línea.

Ahora una pregunta. ¿El offset 800000 es solo para rojo fuego y verde hoja o tambien vale para rubí?

Y por último el error que me da. He seguido todos tus pasos y me da un error al hablar con el tío al que le puse el script. Aquí la imagen:

Por si no ves el error porque está muy pequeño y no se acerlo más grande, aparece un cuadrado negro en los pies del tío.
Por si me dices lo del callstd 0x6 tambien lo he hecho


Vamos por partes:

1º Es una herramienta que suelo usar, pero sólo de evz en cuando. ¿Sabes por qué? El ajuste de línea está muy bien siempre que sean textos "normales", pero si quieres hacer un hack en el que, por ejemplo, tu personaje hable, tendrás que poner la "partícula" [player], y al colocarla en el ajuste de línea, sólo aparecen los corchetes, de esa forma te acabas liando.

Además, tampoco aconsejo usar el ajuste de línea en exceso para "implantar" los diálogos, si quieres implantar un texto demasiado largo, puedes que parte del texto aparezca en la línea siguiente (y si te soy sincero, prefiero que no os arriesguéis).

2º Según parece, sí, también está libre. De todas formas, y si quieres estar más seguro, puedes abrir el ROM de Pokemon Ruby con un editor hex y comprobarlo tú mismo (basta con ver si desde esa dirección hay "un mar de FF".

3º Mmm... ¿Eso te ocurre cuando se ejecuta el script o ya estaba así desde antes? Si me das esa información adicional, tal vez pueda ayudarte mejor.

Saludos.
#23
Darkess 15877
3º Mmm... ¿Eso te ocurre cuando se ejecuta el script o ya estaba así desde antes? Si me das esa información adicional, tal vez pueda ayudarte mejor.

Saludos.[/quote]

El error me lo da cuando se ejecuta el script. Pero eso solo me pasa en Ruby. Ahora lo estoy haciendo en rojo fuego y me va perfectamente, pero aun asi me ayudaria mucho que me dijeras las posibles causas del problema.

Por cierto. ¿Podrías hacer un tutorial con givepokemon?
#24
Loony Boo♪ 12263
Iniciado por Darkess

3º Mmm... ¿Eso te ocurre cuando se ejecuta el script o ya estaba así desde antes? Si me das esa información adicional, tal vez pueda ayudarte mejor.

Saludos.


El error me lo da cuando se ejecuta el script. Pero eso solo me pasa en Ruby. Ahora lo estoy haciendo en rojo fuego y me va perfectamente, pero aun asi me ayudaria mucho que me dijeras las posibles causas del problema.

Por cierto. ¿Podrías hacer un tutorial con givepokemon?[/quote]

Mmm... tal vez hayas seleccionado un offset con menos bytes libres de los que necesitas. Prueba a seleccionar otro offset (en una copia de seguridad, importante) y vuelve a compilar el script. Si te sigue fallando, pásame un parche con el rom que tiene el problema para ver si puedo hacer algo más por solucionar el fallo (eso sí, el parche me lo pasas por Mensaje Privado, no lo postees en este mismo tema, ¿ok?).

Saludos.
#25
charlos 16072
el mejor tutorial ke e visto a los ke no les funko es proke el rom es de ruby y no de fire red yo prbe y solo funkaba con fire red no con el ruby pero aparte de eso ise mi primer scrip ctmre:D:)
#26
ismerai 16192
No me sale Choose script editor :( y quiero aprender.
#27
Loony Boo♪ 12263
Iniciado por charlos

el mejor tutorial ke e visto a los ke no les funko es proke el rom es de ruby y no de fire red yo prbe y solo funkaba con fire red no con el ruby pero aparte de eso ise mi primer scrip ctmre:D:)


No tiene por qué no funcionar con Pokemon Ruby, de hecho, sirve para este rom también. Lo que pasa es que yo rom hackeo Fire Red y es el rom que tenía más a mano.

Iniciado por ismerai

No me sale Choose script editor :( y quiero aprender.


Léete bien el manual, y, en caso de que no se te resuelva tu duda completamente, mira la demostración en vídeo, ahí me verás a mí eligiendo la opción que no encuentras.

Saludos.
#28
ismerai 16192
Si si mire lei y lei pero que sigue sin aparecer esa opcion jaja.[hr]
Hay que abrir un Room antes? s es haci cual?[hr]


Eso es lo único que me sale:D
#29
Loony Boo♪ 12263
Iniciado por ismerai

Si si mire lei y lei pero que sigue sin aparecer esa opcion jaja.[hr]
Hay que abrir un Room antes? s es haci cual?[hr]


Eso es lo único que me sale:D


Tu versión de Advance Map es demasiado antigua, descárgate la versión 1.92 y te aparecerá la opción.
#30
ismerai 16192
:blush: Muchas gracias esta web me gusta cada vez más[hr]
QUE COSA MÁS RARA!! ahora tengo otro problema con el 1.92o.O[hr]
Solucionadox:(
#31
GenM 16716
gracias por tu ayuda me sirvio de mucho!!!:blush:
#32
MAIDEN 16958
Muchas gracias por el tutorial hace dos meses estaba buscando un tutorial de hacer scripts y no encontraba ninguno pero luego me tope por este tutorial le heche un vistaso y ahora ya se de scripts.

Gracias a ti ahora soy scripter.