Parser, FTP, relay, e tutto il resto


Questa pagina ha una gerarchia - Pagina madre:Programmazione

Home Forum Programmazione Parser, FTP, relay, e tutto il resto

Questo argomento contiene 19 risposte, ha 3 partecipanti, ed è stato aggiornato da mauro.riccardi mauro.riccardi 5 anni, 8 mesi fa.

Stai vedendo 15 articoli - dal 1 a 15 (di 20 totali)
  • Autore
    Articoli
  • #1789

    Salve a tutti,
    ho ricevuto risposta da Mueller; ha confermato quello che avevo appurato dopo un rapido studio del sorgente di xboard ieri sera: in modalita’ ICS xboard usa una funzione diversa per leggere la mossa che viene dal server, il che spiega il comportamento bizzarro;
    Il problema e’ che pare che i server come FICS non mandino le mosse ai client, ma mandano direttamente le posizioni: poiche’ l’aggiornamento del nostro simpatico file di testo viene fatto durante la funzione MakeMove (in backend.c), e poiche’ in modalita’ ICS questa funzione non viene chiamata (perche’ non c’e’ alcuna mossa da eseguire, solo una posizione da copiare) le mosse del server non vengono mai salvate, e noi vediamo solo meta’ delle mosse…
    Sto cercando di farmi venire un’idea per risolvere il problema, ogni suggerimento e’ ben accetto ed anche auspicato…

    bye^2, mr

    PS HGM mi ha anche detto che si puo’ ridurre il tempo di attesa a zero con l’opzione /serverPause=0, vabbe’, questo era il minore dei problemi…

    #1790

    Administrator
    Moderatore

    mmmm… mi sa che tra le mani (per quel che riguarda l’integrazione con fics), a meno di idee particolari abbiamo solo il file di debug che può essere convertito in mosse… comunque ci pensiamo un po’.
    Il fatto positivo è che per l’uomo-macchina in broadcasting dovremmo essere a posto, confermi?
    A proposito domani vedo Edo x le foto e provo a capire come sia possibile (e se è possibile) avere nella stanza superiore un ‘visore’ delle partite.

    Bye!
    LL

    Le faq sono nel menu principale, sotto Documentazione! 😉

    #1791

    Si’, assolutamente, per l’uomo-macchina (C vs Si ? 🙂 ) siamo a posto: sia le mosse dell’umano sia quelle della macchina vengono eseguite tramite la funzione MakeMove, che provvede a salvarle nel log.
    Il file di debug non si puo’ usare, almeno non sotto windows, perche’ non viene aggiornato in tempo reale. L’avevo gia’ provato, e almeno a me non funzia.

    Io mi studio un po’ il codice: se xboard aggiorna la lista delle mosse giocate, da qualche parte l’ultima mossa la deve pure “calcolare”, a partire dalla posizione corrente e da quella nuova mandata dal server…

    bye^2, mr

    #1792

    Dimenticavo: per vedere le partite non basterebbe un videoproiettore collegato a un portatile?

    bye^2, mr

    #1793

    Administrator
    Moderatore

    Per il file di debug a me sembra che venisse aggiornato realtime, anzi, che scrivesse pure pv e roba ‘sua’… provo meglio stasera poi ti dico.
    Per il videoproiettore sì, penso di sì, vediamo cos’ha la scacchistica…

    Bye!
    LL

    Le faq sono nel menu principale, sotto Documentazione! 😉

    #1803

    Sto approfondendo un’altra pista: forse si potrebbe usare anche un bot FICS (come watchBot).
    Non e’ male come idea, ma bisogna lavorarci su.
    Stay tuned.

    #1804

    la sst ha un proiettore
    &d0

    #1810

    Una ulteriore idea, che pero’ potrebbe essere un po’ spericolata (oddio, non come modificare xboard, ma quasi).
    Si tratta di scrivere un bot che si connette a FICS come guest.
    Il bot potrebbe osservare le partite di un dato giocatore.
    Forse e’ possibile metterlo sul sito, in modo da minimizzare il traffico via rete: praticamente uno che vuole mettere una propria partita sul sito chiede al bot di monitorare le partite del suo motore, il bot si connette e inizia a osservare; poi posta le mosse sull’apposita pagina del sito.
    Alternativamente: il bot puo’ girare sul PC sul quale gira il motore, e poi mandare le mosse via FTP; qui non ci vorrebbe nemmeno il parser perche’ i server tipo FICS mandano le mosse in formato SAN ai client (insieme a un monte di altra robaccia, purtroppo).

    Nota bene: questo sistema e’ *alternativo* al sistema del watcher; mentre il watcher va bene *solo* per le partite tra motori, o i match uomo macchina (insomma, partite giocate in locale), il bot va bene *solo* per partite su FICS (forse si puo’ fare pure su ICC, ma non me ne intendo).

    Modificare xboard e’ un processo piu’ lento (molto piu’ lento…), e non so quanto sia pratico…

    Fate sapere le vostre opinioni.

    #1811

    Administrator
    Moderatore

    Scusami x prima in chat, Mauro, ma non riuscivo a capir nulla tra Riccardo, Marina, Delia e mia mamma a telefono. Sembravano tutti messi d’accordo x farmi impazzire.
    Io nel ‘minestrone delle idee metterei anche il file di debug; ho fatto girare neuro su freechess con /debug (e tanto x cambiare ha perso una partita vinta). Il risultato è in allegato; c’è un sacco di spazzatura/ics, ma lgdebhum riesce a far quasi tutto bene… devo solo verificare un po’ di roba, ma forse ci sono… riesci a vedere l’allegato?

    Le faq sono nel menu principale, sotto Documentazione! 😉

    #1813

    Ahem, si’, l’allegato lo vedo, pero’ il pgn e’ invalido: infatti scid non me lo apre. Dentro insieme alle mosse ci sono pure i comandi “otim” etc.
    Tieni conto che comunque il file di debug e’ cambiato parecchio nelle ultime versioni di xboard, perche’ adesso ci trovi informazioni che non si sa a che servono, e quelle bisogna eliminarle…non e’ escluso che un parser che si aspetti il file “semplice” del passato, vada in confusione…
    Come regola generale, bisognerebbe prendere solo le righe che iniziano con “first” (e credo che ci sia un timestamp prefisso), le altre le ha aggiunte HGM per i suoi scopi 😎

    Ma piuttosto, hai verificato se almeno l’ultima versione aggiorna il file debug mossa per mossa? Quando ho provato con la mia non lo faceva!

    Io cmq la via del bot la percorrerei.
    Ho trovato abbastanza materiale che spiega come fare un bot per FICS, con node dovrebbe essere abbastanza lineare.
    Magari invece di metterlo sul sito (in quel caso, dovendo gestire piu’ connessioni, dovrebbe essere piuttosto complicato).
    Poi invece di farlo girare sul sito possiamo farlo girare sullo stesso PC del motore, anzi forse e’ meglio perche’ i comandi glieli dai da locale.

    bye^2, mr

    #1814

    @Luca
    scusa, ma mi ero distratto un momento, e avevo l’audio basso, quindi mi sono perso la chat…
    Dunque mi confermi che xboard ti aggiorna il file debug ad ogni mossa.
    Si puo’ adattare watcher a parsare quel file li’: e’ piu’ lungo, ma non credo che sia drammatico.
    Basta cambiare un paio di cose nel parser, devo fare due prove.

    bye^2, mr

    #1815

    Administrator
    Moderatore

    Ti confermo che le mosse sono scritte in realtime sul file di debug, solo che la logica di scrittura è diversa, a seconda che si tratti di una mossa effettuata da un engine oppure da un umano. E’ un po’ un casino, (un po’ come la mia nottata…) sà, meglio dormire un po’.

    Bye!
    LL

    Le faq sono nel menu principale, sotto Documentazione! 😉

    #1816

    Administrator
    Moderatore

    Ciao,

    stamattina, a mente fresca ho rivisto il file di debug, basta leggersi tutte le righe che cominciano con: Parsing board: lì trovi tutto (non solo posizione e mossa nei 2 formati) 🙂
    Dai che ce la possiamo fare!

    Bye!
    LL

    Le faq sono nel menu principale, sotto Documentazione! 😉

    #1817

    Administrator
    Moderatore

    Ti allego un esempio

    Bye!
    LL

    Allegati:
    1. winboard.zip

    Le faq sono nel menu principale, sotto Documentazione! 😉

    #1819

    Si’, lo so, winboard scrive nel debug tutto cio’ che gli passa il server – cio’ che segue “Parsing board” e’ il messaggio standard che ICS manda alla GUI (tra l’altro se non gli dai il comando “set style 12” te lo manda in formato di default “grafica ASCII” che fa tanto anni ’70 🙂 ).
    Pero’ (a parte che bisogna vedere se ci sono le mosse di entrambi, credo pero’ di si’) se cerchi le linee di ICS poi non hai una cosa che funziona con i match in locale: forse e’ meglio cercare le linee che xboard manda al (riceve dal) motore (quelle con ‘first’ e analogamente per il secondo): quelle al motore le deve mandare per forza, sia per i match in locale che per quelli su FICS.

    Poi secondo me bisogna vedere i tempi di latenza del sistema operativo, perche’ il file debug e’ grosso, a me non sembra tanto che cresca in tempo “realissimo”, per la verita’…
    Cmq pensiamoci: io dopo modifico watcher per fare questo lavoro qua, poi faccio sapere.

Stai vedendo 15 articoli - dal 1 a 15 (di 20 totali)

Devi essere loggato per rispondere a questa discussione.

© 2017 G 6 Tutti i diritti riservati - Buon divertimento!

By continuing to use the site, you agree to the use of cookies. more information

Questo sito utilizza i cookie per fonire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o clicchi su "Accetta" permetti al loro utilizzo.

Chiudi