| VISTO CHE TANTI LO DICONO (CHE CLICCANO GLI INGRANAGGI NON ESCE NIENTE) VI DICO: SCARICATEVI LA MIA VERSIONE! PROBABILMENTE LA VOSTRA NON è LA MIA E MOLTE SONO DIFETTOSE! Ed eccomi arrivato con un'altra guida! Questa riguarderà lo scripting, per coloro che sono proprio ai livelli di base. ora vi spiegherò un po' cos'è uno script. lo script è un linguaggio di programmazione, che nelle ROM viene usato per creare degli eventi. ecco cosa vi servirà: XSE (Xtreme Script Editor) (Click) advancemap una ROM (io uso pokemon ruby)
intanto aprite XSE e caricate la rom (FILE<---Apri). ed ecco come fare gli script (da scrivere nella casella grande)!
MESSAGGI SEMPLICI ecco come iniziano tutti gli script usando XSE:
1) CODICE #dynamic 0x800000
questo serve perchè a fine script il programma cercherà un offset libero a partire da 800000.
2) poi si aggiunge: CODICE #org @inizio
oppure CODICE #org 0x800000
Iniziamo dicendo che l'inizio di uno script che inizia con il carattere "@" si trova ad un offset libero trovato dal comando "#dynamic" , e da lì inizieranno i comandi . L'altra scrittura è simile , ma con la differenza che l'offset è specificato.
3) poi si aggiungono CODICE lock faceplayer
SPOILER (clicca per visualizzare)
il comando lock fa si che tutti i movimenti del personaggio vengano sigillati. se vogliamo che tutti quanti si fermino si mette al posto di "lock", "lockall". il secondo, "faceplayer", fa si che la persona a cui si parla si giri verso di te.
4)ora si aggiunge : CODICE message @msg 0x6
5)poi aggiungiamo CODICE release end
release rilascia la persona mentre end finisce lo script.
SPOILER (clicca per visualizzare)
6)a questo punto si salta una riga e si scrive questo:
CODICE #dynamic 0x800000
#org @inizio lock faceplayer message @msg 0x6 release end
#org @msg = "il mio messaggio"
per aiutarvi col messaggio andate su STRUMENTI<--ADATTATORE DI TESTO e scrivete il messaggio. poi premete il pulsante Converti. copiate ciò che compare sotto nella box piu piccola e lo incollate.
7)ecco, ora premete il tasto in alto con due ingranaggi blu. se avete fatto tutto giusto vi viene questa schermata:
vedete che è evidenziato in blu "@inizio"? di fianco c'è il tasto "copia". voi lo premete.
8)adesso aprite advance map e caricate la rom. naturalmente aprite la mappa e andate nella sezione eventi. create la vostra persona e la posizionate dove volete e poi vedete che nella colonna di destra c'è uno spazio con scritto CODICE script offset: $000000
selezionate gli zeri e premete CTRL-V. ecco che il vostro offset si è incollato al posto degli 0!! ora salvate e il gioco è fatto, quella persona dirà proprio ciò che avete scritto!
NB. avete visto che nello script ci sono 2 "@msg"? questi sono correllati! infatti il primo fa si che lo script venga "indirizzato" al secondo @msg prima di concluderlo!
LE FLAG
Le flag sono tipo dei "bottoni,", on e off. queste invece attivano o dsattivano uno script a seconda delle circostanze. un esempio è una persona che prima dice una cosa e poi un'altra.Ci sono due comandi importanti: setflag che attiva una flag; checkflag che controlla se una flag è settata.
1)prendiamo il nostro solito script: CODICE #dynamic 0x800000
#org @primo lock faceplayer
e aggiungiamo il comando CODICE checkflag 0x1000
intanto, il 1000 sarebbe il numero di una flag.
2) ora si aggiunge l' IF che serve per mandarti da una perte all'altra dello script. poi il messaggio: CODICE #dynamic 0x800000
#org @primo lock faceplayer checkflag 0x1000 if 0x1 @secondo message @msg 0x6
3)ora settiamo la flag:
CODICE #dynamic 0x800000
#org @primo lock faceplayer checkflag 0x1000 if 0x1 @secondo message @msg 0x6 setflag 0x1000
e concludiamo con "release" e poi "end".
4)ora dobbiamo creare il goto, cioè dove verrà inviata la flag: allo script aggiungiamo:
CODICE #dynamic 0x800000
#org @primo lock faceplayer checkflag 0x1000 if 0x1 @secondo message @msg 0x6 setflag 0x1000 release end
#org @secondo message @msg2 0x6 release end
5)e poi i goto per i messaggi:
CODICE #dynamic 0x800000
#org @primo lock faceplayer checkflag 0x1000 if 0x1 @secondo message @msg 0x6 setflag 0x1000 release end
#org @secondo message @msg2 0x6 release end
#org @msg2 = questo messaggio apparirà per primo
#org @msg = questo messaggio apparirà per secondo
6) bene, ora aprite advance map e ripetete il passaggio (8) del capitolo precedente. complimenti, siete dei futuri scripter! Ricordatevi che dovete mettere l'ID della persona a 1000, perchè il checkflag e il setflag sono impostati per la persona numero 1000!
IL GIVEPOKéMON Allora, cominciamo con l'inizio dello script: CODICE #dynamic 0x800000
#org @inizio lock faceplayer message @msg 0x6
ora bisogna aggiungere il comando givepokemon che farà in modo che lo sprite a cui state parlando vi dia un pokemon. quindi, sotto "message" si aggiunge: CODICE givepokemon 0x3 0x5 0x1 0x0 0x0 0x0
allora: 0x3 indica il pokemon, cambiate il 3 (Venusaur) con il numero del pokemon che volete. il 0x5 indica il livello. lo ritroverete quindi al livello 5. come detto prima, cambiate il numero per cambiare il livello. NON FATE I "FURBETTI" E NON SUPERATE IL 100, VI BRUCIERà LA ROM il 0x1 uguale allo strumento che tiene: 0x0=niente, 0x1=masterball... gli ultimi tre 0x0 non vanno toccati. indicano i byte o qualcosa del genere.
ora aggiungete questa semplice flag: CODICE setflag 0x800
che farà in modo che una volta ricevuto il pokemon si vada diritti al menu squadra. cambiate 800 con 828 se state usando fire red. 800 infatti è per ruby/zapphire.
adesso concludete lo script e aggiungete il messaggio: CODICE #dynamic 0x800000
#org @inizio lock faceplayer message @msg 0x6 givepokemon 0x3 0x5 0x1 0x0 0x0 0x0 setflag 0x800 release end
#org @msg = Tieni un pokèmon!
Ora concludete come dicono i passaggi (7) & (8) di "MESSAGGI SEMPLICI" credit pokemon flame
|