qna_rh
Thread Id: 26466
Thread Name: Problema con script básico de diálogo. Primeros pasos.
#0
Druaron 28521
Bueno, he empezado hoy mismo con esto del HackRom, y he visto unos cuantos tutoriales para iniciarse en el Script. He visto varios en esta misma página, y viendo que a mi no me salía, he probado a buscar otros tutoriales y nada de nada, el problema viene siendo el mismo:

Tengo el siguiente script.
#dynamic 0x800000
#org @comienzo
Lock
Faceplayer
msgbox @mensaje1 0x6
release
end
#org @mensaje1
= Hola.

-Le doy a compilar en XSE.
-Me dice que para @comienzo, mi offset es 80017D.
-Voy a Advance Map, pego el valor 80017D en la casilla Script offset del mini al que se lo quiero asignar.
-Me añade al final un 80, es decir que tras pegarlo se queda tal que así $80017D80.
-Guardo
-Pruebo la rom en el emulador.
-Hablo con el mini, pero no se gira hacia mi ni aparece la caja de diálogo aunque sí que se oye el sonido de cuando hablas con alguien.
-Vuelvo a Advance Map y quito el 80 del final y me añade dos ceros al principio (se queda como $0080017D).
-Pruebo la rom y sigue pasando lo mismo.

Mi rom es Pokémon Rojo Fuego en Español.
Mi Advance Map es la versión 1.95 en inglés.

Sé que es una chorrada, pero quiero entender bien lo básico del script para aprender bien. Un saludo y gracias.
#1
Franco Kuchiki 25897
Es un error muy común, yo también lo tuve con mi primer script y estuve como un mes para solucionarlo xD

El error es dejar los dos últimos lugares libres, por lo que se agrega ese "80".
Como solamente tenés 6 dígitos en tu offset y el A-Map 1.95 usa 8, tenés que dejar los dos primeros ceros, o sea, cuando lo pegás, tiene que quedar con dos ceros ADELANTE.
Tan sencillo como eso (;
#2
Jonouchi~ 27699
Hola, espero esto te sirva :D
Pues, primero, el script está correcto, solo hace falta los espacios:
#dynamic 0x800000

#org @comienzo
Lock
Faceplayer
msgbox @mensaje1 0x6
release
end

#org @mensaje1
= Hola.


Lo del offset 80 creo que es normal, sino, borra todo el offset que tiene el A-Map, por lo general, es todo en cero (Si es un nuevo mini), sino, borralo todo y pegas tu nuevo offset, el 80017D, también te sugiero que si usas una rom española, utilices la rom base que aportó [MENTION=25910]Brock[/MENTION] y te sugiero el A-Map 1.92 si el problema persiste.
O bien, con las roms inglesas no es tan malo.
Saludos!
#3
Tito Sayer301 26309
Bueno, segun lo que leo, las recomendaciones que te han dado ya las habias probado pero bueno, yo te diría que lo que tiene que ir delante es un 08 no un 80, al menos los offsets permutados llevan un 08 cuando llaman a una direccion por lo que no me pareceria raro que fuese 08. Por probar...
#4
Haydn 28497
Cuestion de fijarse en el advance map salen 8 ceros y el offset de tu script tiene 6, como bien ha dicho Zero. Si sigues con el scripting y usas flags tambien tienes que tener en cuenta que seguramente uses flags de 3 digitos y en la casilla de advance map donde van te caben 4! xD ¡No te desanimes! si necesitas ayuda pregunta :D
#5
BLAx/Atlas 26580
Vaya cacao os estáis haciendo xD.

Cuando en el XSE le das al icono de las tuercas para compilar, te sale las direcciones de cada fragmento que has llamado con un @ en el script.

Al pegarlo en el A-Map te añade al final 80. Pues simple y llanamente le quitas ese 80 que se ha añadido al final y guardas, así no se te añade el 00 al principio y listo. El problema es que si guardas el script con el 80 al final y luego lo quitas y vuelves a guardar, el programa detecta que ahí había una dirección más larga que la que estás intentando poner ahora, y para mantener el formato pone los 00. Pero así no afectan. Prueba como te digo y dinos si sigue dando el error.

Para comprobar que funciona bien, prueba a abrir el script desde el mismo A-Map (no necesitas iniciar el juego si quiera) y te debería de aparecer el script que has escrito tu, pero ya compilado. Si es así, enhorabuena, tienes el script dentro del juego y debería de funcionar xD
#6
Haydn 28497
No confundais el 80 ese con lo que sale al compilar

'---------------
#org 0x900000
lock
faceplayer
msgbox 0x890000D MSG_NORMAL '"Hola."
release
end


'---------
' Strings
'---------
#org 0x90000D
= Hola.

ese 0x8 que se añade cuando está compilado
#7
BLAx/Atlas 26580
Estaba revisando el script otra vez, y no se si afecta o no, pero prueba a poner lock y faceplayer todo en minúscula.

A todo esto, qué versión de XSE usas??
#8
Druaron 28521
Vale, he ido probando las distintas soluciones, pero no me daba tiempo a postear los resultados por el ritmo de respuestas xD, muchas gracias a todos, así da gusto.

Veamos, he probado todo y sigue sin funcionar. El mensaje no aparece, el personaje no se gira hacia mi pero sí que se escucha el sonido del mensaje.

Para comprobar que funciona bien, prueba a abrir el script desde el mismo A-Map (no necesitas iniciar el juego si quiera) y te debería de aparecer el script que has escrito tu, pero ya compilado. Si es así, enhorabuena, tienes el script dentro del juego y debería de funcionar xD


He intentado eso y curiosamente, no sé si será correcto, pero el código que me muestra es:
'-----------------------
#org 0x8001C6

Simplemente eso.

...también te sugiero que si usas una rom española, utilices la rom base que aportó [MENTION=25910]Brock[/MENTION] y te sugiero el A-Map 1.92 si el problema persiste.


Podrías decirme cómo puedo hacerme con esa rom? No la he encontrado en la sección de descargas de la web.

A todo esto, qué versión de XSE usas??

La que aparece en la sección de descargas de Whack a Hack. He supuesto que era la última versión. Quizás me he equivocado xD.

EDITO ¡RESUELTO!: Madremía... pues era por la versión del XSE. La que yo tenía era la 1.00 y he descargado la 1.11 y ahora va todo perfectamente XDDD. Ahora ya funciona tanto cuando pruebo jugando como cuando abre el script desde el A-Map, que ahora sí que me muestra mi script. Muchísimas gracias a todos por vuestras respuestas. A seguir aprendiendo!! :D
#9
J.com 12785
Cierro tema entonces