Questa settimana lo sviluppo è ripreso a ritmi normali apportando al gioco altre piccole feature e novità.
Per prima cosa il death system è stato completato, quindi quando i punti vita scenderanno al di sotto della metà dei totali inizieranno i guai: avere un buon tiro salvezza in costituzione sarà cosa buona per chi vuole sperare di cavarsela in situazioni disperate. Il death system funziona anche per le creature, quindi sarà più facile farle fuori, ma non per i non morti: la mummia diventa quindi un avversario piuttosto temibile e bisognerà stare molto attenti dal terzo livello in poi.
Il sistema di combattimento ora lascia la scelta al giocatore se puntare sulla parata o sulla schivata per quanto riguarda la difesa: parare comporta più svantaggi che vantaggi, ma consente di difendersi anche se uno non ha l'abilità di schivare e questo non è poco considerando che i l'abilità evade ha costo doppio e consuma quindi un sacco di punti. Una strategia che punta sulla parata con l'arma e sull'alzare il tiro salvezza in costituzione potrebbe rivelarsi tutt'altro che stupida. Parare consente quindi di utilizzare l'abilità FIGHT al posto di EVADE, ma se l'avversario ha un arma di taglia superiore alla nostra si avranno dei malus piuttosto pesanti alla parata stessa. La cosa vale, come sempre, anche per le creature. Il tasto z consente di switchare tra modalità parata e modalità schivata (block/evade).
Da oggi tutti quanti potranno fare una sola difesa per round. Questo va a discapito del personaggio che, se si ritroverà circondato, rimarrà senza difese di fronte ad altri attacchi. Tuttavia ho messo una soglia minima (20) per poter colpire un avversario indifeso ma consapevole: al di sotto di questa soglia si manca il bersaglio. Questa modifica è già strutturata per implementare più difese per round e più attacchi per round, che sono un'altra feature prevista per la 0.2 e che spero di poter implementare la prossima settimana.
Infine, come ultima chicca, da questa versione è possibile scegliere il nome del proprio personaggio e avere quindi salvataggi diversi :-)
giovedì 25 marzo 2010
giovedì 18 marzo 2010
Cave 0.2.4
Mi sono preso una settimana di relax dal progetto sistemando solo alcune cosette e alcuni bugs.
Prima di tutto ho dato colore al dato dei punti vita: verde al massimo, giallo ferito, rosso in pericolo e infine evidenziato in rosso quando c'è il rischio concreto di morire. Questo sistema sostituirà i warning delle ferite facendomi guadagnare spazio sull'interfaccia e introduce infine il dead-system di Arcan Myth, dove c'è rischio di morte al di sotto della metà dei punti vita con ferite non stabilizzate. Questo renderà più semplice la morte sia di Mr @ che delle creature, ma introdurrà il sostanziale vantaggio dei non-morti, che non crepano finché non raggiungono lo zero.
Ho risolto invece il bug che assegnava alle creature di un stesso livello, lo stesso oggetto: in realtà questo si verificava al caricamento di un salvataggio, quindi di prima mano non accadeva e questo ha reso difficile l'individuazione del problema.
Un problema invece ancora da risolvere è la velocità di caricamento di un vecchio salvataggio: attualmente risulta molto lenta, non tanto per la dimensione del file, ma per l'estrazione delle creature dei vari livelli. Giocando normalmente se arrivo al livello 6 o 7 del dungeon senza aver ucciso gran parte delle creature, salvando e ricaricando avrò un attesa di 30 (!!!) secondi, cosa inpensabile per un gioco del genere.
La soluzione però non è semplice: o ricreo da zero le funzioni di estrazione oppure cerco una via per ottimizzarle. Vedremo.
Prima di tutto ho dato colore al dato dei punti vita: verde al massimo, giallo ferito, rosso in pericolo e infine evidenziato in rosso quando c'è il rischio concreto di morire. Questo sistema sostituirà i warning delle ferite facendomi guadagnare spazio sull'interfaccia e introduce infine il dead-system di Arcan Myth, dove c'è rischio di morte al di sotto della metà dei punti vita con ferite non stabilizzate. Questo renderà più semplice la morte sia di Mr @ che delle creature, ma introdurrà il sostanziale vantaggio dei non-morti, che non crepano finché non raggiungono lo zero.
Ho risolto invece il bug che assegnava alle creature di un stesso livello, lo stesso oggetto: in realtà questo si verificava al caricamento di un salvataggio, quindi di prima mano non accadeva e questo ha reso difficile l'individuazione del problema.
Un problema invece ancora da risolvere è la velocità di caricamento di un vecchio salvataggio: attualmente risulta molto lenta, non tanto per la dimensione del file, ma per l'estrazione delle creature dei vari livelli. Giocando normalmente se arrivo al livello 6 o 7 del dungeon senza aver ucciso gran parte delle creature, salvando e ricaricando avrò un attesa di 30 (!!!) secondi, cosa inpensabile per un gioco del genere.
La soluzione però non è semplice: o ricreo da zero le funzioni di estrazione oppure cerco una via per ottimizzarle. Vedremo.
giovedì 11 marzo 2010
Cave 0.2.2 - Riduzione dell'interfaccia
Con Cave 0.2.2 è stato centrato un altro degli obbiettivi prefissati, ossia quello di ridurre l'interfaccia per essere visualizzata nello spazio disponibile in una console di default.
La cosa potrebbe sembrare abbastanza semplice, ma una console linux ha, di norma, 80 colonne per 24 righe che rispetto all'interfaccia di prima è veramente poco. Tra l'altro delle 24 righe, solo 23 sono utilizzabili in quanto quando la numero 24 viene occupata, la console scala lo schermo verso l'alto di una riga, automaticamente tagliando quindi la riga superiore dell'interfaccia.
Naturalmente se non avessi prima implementato lo scroll della mappa questo obbiettivo non sarebbe stato realizzabile, ma sono piuttosto contento di aver risolto il tutto in una settimana.
Comunque l'ottimizzazione dell'interfaccia di gioco rimane un aspetto sempre sotto controllo e che porto avanti anche durante lo sviluppo di altre feature. Infatti questa disposizione non mi consente di realizzare alcune altre idee che avevo in mente, ma alle quali non voglio rinunciare e quindi continuerò a riflettere su come guadagnare nuovi spazi senza che la giocabilità ne risenta.
La cosa potrebbe sembrare abbastanza semplice, ma una console linux ha, di norma, 80 colonne per 24 righe che rispetto all'interfaccia di prima è veramente poco. Tra l'altro delle 24 righe, solo 23 sono utilizzabili in quanto quando la numero 24 viene occupata, la console scala lo schermo verso l'alto di una riga, automaticamente tagliando quindi la riga superiore dell'interfaccia.
Naturalmente se non avessi prima implementato lo scroll della mappa questo obbiettivo non sarebbe stato realizzabile, ma sono piuttosto contento di aver risolto il tutto in una settimana.
Comunque l'ottimizzazione dell'interfaccia di gioco rimane un aspetto sempre sotto controllo e che porto avanti anche durante lo sviluppo di altre feature. Infatti questa disposizione non mi consente di realizzare alcune altre idee che avevo in mente, ma alle quali non voglio rinunciare e quindi continuerò a riflettere su come guadagnare nuovi spazi senza che la giocabilità ne risenta.
giovedì 4 marzo 2010
Cave 0.1.7 - Primo Dungeon Random
I primi esperimenti sui dungeon creati in modo random stanno andando bene.
Rimangono i problemi citati nel post della settimana scorsa (quelli sulle porte per intenderci), ma ho aggiunto alcune chicche.
Innanzitutto ora il dungeon è completo di trappole, porte segrete e porte chiuse a chiave (queste due ultime sono il 5/10% delle porte totali) e il dungeon è ora più grande di circa 1/3 rispetto a quelli di prima.
Ho inoltre aggiunto lo scroll dello schermo, centrando fin da ora una delle feature che mi sono proposto. Questo obbiettivo è in realtà basilare per raggiungerne altri come la riduzione dell'interfaccia ad esempio.
Nel forum di Rogue Temple mi hanno fatto notare che non si capisce fin da subito che la finestra di console deve essere allargata e così ho messo un avviso sulla schermata d'entrata, speriamo che serva.
Ho notato un bug che devo ancora analizzare con attenzione: in alcuni livelli tutte le creature portano tutte lo stesso equipaggiamento. Può darsi che sia saltato fuori solo ora a causa delle modifiche ai sistemi di salvataggio (per gestire i dungeon di dimensioni differenti).
Per il momento è tutto.
Rimangono i problemi citati nel post della settimana scorsa (quelli sulle porte per intenderci), ma ho aggiunto alcune chicche.
Innanzitutto ora il dungeon è completo di trappole, porte segrete e porte chiuse a chiave (queste due ultime sono il 5/10% delle porte totali) e il dungeon è ora più grande di circa 1/3 rispetto a quelli di prima.
Ho inoltre aggiunto lo scroll dello schermo, centrando fin da ora una delle feature che mi sono proposto. Questo obbiettivo è in realtà basilare per raggiungerne altri come la riduzione dell'interfaccia ad esempio.
Nel forum di Rogue Temple mi hanno fatto notare che non si capisce fin da subito che la finestra di console deve essere allargata e così ho messo un avviso sulla schermata d'entrata, speriamo che serva.
Ho notato un bug che devo ancora analizzare con attenzione: in alcuni livelli tutte le creature portano tutte lo stesso equipaggiamento. Può darsi che sia saltato fuori solo ora a causa delle modifiche ai sistemi di salvataggio (per gestire i dungeon di dimensioni differenti).
Per il momento è tutto.
mercoledì 3 marzo 2010
Arcan Myth RL 0.2 - Cave
Così come ho fatto per la versione 0.1, anche per questa ho deciso di creare una lista di obbiettivi da raggiungere prima della pubblicazione.
La 0.1 in realtà ha disatteso alcune specifiche che avevo preventivato, ma in compenso ne ha raggiunte altre allora insperate, quindi mi sento di poter dire che questa lista non è così rigida come vorrei, ma potrebbe variare man mano che si avanza nello sviluppo.
Le caratteristiche probabili della 0.2 saranno:
La 0.1 in realtà ha disatteso alcune specifiche che avevo preventivato, ma in compenso ne ha raggiunte altre allora insperate, quindi mi sento di poter dire che questa lista non è così rigida come vorrei, ma potrebbe variare man mano che si avanza nello sviluppo.
Le caratteristiche probabili della 0.2 saranno:
- Creazione casuale dei dungeon alla prima visita del personaggio
- Scroll della mappa
- Nome del personaggio assegnabile
- Riduzione delle dimensioni dell'interfaccia
- Implementazione di attacco e difesa multipli
- Implementazione del tipo di difesa da adottare (blocco / schivata)
- Migliorare l'AI delle creature
giovedì 25 febbraio 2010
Cave 0.1.1
Una prima versione del generatore casuale di dungeon è pronta, però mancano alcuni piccoli ma fondamentali elementi per integrarla nel gioco.
Innanzitutto manca un controllo che stabilisca se il dungeon è chiuso oppure no, ma penso che risolverò questo dilemma semplicemente "incorniciandolo" e chiudendo quindi le scappatoie che manderebbero in crush il gioco. Manca poi una funzione che piazzi ad arte le scale per scendere e salire: sarebbe bene che non fossero troppo vicine ma nemmeno troppo distanti, anche se su questo aspetto credo di dover riflettere ancora un po'.
Il grande problema della generazione del dungeon è il piazzamento delle porte: nei primi script le porte venivano disposte lungo i muri di una stanza quando questi incontravano dei corridoi, ma ottenevo sempre stanze con una sfilza di porte che, se aperte, avrebbero dato su un muro. Mi sono quindi documentato su rogue basin e su ascii dreams ed ho trovato parecchi buoni spunti per migliorare la funzione. Il risultato attuale è soddisfacente anche se ampiamente migliorabile: qualche porta sperduta tra gli spigoli si trova ancora, ma questo è inevitabile con la creazione al volo delle porte; questo aspetto può migliorare soltanto aggiungendo dei controlli al creatore di corridoi, ma per il momento non ho intenzione di migliorare questo metodo.
Preferisco infatti concentrarmi su alcuni altri dettagli come appunto le scale oppure le trappole.
Innanzitutto manca un controllo che stabilisca se il dungeon è chiuso oppure no, ma penso che risolverò questo dilemma semplicemente "incorniciandolo" e chiudendo quindi le scappatoie che manderebbero in crush il gioco. Manca poi una funzione che piazzi ad arte le scale per scendere e salire: sarebbe bene che non fossero troppo vicine ma nemmeno troppo distanti, anche se su questo aspetto credo di dover riflettere ancora un po'.
Il grande problema della generazione del dungeon è il piazzamento delle porte: nei primi script le porte venivano disposte lungo i muri di una stanza quando questi incontravano dei corridoi, ma ottenevo sempre stanze con una sfilza di porte che, se aperte, avrebbero dato su un muro. Mi sono quindi documentato su rogue basin e su ascii dreams ed ho trovato parecchi buoni spunti per migliorare la funzione. Il risultato attuale è soddisfacente anche se ampiamente migliorabile: qualche porta sperduta tra gli spigoli si trova ancora, ma questo è inevitabile con la creazione al volo delle porte; questo aspetto può migliorare soltanto aggiungendo dei controlli al creatore di corridoi, ma per il momento non ho intenzione di migliorare questo metodo.
Preferisco infatti concentrarmi su alcuni altri dettagli come appunto le scale oppure le trappole.
mercoledì 24 febbraio 2010
Arcan Myth RL 0.1
Ecco qui disponibile l'archivio compresso con il binario per Linux Debian Ubuntu.
Il gioco funziona in teoria su tutte le piattaforme linux (testato su anche su Fedora) ma potrebbe avere alcuni inconvenienti grafici a seconda delle impostazioni di console.
Per segnalazione di bug utilizzate pure i commenti di questo post.
Il gioco funziona in teoria su tutte le piattaforme linux (testato su anche su Fedora) ma potrebbe avere alcuni inconvenienti grafici a seconda delle impostazioni di console.
Per segnalazione di bug utilizzate pure i commenti di questo post.
Iscriviti a:
Commenti (Atom)