Con la pubblicazione dell'Episodio 1 e dell'Aggiornamento 5, oltre ad avervi portato un sacco di nuovi contenuti, abbiamo corretto una grande mole di bug e problemi. Combattiamo coi problemi che affliggevano l'Alveare rianimatore ormai da bel un po' di tempo. Con l'Aggiornamento 5 abbiamo migliorato il funzionamento di quest'abilità, ma ci sono degli aspetti che stiamo ancora analizzando.

Per questo, vorremmo spiegarvi a grandi linee come funziona il lavoro di analisi e correzione di bug. A volte gli errori sono banali e si possono correggere in un attimo. A volte, invece, ci troviamo di fronte a problemi ben più complessi di quanto sembri inizialmente. Questo è il caso dell'Alveare rianimatore.

Partiamo dal caso più semplice: a volte l'Alveare rianimatore non funziona. L'abilità viene lanciata, voi morite... e non succede niente. Aveste dovuto essere rianimati, ma non è stato così.

Il primo passo verso la risoluzione è ricreare il problema. Che cosa è successo? Ci arrivavano molte segnalazioni dagli utenti, ma nessuna corredata da esempi concreti. Sapevamo che il problema si verificava, ci eravamo incappati anche noi. Ma le circostanze erano poco chiare. Abbiamo provato di tutto, per esempio cercando di riprodurre tutte le situazioni in cui potrebbe essere chiamato in causa l'Alveare rianimatore, tenendo d'occhio al contempo il comportamento del codice.

Dalla community hanno finalmente cominciato ad arrivare dei video del problema, cosa che ci ha aiutato molto. Abbiamo capito come i giocatori tentavano di usare l'Alveare. Così siamo riusciti a isolare alcune delle situazioni in cui si verificava il problema. A volte, per esempio, i giocatori premevano all'impazzata i comandi delle abilità quando si accorgevano di stare per morire, magari per riuscire a chiamare in tempo il Lanciatore chimico tonico. Abbiamo notato che questo impediva l'invio automatico all'Alveare. Di fatto è come se il gioco stesso provasse a premere il comando "Schiera abilità", mentre è possibile usarne solo una alla volta. Perciò usando in contemporanea l'altra abilità equipaggiata impediva all'Alveare di essere lanciato. Abbiamo passato in rassegna i vari stati in cui potrebbe trovarsi il giocatore, assicurandoci che l'Alveare venga lanciato automaticamente e svolga il suo compito indipendentemente da tutto. I giocatori hanno tratto molto giovamento da questo correttivo.

Il funzionamento dell'Alveare rianimatore poggia sul sistema generale di rianimazione. Analizzando i problemi segnalatici, ne abbiamo rilevati diversi in alcuni altri sistemi che interagiscono con il funzionamento di questa abilità. L'intersezione con altri sistemi ha facilitato l'implementazione dell'abilità, ma ha reso più complicato il lavoro di risoluzione dei problemi. Ogni volta che modificavamo uno dei sistemi su cui si basa, l'Alveare rianimatore diventava instabile. Inoltre, comunicare le modifiche è sempre complicato all'interno di un team in cui lavorano centinaia di persone sparse per il globo e responsabili di aspetti diversissimi del gioco.

Col tempo, però, abbiamo trovato una soluzione più strutturale. La variante abilità in questione non dipende più dal client, ma dalle informazioni del lato server. I problemi relativi ai sistemi di cui parlavamo poco sopra sono stati risolti grazie a una serie di correttivi aggiunti via via al gioco. Ciononostante, abbiamo notato che qualche malfunzionamento, pur raro, continua a verificarsi.

Così siamo ripartiti dall'inizio, abbiamo ricreato i nuovi problemi riscontrati per analizzare i flussi di codice e abbiamo provato l'Alveare in situazioni di particolare complessità. Per esempio, abbiamo controllato cosa accadeva quando quattro giocatori usavano l'abilità contemporaneamente, cercando di rianimarsi a vicenda mentre erano sotto il fuoco di numerosi PNG. Abbiamo trovato un paio di ulteriori errori e li abbiamo corretti. Grazie all'analisi del codice e alle diverse prove siamo riusciti a trovare una soluzione quasi definitiva. Resta infatti solo un problema relativo all'Alveare rianimatore.

Pur svolgendo correttamente le proprie funzioni, sembra che a volte l'Alveare non avvisi correttamente il giocatore se viene distrutto dai PNG durante la rianimazione. Sembra sia ancora lì, anche se è andato. La barra della salute dell'Alveare risulta invisibile quando il giocatore è a terra e l'interfaccia utente non ne comunica la distruzione. Quindi il problema è visivo. Per funzionare, l'Alveare deve avere una visuale sui personaggi che deve rianimare. Gli effetti di stato, tipo Sotto shock, la ostacolano. I problemi, insomma, non sono sempre nascosti tra i meccanismi di gioco, ma possono riguardare anche la superficie.

Far sì che la barra salute dell'Alveare risulti visibile ai giocatori a terra, così come aggiungere dei nuovi indicatori all'interfaccia utente è piuttosto complicato. Questi elementi infatti dovrebbero integrarsi con tutti i sistemi su cui poggia l'Alveare stesso. Tenere presente questa complessa rete di sistemi è un compito arduo.

Per ora, abbiamo modificato la descrizione dell'abilità, facendo sì che non sia necessario premere il comando di rianimazione mentre si è nel suo raggio d'azione. Nell'Aggiornamento 5, abbiamo anche ottimizzato tutte le routine di funzionamento dell'Alveare. Stiamo lavorando anche ad altre modifiche dell'interfaccia utente da introdurre con un aggiornamento futuro, tra cui una barra salute sempre visibile, anche quando si è a terra.

Con l'Aggiornamento 5 continueremo anche a monitorare attivamente il funzionamento dell'Alveare. Tenere presente il fatto che può essere distrutto potrebbe essere utile a elaborare delle tattiche di gioco più efficaci. Stiamo quindi facendo il possibile affinché possiate ricevere tutte le informazioni attualmente carenti.

Speriamo che la vicenda dell'Alveare rianimatore vi aiuti a comprendere quanto sia complesso scoprire le cause di un bug e quale enorme mole di lavoro sia richiesta agli sviluppatori per correggerlo. E poi mostra, ancora una volta, quanto le vostre segnalazioni e i video che ci inviate ci aiutino a migliorare costantemente il gioco. Vi siamo davvero grati.

/La squadra di The Division 2