Corposo Around the Verse sul Sistema Missioni e sulla Sussunzione, con una lunga intervista al nostro connazionale Francesco Roccucci!


   

BURNDOWN

·        Il team aveva chiuso la scorsa settimana con 76 bug da risolvere, di cui 50 critici, 14 importanti, 2 moderati e 10 che distruggevano completamente l’esperienza di gioco.

·        Questa settimana, hanno rilevato un problema nella nuova modalità quantistica ‘Viaggio a Corto Raggio’, che causa un significativo incremento dei tempi di spostamento tra le lune di Crusader.

o   La modalità ‘Viaggio a Corto Raggio’ è una novità che hanno implementato di recente per variare la velocità di crociera in modalità Quantistica verso destinazioni relativamente vicine (es: punti situati attorno allo stesso pianeta).

o   Questo approccio è nato dal fatto che, nei casi sopraccitati, il tempo necessario a raggiungere la velocità massima di 0.3 volte la velocità della luce è inferiore al tempo di innesco della frenata per uscire dal tunnel Quantistico.

o   Purtroppo, quando hanno inserito questa funzionalità non hanno tenuto conto del fatto che i tempi di spostamento, con le nuove impostazioni di velocità, sarebbero stati consistenti, da cui il problema.

o   Questa modifica ha anche implementato una variazione del sistema di gestione della Modalità Quantistica: mentre prima le navi venivano semplicemente ‘spinte fisicamente’ in una certa direzione, adesso il meccanismo è diventato più dinamico ed è in grado di calcolare esattamente la posizione della nave in base alla sua velocità, prevedendone anche quella futura tra X secondi e spostando di conseguenza il velivolo in quel punto.

o   Questa modifica era necessaria per gestire con maggiore precisione le velocità in Modalità Quantistica, nonché per creare la nuova modalità ‘Viaggio a Corto Raggio’.

o   Attualmente stanno cercando di bilanciare i numeri delle velocità/tempi di spostamento, nonché di correggere gli eventuali bug correlati al nuovo sistema.

·        Un secondo bug che hanno riscontrato questa settimana consiste nel fatto che, quando una nave collide con un personaggio, questa esplode, mentre il personaggio rimane in vita anche se i suoi punti ferita sono azzerati.

o   Questo problema nasce da un fix che è stato apposto in vista della demo del GamesCom, pensato per evitare che le Idris esplodessero quando una Gladius vi entrava all’interno. Ma si trattava di una soluzione temporanea progettata soltanto per quella situazione e non per altri ambiti, da cui il bug delle collisioni tra personaggi e navi.

·        Attualmente c’è un problema che riguarda le mappe UV e le texture di overlay, che in alcuni casi non registrano correttamente i danni subiti dalle navi (come nel caso dei motori della Prospector).

·        Nella 3.0 sarà presente un nuovo sistema di logica delle disconnessioni, capace di distinguere tra le disconnessioni volontarie, ovvero quando un giocatore fa logout dal menù, e quelle involontarie, dovute a problemi di rete o di comunicazione con il server.

o   In caso di disconnessione involontaria, i server salveranno immediatamente i metadati del giocatore, riservandogli un token per rientrare all’interno dello stesso server in cui si trovava in precedenza.

o   Quando il giocatore sarà di nuovo online, il gioco gli chiederà immediatamente se vuole tornare nell’istanza/server in cui si trovava in precedenza e potrà velocemente riportarlo in game.

·        Hanno deciso di usare un nuovo approccio nella valutazione dei bug da risolvere prima di rilasciare la build candidata per gli Evocati: piuttosto che sistemare tutti i problemi, per la prima build Evocati hanno intenzione di risolvere soltanto i 26 bug riguardanti lo spostamento generale dei giocatori nell’Universo, che sono correlati al sistema del Viaggio Quantistico, l’ATC, il decollo, l’atterraggio e così via. A questi, si aggiungono un’altra decina di bug relativi a problemi critici che potrebbero impedire i test in Evocati.

o   Una volta rilasciata la prima build, hanno intenzione di effettuare degli aggiornamenti progressivi mirati a sistemare ogni volta una certa funzionalità, risolvendone i bug associati, per poi dare il nuovo aggiornamento agli Evocati per i test del caso.

o   Di conseguenza, la prima build Evocati sarà pensata per testare principalmente lo spostamento dei giocatori nell’universo, mentre ogni build successiva si concentrerà su altri meccanismi.

·        Grazie a questo nuovo approccio, il totale dei bug da risolvere è sceso di 50, per un totale di 26 problemi rimanenti. Alcuni di questi 50 bug sono stati effettivamente risolti, mentre altri verranno sistemati nelle build Evocati successive alla prima.

 

DIETRO LE QUINTE: IL SISTEMA DELLE MISSIONI

·        Il Sistema delle Missioni di Star Citizen è stato pensato per assecondare ed accompagnare le decisioni prese dai giocatori (come le attività criminali) con un meccanismo che ne gestirà le conseguenze sia a livello di eventi in gioco, che di possibilità di gameplay.

·        Lo scopo del sistema delle Missioni consiste quindi nel generare contenuti interessanti che riempiano l’universo di gioco, mescolando le risorse a disposizione e cercando al contempo di evitare, per quanto possibile, situazioni ripetitive.

o   Inoltre, il meccanismo dietro questo sistema è stato progettato in maniera tale da essere procedurale e non prescriptato. In questo modo, sarà il sistema stesso a decidere quando, dove e come generare le missioni, a seconda delle necessità del caso, nonché definire la loro struttura, il numero di NPC partecipanti, la presenza di eventuali rinforzi e così via.

·        Per fare tutto questo, il Sistema delle Missioni lavora a stretto contatto con quello della Sussunzione, che permette di rielaborare, riorganizzare e strutturare i contenuti di gioco collegati al comportamento degli NPC e le azioni che potrebbero compiere, così da creare un insieme organico in cui l’IA si comporti in maniera realistica, sopperendo al contempo a tutte le implicazioni che un meccanismo procedurale come quello delle missioni potrebbe comportare.

o   Un esempio pratico di applicazione della Sussunzione è lo spawn automatico degli equipaggi delle navi create dal Sistema di Missioni per prendere parte ad un ipotetico scontro tra UEE e pirati, oltre che la gestione della loro logica di azione.

o   Sebbene la Sussunzione sia uno strumento estremamente potente, è anche complicato. La corretta gestione del sistema dei grafici di flusso non è semplice, per cui stanno attualmente riaddestrando gli sviluppatori per insegnare loro a sfruttare al massimo le potenzialità di questo sistema.

o   Il vantaggio di questa gestione è che, una volta creato un template per una missione, il quale può consistere, ad esempio, nel recuperare una scatola da un pianeta e portarla altrove, questo schema può essere riutilizzato in maniera modulare per moltissime altre missioni, variandone al contempo i dettagli per ridurne la ripetitività.

·        Lo sviluppo del sistema della Sussunzione e di quello delle Missioni non è stato semplice ed ha richiesto personale talentuoso e preparato, come Francesco Roccucci, che gestisce il dipartimento di sviluppo dell’IA ed è stato il fautore di gran parte di queste funzionalità.

·        Uno dei componenti che sta ritardando il rilascio e lo sviluppo della Sussunzione è il Sistema dei Punti Finali, che viene ampiamente utilizzato dalla logica dell’IA per una varietà di mansioni, come ad esempio la traiettoria di spostamento dei personaggi, la quale deve tenere conto delle dimensioni degli spazi in cui si muovono e delle eventuali collisioni presenti.

o   Un altro sistema a cui la Sussunzione è strettamente collegato è quello degli Oggetti, che è stato modificato e revisionato proprio in vista della 3.0. Ma questo è soltanto uno dei tanti componenti che interagiscono con la Sussunzione e che dovranno completare prima di poter rilasciare la nuova logica dell’IA.

·        Un importante strumento della Sussunzione è il Visualizzatore della Sussunzione, che permette di verificare in tempo reale la struttura decisionale presa da una IA per verificarne il comportamento ed evidenziare eventuali elementi fuori posto o errati. In aggiunta, permette di effettuare delle modifiche al volo per testare velocemente determinate situazioni.

o   Seguendo lo stesso principio, hanno sviluppato uno strumento di Visualizzazione delle Conversazioni per verificare il flusso delle discussioni attuate dagli NPC.

o   Ciascuno di questi sottosistemi è stato studiato e creato per semplificare e velocizzare il lavoro dei Game Designer, che così possono iterare più rapidamente i vari componenti e, quindi, accorciare i tempi di sviluppo, nonché preparare un quantitativo di contenuti molto più grande e vario.

·        Il Sistema della Sussunzione non collega soltanto i vari elementi di gioco, ma anche sistemi differenti. Ad esempio, permette di stabilire la connessione tra il meccanismo di generazione delle missioni e quello della reputazione, creando così delle situazioni più realistiche, complesse e varie.

o   Tutte queste interconnessioni, però, rendono i lavori ancora più complicati e delicati, che è poi il motivo per cui investono così tanto tempo a reiterare e modificare il gioco.

·        I giocatori potranno accettare le missioni in modi diversi: parlando direttamente con gli NPC, oppure mediante il mobiGlas. Tuttavia, alcune missioni saranno disponibili soltanto in luoghi specifici, in cui bisognerà recarsi di persona, oppure potrebbe capire che alcuni NPC possano fornire non una, ma più missioni diverse ad uno stesso giocatore.

o   Il Broker delle Missioni è il sottosistema deputato alla generazione delle missioni in funzione della posizione del giocatore, le condizioni economiche del sistema in cui si trova, la sua reputazione e così via.

o   Un esempio pratico di funzionamento del Broker delle Missioni riguarda le richieste di soccorso, che verranno segnalate al giocatore soltanto quando egli si troverà in prossimità di un radiofaro di emergenza.

o   Essenzialmente, esistono due tipologie di missioni: quelle più correlate alla storia, che hanno uno sviluppo abbastanza costante e preciso, e quelle invece generiche, pensate per variare il gioco, fornire nuove opportunità per fare soldi, ecc.

·        Un altro vantaggio della Sussunzione è che, sebbene da un lato permette di generare dei contenuti procedurali, da un altro permette anche di creare delle situazioni di gioco estremamente precise e dettagliate. È il caso degli NPC primari e secondari, che hanno tutti una storia ed una caratterizzazione specifica, così da dare più spessore alle ambientazioni ed alle missioni da loro assegnate.

·        Nel complesso, tutti questi sistemi sono stati realizzati per rendere l’esperienza di gioco non soltanto varia, mutevole e realistica, ma anche per permettere ai giocatori di scegliere come far proseguire la propria storia nell’universo di gioco, stabilire la propria linea narrativa in base ai propri successi, i fallimenti, le decisioni prese ai bivi ed anche in ambiti inattesi, quando magari un NPC salvato da un attacco pirata al di fuori di una missione, vi richiederà di effettuare qualcosa per lui, aprendo così un nuovo, inaspettato filone di missioni.

Redazione a cura di Darnos.
Articolo originale disponibile presso le Roberts Space Industries.