Vai al contenuto

Rilevato Ad-Blocker. Per favore disabilita il tuo adblocker quando navighi su makerando.com - Non c'è nessun annuncio invasivo.

  • Chatbox

    You don't have permission to chat.
    Load More
Ghost Rider

RPGMAKER VX ACE Creare "Eventi Globali" con lo script "Call Event"

Recommended Posts

Salve a tutti,

E' un po' che non faccio un tutorial, e siccome sto lavoricchiando un po' con VXA al momento ho deciso di scrivere qualcosina anche per questo tool.

 

Tutorial: Creare Eventi Globali utilizzando lo script Call Event di Yanfly

Tool: RPG Maker VX Ace

Livello: Principianti.

 

Premessa:

Chi mi conosce sa che la mia opinione di rmvxa non è altissima, soprattutto perchè il tool, nonostante sulla carta sia superiore ai suoi predecessori per quanto riguarda il comparto grafico, in realtà, quando si passa "alla sostanza", il tool è pesantemente mutilato non solo dai grossi limiti in fatto di entry nel database e numero massimo di mappe (999 sembrano tante all'inizio, ma vi assicuro - per esperienza personale - che non bastano per un rpg come il mio Dragonheart che è gia a quota 800 mappe nonostante sia forse al 10% del suo sviluppo, e altri rpg epocali come Everlong che superano le 3500 mappe...), ma anche perchè molte funzioni degli eventi, dai precedenti tool, sono state depotenziate se non addirittura rimosse del tutto, e in questo tutorial ci occupiamo di una queste funzioni.

 

Altra premessa:

Il termine "Eventi Globali" l'ho inventato di sana pianta al solo scopo di questo tutorial, lo dico solo nel caso spunti qualche furbacchione che dica "ma non esiste niente che si chiami eventi globali nel programma... xDDD

Uso questo termine per differenziarli dagli Eventi Comuni (Common Events) configurabili normalmente nel database.

Lo scopo di questo tutorial, in effetti, è proprio di sopperire alla limitata quantità di eventi comuni; volendo potremmo chiamarli "Eventi Comuni Aggiuntivi" ma ho deciso di usare il termine eventi globali perchè fa più figo.

 

Requisiti:

Per questo tutorial servono due cose:

1) RPG Maker VX Ace (no, ma davvero...!? °A°)

2) Lo script Call Event di Yanfly o script analoghi (se ce ne sono, non ne conosco) che potete trovare qui.

 

Parliamo un attimo dello script:

Quale che sia la vostra posizione sull'uso degli script (non interessa nè a me nè allo scopo del tutorial), personalmente ritengo che questo script faccia parte di un "pacchetto" di script che tutti dovrebbero avere, in quanto non è solo un agiunta di qualche feature "cosmetica", ma inserisce una vera e propria funzione che è assente nella versione base del tool. E' uno script "per programmatori", non per giocatori.

 

Premesso che - anche se su VXA la funzione "Chiama Evento" fa capo solo agli eventi comuni (a differenza della serie 2k dove potevi richiamare sia un evento comune che uno della mappa corrente) - è ancora possibile chiamare un evento della mappa attuale utilizzando questo call script:

 

$gameMap.event(x).start()

dove x è l' ID dell'evento, e farà partire quell'evento alla pagina attualmente attiva (in base alle condizioni di ogni pagina di quell'evento, insomme come se il giocatore ci avesse normalmente interagito).  

Chiarimento: questa è una funzione gia presente nel tool di base, utilizza un call script ma NON è uno script esterno, quindi, anti-scriptisti, potete usarla anche voi :D

 

Lo script di Yanfly, però, espande ulteriormente questo concetto, permettendoci di scegliere non solo la pagina che vogliamo eseguire, ma anche la MAPPA in cui vogliamo andare a recuperare l'evento. Sì, avete capito bene, è possibile chiamare qualsiasi evento da qualsiasi mappa!

 

Preparazione:

 

  • Scaricate lo script e incollatelo sotto Materials ma sopra a Main (come praticamente qualsiasi altro script). Lo script è plug&play, e non necessita di alcuna configurazione, in oltre può essere inserito durante qualsiasi momento nello sviluppo del vostro gioco.
  • Non obbligatorio, ma caldamente consigliato, create una mappa vuota in cui conserverete i vari "Eventi Globali". Sarebbe anche meglio se il giocatore non avesse mai accesso a quella mappa, durante il gioco vero e proprio.

 

Creare un Evento Globale:

 

Create un evento, in questa nuova mappa (per il tutorial ipotizziamo che sia la mappa n°4), ignorate la grafica dell'evento (se volete potete metterla come segnaposto, ma non è essenziale) e e le condizion di avvio e programmate l'evento come volete; in questo esempio utilizzeremo delle scorte di munizioni che il giocatore potrebbe raccogliere in giro in un gioco stile survival horror.

 

image.png

l'ID dell'evento , mostrato in alto a destra, servirà quando lo richiameremo, per ora tenetelo a  mente.

 

image.png

 

Abbastanza semplice da capire, appare un messaggio (la switch 18 fa riferimento ad un altro script, quindi ignoratela) e poi vengono aggiunte le munizoni all'iventario. Alla fine si attiva la Self Switch A (o quella che vi pare). Questo passaggio è fondamentale anche se l'evento in questione ha una sola pagina.

 

Per mia preferenza personale, preferisco che ogni Evento Globale sia un evento a se stante, con una sola pagina, ma se per voi è più comodo potete creare un evento solo con più pagine... potreste anche raggrupparli per tipo, ad esempio potreste decidere che l'evento globale 7 venga usato per quegli eventi in cui il giocatore raccoglie munizioni, e potete usare la pagina 1 per i colpi della pistola, la 2 per i colpi del fucile, e così via...

 

Abbiamo così creato il nostro Evento Globale, il quale ora si trova in questa "mappa fantasma" in attesa di essere usato.

 

Richiamare un Evento Globale:

 

Per richiamare questo evento, create un nuovo evento in una delle mappa di gioco dove volete che questo evento venga richiamato. Questa volta la grafica dovete selezionarla (se ne ha una, ovvaimente) e dovete aggiungere una seconda pagina che sia attiva quando lo Switch Locale/Auto Switch (Self Switch) A (o quello che avete programmato nell'evento globale), sia attivo. Nota che questo passaggio non è per forza obbligatorio, infatti potreste usare gli Eventi Globali anche per quei "dialoghi" ricorrenti... come ad esempio quando, in un gioco del tipo investigativo/survival horror/quello che è, il giocatore può esaminare diversi oggetti dello scenario, e appare il messaggio "Niente di Interessante..." o cose simili... in quel caso non è necessario che l'evento si disattivi.  

 

In questo evento, comunque, tutto ciò che dovete fare è inserire il seguente script call:

call_event(x, y, z)

dove x è uguale all' ID dell' Evento Globale (nel nostro caso 7); y è la pagina che volete eseguire (nel nostro caso ipotizziamo 1) e z è l'ID della mappa in cui conservate gli eventi globali (nel nostro caso 4).

 

*Il comando Call Script (o a volte soltanto Script)lo trovate a pagina 3 dei vari comandi evento:

image.png

 

Ed ecco come appare il nostro evento:

image.png

image.png

 

Il trucco è che, anche se noi stiamo eseguendo l'evento 7 della mappa 4, il comando "Control Self Switch" farà riferimento all'evento da cui è partito il "call script", quidi attiverà la pagina 2 dell'evento attuale, senza che noi dobbiamo fare altro!

 

Così facendo è possibile quindi programmare un evento una sola volta e inserirlo in più istanze senza il minimo sforzo.

 

Possibil Utilizzi:

 

Fondamentalmente gli stessi degli eventi comuni, ma con il vantaggio che non consumiamo eventi comuni, che ad esempio possono essere utili per gli eventi in battaglia, visto che questo sistema molto probabilmente (non ho testato) non è utilizzabile con gli eventi in battaglia (se usate il BS standard o coumunque uno modificato da script, se invece il vostro BS è 100% ad eventi, potete usarli anche in quel caso).

 

Sebbene ad un maker più novizio, o comunque meno attento, possa sembrare che non ci sia chissà quale reale beneficio (in fondo basta copia/incollare lo stesso evento quando e dove si vuole), in realtà questo sistema torna infinitamente comodo nel caso dobbiate modificare quell'evento in futuro... immaginate di accorgervi di un bug, di un errore di grammatica o di battitura dovuto a distrazione, dopo che avete inserito questo evento 250 volte in 90 mappe diverse... ::rotfl:: e poi è comodissimo anche se volete tradurre il gioco in un altra lingua!

Vi basterà modificarlo UNA volta e sarà subito fixato in tutte le altre istanze in cui l'avete inserito!

 

Altri possibili utilizzi includono (ma non sono limitati a): tutorials, collectibles, messaggi di stato, dialoghi ricorrenti, e qualunque altra cosa vi venga in mente...

 

Conclusione:

 

Spero che questo semplice tutorial torni utile a qualcuno. Per quanto riguarda la "comunità anti scripting", purtroppo non conosco un metodo per farlo senza usare lo script di Yanfly, quindi se proprio non potete farne a meno di macchiare il vostro onore e inquinare il vostro progetto con script di terze parti, agganciatevi xDDD

 

Lasciate pure un commento o un "Mi Piace" se il tutorial è stato di vostro gradimento, e se volte dire che il tutorial fa cagare e che sono uno scrabbo perchè uso script di terze parti, sentitevi liberi di togliere il culo dal mio divano e andarvi a scrivere il vostro tutorial a riguardo, brutti fraccomodi figli di... ehm come non detto, segnalate pure se conoscete qualche altro modo e provvederò ad aggiornare il tutorial :D

 

Pace!

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Crea un account o accedi per lasciare un commento

You need to be a member in order to leave a comment

Crea un account

Iscriviti per un nuovo account nella nostra comunità. È facile!

Registra un nuovo account

Accedi

Sei già registrato? Accedi qui.

Accedi Ora

  • Contenuti simili

    • Da Loppa
      (Click sull'immagine per scaricare e votare il gioco)
       

       
      Town of the Dead è un videogioco action survival horror, creato con RPG Maker VX Ace, con la grafica POP! Horror City e tante svariate modifiche e una certa cura maniacale nelle ambientazioni, colonna sonora creata da me, sound effects di qualità, con un fiero battle system in tempo reale, sistema di puntamento personalizzato, minimappa con radar su schermo e tante altre features... che ti catapulteranno in una città devastata da una quarantena vigente, la quale è invasa da morti-viventi e altre creature mutate senza controllo. Con la possibilità di entrare nelle maggior parte delle abitazioni per saccheggiare beni da rivendere, distruggere e interagire con tanti oggetti, riuscirete ad affrontare qualsiasi avversità...
      potrete fidarti di poche persone, farete le scelte giuste?
       
      ...INFO...
      ☣ SCREENSHOTS ☣ FEATURES DI GIOCO ☣ RINGRAZIAMENTI
    • Da cutiesbae
      [Horror Psicologico - Mistero]
      DISCLAIMER: Questo gioco contiene elementi violenti e sanguinosi non adatti ad un pubblico minore di 18 anni. Individui che soffrono di ansia o depressione potrebbero non avere un'esperienza di gioco sicura. Ricordiamo che questo gioco è frutto della creazione e fantasia dell'autore.
       
      Gioco nato dall'idea di ispirarmi ad altri indie dello stesso genere del calibro di The Cat Lady e Downfall di Remigiusz Michalski e dall'amore che nutro verso gli horror psicologici. La trama è interamente inventata da me. 
       
      Trama: Nel piccolo paese di Elkedor vive la famiglia Baker, isolata e quasi ''inesistente'' per gli altri cittadini. Arold, padre di famiglia e avvocato di poca fama, entra in un periodo difficile della sua vita tra alcolismo e un matrimonio in rovina. Le sue giornate sono ormai riempite solo dal suo bere interrottamente, mentre sua moglie e i loro due figli diventano sempre più distaccati e freddi. Una notte i due figli scompaiono. Disperato dall'idea di perdere anche loro decide di indagare fin quando, grazie a degli indizi trovati in casa, riesce a trovare un passaggio segreto. Bugie, ossessioni e odio sono il riassunto di quello che si cela nella ambiziosa famiglia Baker.
       
      Il gioco completo contiene:
      Sangue | Uso di alcol | Elementi disturbanti
      Finali Multipli (True Ending - Neutral Ending - Bad Ending) 
      1-2 Ore di Gameplay
      Puzzle
       
      Personaggi: 
       
      Arold Baker: Marito di Laura e padre di Sarah e Thomas. Capelli castani con barba e baffi, magro, occhi marroni.
      Protagonista del gioco. E' un uomo realista e cordiale, ma spesso può apparire brusco. Ama il buon vino e il suo lavoro.
       
      Laura Baker: Moglie di Arold e madre di Sarah e Thomas. Capelli neri a caschetto, magra, occhi azzurri.
      Donna insicura e debole, ma che farebbe tutto per la sua famiglia. Non sopporta molte cose, tra cui il vizio di bere troppo del marito.
       
      Sarah Baker: Figlia di Arold e Laura, sorella minore di Thomas. Capelli neri legati da due piccoli fiocchi, magra, occhi verdi. Sarah è sempre tra le nuvole e non mostra quasi più nessuna emozione. Ritenuta ''La muta'' in paese. Il suo peluche preferito è un orsetto rosa chiamato ''Leo''.
       
      Thomas Baker: Figlio di Arold e Laura, fratello maggiore di Sarah. Capelli castani, magro, occhi verdi.
      Thomas ha una grande passione per gli insetti e sogna di poter studiare entomologia. E' un ragazzo allegro e un po' distratto, suo padre spera che possa diventare un avvocato di successo.

      PERSONAGGI MINORI: 
       
      Hanna Meekins: Anziana cittadina di Elkedor, da qualche anno ha perso il marito a causa di un malanno incurabile.
      Non è molto in simpatia con i Baker. 
       
      E molti altri...

      Screenshots (Demo):
       
       
       

       
      LINK GIOCO COMPLETO (ITA): https://rpgmaker.net/games/10289/downloads/10057/
      (Cliccare sul piccolo pulsante EMPTY HEAD ITA - COMPLETE se il download non parte in automatico)

      SOLUZIONE COMPLETA (ITA): https://rpgmaker.net/games/10289/walkthroughita/
       

      Canale Telegram: https://t.me/emptyhead 
      Tumblr: https://cutiesbae-games.tumblr.com
    • Da cutiesbae
      Questo gioco è vagamente ispirato a Emily is Away. La trama è interamente creata da me. 
      N.B: Faraway Fall é un piccolo progetto a cui volevo lavorare prima di passare a qualcosa di più serio, bensì non sarà elaborato quanto EMPTY HEAD.
       
      !!! WARNING !!! 
      Bad Language
       
      Trama
      La nostra storia inizia in un piccolo paese dell'Inghilterra. *Nelson* è il tipico ragazzo nerd di 18 anni a cui piace passare il tempo a leggere manga e guardare anime. E' sempre stato un ragazzo timido che raramente esce di casa, ma il suo più grande problema è il sentirsi solo.
       
      *Puoi cambiare il nome del protagonista ad inizio gioco*
       
      Features 
      Finali Multipli 
      Un'ora di Gameplay 
      Scelte Multiple
       
      Lingua: Inglese
       
      Screenshots

       

       

       
      Tilesets 
      Pixel Art World 
       
      Sprites 
      Rpg Maker XP 
       
      Face Sets 
      Maru#4669 su Discord
×