Visualizzazione post con etichetta Tango. Mostra tutti i post
Visualizzazione post con etichetta Tango. Mostra tutti i post

mercoledì 12 gennaio 2011

Magic 0.1.3

In questa settimana non sono riuscito a far molto, anche per portare avanti il mio gdr dal quale questo RL è stato tratto, ma soprattutto per problemi inerenti alla programmazione.

Infatti ho provato a concentrarmi sulla conversione del gioco per sistemi windows, ma la cosa sembra più ostica del previsto: il problema che sto affrontando ora consiste nel sistema di input dei comandi. Su piattaforma linux, pur non essendo presenti funzioni che facciano al caso mio, ho utilizzato uno script chiamato termios che mi ha consentito di creare esattamente ciò di cui avevo bisogno.

Il problema è che termios non funziona sui terminali win32/dos quindi sono punto a capo. Ho spulciato le API del D per vedere se fornivano qualche aiuto, ma non ho ancora trovato nulla e il forum sembra morto. Allo stato attuale sto cercando di sfruttare la chat.

Alla peggio dovrò tentare di convertire le librerie del C che forniscono la funzone getch e vedere se ci riesco. Altrimenti addio versione windows :D

Tuttavia questa ricerca su termios mi ha fornito le competenze per ampliare il set di comandi del gioco nelle versioni future, introducendo anche le combinazione con il ctrl.

Vedremo.

mercoledì 12 maggio 2010

Arcan Myth RL 0.2.1

Stasera ho pubblicato la versione 0.2.1 che allinea il codice all'ultima versione di Tango e DMD e corregge il bug critico di cui parlavo nello scorso post.

In realtà ho aggiunto anche un paio di creature nuove per i primissimi livelli per renderli più vari.

Ora la piattaforma di sviluppo è completa e posso iniziare finalmente questi test.

lunedì 11 maggio 2009

PKCurses

Signore e signori vi presento PKCurses :-)

Se state pensando ad una conversione di dcurses per Tango, vi state sbagliando: la cosa è al di là dei miei obbiettivi ed avrebbe richiesto decisamente troppo tempo.

Fino ad ora gli effetti testo erano lasciati ad una Struct di nome Texteffect, da oggi questo compito sarà svolto dalla Classe PKCurses che però sa fare molto di più.

In sostanza è possibile creare e piazzare una finestra dove si vuole nella console e la stessa cosa si può fare con del testo: stando bene attenti è possibile quindi mettere dove si vuole una finestra che contiene del testo. Grazie a questo sistema mi è stato possibile creare tre finestrelle: una per il gioco vero e proprio, una per i dati del PG (Mr @) e una invece per i messaggi di gioco.

Infine PKCurses permette di reinizializzare una nuova console sopra a quella vecchia esattamente come avviene nei roguelike scritti in C o C++ (e che probabilmente per ottenere tutto questo utilizzano pdcurses o ncurses).

Tutto questo ha comunque portato il gioco alla versione 0.0.3.6 (Labyrinth 0.3.6).

martedì 14 aprile 2009

Puntatori e DCurses

Mentre Labyrinth sta arrivando alla versione 0.0.8, sto continuando a leggere il libro Learn To Tango With D. Purtroppo devo confermare le mie prime impressioni: il libro è tutt'altro che esaustivo in molti suoi punti; per esempio i puntatori sono trattati poco e molto molto male, rimandando lo studio a wikipedia (??) e analizzando soltanto le differenze tra i puntatori del D e quelli del C/C++. Tentando già di tirare qualche somma, direi che il libro è più rivolto ai programmatori del C++ che non all'utente in generale; visto che Tango viene referenziata come Developer library ci potrebbe anche stare, ma questa scelta editoriale direi che lascia molto a desiderare.

Ho fatto delle indagini su DCurses chiedendo un help nel canale #d.tango, poichè la versione fornita per Tango è piuttosto datata e non funziona con le ultime versioni. Dopo qualche blando tentativo mi è stato detto (e non da un utente qualsiasi ma da uno che conta diciamo) che Tango e il canale IRC non è pensato per "newbie" e che devo imparare prima a compilare le applicazioni e poi forse riuscirò a far funzionare dcurses.

Stessa storia di quando anni fa chiesi aiuto con Linux. L'ambiente dei programmatori e dei sistemisti (ambiente di cui faccio parte per'altro) è pieno di gente con la puzza sotto il naso.

Vabbeh, chi fa da sé...

mercoledì 1 aprile 2009

Labyrinth 0.0.2 - In giro per la cantina

Ho disegnato due livelli di prova, praticamente identici, collegati da una scala e con delle porte da aprire.

Ora la chiocciolina può andarsene in giro per questi due livelli ad esplorare quello che la circonda, può aprire e chiudere porte e sa scendere e salire le scale. Le manca la parola insomma :D

Ho anche piazzato, per prova, una creatura immobile (simbolo N) ed ho iniziato a scrivere un semplice algoritmo che consenta ad N di inseguire la chiocciolina. Non è un vero e proprio tentativo di implementare la AI, ma si tratta di una prova per capire meglio il problema.

Naturalmente siamo ancora lontani dal combattimento, dall'inventario e tutto il resto. Bisogna avere pazienza.

Nessuna novità su dcurses, mentre mi sono stampato il libro (in inglese) "Learn to Tango with D" che scaricai tempo addietro da un sito di freepress. Ho visto che il libro è a pagamento, quindi forse quando l'ho scaricato io era in fase promozionale. Gli autori sono, almeno credo, i creatori della libreria Tango: Kris Macleod Bell, Lars Ivar Igesund, Sean Kelly e Michael Parker.

Ad un primo sguardo comunque, il libro non mi è sembrato esaustivo in parecchie parti: ad esempio l'installazione del D, di Tango e dei compilatori, è descritta per il solo Windows, mentre dovrebbe comprendere almeno i sistemi linux, specie per la sezione compilatori. Per il momento quindi abbandono l'idea di usare dsss e mi limiterò a DMD che, per'altro, visto che devo compilare si e no 3 script funziona benissimo. Più avanti passerò a dsss.