Hola! soy ObscureSideMt2 y vengo a explicar a vosotros algunos comandos y expondre algunos scripts basicos para que apartir de ellos agan los vuestros! :D :)
antes de iniciar necessitamos de:
-eXtreme Script Editor
-AdvanceMap
-Free Space Finder
-Bloco de notas
-Un rom limpio (yo trabajo con Ruby USA,)
-Imaginación
Descargas:
-Para descargar TODAS las herramientas haced click aqui!
-Para descargar Rom limpio de FireRed haced click aqui!(subido por ~Zaux)
-Para descargar Rom limpio de Ruby haced click aqui! (subido por Nemesys)
Tipos de script(si eres novato lee por orden):
en primero lugar abrimos Free Space Finder e procuramos un offset libre
si trabajan en un rom limpio debe ser el primero offset: 800000
Ahora abrimos Blocos de notas y empezamos nuestro script
debemos comenzar todos los script con este comando(hay otra manera pero esta es la más simple)
#Dynamic 0x800000(aqui va el offset que free space finder vos ha dado)
despues deben poner :
#Dynamic 0x800000
#org @inicio <--- aqui va una palabra qualquiere en mi caso inicio
despues otros 2 comandos
lock <--- que hace? facil hace que el personaje pare de hacer movimientos e "hable contigo"
faceplayer <--- y este? facil hace que el personaje te ponga ojo!
despues voy ponen :
#Dynamic 0x800000
#org @inicio
lock
faceplayer
message @frase1 <--aqui tambien va una palabra qualquier!
tienen que poner luego despues de message @frase1 :
boxset 0x6 el 0x6 hace que sea textbox normal ay mas textbox pero eso
explico en otra hora
despues ponen 2 comandos :
#Dynamic 0x800000
#org @inicio
message @frase1
boxset x6
release <--- hace que el personaje continue haciendo los movimientos!
end <--- simplemente termina el script!
bien y ahora ya está? no aun no esta porque no hemos puesto lo que queremos que la persona hable
es facil:
#org @frase1(aqui se pone la palabra que hemos puesto en "message @[la palabra]")
= Hola soy un verdadero noob!ya sabias esso?(aqui va la frase que queremos que el personaje diga)
Pero al haceres esso vas a ver que el texto sale del textbox(caja de texto)
como arreglo esso? tan simple como tirar un huesso a un perro(lol)
\n <-- hace que el texto va para la linia de bajo
\l <-- hace que el texto se apague e aparezca otro!
\p <-- apaga las 2 linias e va hasta otra
osea quedaria asi...:
#org @frase1
= ?Hola soy un verdadero\nnoob! ya sabias\leso?
!!Hasta ahora todo bien pero queremos saber más!!!
pues muy bien! ?Como hacemos para que un script no se repita?
[mirar el proximo spoiler]
para poner una flag solo necessitamos de 3 comandos:
checkflag 0x <---esto lo que hace es ver si la flag ya esta activada
if 0x1 goto @ <--esto es si el evento ya esta reproducido va al evento ...
setflag 0x <---esto hace que si el evento ya fue reproducido no se repita
si,si eso es todo muy bonito pero donde los pongo?
facil ! utilizando el script que he hecho en cima....:
#Dynamic 0x800000
#org @inicio
checkflag 0x <-aqui va el numero de la flag (pueden usar desde la flag 1000hasta 4000 incluso más)
if 0x1 goto @inicio2 <--aqui va el script numero 2 el qual quieras que va despues de este evento ya haber sido reproducido una vez)
lock
faceplayer
message @frase1
setflag 0x <--chequea la flag
release
end
#org @inicio2 <-- aqui el script 2
release
end
pero solo eso ? no puedo hacer mas nada para cambiarlo? !!!Claro que puedes!!!!
por ejemplo 2 textbox con textos diferentes!
#Dynamic 0x800000
#org @inicio
checkflag 0x1400
if 0x1 goto @inicio2
lock
faceplayer
message @frase1
boxset 0x6
setflag 0x1400
release
end
#org @inicio2
lock
faceplayer
message @frase2 <-- se debe poner siempre palabras diferentes CLARO!
boxset 0x6
release
end
osea quedaria asi:
#Dynamic 0x800000
#org @inicio
checkflag 0x1400
if 0x1 goto @inicio2
lock
faceplayer
message @frase1
boxset 0x6
setflag 0x1400
release
end
#org @inicio2
lock
faceplayer
message @frase2
boxset 0x6
release
end
#org @frase1
= Hola soy un verdadero\nnoob! ya sabias\leso?
#org @frase2
= sabes que yo..\n[player]: Si ya\lse que eres\pun noob!
!Tenemos un nuevo comando! ?que és [player]?
facil quando escribes [player] aparece el nombre que haz escogido para el protagonista
Si el script quedo bien pues,!!felicitaciones!!
:)
givepokemon 0x?? 0x?? 0x?? 0x0 0x0 0x0
el primero ?? es donde se pone el numero del pokemon en hexadecimal!
Para saber el numero de los pokemons en hexadecimal haced click aqui!
el segundo se pone el nivel del pokemon que quieres
el tercero es el objecto que el pokemon leva
Un ejemplo:
#Dynamic 0x800000
#org @inicio
checkflag 0x1400
if 0x1 goto @inicio2
lock
faceplayer
message @frase1
boxset 0x6
givepokemon 0x1 0x5 0x0 0x0 0x0 0x0 <-- recibes un bulbasaur lvl5 sin objecto
setflag 0x1400
release
end
#org @inicio2
lock
faceplayer
boxset 0x6
message @frase2
release
end
#org @frase1
= Toma um BULBASAUR!
#org @frase2
= !ya tienes el BULBASAUR por eso vete contento!
Otra forma de saber los numeros de los pokemons en hexadecimal es ir a tu calculadora de windows y despues pones el numero del pokemon y le das en la opción "hex"
?Que tal hacer con que un personaje se mueva?
"que dificil!"
No, !nada de complicado!
!Con dos simples comandos podremos lograrlo!
applymovement 0x[aqui se pone el numero del mini en hexadecimal] @[aqui la palabra donde este comando buscara los movimientos]
waitmovement 0x0 <--este comando no es necessario para hacer un personaje se mueva pero le da un toque más "realista"
Bien ahora un ejemplo de script de applymovement
#Dynamic 0x800000
#org @inicio
checkflag 0x1400
if 0x1 goto @inicio2
lock
faceplayer
message @frase1
boxset 0x6
applymovement 0x1(el numero del mini...) @mov1
setflag 0x1400
release
end
#org @inicio2
lock
faceplayer
message @frase2
boxset 0x6
release
end
#org @frase1
= sabias que yo soy\nmucho gordo pero\lme consigo mover?
#org @frase2
= soy gordo demas\n para que me\l mueva otraves...
#org @mov1
#raw 0x4 'Step Down (Slow)
#raw 0xFE 'End of Movements
!Más un script con sucesso!
Pero como hago que el personaje que se mueva sea yo??
No es nada complicado simplemente se pone en ves de 0x esto:
MOVE_PLAYER
(Ahora hay otra forma pero me gusta más los comandos antiguos! Y_Y)
warp 0x0 0x0 0x0 0x0 0x0
??Que hace este comando?? Facil, este comando hace que tu te vaias a un otro mapa al hablar con una persona o al pisar un script de gatillo
el primero 0 es el banco del mapa
el segundo 0 (!En verdad no me recuerdo!! !Perdon!: ( )
el tercero 0 es el warp
el quarto 0 es la cordenada X
el quinto 0 es la cordenada Y
por ejemplo:
#Dynamic 0x800000
#org @inicio
lock
faceplayer
message @frase1
boxset 0x6
applymovement 0x2 @mov1
waitmovement 0x0
warp 0x0 0x0 0x0 0x0 0x0
release
end
#org @frase1
= Hola [player]!\pHola marinero\nquiero ir hasta\llas islas naranja!\pMarinero:ok!
Osea,este warp 0x0 0x0 0x0 0x0 0x0 te teleportara hasta PETALBURG
Ahora voy explicar como hacer un script de YES/NO box
!??!Se recuerdan que he dicho en el principio?!?! !?No?! Pues fue esto:
"boxset 0x6 es la caja de texto normal pero ay otras pero eso explico en otra hora"
!!!Esa hora es...!!! !Mañana!,nahhh... es broma !es ahora! xD
un ejemplo de script de YES/NO box:
#Dynamic 0x800000
#org @inicio
lock
faceplayer
message @frase1
boxset 0x5
compare LASTRESULT 0x1
if 0x1 goto @inicio2
if 0x0 goto @inicio3
release
end
#org @inicio2
lock
faceplayer
message @frase2
boxset 0x6
release
end
#org @inicio3
message @frase3
boxset 0x6
release
end
#org @frase1
= ?!?Eres noob!??!
#org @frase2
= jejejejeje\nyo ya lo\lsabia!
#org @frase3
= !!Dime la verdad!!
?!?!pero que ha cambiado para que sea yes/no box?!?!
facil el comando en la primera parte del script no es: boxset 0x6 pero es boxset 0x5 ,!lo que hace que se abra la caja de texto yes/no!
compare LASTRESULT 0x1 <--compara el resultado que has escogido!
if 0x1 goto @inicio2 <--si dices que si vas al script "inicio2"
if 0x0 goto @inicio3 <--si dices que no vas al script "inicio3"
!?Simple,no!?
!Es verdad!,no es solo compilar !el script!Asi que aqui esta lo que tienen que hacer.
1ºAl terminar tu script en el bloco de notas lo pones en eXtreme Script Editor
2ºDespues le das "compile" y despues el te da varios offsets...pero solo puedes elegir
Pero qual es el correcto?
Facil...
Pones el rato en el offset de @inicio y haces "Copy" y pones "paste"(colar) en el mini del evento/gatillo(el S verde)
no he intendido ... clico en @inicio?
Bien no me explique bien... clican en la palabra que han puesto en el primero @
COLORES EN RUBY:
00 = Transparente
01 = normal
02 = rojo
03 = verde
04 = azul
05 = amarillo
06 = azul oscuro
COLORES EN FIRERED:
00 = Blanco
05 = naranja
Hay más colores pero no los probé todos Y_Y
Ahora como aplicarlas?
Ejemplo de un script:
#Dynamic 0x800000
#org @inicio
lock
faceplayer
message @frase1
boxset 0x6
release
end
#org @frase1
= \c\h01\h02el color de la\nletra es bonita
Yo he puesto \c\h01\h02 osea el color de la letra es rojo
\c\h01\h0? en el "?" ,!se pone el numero del color que queremos!
Para hacerlo es solo poner este comando en el script de la forma que más os gustar Y_Y:
wildbattle 0x0 0x0 0x0 0x0 0x0 0x0
primero 0x0 pokemon
segundo 0x0 nivel
tercero 0x0 objecto
Los ultimos 0x0 no sé para que sirven.
?!Hay algo que no esta entendible?!
?!No entiendes un comando o no logras que tu script funcione?!
Entonces dale !click aqui! ,para visitar mi perfil y deja un comentario con tu duda : D
!Si yo no puedo responder ,la razón es que hace mucho tiempo que no hago scripts y puedo no me acuerdar!
Pero,! hare los possibles para ayudar!