Java Libro Game Creator

jLGC classes
jLGC classes

Lo so lo so, avevo detto che il blog apriva questa sezione in inglese. Li ho pure scritti un paio di post, ma la mia traduttrice personale ha perso anni di vita cercando di correggerli. Insomma mi sa che prima devo studiare ancora un po’ e ritentare. Per ora le storie sulla nuova versione del software per scrivere narrativa interattiva ve li beccate in italiano, relegati comunque a questo “sotto blog” dedicato allo sviluppo selvaggio.
E il primo post non può che essere questo: un lungo recap sulla storia del programma, seguito dalle succulente novità!

Per chi non sapesse cos’è Libro Game Creator: trattasi di programmino per scrivere libri “a bivi”, con tutto il necessario per importarli da formati testuali, editarli, esportarli in HTML o RTF (per una successiva pubblicazione in PDF ad esempio). Le sue feature più importanti sono in realtà la possibilità di rimescolare i paragrafi mantenendo validi i link interni e di visualizzare il grafo connesso dei paragrafi (con l’indicazione grafica di quelli vuoti, “finali” e fissi).

Il programma è nato nel lontano 2007 ed è stato adottato dalla community del sito Librogame’s Land dove bazzicavo da un po’ quando scrivevo il lovecraftiano Fuga dall’Altrove e il complicatissimo Obscura Genesi. Nei primi tre anni ha visto parecchie versioni e un’interfaccia grafica che cambiava ogni stagione, poi lo sviluppo si è praticamente fermato causa i miei impegni di impaginatore e il dover tornare a metter mano a un codice scritto – sigh – in Delphi.

Recentemente, per motivi che potreste immaginare, ho deciso di ampliare la mia base linguistica (informaticamente parlando), dedicandomi allo studio di Java, decidendo di convertire LGC, andando anche a soddisfare le esigenze di quegli utenti che avendo un sistema Linux o Apple non potevano usarlo (se non ricorrendo a macchine virtuali, emulatori,…).

Imparare una nuova lingua è sempre allo stesso tempo eccitante e faticoso. Si scoprono modi nuovi di “dire” cose vecchie, paradigmi che permettono di modellare le idee più semplicemente, una volta acquisita la filosofia (e la grammatica) di fondo. Come dicevo in un post di qualche giorno fa, il libro che insegna la base di tutto questo pesa sulle 1.400 pagine.

Le ultime settimane di lavoro hanno portato a una prima versione (più beta che non si può) di  jLGC, del quale sopra vedete uno scorcio schematico (ormai obsoleto vista la nuova struttura a packages delle classi della quale parlerò più avanti). jLGC è a oggi un programmino testuale che permette di:

  • importare un libro game scritto in LGC (almeno versione 2)
  • salvare un libro game nel nuovo formato GBK
  • esportare il libro game in eBook, nel rutilante formato ePub
  • esportare il libro game in HTML (su file singolo o un file per paragrafo, con link attivi)
  • eseguire il rimescolamento dei paragrafi
  • esportare il grafo del libro game (nel formato utilizzato dal programma GraphViz)

Non avendo un’interfaccia grafica non è di semplice utilizzo, ed essendo scritto in Java va pure lanciato scrivendo un comando in una finestra di terminale, insomma roba da smanettoni o quasi. Ma se volete tentare potete scaricare il file jLGC.zip dal forum di LibroGame’s Land dove trovate anche tutte le informazioni in merito.

I post che seguiranno avranno la tendenza a essere più tecnici (il primo a ‘sto punto proprio oggi, sul passaggio da paragrafi RTF a pagine XHTML per gli ePub) e potete saltarli come un dingo affamato che corra sulle sabbie roventi di un deserto lontano. Li userò per esporre parte del lavoro fatto con l’intento di condividere il processo di sviluppo, creare un diario del progetto e testare i plugin di WP per pubblicare codice. Ovviamente qualsiasi programmatore Java che sia nei dintorni e voglia dare consigli in merito è il benvenuto.

Print Friendly, PDF & Email

7 thoughts on “Java Libro Game Creator

  1. Buona idea passare a Java. Hai idea di come rilasciare il lavoro? GPL? LGPL? BSD-like?
    Hai disponibili specifiche formali dei formati di input che si possano condividere?
    Hai disponibili specifiche formali del modello di libro-game che usi internamente per alimentare il “book translator”?

      

  2. @Gabriele: interessantissimo il tuo commento, con moltissimi spunti utili.
    Il principale problema che vedo io nella generalizzazione non sta tanto nella costruzione della struttura di base, ma quanto nella domanda: chi scriverà poi l’editor per tutto questo?
    Quando la struttura del soggetto (avventura, libro game,…) è complessa e permette tante scelte (in fatto di contatori, stati) necessita di un editor potente. E ci deve essere perché il software, a mio avviso, va pensato per chi scrive narrativa e non come uno strumento più vicino a programmatori che a scrittori.
    Basta vedere quanti programmi per scrivere libri game si trovano in giro (e che non siano vecchi di una decina d’anni).
    Mi viene in mente l’esempio di Undum (http://undum.com/) che permette attraverso HTML5, JS e CSS di creare con delle API create ad hoc un’avventura testuale navigabile sul browser. Bella idea e bello il risultato, ma chi si mette poi a scriversene una intera, senza un editor dedicato?

    Sicuramente l’idea di astrarre il nuovo progetto dai concetti “vecchi” di libro game (l’esempio tipico è il paragrafo numerico, invece di un “link” generico) è corretta e leggendo il tuo commento mi sono venute parecchie idee da implementare.
    Cercherò di mediare il tutto con il bisogno di dare qualcosa che sia fruibile da un utente “normale”, per il quale posso realizzare anche un ambiente di creazione del libro il più possibile user friendly.

    Di Locusta Temporis ho letto molto e mi sembra un progetto incredibile dove ci sono “pagine che si scrivono da sole”. Sarebbe interessante sapere che editor ha utilizzato 😉

      

Vuoi rispondere?