è da tempo che rimugino sulla possibilità di creare un'avventura con
Inform 7 che venga giocata da 2 giocatori a turni alterni.
L'idea di base è questa: l'ambientazione è fisicamente sempre la
stessa, ma diversi fattori son generati casualmente (ruoli di NPCs,
collocazione di oggetti strategici, ecc.). I due giocatori sono rivali
e devono controllare l'ambiente e i reciproci spostamenti al fine di
sconfiggere l'altro.
Ogni giocatore ha un numero di mosse prestabilite dopodiché il gioco
si interrompe e tocca all'altro per il medesimo numero di mosse, e
così via fino a completamento del gioco.
Quel che servirebbe implentare è un sistema che assegni una password a
ciascun giocatore, e finito ogni turno si rifuti di andare avanti fino
all'immissione della password. Tra un turno e l'altro la partia
andrebbe salvata e il file di salvataggio passato all'altro giocatore
che riprenderà da quel punto inserendo la sua password per procedere.
E' una cosa fattibile? Lo chiedo perchè con Inform sono davvero alle
prime armi, anche se incomincio a raccapezzarmici...
Grazie,
Tristano
E' un gioco per email?
> E' una cosa fattibile? Lo chiedo perchè con Inform sono davvero alle
> prime armi, anche se incomincio a raccapezzarmici...
E' fattibile. Purtroppo ora non ho tempo per implementare l'idea, ma
se puoi aspettare la settimana prossima ti mando un esempio... a meno
che Massimo non mi bruci sul tempo ;)
--
Ciao, Leo
Mille e Una Avventura
http://milleuna.sf.net
On 7 Dic, 18:18, Leonardo wrote:
> E' un gioco per email?
Sì, l'idea era proprio quella di un gioco in cui ci si passa la palla
al balzo via email (inviando il file della partita salvata) tra un
turno e l'altro.
Pensavo che così facendo si potrebbe creare un gioco che si sviluppa
diversamente ad ogni partita, vuoi per il fatto che l'ambiente viene
manipolato da due giocatori diversi, vuoi per il fatto che alcuni
elementi del gioco sono generati a random.
Secondo me potrebbe attecchire e l'idea mi pare accattivante dal punto
di vista della simulazione.
Se fosse possibile creare una libreria che faciliti il sistema
potrebbe nascerne un genere a se stante.
Come ho detto, con Inform sono ai primi passi ma intendo coltivarlo e
spero che presto padroneggerò il sistema a sufficienza. Però già il
fatto che mi dici che sia fattibile è per me un ottimo segno!
Grazie,
Tristano
> Secondo me potrebbe attecchire e l'idea mi pare accattivante dal punto
> di vista della simulazione.
ma non so' per la simulazione comunque e' interessante uno strategico
a turni testuale, chissa' se esiste gia' qualche ambiente di sviluppo.
Io credo che una sola mossa per volta a giocatore rallenti troppo il
gioco, credo sarebbe meglio concedere a turno una o due ''mosse
importanti'' ovvero azioni che influenzino veramente l'ambiente (il
che significa che si potrebbero fare decine di esplorazioni prima di
passare il turno). Naturalmente il giocatore avversario all'apertura
della partita dovrebbe poter leggere in automatico tutto cio' che si
e' fatto, sempre che i personaggi giocatori 'si possano vedere' a
esempioperche' presenti nella stessa locazione.
ciao
On 8 Dic, 12:31, marcof wrote:
> Io credo che una sola mossa per volta a giocatore rallenti troppo il
> gioco, credo sarebbe meglio concedere a turno una o due ''mosse
> importanti'' ovvero azioni che influenzino veramente l'ambiente (il
> che significa che si potrebbero fare decine di esplorazioni prima di
> passare il turno). Naturalmente il giocatore avversario all'apertura
> della partita dovrebbe poter leggere in automatico tutto cio' che si
> e' fatto, sempre che i personaggi giocatori 'si possano vedere' a
> esempioperche' presenti nella stessa locazione.
Nella mia idea originale era un gioco in cui un giocatore giocava di
giorno e l'altro di notte.
Quindi, giornata e nottata offrirebbero a ciascun giocatore parecchie
mosse. Nella mia idea la divisione era temporale, alcune azioni
richiedevano più tempo di altro.
Sostenzialmente, due forze opposte si contendono a turno il controllo
di un territorio cercando di investire risorse, arruolare alleati,
sabotare i piani dell'altro, ecc. Quindi il gioco consente ad ogni
turno di "tessere la propria tela" e cercare di capire cosa stia
facendo l'avversario nel frattempo (infatti pensavo che i giocatori
non dovrebbero venire a conoscenza delle azioni fatte dall'avversario
se non inferendole dall'esplorazione del terriotorio).
L'idea mi era nata dopo aver visto il film "I Guardiani della notte",
di Timur Bekmambetov:
http://it.wikipedia.org/wiki/I_guardiani_della_notte_(film)
Nel film due forze opposte (il popolo del giorno e quello della notte)
si contendono a turni alterni il controllo del pianeta e blah blah.
Quindi, in definitiva, sarebbe un gioco di strategia dove ci si passa
la palla al balzo. A seconda di quanto è esteso l'ambiente del gioco
si potrebbe ipotizzare che ciascun turno offra lo spazio di qualche
centinaio di mosse. Ovviamente il processo temporale può essere
accellerato tramite azioni che richiedono più tempo, oppure con
comandi che fanno giungere il turno alla fine, ecc.
Tristano
In questo momento non ho proprio il tempo di mettermi a programmare,
quindi passo il turno :)
Tristano, non mi sono chiare alcune cose di questo meccanismo:
1 - Dopo aver effettuato una mossa, un giocatore come può controllare
l'ambiente di gioco? (per esempio esaminare questo o quello etc.
etc.);
2 - Cosa si intende per 'una mossa'?
Ad ogni modo proporrei una interfaccia basata su IF7 ma orientata
verso il multiplayer:
GUNCHO http://www.guncho.com/
Diversi giocatori si connettono via internet, al medesimo mondo di
gioco, nel quale possono interagire turnandosi in tempo reale.
> Ad ogni modo proporrei una interfaccia basata su IF7 ma orientata
> verso il multiplayer:
> GUNCHOhttp://www.guncho.com/
>
> Diversi giocatori si connettono via internet, al medesimo mondo di
> gioco, nel quale possono interagire turnandosi in tempo reale.
Interessante questo guncho! Però così sconfiniamo nel territorio dei
MUD.
A me ricorda anche "Lady Hawke". Di giorno agisce il cavaliere con il
falco (che si comporta in modo "inconsapevole"), mentre di notte la
principessa con il lupo (è il suo turno di agire d'istinto). Solo
all'alba e al tramonto c'è un momento in cui... ecc.
Guncho sembra una soluzione interessante già pronta. E' proprio vero
che appena ti viene in mente un'idea, c'è qualcun altro che la già
realizzata ;)
Rispondo qui ai vari post.
Massimo, come ho scritto nell'altro mio post per turno intendo una
sequenza temporale abbastanza ampia che includa un tot di mosse.
Guncho lo conosco perchè alcuni mesi addietro ci avevo speso un po' di
energia, però è appunto un MUD in tempo reale, mentre nel gioco che
avevo in mente l'idea era di alternare i giocatori per un periodo
abbastanza lugno nel quale l'altro è tagliato fuori. I due avversari
di fatto non si incontrerebbero mai e si limitano a modificare il
territorio al fine di prevaricare sull'altro. Altre varianti
potrebbero essere che il primo dei due che trova l'altro ha vinto,
ecc.
Come dice Leonardo, Lady Hawk è un ottimo esempio dei due giocatori
che non si incontrano mai.
Aggiungerei anche "Rabbia" di Chuck Palahniuk, in cui la società è
divisa tra cittadini diurni e notturni, con un divieto degli uni di
sconfinare nelle fasce orarie degli altri, anche se la città e la
medesima.
Tra l'altro, tornando a Guncho, da quel che ho capito non è
disponibile un codice sorgente di Guncho? Ho visto che offre in
scaricamento una libreria Inform 7 per simulare il sistema e che poi
sul sito si può uploadare il proprio sorgente I7, ecc.
Ma tornando all' IF a turni alterni... per realizzarla in Inform come
si potrebbe impostarla, attraverso le Scenes? Una scena per un
giocatore e un'altra per l'altro, quando finisce una inizia l'altra e
via dicendo in maniera circolare?
E per quanto riguarda il salvataggio della partita, è possibile
forzare il programma al salvataggio o bisogna chiedere al giocatore di
farlo?
Tristano
So che sarà un codice goffissimo ma con Inform sono ancora in alto
mare ...
Però questo codice non prende in considerazione né la generazione e
richiesta di password per ciascun giocatore, né il salvataggio della
partita.
Tristano
-----------------------------------------------------
"Alternate Players IF" by Tristano Ajmone
Part 1 - Geographical World
The Red Castle is a room. "The room walls are bare and red."
The Agorà is south of Red Castle. "The Agorà is a big square. North
you can see the Red Castle, and south the Blue Castle."
An apple is in the Agorà. The description is "It's a nice green
apple."
A pineapple is in the Agorà. The description is "It's a big and juicy
pinepple."
The Blue Castle is south of Agorà. "The room walls are bare and blu."
Part 2 - Characters
The Player is a man called Red Wizard in the Red Castle.
There is a man called Blue Wizard.
Part 3 - Switch Players Code
Every turn rule when the player is the Red Wizard for the fifth turn,
carry out the SwitchToBlue activity.
Every turn rule when the player is the Blue Wizard for the fifth turn,
carry out the SwitchToRed activity.
Instead of examining player:
say "You are [printed name of player]".
Instead of sleeping:
say "... Switching Player ...";
if player is Red Wizard then carry out the SwitchToBlue activity;
else carry out the SwitchToRed activity;
SwitchToRed is an activity.
The last for SwitchToRed rule:
move Red Wizard to Red Castle ;
change the player to Red Wizard;
remove Blue Wizard from play;
change the command prompt to "Red Wizard >";
say "Now the player is [if the player is Red Wizard] Red Wizard
[otherwise] Blue Wizard!!!";
try looking.
SwitchToBlue is an activity.
The last for SwitchToBlue rule:
move Blue Wizard to Blue Castle;
change the player to Blue Wizard;
remove Red Wizard from play;
change the command prompt to "Blue Wizard >";
say "Now the player is [if the player is Red Wizard] Red Wizard
[otherwise] Blue Wizard!!!";
try looking.
Part 4 - Game Setup
When play begins:
let the value of GameState be "NewGame";
change the command prompt to "Red Wizard >";
-------------------------------
The last for SwitchToBlue rule:
move Blue Wizard to Blue Castle;
change the player to Blue Wizard;
remove Red Wizard from play;
change the command prompt to "Blue Wizard >";
say "... Now the player is Blue Wizard!!!";
try looking;
try saving the game.
MassimoS wrote:
> E' un ottimo inizio :)
> Anche nell'esempio relativo alla libreria Italian c'è un pezzo di
> codice relativo a quando il giocatore smette di impersonare
> l'investigatore e gioca con il medico legale.
In effetti è il primo codice di esempio che ho studiato a fondo e dai
cui ho appreso la possibilità di far mutare personaggio al giocatore.
:-)
> Il comando 'try saving the game' va testato, perché richiede comunque
> che il giocatore inserisca un nome e dia la conferma per il
> salvataggio, non so se è quello che stai cercando.
Sì, chiede il percorso e il nome del file da salvare ogni volta, però
in linea di masssima va bene anche perchè poi il file salvato andrebbe
inviato manualmente in allegato email all'avversario. Quindi,
operazione più operazione meno ....
Però la domanda resta: sarebbe possibile gestire l'intera operazione
di salvataggio da codice (incluso il nome file)?
> Il game concept è molto originale per un'avventura testuale
> (usualmente single player) e potrebbe essere un piccolo esperimento
> interessante ;)
Se riuscisse bene potrebbe dare il via a un gioco che vale la pena
giocare più e più volte.
E quando un gioco è rigiocabile ... anche chi lo sviluppa è stimolato
a farlo crescere di versione in versione.
PS: come procede l'aggiornamento alla nuova versione di Italian?
Tristano
Ti rimando ad una discussione di persone più preparate di me sulla
questione (ti avverto che è possibile fare quello che chiedi ma è
necessario manovrare codice a livello di IF6):
http://groups.google.com/group/rec.arts.int-fiction/browse_thread/thread/a80fe36f31640515/b2152e510f3a815f?lnk=gst&q=saving+the+game#b2152e510f3a815f
L'intervento illuminante è il secondo, di David Kinder.
Chissà, magari qualche esperto programmatore di Inform 6 del NG
potrebbe portare un esempio pratico.
L'aggiornamento 1.1 di Italian è pronto, colgo l'occasione di invitare
chiunque volesse riceverlo e usarlo a contattarmi via email.
Non credo che comparirà presto sul sito ufficiale per problemi
logistici del gestore delle estensioni.
Purtroppo non conosco Inform 6 ma ho la documentazione e in qualche
modo mi ci racappezzerò...
Se riesco ad automatizzare il tutto è decisamente meglio.
> L'aggiornamento 1.1 di Italian è pronto, colgo l'occasione di invitare
> chiunque volesse riceverlo e usarlo a contattarmi via email.
Questa è un'ottima notizia! Puoi inviarmelo via mail?
Colgo l'occasione per chiederti: quali sono le novità rispetto alla
1.0?
Sarà retrocompatibile con le altre tue estensioni italiane?
E con quelle di Leonardo?
Perdona le domande, ma sono sempre combattuto tra sperimentare I7 in
italiano o in inglese. Essendo poco pratico al primo messaggio di
errore quando uso estensioni vado nel pallone e non capisco se il
problema è dovuto a incompatibiltà di versioni o a mie lacune. (altro
che fortuna del principiante)
Tristano
Ti contatto via NG. E' lo stesso? ;)
> Non credo che comparirà presto sul sito ufficiale per problemi
> logistici del gestore delle estensioni.
Ho notato il problema. Ho inviato la mia Hyperlink Interface mesi fa e
non ho ancora ricevuto risposta.
A proposito di Italian. Ho provato ora la versione 1.0 su Guncho e
funziona! Forte questo Guncho! Mando i dettagli in un altro post.
Ciao, Leo.
Appena ricevo l'1.1 mi metto al lavoro per convertirle ("appena" si fa
per dire... tempo libero permettendo).
Ciao, Leo.