Nell'articolo di oggi, ti forniremo una panoramica di come il sistema di scripting del comportamento di Hytale offre modi per dare vita a NPC e creature. Per fare ciò, ti mostreremo alcuni aspetti del comportamento dei Trork: come reagiscono al giocatore, all'ambiente e tra di loro. Naturalmente, questi principi si applicano anche alle altre creature di Hytale e tutte saranno personalizzabili dai modder. Come sempre, tutti gli screenshot e le clip in questo post rappresentano lavori in corso e i dettagli potrebbero cambiare nel corso dello sviluppo futuro.
Dopo che una creatura è stata progettata e il suo modello e le sue animazioni sono stati creati in Hytale Model Maker, gli sviluppatori di NPC hanno il compito di darle vita utilizzando il sistema di scripting del comportamento.
Il sistema utilizza script JSON che richiamano elementi di comportamento modulari che ci consentono di specificare come un NPC percepisce il mondo e come reagisce in una varietà di situazioni. Questi script possono attivare animazioni, cambiamenti di stato e altro ancora: un esempio molto semplice di questo sarebbe uno script che determina se una creatura che è stata attaccata fugge o tenta di difendersi. Script più sofisticati possono mandare gli NPC a inseguire i giocatori o farli cercare cose che gli piacciono, come falò o cibo.
"Usiamo elementi costitutivi per creare un NPC da zero", afferma lo sviluppatore Ioseff Griffith. "Abbiamo sensori che sono il modo in cui un NPC interpreta il mondo che lo circonda, ed è così che decide cosa vuole fare. Quindi abbiamo azioni e movimenti, che sono il modo in cui interagiranno con il mondo o il loro bersaglio o qualunque cosa su cui si stiano concentrando. Combiniamo questi per costruire componenti e modelli da cui le varianti possono essere derivate rapidamente e facilmente."
In questo esempio, puoi vedere un frammento dello script che fa scattare i Trork in azione quando vedono il giocatore. Lo script gestisce diversi elementi di questa interazione. Attiva un'animazione di "allerta", che aiuta il giocatore a capire di essere stato individuato. Inizia anche una risposta di "segnale" che fa sì che anche altri Trork entro un certo raggio vengano avvisati della presenza del giocatore. I dettagli esatti di questa interazione possono essere modificati con precisione, ma l'implementazione complessiva si basa su modelli di livello superiore che sono comuni alla maggior parte degli NPC.
Questo approccio modulare al comportamento rende più facile implementare NPC o creature completamente nuovi. "Quando scrivi uno script per un NPC, non è necessario specificare cose come 'brandisci una spada' o 'sposta X distanza a destra'", spiega Ioseff. Semplicemente applicare un componente astratto come "fuggire" o "cercare" è sufficiente: il sistema di comportamento gestisce quindi le basi per l'esecuzione dell'azione desiderata.
"Al livello più elementare, il modo più semplice per creare un NPC è utilizzare modelli esistenti", afferma. "Questi modelli sono costituiti da componenti che costruiamo da sensori, azioni e movimenti per rendere facile il riutilizzo dei comportamenti in più script." Un esempio di componente è il rilevamento del suono, spiega Ioseff. Questo utilizza una combinazione di sensori che consentono a un NPC di interpretare il suo ambiente. "Quando rilasci un nuovo NPC nel mondo, dovrebbe essere in grado di far fronte ad ambienti per i quali non è stato specificamente scritto, almeno in una certa misura", afferma.
"Una caratteristica importante di questo intero sistema è l'elevata riusabilità", afferma lo sviluppatore Eric Reinhart. "È facile modificare i comportamenti esistenti, sostituire le parti ed è anche facile costruire qualcosa di nuovo."
"Per qualcuno che vuole modificare le cose o creare contenuti, il vantaggio è che è facile apportare semplici modifiche", continua Eric. "Ma consente anche ai modder di cambiare tutto fino al più piccolo dettaglio."
Ecco un esempio. Aggiungendo alcuni parametri extra allo script di comportamento del cacciatore Trork, possiamo aggiungere gli orsi all'elenco delle creature che li fanno entrare in uno stato di "allerta".
Ora abbiamo un cacciatore Trork che urla agli orsi! Questo è puramente un esempio: non lo faranno necessariamente nel gioco finale. Anche così, questo fornisce un esempio di quanto sia semplice introdurre nuovi dettagli nel comportamento di una creatura.
Spesso il set di comportamenti per un nuovo NPC viene mappato dal team di progettazione prima che venga implementato. A volte, questo significa aggiungere nuove funzionalità al sistema di comportamento che poi espandono ulteriormente le possibilità del sistema. Occasionalmente, tuttavia, le sorprese durante lo sviluppo porteranno all'aggiunta di nuove stranezze comportamentali.
"Alcuni piccoli pezzi vengono aggiunti durante il processo", spiega Ioseff. "Ad esempio, i Trork hanno un comportamento di sparring in cui iniziano a prendersi a pugni. Quando stavo implementando questo, un Trork sconfitto cambiava stato. A volte passavano immediatamente a uno stato di 'pisolino': questo era divertente, perché sembrava che fossero stati messi fuori combattimento. L'ho implementato correttamente e attualmente i Trork che fanno sparring si mettono a vicenda fuori combattimento dopo un combattimento."
L'intento del team è quello di creare creature e NPC che contribuiscano all'immersività del mondo agendo indipendentemente dal giocatore. Imparando come reagisce ogni creatura, i giocatori possono quindi trovare modi creativi per interagire con loro. Ad esempio, i Trork hanno una particolare predilezione per la carne scartata:
Come il giocatore sceglie di sfruttare queste informazioni dipende completamente da lui!
Il team ha scoperto che combinare molti comportamenti semplici può produrre un risultato sorprendentemente realistico. "Avevo creato uno script per un arciere Trork e stavo cercando di testare quanto bene l'arciere spara", dice Eric. "Questa è stata la prima volta in cui abbiamo avuto la possibilità per gli NPC di cambiare arma. È stato fantastico cercare di inseguire questo arciere, e poi quando eri abbastanza vicino si girava e ti attaccava con un'arma da mischia. Avere queste azioni davvero semplici combinate insieme è stato davvero gratificante."
Nella clip sopra, puoi vedere un esempio di diversi semplici comportamenti dei Trork che lavorano insieme. Il Trork sta facendo un pisolino fuori quando inizia a piovere. Questo innesca un cambiamento di stato da "addormentato" a "sveglio", a quel punto il Trork decide di cercare un posto caldo. Quindi si sposta verso il falò vicino e si siede. Diversi elementi diversi dello script di comportamento del Trork sono coinvolti nella creazione di questo momento, ma presi insieme creano un senso della personalità della creatura. Il nostro obiettivo con il sistema di comportamento è quello di fornire al giocatore momenti coinvolgenti come questo e siamo entusiasti di vedere cosa i modder possono inventare quando ci mettono le mani sopra!
Ecco alcuni altri esempi di comportamenti degli NPC che potresti incontrare mentre esplori Orbis:
I Kweebec non hanno bisogno di mangiare o bere in senso normale. Come persone-pianta, cercheranno punti luminosi e prenderanno felicemente il sole per ottenere tutti i nutrienti di cui hanno bisogno!
I goblin amano lanciare bombe a un problema. Questi possono distruggere blocchi e creare buchi, il che è un problema di per sé. Buon lavoro, goblin.
Fonte: Hytale.com (Traduzione AI)