[Python] R: Scacchi. era: Re: La matrice immortale.

Germano Carella germano.carella a gmail.com
Mer 9 Lug 2014 13:48:25 CEST


Ciao,
Ho visto sulla barra braille, ma mi sa che abbisogno di qualche spiegazione sulla notazione che usi... purtroppo io non gioco a scacchi, quindi parto svantaggiato.
Non sapevo di questo mondo dei motori scacchistici... 
Penso che, in effetti, è una cosa estremamente complicata crearne uno, visto che ci sono già da anni questi lavori.


-----Messaggio originale-----
Da: python-bounces a lists.python.it [mailto:python-bounces a lists.python.it] Per conto di Gabriele Battaglia
Inviato: mercoledì 9 luglio 2014 09:40
A: Discussioni generali sul linguaggio Python
Oggetto: [Python] Scacchi. era: Re: La matrice immortale.

Germano:
Certo, visivamente bisogna rappresentarla, perché in realtà serve anche all’utente non vedente muoversi in un ambiente, diciamo così, visivo… Nel senso, che bisogna trovare il modo di rappresentarla facendo in modo che abbia una visione mentale di dove si trova, quali pezzi ha di fronte e dove può muoversi… Per questo occorre utilizzare una codifica in grado di stare su una riga di quaranta caratteri. La riga, muovendosi avanti e in dietro nello schermo, dà al non vedente l’immagine tattile della scacchiera.

GB: ciao Germano, ed è esattamente questo che sto cercando di fare. Una rappresentazione testuale della scacchiera. Le case bianche saranno fatte
così: "| - ", mentre quelle nere così "| + ".
I pezzi li rappresento con dei caratteri, così come si fa nella notazione algebrica internazionale: maiuscoli per i bianchi, minuscoli per i neri... Q = white Queen b = black Bishop and so forth...
Il mio script è già in grado di salvare una scacchiera, te la copio qui così vedi con la barra cosa intendo:
Ecco, questa l'ho salvata ieri mentre testavo il mio programma
***

Creato il 8/7/2014 alle ore 12:51 UTC.

-------------La scacchiera-------------- --------------Senza nome--------------
  --A---B---C---D---E---F---G---H--
8 | r | n | b | q | k | b | n | r | 8
7 | p | p | p | p | p | p | p | p | 7
6 | - | + | - | + | - | + | - | + | 6
5 | + | - | + | - | + | - | + | - | 5
4 | - | + | - | + | - | + | - | + | 4
3 | + | - | + | - | + | - | + | - | 3
2 | P | P | P | P | P | P | P | P | 2
1 | R | N | B | Q | K | B | N | R | 1
  --A---B---C---D---E---F---G---H--

A livello visivo dev'essere un obbrobrio immagino! Aahahahhaa, ma per i miei mezzi in braille, è ottima.

Se riuscissi a crearla in HTML, invece che in testo, potrei anche muovermici dentro come faccio nelle tabelle sul web, ci penserò più avanti quando farò la conoscenza della libreria con cui Python gestisce l'HTML.

Lo script mi serve per tenere traccia delle partite che faccio via E4EC: 
www.e4ec.org, un server che permette di giocare via mail.

Per la questione dell'oggetto pezzo. Io direi che avrebbe più senso creare una classe casa, da cui derivare i 64 oggetti case. Questi oggetti devono essere consapevoli del pezzo che contengono eventualmente e di tutte le case a loro adiacenti, o nella medesima colonna o riga, poterle interrogare ed essere interrogate. Si rischia di scoprire l'acqua calda perchè ci sono già dei lavori eccellenti in materia, scrivere un motore scacchistico credo sia veramente ma veramente difficile.
Lo sapevi che esistono i campionati del mondo di motori scacchistici? 
Combattono fra di loro e stabiliscono un campione ed una classifica. :) Che soddisfazione, sarebbe, mettere al mondo una creatura del genere e vedere come si comporta con le altre! :) Ciao.
GB. 

_______________________________________________
Python mailing list
Python a lists.python.it
http://lists.python.it/mailman/listinfo/python



Maggiori informazioni sulla lista Python