Newsgroup: it.comp.giochi.avventure.testuali
Titolo: Idra CSS

Buongiorno a tutti,
dopo un po' di anni ho ripreso in mano Idra per parlarne ad un corso di 
aggiornamento per insegnati della Scuola Secondaria II. Mi hanno posto la 
domanda se era possibile impementare il gioco con i CSS. Io ho risposto di 
non e che un gruppo ci stava lavorando un po' di tempo fa ma che non sapevo 
a che punto fossero nella programmazione. Ora dunque giro la domanda a voi. 
Il lavoro con i CSS è stato completato? Esiste una versione aggiornata del 
software Idra. Grazie a tutti e buona giornata.
Luca 


Appena ricomincio a lavorarci vorrei creare un piccolo gruppo di persone 
interessate per fare un minimo di test, finire di implementare il modulo 
oggetti (già iniziato) e riscrivere la documentazione di Erix per quel 
che riguarda l'utilizzo dei CSS per la formattazione.
Stay tuned!
Giovanni

 ha scritto nel messaggio 
news:44257b68$0$18296$4faf...@reader1.news.tin.it...


Avevo visto a suo tempo quella iniziativa di Idra CSS, ma non me intendo
molto: che vantaggi avrebbe rispetto l'idra originale? La pagina non lo
spiega
http://www.composizioni.net/idraxc/
saluti,
Alberto
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 spiega
Nessun vantaggio "evidente" per chi gioca.
Il codice generato e' tuttavia XML-compliant e rende piu' flessibile la
gestione di fogli di stile per controllare gli aspetti grafici (font,
colori, background, etc...) del gioco.
Rob

rgrassi ha scritto:

mmm, sarebbe un lavoro enorme per ben poca cosa...
credo che il vantaggio più grande sia che le pagine in questo modo 
possano essere costruite senza frame o tabelle così da risultare più 
accessibili a tutti compresi i non vedenti.
ma non ho seguito la cosa quindi potrei errare...

 ma non ho seguito la cosa quindi potrei errare...
Anche quello, Marco.
La cosa più importante, forse non evidente all'utilizzatore *normale* di 
IDRA, è che avendo le pagine un output in XHTML, queste possono essere 
manipolate a piacimento dal javascript mediante l'utilizzo del 
cosiddetto DOM (Document Object Model).
Questo permette di intervenire in modo preciso sui singoli elementi 
della pagina, quindi di costruire più semplicemente un sistema di 
estenzioni e librerie aggiuntive.
Giovanni

Una domanda di carattere piu' generale allora: Idra e' un bel progetto, ma
ha riscosso un minimo di interesse o no? 
Ad esempio, sono state realizzate delle altre avventure oltre quelle due
dimostrative: "Carote amare" (quella sui cartoons) e "Una storia di
campagna"(quella sul contadino medioevale)??
Tempo fa scrissi a Colombini per avere notizie circa una terza
realizzazione "The Sceptre of Evendhūr", (e'in inglese ma pazienza, volevo
qualcosa d'altro con cui giocare). Purtroppo sembra sia andata perduta (!)
Insomma, l'idea di Idra mi piace, ma temo che oggi l'interesse sia tutto 
monopolizzato da inform. Oltretutto, almeno qui in Italia, le avventure a
bivi sono sempre state largamente snobbate. (anche piu' del necessario)
Non vorrei quindi che l'idea di potenziare Idra si riveli bella ma inutile
per mancanza di avventure da farci girare...


 cosiddetto DOM (Document Object Model).
Giovanni, io sto usando IdraXC, ma tutto questo non c'e', in questo
momento.
O sbaglio?
E non c'e' nemmeno il fatto dei frame indipendenti.
La parte 'CSS' si limita, se non sbaglio, ai soli aspetti di font,
background, etc...
Rob

 ha riscosso un minimo di interesse o no?
Che io sappia, l'interesse e' stato praticamente nullo.
Rob

 background, etc...
Allora, facciamo un po' di chiarezza visto che c'č secondo me poca 
informazione riguardo alla tecnologie per il web, HTML, CSS, ecc. ecc.
1. Idra, a livello base, non č niente altro che un generatore di pagine 
HTML fatto in javascript.
2. Idra (quello orginale) genera pagine in HTML "vecchio stile" (quello 
che si utilizzava diciamo 4-5 anni fa sul Web) in cui le istruzioni di 
formattazione sono mischiate al contenuto. Questo rende praticamente 
ingestibili racconti ipertestuali un po' piů lunghi, perché cambiare lo 
stile grafico di tutte le pagine vuol dire cambiarlo manualmente una per 
una.
3. IdraXC parte da due presupposti. Il primo č permettere ad IDRA di 
utilizzare i CSS in modo da rendere la formattazione piů semplice e 
immediata (a patto di conoscere i CSS, ma volendo si possono creare dei 
CSS standard da utilizzare semplicemente con l'inclusione nel codice del 
racconto). Il secondo č convertire le pagine generate da HTML a XHTML. 
Questo punto non č forse immediatamente capito come un vantaggio da chi 
  non ha un minimo di infarinatura di tecnologie Web, ma si rivela 
fodamentale per consentire utilizzi avanzati di Idra e per integrare piů 
facilmente estensioni e moduli aggiuntivi.
4. Molto semplicemente XHTML č la trasposizione del linguaggio HTML in 
XML. Se sapete qualcosa a riguardo, saprete che la struttura di un 
documento XML č molto rigida, ad albero, e puň essere manipolata a 
piacimento (eliminando nodi, aggiungendoli, modificandoli). Appunto, il 
cosiddetto Document Object Model (DOM) che ho citato nel post 
precedente. La pagina generata non č piů rigida una volta che č andata 
in output, ma la possiamo modificare (per esempio: possiamo visualizzare 
o meno un paragrafo in corrispondenza di click del mouse su una frase). 
C'č da considerare che tutte le versioni attuali dei browswer piů 
diffusi implementano una API javascript per il controllo e la 
manipolazione del DOM.
Tutto questo č molto diverso dal concetto di frame utilizzato 
dall'attuale Idra perché in quel caso abbiamo una pagina HTML diversa in 
corrispondenza di ogni frame, in Idra XC abbiamo invece un unica pagina 
i cui elementi sono indipendenti tra di loro e modificabili come ci pare.
Detto questo, lo sviluppo di Idra XC prevede diverse fasi.
A. Allo stato attuale mi interessa solo convertire il sistema di Idra 
per permettere l'utilizzo di CSS. Il sistema č assolutamente compatibile 
col precedente a patto di eliminare le funzioni di formattazione e 
inserire il corrispondente codice nel file CSS.
B. Eliminazione della struttura a frame.
C. sviluppi futuri: una API per le estensioni, utilizzo di JSON 
(JavaScript Object Notation) per gli oggetti del gioco, utilizzo di 
xmlHTTPRequest per l'aggiornamento asincrono degli elementi della pagina 
(e eventualmente per prendere elementi direttamente dal web), ecc. ecc.
Giovanni

Ok, qualcosino in piu' l'ho capita...
Se non erro, quello di cui parli riguarda il funzionamento interno e le
maggiori possibilita' di azione del futuro "motore" di Idra.
----------
Cambio domanda:
Sapete dirmi come siamo messi, invece, a livello di strumenti di
"produzione" delle avventure? 
Faccio un esempio pratico: mettiamo di voler implementare un classico
librogame, tipo "lupo solitario". 
A livello gestionale, niente di difficile, serve solo un registro dei
punteggi-vita e un possesso(elementare) di alcuni oggetti. Ci sarebbero i
"combattimenti" ma quelli diciamo per il momento di tralasciarli.
Il problema e' implementare il racconto, che e' abbastanza sofisticato
articolandosi su centinaia di bivi.
Cosa dovrei fare? Preparare (con i soliti scomodi editor html)una pagina
per ogni paragrafo di testo? Sarebbero tra le 400 e le 800 pagine html. 
L'ipotesi mi sembra impraticabile.



Il mio IdraXC è semplicemente una riscrittura di Idra ed è completamente 
compatibile con l'originale. Quello che posso consigliare, se si 
vogliono sfruttare le potenzialità del CSS per la formattazione delle 
pagine, o semplicemente avere un racconto ipertestuale che sia 
*compatibile* anche con future release di IdraXC, è di utilizzare Idra 
di Colombini così come descritta nel manuale, ma non utilizzare le 
istruzione di formattazione descritte nel capitolo 4.
In effetti per la prima release ufficiale di Idra XC avevo intenzione di 
  riscrivere il capitolo 4 del manuale, per il resto rimane tutto uguale.
Giovanni

 inserire il corrispondente codice nel file CSS.
E se non sbaglio IdraXC attuale e' fermo a questo, o sbaglio?
Rob

> E se non sbaglio IdraXC attuale e' fermo a questo, o sbaglio?
Esatto. la versione attuale è una beta e funziona già abbastanza bene. 
Quindi: scrivi un gioco in Idra, poi sostituisci i file di quest'ultimo 
con quelli di Idra XC e tutto continua a funzionare. Per uscire dalla 
beta ora si deve fare:
1. Un po' di testing per risolvere qualche problema
2. Implementare il modulo oggetti con la stessa filosofia di Idra XC
3. Riscrivere il capitolo 4 del manuale con un po' di istruzioni su come 
personalizzare il CSS.
Giovanni