E vabbè, dal momento che ho una costante sensazione di non aver fatto qualcosa, devo scrivere qualche aggiornamento altrimenti non mi passa. Mi ritaglierò un po' di tempo per scrivere questo post, cercando di essere quanto più riassuntivo possibile: ricordate che dietro ogni frase da me riportata in modo sintetico si nascondono ore/giorni di duro lavoro, non vorrei dare l'impressione di svalutare il nostro operato.
GENERAL
Abbiamo allestito una board interna dove assegnarci task tra i membri del team e, soprattutto, dove c'è una lista di task pianificati. In questa lista vengono inserite le idee valide che probabilmente verranno inserite nel gioco.
Abbiamo allestito un forum, per ora privato, dove stiamo pian piano inserendo i changelog, gli articoli utili, ecc.
ART SIDE
Continuano le migliorie sulla mappa desertica e quella innevata, mappe che sicuramente saranno presenti nell'alpha. Per quanto riguarda la mappa desertica, c'è stato un remake generale di alcuni materiali/texture, che ora appaiono migliori. Per il resto, la mappa desertica è pressoché pronta, ci sono solo da stabilire quali mostri saranno presenti in essa, quali boss: le entità che la popoleranno, insomma.
Per la mappa innevata sono stati realizzati nuovi asset, come portali, pilastri, altari. La particolarità è che per questa mappa sarà disponibile il primo dungeon. Un dungeon ghiacciato, lineare, al termine del quale incontrerete un boss.
Sono state realizzate le animazioni per la cavalcatura e per i personaggi che la utilizzano.
Sono stati realizzati gli effect per le skill del Warrior e del Sura, con relative animazioni.
CLIENT SIDE
Sono stati realizzati molti fix, tra cui: molte animazioni sono state sincronizzate tra i client e molte di esse ora riflettono l'effettivo valore che hanno lato server (esempio: velocità di movimento e di attacco), alcune skill ora vengono visualizzate correttamente e il loro cooldown è corretto, migliorie ad alcuni shader, ecc.
Sono state aggiunte alcune funzionalità interne per la realizzazione di video/screenshot, come la free camera mode e l'hide/show dell'UI.
L'UI è stata rifatta, ora adotta un sistema completamente nuovo.
Un nuovo branch è stato creato dove il client è stato adattato alla nuova architettura server e al nuovo codice di networking.
Pet e Mount aggiunte, con relative animazioni.
Soundtrack e alcuni suoni ambientali aggiunti in alcune mappe.
Ottimizzazioni varie al codice e ad alcuni sistemi interni. Refactoring di alcune classi.
Realizzato un sistema per prendere appunti sulle minimappe, in modo che ognuno di voi possa scoprire ed interpretare il mondo di gioco soggettivamente: potete utilizzare la funzionalità per segnarvi boss, spawn, eventi particolari, ecc.
SERVER SIDE
Lato server è stata finalmente quasi ultimata la nuova architettura (ne ho parlato in qualche post precedente). Al momento la vecchia architettura è ancora utilizzata, finché la nuova non sarà completa e testata a dovere.
E' stato fatto un grande refactoring di gran parte delle classi e delle entità che componevano il server, compreso il sistema di networking. L'architettura è ora distribuita: ciò significa che il server può essere composto da varie macchine fisiche.
La nuova architettura prevede anche delle istanze Unity lato server che gestiscono le varie zone del mondo: questo ha aperto la strada a funzionalità come navmesh, pathfinding, physic e AI più sviluppata.
E' stato realizzato il Quest System. Le quest possono essere create componendole con vari QuestTarget che ho appositamente creato. La combinazione di questi QuestTarget può dar vita ad innumerevoli quest e, perché no, può dar vita ad un sistema di creazione di quest da parte dei giocatori (qualcosa come una bacheca dove i giocatori creano la loro quest personalizzata ed altri possono accettarla, giocarla e valutarla).
Sono state realizzate le classi per la gestione degli NPC.
Riorganizzata l'architettura delle classi, aggiunte nuove classi come AIActor.
Ottimizzazioni generali al codice, ottimizzazioni alla Garbage Collection dove non necessaria, spostamento di alcuni calcoli su thread paralleli.
Riorganizzata la classe per la gestione della persistenza: ora è più comoda da utilizzare.
PROPOSALS & PLANNING
Refactoring della chat.
Creazione di un creature-book, dove ogni volta che vedrete una nuova creatura verrà aggiunta la relativa pagina con nome e foto: in questa pagina potrete appuntarvi informazioni su questa creatura, come quel che droppa, debolezze, pericoli che comporta, ecc. Qualcosa di simile agli appunti di un avventuriero. Magari rendere gli appunti commerciabili.
Creare un debugger visuale per le entità lato server.
Ricreare alcune armi di Metin2, come tributo. Pensavamo al set della Luna Piena, che crediamo sia il più caratteristico e il più famoso.
Creazione di un bot per lo stress test del server.
Test di migrazione verso MongoDB.
Credo di aver soddisfatto la curiosità dei più per almeno una settimana!
Scherzi a parte, grosso modo dovrebbe esserci tutta la roba più importante fatta, anche se non sono sceso nel dettaglio. Fatemi sapere cosa ne pensate e continuate a commentare!
Ovviamente, non voglio lasciarvi con un enorme wall of text, per cui vi lascio anche qualche screenshot:
Stay tuned!