Rpg˛S Forum uses cookies. Read the Privacy Policy for more info. To remove this message, please click the button to the right:    I accept the use of cookies

Vai al contenuto

Rpg˛S Forum uses cookies. Read the Privacy Policy for more info. To remove this message, please click the button to the right:    I accept the use of cookies

Screen Contest #90

Kamikun






  • Si prega di effettuare il log in prima di rispondere
Scriptare da pro per VX Ace

    Holy87
  • Prode Guerriero

  • Rpg˛S Staff
  • Rens: 458
  • 6
  • StellettaStellettaStellettaStellettaStellettaStelletta
  • 7431 messaggi
  • Sesso:Maschio
  • Provenienza:San Giorgio a Cremano
  • Abilitā:Maestro

#1 Inviato 27 March 2017 - 22:42 PM

Scriptare da Pro con RubyMine

Guida pratica per scriptare in modo avanzato.

 

Screenshot_2.png

 
Introduzione
Avete presente l'editor di script di RPG Maker? Diciamo che per grandi lavori non è proprio il massimo: si riduce a colorare il testo ed a cercare nel progetto. E se potessimo fare di più? Editor che ti permettono di scriptare con Ruby ce ne sono tanti, e per ora voglio parlarvi di come programmare con RubyMine. È un software di programmazione specifico per programmare Ruby, e a differenza di tutti gli altri editor generici, integra una tecnologia di smart code completition che permette di suggerirvi il codice, proprio come se usaste C# in Visual Studio (o quasi). Da quando utilizzo questo programma (e l'ambiente RGSS3 preparato da me) scrivere script è diventato molto più facile e veloce, permettendomi di scrivere completamente tutto lo script prima di provarlo nel gioco.
sample-script.gif
 
L'unico difetto di RubyMine è che è un software a pagamento. Avrete 30 giorni di tempo per provarlo, ma spesso concedono l'uso gratuito agli studenti, quindi controllate se il vostro istituto rientra nella lista di quelli consentiti.
 
Vantaggi
Quali vantaggi porta l'uso di un editor avanzato come RubyMine? Ne sono tanti.

  • Possibilità di personalizzare l'editor con le più disparate preferenze di stile e colori
  • Integrazione con Git, per pubblicare e collaborare nella stesura del codice
  • Intellisense, che permette di auto-completare il codice e di suggerire i metodi degli oggetti che state utilizzando
  • Avviso in tempo reale degli errori di scrittura: vi avviserà se state utilizzando variabili non inizializzate, se create variabili non utilizzate, se sbagliate l'input di parametri, la sintassi, metodi inesistenti ecc...
  • Vi obbliga a scrivere il codice bene e corretto
  • Testare in tempo reale pezzetti di codice senza avviare il gioco
  • Tanti strumenti

Come procedere?
Scaricare RubyMine ed installarlo
Scaricare Ruby ed installarlo (selezionate RubyInstaller e quindi la versione più recente), ricordando di aggiungere l'eseguibile Ruby al PATH di sistema (vedere immagine)

Spoiler

Scaricare l'ambiente RGSS3 preparato da me su GitHub. Potete usare due metodi:
Metodo 1: Scaricarlo sul PC
Spoiler

Metodo 2: Clonare il progetto
Spoiler

 
Creare un nuovo script
A questo punto vedrete la cartella lib, dove è integrato il framework che permette la magia dell'auto-completamento, e un file d'esempio per cominciare, che è new_class.rb.
Per creare un nuovo file script, cliccate con il tasto destro sulla cartella RGSS3 (la root del progetto) > New > e selezionate Ruby Class se volete un file vuoto, oppure un template già creato RGSS3, come Window o Scene in modo da avere già uno scheletro dove cominciare i vostri script (vedere immagine in spoiler).
Spoiler

Fattore importante: assicuratevi di avere all'inizio del file la riga
require 'lib/main' if false

Questo vi consentirà di poter integrare le classi e oggetti di RPG Maker nell'editor e permettervi di usare l'auto-completamento intelligente, ossia il pregio più importante di questo programma (ricordate di rimuovere la riga una volta completato lo script, prima di distribuirlo). La dicitura if false è un espediente che vi permetterà di non far crashare il gioco nel caso vi dimentichiate di rimuovere la riga.
 
Aggiungere documentazione
L'auto-completamento di RubyMine funziona sfruttando YARD, uno strumento di documentazione di Ruby. I tag YARD vi consentono di specificare i tipi di dati in ingresso e in uscita dei metodi. Ad esempio:

# @param [Array<Game_Actor>] gruppo
# @param [String] nome_eroe
# @return [Game_Actor]
def trova_eroe(gruppo, nome_eroe)
  gruppo.find{|actor| actor.name == nome_eroe}
end

Con questo metodo, abbiamo definito i tipi dei parametri con il tag @param prima del metodo, e il valore di ritorno con @return (l'array è dichiarato come Array<Tipo> in modo da poter specificare anche di che tipo sono gli elementi).
Nel caso possano esserci più tipi, possono essere separati da virgola.
Il tag @param specifica i parametri in ingresso, in modo che l'editor possa suggerirci i metodi degli oggetti all'interno del metodo che stiamo scrivendo.
Il tag @return specifica il tipo del valore di ritorno, in modo da poterci far suggerire i metodi dell'oggetto restituito dalla funzione.

Come sentirsi a casa
Vi manca lo schema di colori di RPG Maker? In questo caso, vi ho preparato il tema RPG Maker scaricabile da qui.

Per installarlo, dall'editor RubyMine cliccate su File > Import Settings, quindi selezionate il file jar scaricato.

Per impostare il tema, andate su File > Settings, quindi andate in Editor > General > Color & Fonts.


"Io non volevo solo partecipare alle discussioni. Volevo avere il potere di farle fallire" [cit.]

BannerOverdrive35.png
Cap3.png

578.png
 

Miei script per RPG Maker VX Ace:

Spoiler

 
I miei tutorial:
Spoiler

    Guardian of Irael
  • Coniglietto Rosso

  • Rpg˛S Admin
  • Rens: 195
  • 19
  • StellettaStellettaStellettaStellettaStellettaStelletta
  • 58413 messaggi
  • Sesso:Maschio
  • Provenienza:Bagnaia (Viterbo)
  • Abilitā:Apprendista


#2 Inviato 28 March 2017 - 00:04 AM

Ah ah scriptare da pro! XD

 

Quindi c'è il progr...

 

(ed il framework RGSS3 preparato da me)

E LO METTI TRA PARENTESI!!!!

 

Peccato però che sia a pagamento dopo 30 giorni! D: Ci possono essere alternative gratuite comunque funzionanti col tuo framework? :3

 

 

Tanta tanta tanta tanta robbina ancora comunque, gran lavoro per programma, framework e pure i colori! XD

Questo e la guida all'RGSS tua fanno una gran bella accoppiata, non ci sono più scuse per non mettersi a muovere i primi passi con l'RGSS!  ^ ^


(\_/)
(^ ^) <----coniglietto rosso, me!     
(> <)

 
Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^
 
KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^
 
FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^  
 
REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

Spoiler


    Holy87
  • Prode Guerriero

  • Rpg˛S Staff
  • Rens: 458
  • 6
  • StellettaStellettaStellettaStellettaStellettaStelletta
  • 7431 messaggi
  • Sesso:Maschio
  • Provenienza:San Giorgio a Cremano
  • Abilitā:Maestro

#3 Inviato 28 March 2017 - 14:57 PM

Eh, se ci fossero state alternative gratuite avrei usato quelle...

 


"Io non volevo solo partecipare alle discussioni. Volevo avere il potere di farle fallire" [cit.]

BannerOverdrive35.png
Cap3.png

578.png
 

Miei script per RPG Maker VX Ace:

Spoiler

 
I miei tutorial:
Spoiler

    Guardian of Irael
  • Coniglietto Rosso

  • Rpg˛S Admin
  • Rens: 195
  • 19
  • StellettaStellettaStellettaStellettaStellettaStelletta
  • 58413 messaggi
  • Sesso:Maschio
  • Provenienza:Bagnaia (Viterbo)
  • Abilitā:Apprendista


#4 Inviato 28 March 2017 - 15:00 PM

Capisco, peccato! D:

Ci iscriveremo a scuole a caso per averlo allora!

^ ^


(\_/)
(^ ^) <----coniglietto rosso, me!     
(> <)

 
Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^
 
KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^
 
FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^  
 
REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

Spoiler





  • Feed RSS