Come la demo Al di là del buio, una delle nostre prime decisioni era di avere il più possibile del gameplay e della storia raccontati dialetticamente all'interno del mondo stesso.Questo può essere un processo difficile quando vuoi bilanciare entrambi i progressi di comunicazione al giocatore attraverso l'interfaccia utente mentre li fai sentire come se fossero realmente all'interno del mondo che hai costruito.Per raggiungere questi obiettivi per la nostra esperienza, abbiamo rotto il modo in cui comunichiamo le informazioni ai giocatori in quattro tecniche:
- Segnali visivi - Oggetti, immagini o disposizione di risorse che rinforzano passivamente la storia o danno suggerimenti al giocatore quando ha senso per il Mondo.
- Lore - Quando un giocatore clicca/tocca su oggetti specifici in casa, vengono visualizzate informazioni importanti sulla storia sull'intera schermata .Questa narrazione è visibile solo al giocatore che ha cliccato/toccato l'oggetto.Il tono è sempre informativo in tono e fraseggio.
- Bolle di pensiero - Quando un giocatore clicca/tocca su oggetti specifici in casa, un dialogo di testo "reazione" viene visualizzato vicino all'oggetto .Questa narrazione è visibile solo al giocatore che ha cliccato/toccato l'oggetto.Il tono è sempre prima persona e osservativo.
- Annunci - Quando un giocatore clicca/tocca su un oggetto corrotto nella casa, viene visualizzato il dialogo in terza persona su lo schermo di ogni Giocatorealla volta .Questa narrazione talvolta transita tutti i giocatori allo stato corrotto della stanza in cui si trovano.
In questa sezione, mostreremo come abbiamo usato queste tecniche e caratteristiche specifiche per immergere i giocatori nella nostra narrazione mentre continuiamo a incoraggiare l'esplorazione, a comunicare i progressi e a mantenere il gameplay sia intimo per il singolo giocatore che equo in un'esperienza multiplayer.



Segnali visivi
Un segnale visivo è uno strumento importante per rafforzare la narrazione e dire ai giocatori ciò che devono sapere sul loro obiettivo senza usare parole .Usando un'organizzazione di risorse, come bacheche, statue e carta da parati, siamo stati in grado di fornire passivamente una profondità di informazioni sui principali personaggi di Duvall Drive, nonché indicazioni su come completare i puzzle senza dover includere elementi di interfaccia invasivi.Abbiamo iniziato questo processo prima di capire cosa volevamo comunicare al Giocatore, poi come sarebbe stato sensato comunicarlo all'interno del mondo della nostra esperienza.Ad esempio, volevamo che i giocatori capissero quanto fosse ossessionato il nonno nella sua missione di sfidare la morte, quindi abbiamo lasciato la sua stanza in disordine con molte sue ricerche e diverse pareti con i suoi pensieri scarabocchiati.


La nostra prima regola era che se volevamo usare un segnale visivo per insegnare ai giocatori qualcosa, doveva avere un motivo per esistere anche se i giocatori non sono presenti.Se mettessimo un cartello gigante con istruzioni chiare su cosa fare per un puzzle, questo sembrerebbe fuori posto all'interno della casa.Tuttavia, se abbiamo stabilito un nonno che viene consumato con il disegno di tutto, incluse le pareti della sua camera da letto, è molto più credibile avere una bacheca con il suo piano scarabocchiato per il giocatore da Seguire.

La nostra seconda regola era che non abbiamo sempre bisogno di dire ai giocatori cosa fare o come risolvere i puzzle perché sono illuminanti per il loro Ambiente.Ad esempio, a volte una linea di alimentazione caduta in una piscina di acqua è sufficiente come segno visivo per comunicare che i giocatori sono in pericolo di essere elettrificati se continuano a muoversi in quella direzione.

Lore
Oltre a utilizzare segnali visivi per guidare passivamente i giocatori, abbiamo anche scelto di visualizzare informazioni importanti sulla storia della famiglia sull'intero schermo come precursore per avviare il puzzle della stanza ogni volta che un giocatore ha cliccato o toccato oggetti specifici in casa.Per guidare i giocatori agli oggetti di cui hanno bisogno per selezionare in modo che la lore venga visualizzata, abbiamo usato l'effetto visivo in evidenza nuovo per mettere in risalto oggetti specifici dal loro ambiente.Questo effetto ti consente di delineare e/o sovrascrivere oggetti con un colore specifico che si adatta alla forma dell'oggetto stesso e scegliere se altri oggetti possono nascondere l'evidenziazione se sono più vicini alla Telecamera.




All'inizio abbiamo utilizzato Highlight per ogni oggetto con cui un giocatore potrebbe interagire, ma il rumore visivo era schiacciante e i giocatori non avrebbero potuto capire chiaramente con cosa interagire per leggere la storia.Abbiamo deciso di utilizzarlo solo per evidenziare gli elementi che sono stati corrotti o pericolosi, e questo feedback visivo ha permesso ai giocatori di guidare facilmente la storia in avanti.

Dopo che il giocatore ha cliccato sull'oggetto con la lore, avevamo bisogno di un modo per visualizzare le informazioni in cima alla schermata.Abbiamo deciso di creare un overlay utilizzando un ScreenGui come nostro contenitore di interfaccia utente sullo schermo con un figlio Frame per controllare la ridimensionamento e la ridimensionamento dei suoi figli TextLabels e ImageLabels .Impostiamo le posizioni e la scala delle proprietà TextLabels e ImageLabels in modo che si adattino visivamente insieme e si adattino per i diversi giocatori di dispositivi che accedono all'esperienza.

TextLabels e ImageLabels influenzano gli elementi visivi del rispettivo testo e delle immagini, incluso il loro colore, trasparenza, dimensione e disposizione.Per TextLabels specificamente, puoi regolare le loro proprietà TextLabel.TextScaled e TextLabel.RichText per controllare il layout e lo stile visivo del testo. TextLabel.TextScaled ti consente di ridimensionare il testo per riempire tutto lo Spaziodell'elemento UI padre, e TextLabel.RichText ti consente di utilizzare semplici tag di marcatura per formattare sezioni di testo in grassetto, in grassetto, in colore o anche con caratteri diversi.

Sapevamo che i giocatori avrebbero avuto accesso a questa esperienza da una varietà di dispositivi, tra cui PC, console e dispositivi mobili, e avrebbero dovuto essere in grado di fare clic o toccare lo schermo per interagire con l'esperienza.Non volevamo un mucchio di bottoni sullo schermo per distrarci dalla narrazione, quindi abbiamo fatto un pulsante invisibile delle dimensioni di tutta la schermata in modo che i giocatori potessero fare clic o toccare ovunque sull'overlay della storia per chiudere il contenuto e tornare al Partita.

Bolle di pensiero
Avevamo bisogno di un modo per il personaggio del Giocatoredi comunicare le idee al Giocatore, come fornire un ulteriore gusto narrativo o rafforzare ciò che doveva fare.La nostra soluzione era quella di visualizzare le bolle di pensiero, o reazioni di testo dal personaggio del Giocatore , vicino agli oggetti non lore ogni volta che il giocatore li selezionava.Questa narrazione viene visualizzata solo al giocatore che ha cliccato o toccato l'oggetto e il tono è sempre prima persona e osservativo.

Per creare bolle di pensiero, abbiamo genitorato un BillboardGui con un figlio TextLabel a oggetti non-lore.Ciò ci ha permesso di visualizzare il dialogo nello spazio 3D vicino all'oggetto senza che il testo occupi l'interezza dello schermo.Simile al nostro processo di creazione della lore, abbiamo utilizzato la proprietà TextLabel.RichText per stilare il testo e aggiungere effetti visivi come un altro essere al di là del mondo che interrompe i pensieri del Giocatore.Il seguente è un esempio di HTML RichText utilizzato per creare l'immagine qui sotto.
"What is…this…<br/><stroke color="#dcc7ff" joins="miter" thickness="2" transparency="0.5"><font size="60"><font color="rgb(10,8,11)"><i>....hunger….void….pull…</i></font></font></stroke>

Usando TextLabels invece di immagini, abbiamo mantenuto il testo leggibile da Roblox e siamo stati in grado di localizzare automaticamente questo contenuto e renderlo accessibile a molti più giocatori senza dover fare nulla! Per ulteriori informazioni su questo processo, vedi traduzioni automatiche .
Annunci
Mentre volevamo che il personaggio del Giocatoreavesse reazioni al Mondo, volevamo anche che il mondo stesso reagisse alla loro presenza.Per raggiungere questo obiettivo, abbiamo incluso annunci, o dialogo in terza persona, che visualizza su ogni schermo del Giocatorecontemporaneamente .Simile alla lore, abbiamo creato annunci utilizzando un ScreenGui come nostro contenitore di interfaccia utente sullo schermo con un figlio TextLabel .Abbiamo anche utilizzato la proprietà TextLabel.RichText per cambiare il colore, il carattere e le dimensioni del dialogo per aiutare a trasmettere diverse "entità" che parlano ai giocatori nella casa.



Usando la proprietà TextLabel.RichText e fornendo alcuni comandi HTML al suo interno per guidare i cambiamenti, ci è stato anche permesso di fare cambiamenti a metà frase! Ad esempio, il seguente markup di testo ricco ci ha permesso di interrompere la reazione del personaggio del giocatore dai pensieri dell'entità corrotta:
What is…this…<br/><stroke color="#dcc7ff" joins="miter" thickness="2" transparency="0.5"><font size="60"><font color="rgb(10,8,11)"><i>....hunger….void….pull…</i></font></font></stroke>

Abbiamo avuto diversi di questi tipi di annunci, attivati da volumi di parte invisibili ai quali i giocatori sono entrati o completando determinati obiettivi.Per evitare dozzine di singoli ScreenGuis , abbiamo usato uno script separato nella demo che ci ha permesso di fornire il testo che lo script avrebbe poi aggiunto a un singolo oggetto che abbiamo chiamato StoryNote nel nostro PlayerGui.Questo oggetto era un singolo ScreenGui con un figlio TextLabel .Usando lo scripting, potremmo iniettare qualsiasi frase che vogliamo direttamente nel singolo TextLabel, il che ha reso molto più facile apportare modifiche come abbiamo capito come e cosa volevamo comunicare al Giocatore!


