Εγχειρίδιο

Εισαγωγή

Το blunderDB είναι ένα λογισμικό για τη δημιουργία βάσεων δεδομένων με θέσεις τάβλι (backgammon). Η κύρια δύναμή του είναι να παρέχει έναν ενιαίο χώρο για τη συγκέντρωση των θέσεων που έχει συναντήσει ένας παίκτης (στο διαδίκτυο, σε τουρνουά) και τη δυνατότητα να τις μελετήσει ξανά φιλτράροντάς τις σύμφωνα με διάφορα φίλτρα που μπορούν να συνδυαστούν αυθαίρετα. Το blunderDB μπορεί επίσης να χρησιμοποιηθεί για τη δημιουργία καταλόγων θέσεων αναφοράς.

Οι θέσεις αποθηκεύονται σε μια βάση δεδομένων που αντιπροσωπεύεται από ένα αρχείο .db. Η εφαρμογή γραφείου ανοίγει αυτό το αρχείο απευθείας, ποτέ μια διεύθυνση δικτύου: η λειτουργία διακομιστή (Λειτουργία χωρίς γραφικό περιβάλλον (διακομιστής)) είναι μια άλλη λειτουργία του ίδιου εκτελέσιμου, και περνάμε από τη μία στην άλλη εξάγοντας ή μεταναστεύοντας τη βάση, όχι στρέφοντας την εφαρμογή προς ένα URL.

Κύριες αλληλεπιδράσεις

Οι κύριες δυνατές αλληλεπιδράσεις με το blunderDB είναι:

  • προσθήκη μιας νέας θέσης,

  • τροποποίηση μιας υπάρχουσας θέσης,

  • αντιγραφή της εικόνας του ταμπλό στο πρόχειρο (PNG) μέσω CTRL-X, ή μαζί με την πλήρη ανάλυση μέσω CTRL-X CTRL-X,

  • διαγραφή μιας υπάρχουσας θέσης,

  • αναζήτηση μίας ή περισσότερων θέσεων,

  • εισαγωγή αγώνων από διάφορες πηγές (XG, GNUbg, BGBlitz, Jellyfish), συμπεριλαμβανομένων των σχολίων από τα αρχεία XG,

  • πλοήγηση στις κινήσεις ενός εισηγμένου αγώνα,

  • οργάνωση των θέσεων σε συλλογές,

  • οργάνωση των αγώνων σε τουρνουά.

Ο χρήστης μπορεί να επισημάνει ελεύθερα τις θέσεις με ετικέτες (tags) και να τις σχολιάσει μέσω σχολίων.

Περιγραφή της διεπαφής

Η διεπαφή του blunderDB αποτελείται, από πάνω προς τα κάτω, από:

  • [επάνω] τη γραμμή εργαλείων, η οποία συγκεντρώνει το σύνολο των κύριων λειτουργιών που μπορούν να εκτελεστούν στη βάση δεδομένων,

  • [στη μέση] την κύρια περιοχή προβολής, η οποία επιτρέπει την εμφάνιση ή την επεξεργασία θέσεων τάβλι,

  • [κάτω] τη γραμμή κατάστασης, η οποία παρουσιάζει διάφορες πληροφορίες σχετικά με τη βάση δεδομένων ή την τρέχουσα θέση και ενσωματώνει τη γραμμή εντολών.

Μπορούν να εμφανιστούν πίνακες για:

  • εμφάνιση των δεδομένων ανάλυσης που σχετίζονται με την τρέχουσα θέση, προερχόμενων από το eXtreme Gammon (XG), το GNUbg ή το BGBlitz,

  • εμφάνιση, προσθήκη ή τροποποίηση σχολίων,

  • αναζήτηση και φιλτράρισμα θέσεων με βάση συνδυάσιμα κριτήρια,

  • εμφάνιση και διαχείριση των συλλογών θέσεων (πίνακας συλλογών),

  • εμφάνιση της λίστας των εισηγμένων αγώνων και πλοήγηση στις κινήσεις ενός αγώνα (πίνακας αγώνων),

  • εμφάνιση και διαχείριση των τουρνουά (πίνακας τουρνουά),

  • εμφάνιση των στατιστικών απόδοσης (πίνακας Stats),

  • υπολογισμός του EPC (Effective Pip Count) μιας θέσης μαζέματος (bearoff) (πίνακας Eval),

  • μελέτη των θέσεων με διαστήματα επανάληψης (πίνακας Anki),

  • την προβολή των μεταδεδομένων της βάσης δεδομένων (πίνακας Μεταδεδομένα).

Μπορούν να εμφανιστούν παράθυρα διαλόγου για:

  • εμφάνιση της βοήθειας του blunderDB,

  • εμφάνιση του καταλόγου των ξεναγήσεων (βλ. Ξεναγήσεις και βάση δείγματος),

  • ρύθμιση της εξαγωγής της βάσης δεδομένων,

  • ρύθμιση του blunderDB, και ιδίως της γλώσσας της διεπαφής (βλ. Ρυθμίσεις).

Η κύρια περιοχή προβολής παρέχει στον χρήστη:

  • ένα ταμπλό για την εμφάνιση ή την επεξεργασία μιας θέσης τάβλι,

  • το επίπεδο και τον κάτοχο του ζαριού (cube),

  • το pip count κάθε παίκτη,

  • το σκορ κάθε παίκτη,

  • τα ζάρια προς παίξιμο. Αν δεν εμφανίζεται καμία τιμή στα ζάρια, η θέση των ζαριών υποδεικνύει ποιος παίκτης έχει τη σειρά και ότι η θέση είναι μια απόφαση κύβου. Όταν η απόφαση κύβου είναι απάντηση σε διπλασιασμό (αποδοχή/πάσο), ο προσφερόμενος κύβος εμφανίζεται στο κέντρο του ταμπλό, στην προσφερόμενη τιμή.

Ένα δεξί κλικ στο ταμπλό ανοίγει ένα μενού με: αξιολόγηση της εμφανιζόμενης θέσης στον πίνακα Eval, αξιολόγηση του κατόπτρου της, αντιγραφή της εικόνας του ταμπλό με την ανάλυσή της στο πρόχειρο (το αντίστοιχο του CTRL-X CTRL-X, λιγότερο εύκολο να ανακαλυφθεί), αποθήκευση της εικόνας σε αρχείο σε SVG ή PNG, άνοιγμα νέας όψης σε αυτή τη θέση, και — αν η θέση προέρχεται ήδη από τη βάση — προσθήκη της σε τράπουλα Anki (διαλείπουσα επανάληψη) ή κατάταξη των γειτονικών θέσεών της (δείτε Πίνακας Αναζήτησης).

Το πρόχειρο είναι η καθημερινή κίνηση· η αποθήκευση είναι η άλλη ανάγκη — η εικονογράφηση ενός άρθρου, ενός μηνύματος σε φόρουμ, ενός μαθήματος. Το SVG προσφέρεται επειδή το ταμπλό είναι SVG: είναι η μορφή που αντέχει τη μεγέθυνση, αυτή που βάζεις σε ένα έγγραφο χωρίς να θολώσει. Το PNG παράγεται από αυτό, όπως και η αντιγραφή στο πρόχειρο: μία απόδοση, τρεις προορισμοί, άρα κανένας δεν μπορεί να αποκλίνει από τους άλλους. Αυτό το μενού δεν εμφανίζεται στον πίνακα Eval ούτε στον πίνακα Αναζήτησης, όπου το δεξί κουμπί χρησιμεύει ήδη για να τοποθετείς τα πούλια του άλλου χρώματος. Δείτε Μεταφορά μιας θέσης στον πίνακα Eval για να φέρετε μια θέση στον πίνακα Eval.

Η γραμμή κατάστασης είναι δομημένη από αριστερά προς τα δεξιά με τις ακόλουθες πληροφορίες:

  • τη γραμμή εντολών, προσβάσιμη πατώντας το πλήκτρο SPACE,

  • ένα ενημερωτικό μήνυμα σχετικό με μια λειτουργία που εκτελέστηκε από τον χρήστη,

  • τον δείκτη της τρέχουσας θέσης, ακολουθούμενο από τον αριθμό των θέσεων στην τρέχουσα βιβλιοθήκη (ή τις πληροφορίες κίνησης/παρτίδας κατά την πλοήγηση σε αγώνα),

  • τον μετρητή βιβλιοθήκης — «412 θέσεις · 38 blunders · 5 αγώνες» — όπου κάθε αριθμός ανοίγει αυτό που μετρά: τις θέσεις, την αναζήτηση E> που ετοιμάζεται στη γραμμή εντολών με το κατώφλι της βιβλιοθήκης, ή τη λίστα αγώνων. Ένας αριθμός που δεν μπορείς να ακολουθήσεις είναι διακόσμηση. Το κατώφλι των blunders είναι αυτό της βιβλιοθήκης, ρυθμισμένο στην καρτέλα Βιβλιοθήκη των ρυθμίσεων και κοινό με τα στατιστικά: δύο κατώφλια θα έκαναν την ίδια λέξη να σημαίνει δύο πράγματα. Ο μετρητής υπόσχεται ακριβώς αυτό που ανοίγει ο σύνδεσμος, ακόμη και για μια θέση που παίχτηκε με πολλούς τρόπους, η οποία αξίζει το μεγαλύτερο κόστος της.

Σημείωση

Στην περίπτωση θέσεων που προκύπτουν από μια αναζήτηση του χρήστη, ο αριθμός των θέσεων που υποδεικνύεται στη γραμμή κατάστασης αντιστοιχεί στον αριθμό των φιλτραρισμένων θέσεων.

Η καρτέλα Anki φέρει σήμα όταν υπάρχουν κάρτες προς επανάληψη, σε όλες τις τράπουλες. Αυτός ο αριθμός είναι ο λόγος να ανοίξεις την καρτέλα· δεν έχει θέση πίσω της. Το μηδέν δεν εμφανίζει τίποτα: ένα σήμα που λέει «0» είναι θόρυβος.

Η εντολή log ανοίγει το αρχείο δραστηριότητας: τις τελευταίες διακόσιες γραμμές του αρχείου καταγραφής, ένα κουμπί για να τις αντιγράψετε — ό,τι χρειάζεται για να επισυνάψετε μια αναφορά — και ένα άλλο για να ανοίξετε τον φάκελο. Το αρχείο δεν φιλτράρεται ούτε αναμορφώνεται: ένα αρχείο που ωραιοποιείς δεν μπορείς πια να το επικαλεστείς.

Η εντολή grid ανοίγει το φύλλο επαφής: τη λίστα που περιηγείστε — αποτελέσματα αναζήτησης, βιβλιοθήκη, συλλογή — ως πλέγμα μικρών ταμπλό, σχεδιασμένων όπως το ταμπλό, σε σελίδες των είκοσι τεσσάρων. Ανοίγει στη σελίδα της τρέχουσας θέσης, της οποίας η μικρογραφία πλαισιώνεται· ένα κλικ ή ENTER σε μια μικρογραφία ανοίγει τη θέση της στο ταμπλό και κλείνει το φύλλο, και η περιήγηση γίνεται εξ ολοκλήρου από το πληκτρολόγιο (βλ. Φύλλο επαφής). Δεν ανοίγει ούτε σε λειτουργία επεξεργασίας ούτε μέσα σε ένα ματς, το οποίο περιηγείται κανείς με τις κινήσεις του.

Στο ιστορικό αναζητήσεων του πίνακα Αναζήτηση, κάθε σύμβολο μιας αποθηκευμένης εντολής εμφανίζεται ως ονομασμένη πινακίδα — Χωρίς επαφή, Σφάλμα κίνησης — αντί για γυμνό σύμβολο. Η ακριβής εντολή μένει στην υπόδειξη, αφού αυτή ξανατρέχει· και ένα σύμβολο που το blunderDB δεν αναγνωρίζει εμφανίζεται όπως είναι, όχι μεταφρασμένο στο πλησιέστερο.

Καρτέλες προβολών

Κάτω από τη γραμμή εργαλείων, μια γραμμή καρτελών επιτρέπει την εργασία με πολλές προβολές παράλληλα. Κάθε προβολή είναι ένας ανεξάρτητος χώρος εργασίας που διατηρεί τη δική του λίστα θέσεων, τον δείκτη της τρέχουσας θέσης, την εμφανιζόμενη θέση, την ανάλυση και την επιλεγμένη κίνηση, τον ενεργό πίνακα, το τρέχον σχόλιο καθώς και το πλαίσιο περιήγησης σε έναν αγώνα. Έτσι είναι δυνατόν, για παράδειγμα, να κρατήσετε μια αναζήτηση ανοιχτή σε μια προβολή ενώ περιηγείστε σε έναν αγώνα σε μια άλλη.

  • Δημιουργία προβολής: κάντε κλικ στο κουμπί + της γραμμής καρτελών ή πατήστε CTRL-T. Η νέα προβολή ξεκινά ως αντίγραφο της τρέχουσας προβολής.

  • Κλείσιμο προβολής: κάντε κλικ στο σταυρό της καρτέλας ή πατήστε CTRL-W. Η τελευταία προβολή δεν μπορεί να κλείσει.

  • Αλλαγή προβολής: κάντε κλικ σε μια καρτέλα, πατήστε CTRL-PageUp / CTRL-PageDown (ή SHIFT-J / SHIFT-K) για να μεταβείτε στην προηγούμενη / επόμενη προβολή, ή CTRL-1 έως CTRL-9 για να φτάσετε απευθείας στην ν-οστή προβολή.

  • Μετονομασία προβολής: κάντε διπλό κλικ στην καρτέλα, εισαγάγετε το νέο όνομα και επιβεβαιώστε με ENTER.

Οι προβολές αποθηκεύονται μαζί με την κατάσταση συνεδρίας της βάσης δεδομένων και επαναφέρονται κατά το επόμενο άνοιγμά της.

Ρυθμίσεις

Το κουμπί ρυθμίσεων (εικονίδιο γραναζιού) στη γραμμή εργαλείων, αριστερά από το κουμπί βοήθειας, ανοίγει το παράθυρο ρυθμίσεων του blunderDB. Είναι οργανωμένο σε επτά καρτέλες:

  • Διεπαφή — γλώσσα, κλίμακα εμφάνισης, θέση του πίνακα·

  • Χρώματα ταμπλό — τα χρώματα του ταμπλό·

  • Βιβλιοθήκη — ό,τι ανήκει στην ανοιχτή βάση: τα κατώφλια σφάλματος και blunder, η συμπύκνωση και η επισκευή, που περιγράφονται παρακάτω·

  • Bearoff — οι πίνακες μαζέματος που χρησιμοποιεί ο πίνακας Eval·

  • gammonNet — οι ρυθμίσεις του ενσωματωμένου αξιολογητή, που περιγράφονται παρακάτω·

  • Παρακολουθούμενος φάκελος — η αυτόματη εισαγωγή των αγώνων που φτάνουν σε έναν φάκελο, που περιγράφεται παρακάτω·

  • Ταυτότητα εκδότη — το κλειδί που υπογράφει τις σημάνσεις προέλευσής σας, το οποίο περιγράφεται στην ενότητα Διανομή μιας βάσης: προέλευση και κωδικός πρόσβασης.

Η καρτέλα Διεπαφή ξεκινά με ένα θέμα: ακολούθησε το σύστημα, φωτεινό, σκοτεινό, υψηλή αντίθεση ή εκτυπώσιμο. Το θέμα ρυθμίζει τα χρώματα της διεπαφής και προτείνει μια παλέτα ταμπλό — μια σκοτεινή διεπαφή γύρω από ένα φωτεινό ταμπλό δεν είναι σκοτεινό θέμα, είναι το μισό, αφού το ταμπλό καταλαμβάνει το μεγαλύτερο μέρος του παραθύρου.

Κρατάτε τον τελευταίο λόγο, και ο μηχανισμός το εγγυάται αντί να το υπόσχεται: η καρτέλα Χρώματα εξακολουθεί να ρυθμίζει το ταμπλό απευθείας, και ένα χρώμα που επιλέξατε μετά το θέμα είναι δικό σας. Στην εκκίνηση εφαρμόζονται μόνο τα σύμβολα της διεπαφής, ποτέ η παλέτα του ταμπλό — αυτή που ρυθμίσατε είναι ήδη φορτωμένη, και το να την ξαναγράφαμε σε κάθε εκκίνηση θα έσβηνε τη δουλειά σας μια συνεδρία τη φορά. Δείτε ADR-0038.

Το ακολούθησε το σύστημα είναι η προεπιλογή: υπακούει στην προτίμηση φωτεινού/σκοτεινού της επιφάνειας εργασίας, ακόμη και όταν αυτή αλλάζει στη μέση της συνεδρίας. Ένα εργαλείο δεν επιβάλλει το φωτεινό ή το σκοτεινό του σε μια επιφάνεια εργασίας που έχει ήδη αποφασίσει.

Η καρτέλα Διεπαφή επιτρέπει επίσης την επιλογή γλώσσας ανάμεσα σε αγγλικά, γαλλικά, γερμανικά, ιταλικά, ισπανικά, φινλανδικά, ιαπωνικά, ελληνικά και ρωσικά. Ολόκληρη η διεπαφή (γραμμή εργαλείων, πίνακες, μηνύματα, βοήθεια) μεταφράζεται στην επιλεγμένη γλώσσα. Η επιλογή γλώσσας αποθηκεύεται και διατηρείται από συνεδρία σε συνεδρία.

Η καρτέλα Βιβλιοθήκη συγκεντρώνει ό,τι ανήκει στο ανοιχτό αρχείο και όχι στο μηχάνημα. Είναι κενή όσο δεν υπάρχει ανοιχτή βάση, και το λέει.

Φέρει καταρχάς τα δύο κατώφλια που καθορίζουν το λεξιλόγιο ολόκληρης της εφαρμογής: μια απόφαση είναι σφάλμα μόλις το κόστος της φτάσει το κατώφλι σφάλματος, και αυτό το σφάλμα είναι blunder μόλις φτάσει το κατώφλι blunder. Κάθε blunder είναι σφάλμα, οπότε το πρώτο κατώφλι δεν μπορεί να ξεπερνά το δεύτερο, και το blunderDB απορρίπτει το αντεστραμμένο ζεύγος. Οι τιμές εισάγονται σε equity — «0,080» — τη μονάδα όλων των πινάκων· η γραμμή εντολών, από την πλευρά της, μιλά σε χιλιοστά του πόντου, ώστε το κατώφλι 0,080 γράφεται E>80 σε μια αναζήτηση.

Αυτά τα κατώφλια ακολουθούν το αρχείο, όχι τον υπολογιστή: η ίδια βάση μετρά τα ίδια blunders όπου κι αν ανοιχτεί, το blunderdb info τα εμφανίζει και το blunderdb edit --error-threshold / --blunder-threshold τα ρυθμίζει. Δεν ταξιδεύουν σε μια εξαγωγή: ένα κατώφλι είναι συνήθεια ανάγνωσης, όχι γεγονός των θέσεων.

Τρεις προκαθορισμένες ρυθμίσεις προσφέρονται με ένα κλικ, καθεμιά με το όνομα του προγράμματος που χάραξε αυτή τη γραμμή: blunderDB (0,050 / 0,100), XG (0,020 / 0,080) και gnubg (0,040 / 0,080). Εξ ορισμού, μια βιβλιοθήκη διαβάζει 0,050 και 0,100.

Τι αλλάζουν, στην οθόνη: το πλήθος των blunders στον μετρητή της γραμμής κατάστασης και την αναζήτηση που ετοιμάζει ο σύνδεσμός του, τις στήλες «Σφάλματα» και «Blunders» των στατιστικών και του πίνακα των παικτών, τις σημάνσεις των κινήσεων στην καρτέλα ενός αγώνα (Πίνακας Αγώνων), και τη λίστα των θέσεων που το blunderDB προτείνει για επανεξέταση μετά από μια εισαγωγή.

Η ίδια καρτέλα προσφέρει επίσης το κουμπί Συμπύκνωση βάσης, που ανακτά τον χώρο στον δίσκο τον οποίο άφησαν οι διαγραφές (αγώνες, τουρνουά, εκκαθαρίσεις): η βάση δεδομένων δεν μικραίνει ποτέ μόνη της όταν διαγράφονται δεδομένα, η συμπύκνωση αυτή πρέπει να ζητηθεί ρητά. Η λειτουργία μπορεί να πάρει χρόνο σε μεγάλη βάση και απαιτεί προσωρινά περίπου το διπλάσιο του μεγέθους της σε ελεύθερο χώρο (το blunderDB αρνείται να ξεκινήσει αντί να διακινδυνεύσει μια διακοπείσα συμπύκνωση)· ζητείται λοιπόν επιβεβαίωση πριν την εκκίνηση. Το αποτέλεσμα — ο χώρος που κερδήθηκε, σε megabyte — εμφανίζεται έπειτα στη γραμμή κατάστασης. Η ίδια λειτουργία είναι διαθέσιμη από τη γραμμή εντολών με το blunderdb vacuum (βλ. Διεπαφή γραμμής εντολών (CLI)).

Το κουμπί Άνοιγμα του φακέλου καταγραφών ακριβώς από κάτω ανοίγει τον φάκελο που περιέχει το αρχείο καταγραφής της εφαρμογής — χρήσιμο για να επισυνάψετε λεπτομέρειες σε μια αναφορά προβλήματος, ιδίως όταν το blunderDB έχει εκκινηθεί από συντόμευση ή διπλό κλικ, χωρίς συνδεδεμένο τερματικό που να εμφανίζει οτιδήποτε.

Το πλαίσιο Έλεγχος ενημερώσεων κατά την εκκίνηση, απενεργοποιημένο από προεπιλογή, ρωτά μία φορά σε κάθε εκκίνηση τη σελίδα εκδόσεων του αποθετηρίου GitHub και εμφανίζει στη γραμμή κατάστασης ένα μήνυμα αν υπάρχει νεότερη έκδοση — ποτέ ένα παράθυρο που εμποδίζει τη χρήση. Ο έλεγχος αυτός παραμένει αυτόματα απενεργοποιημένος σε εγκατάσταση που έγινε μέσω διαχειριστή πακέτων (Flatpak, Homebrew, πακέτο διανομής…): τότε αυτό το κανάλι διαχειρίζεται τις ενημερώσεις, όχι το ίδιο το blunderDB.

Δύο ρυθμίσεις διέπουν την κατάταξη των γειτονικών θέσεων (σύμβολο like, δείτε Πίνακας Αναζήτησης): το πλήθος των γειτονικών θέσεων που επιστρέφονται, και η μέγιστη απόσταση πέρα από την οποία μια θέση παύει να είναι γειτονική. Η απόσταση αυτή είναι μηδέν από προεπιλογή, δηλαδή χωρίς κανένα όριο: η κλίμακα εξαρτάται από τη φάση του παιχνιδιού, και μια τιμή επιλεγμένη εδώ θα διαβαζόταν ως μέτρηση. Το σύμβολο like<12 επιβάλλει τη δική του για μία αναζήτηση, χωρίς να θίγει τη ρύθμιση.

Η καρτέλα Χρώματα ταμπλό επιτρέπει την προσαρμογή των χρωμάτων του ταμπλό. Κάθε στοιχείο διαθέτει τον δικό του επιλογέα χρώματος: το φόντο, το περίγραμμα, οι ανοιχτόχρωμες και σκουρόχρωμες γλώσσες, τα πούλια του παίκτη 1 και του παίκτη 2, τα ζάρια, οι βούλες των ζαριών και ο κύβος. Το κουμπί Επαναφορά επαναφέρει όλα τα προεπιλεγμένα χρώματα. Όπως και η γλώσσα, τα επιλεγμένα χρώματα διατηρούνται από τη μία συνεδρία στην άλλη.

Η καρτέλα Bearoff διαχειρίζεται τους πίνακες μαζέματος του πίνακα Eval (βλ. Πίνακας Eval). Δεν είναι ούτε ενσωματωμένοι στο εκτελέσιμο ούτε μεταφορτωμένοι: το blunderDB τους υπολογίζει στο μηχάνημα που τους χρησιμοποιεί, και το αποτέλεσμα είναι πανομοιότυπο byte προς byte με ό,τι παράγει το gnubg — το αποτύπωμα SHA-256 ελέγχεται πριν γίνει δεκτός ένας πίνακας.

Οι δύο συνηθισμένοι πίνακες (TS-06-06 για την απόφαση ντάμπλου, OS-06 για το EPC) υπολογίζονται στην πρώτη εκκίνηση, στο παρασκήνιο και χωρίς ερώτηση: περίπου έξι δευτερόλεπτα σε έναν πυρήνα, κατά τη διάρκεια των οποίων η εφαρμογή χρησιμοποιείται κανονικά. Ο πίνακας Eval το αναφέρει μόνο αν τοποθετηθεί εκεί θέση που χρειάζεται πίνακα που δεν είναι ακόμη έτοιμος.

Η καρτέλα δείχνει τον ενεργό τομέα και την προέλευσή του, την κατάσταση του μονόπλευρου πίνακα που διαβάζει το EPC, τον φάκελο όπου ζουν όλα αυτά, και τον κατάλογο των υπαρχόντων πινάκων με το μέγεθος και την ετυμηγορία τους. Κάθε γραμμή διαγράφεται ξεχωριστά, μετά από επιβεβαίωση.

Επαληθευμένος ή μη επαληθευμένος. Ένας επαληθευμένος πίνακας έχει ακριβώς τα byte που παράγει το gnubg για τον τομέα του: το αποτύπωμά του SHA-256 υπάρχει στο blunderDB και βρέθηκε ξανά. Τα αποτυπώματα που έχουν καταγραφεί για τους μονόπλευρους πίνακες (OS-06 έως OS-10) είναι αυτά που παράγει το εργαλείο makebearoff του GNUbg 1.08. Ένας μη επαληθευμένος πίνακας είναι καλοσχηματισμένος αλλά ο τομέας του δεν έχει καταγεγραμμένο αποτύπωμα — δεν του καταλογίζεται τίποτα, απλώς κανείς δεν τον συνέκρινε με την αναφορά. Ένας κατεστραμμένος πίνακας αντιφάσκει με τον εαυτό του και δεν διαβάζεται ποτέ· ξαναϋπολογίζεται.

Υπολογισμός ευρύτερου πίνακα. Ο τομέας επιλέγεται από μια λίστα δύο οικογενειών, μαζί με τον αριθμό πυρήνων που θα του αφιερωθούν (εξ ορισμού όλοι εκτός από έναν, ώστε το μηχάνημα να παραμένει χρησιμοποιήσιμο):

  • ακριβής κύβος (αμφίπλευρος), από TS-06-06 έως TS-06-15: διευρύνει τον τομέα όπου η πιθανότητα νίκης και η ετυμηγορία κύβου διαβάζονται αντί να εκτιμώνται·

  • EPC εκτός του σπιτιού (μονόπλευρος), από OS-06 έως OS-10: διευρύνει την απόσταση στην οποία μπορεί να βρίσκεται ένα πούλι χωρίς να σωπάσει το μπλοκ EPC. Αυτή η σάρωση διαβάζει μόνο θέσεις μικρότερες από αυτήν που υπολογίζει, άρα είναι σειριακή εκ κατασκευής και ο αριθμός πυρήνων δεν της χρησιμεύει — ο επιλογέας το λέει γκριζάροντας.

Πριν ξεκινήσει οτιδήποτε, η καρτέλα δηλώνει τρία μεγέθη για τον επιλεγμένο τομέα: το μέγεθος στον δίσκο, τη μνήμη που απαιτείται κατά τον υπολογισμό, και τον χρόνο που θα έπρεπε να πάρει σε αυτό το μηχάνημα. Το τελευταίο ξεκινά ως εκτίμηση και γίνεται μέτρηση: κάθε αρκετά ευρύς υπολογισμός καταγράφει τη δική του ταχύτητα και τη διατηρεί. Ένας τομέας που δεν επιτρέπει η διαθέσιμη μνήμη προσφέρεται σε γκρίζο, με την αιτία — «θα χρειάζονταν 24 GB, απομένουν 12» είναι απάντηση, μια απούσα γραμμή δεν θα ήταν.

Ως τάξη μεγέθους, σε μηχάνημα δεκαέξι νημάτων: ο TS-06-09 ζυγίζει 191 MB και θέλει καμιά δεκαριά δευτερόλεπτα, ο TS-06-11 ζυγίζει 1,2 GB και μερικά λεπτά, ο TS-06-13 ξεπερνά ό,τι μπορούν να κρατήσουν στη μνήμη τα περισσότερα μηχανήματα. Από τη μονόπλευρη πλευρά, σε έναν πυρήνα: ο OS-07 ζυγίζει 4,9 MB και θέλει 17 δ, ο OS-08 15 MB και 1 λ 20, ο OS-10 117 MB και μισή ώρα.

Παύση και συνέχιση. Κατά τον υπολογισμό, η πρόοδος δείχνει τον μετρημένο υπολειπόμενο χρόνο και δύο ξεχωριστά κουμπιά: Παύση και Ακύρωση. Η παύση γράφει την κατάσταση του υπολογισμού δίπλα στον πίνακα· η επανεκκίνησή του συνεχίζει από εκεί που σταμάτησε αντί να ξεκινήσει από την αρχή. Η ακύρωση δεν κρατά τίποτα. Το κλείσιμο του παραθύρου ρυθμίσεων δεν διακόπτει τίποτα — ο υπολογισμός συνεχίζεται στο παρασκήνιο.

Ένας υπολογισμός σε παύση βρίσκεται ξανά στην επόμενη εκκίνηση, ονομασμένος και με ποσοστό («ο TS-06-09 διακόπηκε στο 43 %»), με Συνέχιση και Διαγραφή. Τίποτα δεν ξεκινά μόνο του: ο χρήστης ζήτησε τη διακοπή.

Η καρτέλα επιτρέπει τέλος να δείξετε ένα εξωτερικό αμφίπλευρο αρχείο .bd, για παράδειγμα μια βάση που παρήγαγε το ίδιο το gnubg: κερδίζει ο πίνακας με τον ευρύτερο τομέα.

Η καρτέλα Βιβλιοθήκη φέρει τέλος Επισκευή των αναλύσεων: οι στήλες ανάλυσης που ρωτούν η αναζήτηση και τα στατιστικά είναι προβολή των αποθηκευμένων αναλύσεων, οι οποίες μένουν άθικτες. Ένα σφάλμα προβολής επισκευάζεται συνεπώς χωρίς καμία επανεισαγωγή. Είναι ρητό και ποτέ αυτόματο — το να ξαναγραφούν οι στήλες ανάλυσης κάποιου μόνο και μόνο επειδή ανοίγει τη βάση του δεν είναι κάτι που ένα εργαλείο πρέπει να κάνει πίσω από την πλάτη του. Η ίδια εντολή blunderdb repair υπάρχει στη γραμμή εντολών.

Η καρτέλα gammonNet ρυθμίζει τον ενσωματωμένο αξιολογητή (βλ. ADR-0011). Δύο βάθη αναζήτησης ρυθμίζονται εκεί, ονομασμένα και αποθηκευμένα ξεχωριστά — η μείωση του ενός δεν τροποποιεί ποτέ το άλλο:

  • Βάθος εμφάνισης — η διαδραστική άνεση κατά την επεξεργασία του ταμπλό· δεν γράφεται ποτέ στη βάση.

  • Βάθος ανάλυσης — αυτό που η δέσμη ανάλυσης μετά την εισαγωγή γράφει στην Ανάλυση μιας θέσης.

Και τα δύο έχουν προεπιλογή 2-ply, την κανονική διαμόρφωση. Η καρτέλα προσφέρει επίσης το κλάδεμα (προεπιλογή k=12) και τον αριθμό των εμφανιζόμενων υποψήφιων κινήσεων (προεπιλογή 10), καθώς και ένα πλαίσιο επιλογής αυτόματη ανάλυση μετά την εισαγωγή το οποίο, μόλις ενεργοποιηθεί, ελέγχει μετά από κάθε εισαγωγή αν απομένουν θέσεις χωρίς καμία ανάλυση (ούτε gammonNet, ούτε XG, ούτε GNUbg, ούτε BGBlitz — ο κανόνας είναι «μια αξιολόγηση συμπληρώνει μόνο ένα κενό», ποτέ αντικατάσταση) και, αν χρειάζεται, ξεκινά στο παρασκήνιο μια ανάλυση gammonNet στο ρυθμισμένο βάθος ανάλυσης. Ένα κουμπί Ανάλυση τώρα επανεκκινεί χειροκίνητα την ίδια συμπλήρωση, χρήσιμο για μια βιβλιοθήκη που δημιουργήθηκε πριν από αυτή τη λειτουργία.

Ένα δεύτερο κουμπί, Επανάλυση παρωχημένων θέσεων, καλύπτει την αντίστροφη περίπτωση: μια θέση που έχει ήδη αναλυθεί από το gammonNet, αλλά της οποίας η αποθηκευμένη ανάλυση γράφτηκε από παλαιότερη έκδοση του μηχανισμού σε σχέση με αυτή που εκτελείται τώρα, ή σε διαφορετικό βάθος από το ρυθμισμένο βάθος ανάλυσης παραπάνω, επισημαίνεται εκεί ως παρωχημένη και επαναξιολογείται. Μια θέση που φέρει επιπλέον ανάλυση XG, GNUbg ή BGBlitz δεν επηρεάζεται ποτέ από αυτό το κουμπί, ανεξαρτήτως του περιεχομένου gammonNet της — η προστασία του ADR-0013 παραμένει άνευ όρων. Ο αριθμός που εμφανίζεται δίπλα σε κάθε κουμπί (θέσεις χωρίς ανάλυση, παρωχημένες θέσεις) είναι καθαρά ενημερωτικός· η δέσμη επανυπολογίζει τη δική της λίστα κατά την εκκίνηση.

Και οι δύο δέσμες είναι οριοθετημένες, ορατές και ακυρώσιμες, ποτέ ένας σιωπηλός δαίμονας: η πρόοδός τους (αναλυμένες θέσεις / σύνολο) και ένα κουμπί ακύρωσης εμφανίζονται στη γραμμή κατάστασης καθ” όλη τη διάρκειά τους, και εξαφανίζονται μόλις ολοκληρωθούν, δίνοντας τη θέση τους σε ένα μήνυμα που συνοψίζει το αποτέλεσμα — πόσες θέσεις αναλύθηκαν, πόσες απορρίφθηκαν (μια θέση που το gammonNet αρνείται να αξιολογήσει, όπως ένα σκορ αγώνα εκτός του εύρους του πίνακά του, κάτι που δεν είναι ποτέ βλάβη) και πόσες απέτυχαν (επαναλαμβάνονται, αμετάβλητες, στην επόμενη εκτέλεση). Το κλείσιμο της εφαρμογής κατά τη διάρκεια της μιας ή της άλλης δεν χάνει τίποτα: κάθε αναλυμένη θέση γράφεται σταδιακά, και η επόμενη εκτέλεση συνεχίζει ακριβώς από εκεί που είχε σταματήσει η ανάλυση, χωρίς κανένα ημερολόγιο να τηρείται.

Ένας αγώνας που εισήχθη χωρίς ανάλυση αποκτά έτσι PR. Είναι η περίπτωση ενός αγώνα που παίχτηκε διαδικτυακά, ή ενός αρχείου Jellyfish .mat που κανείς δεν πέρασε από το XG: το blunderDB γνώριζε τις θέσεις και τις κινήσεις που παίχτηκαν, αλλά καμία ανάλυση δεν έλεγε τι άξιζαν. Μόλις τρέξει η παρτίδα, η κίνηση που όντως παίχτηκε συγκρίνεται με την κατάταξη του gammonNet και η διαφορά τροφοδοτεί το PR, το ποσοστό σφάλματος, τις χειρότερες αποφάσεις και όλους τους άλλους δείκτες, ακριβώς όπως σε έναν αγώνα αναλυμένο από το XG. Η σύγκριση δεν επινοεί τίποτα: η κίνηση που παίχτηκε προέρχεται από τον πίνακα κινήσεων του αγώνα, γραμμένο κατά την εισαγωγή, είτε το αρχείο έφερε ανάλυση είτε όχι.

Μια βάση που αναλύθηκε με παλαιότερη έκδοση δεν χρειάζεται επανεκτίμηση: το blunderdb repair ξαναϋπολογίζει τις στήλες από τις αναλύσεις και τις κινήσεις που υπάρχουν ήδη και επιστρέφει το PR σε αυτούς τους αγώνες (δείτε repair).

Μια ειλικρινής επιφύλαξη: μια θέση αναγνωρίζεται από τη δομή της, οπότε μια θέση που συναντήθηκε δύο φορές — παιγμένη καλά τη μία και άσχημα την άλλη — φέρει μία μόνο διαφορά, εκείνη της πρώτης καταγεγραμμένης εμφάνισής της. Δεν είναι ιδιαιτερότητα αυτού του υπολογισμού: μια βιβλιοθήκη XG έχει ακριβώς την ίδια μορφή.

Παρακολουθούμενος φάκελος

Η καρτέλα Παρακολουθούμενος φάκελος ζητά από το blunderDB να κοιτάζει έναν φάκελο όσο τρέχει και να εισάγει κάθε αρχείο αγώνα που εμφανίζεται εκεί. Παίζεις μια συνεδρία στο eXtreme Gammon, γυρνάς στο blunderDB, και βρίσκεις τους αγώνες ήδη εκεί.

Τίποτα δεν μαντεύεται. Όσο δεν έχει οριστεί φάκελος, δεν υπάρχει παρακολούθηση: το blunderDB δεν αρχίζει να διαβάζει έναν κατάλογο επειδή υπέθεσε πού ζουν οι αγώνες σας. Το κουμπί Πρόταση κοιτάζει τις συνηθισμένες θέσεις αυτού του μηχανήματος και προτείνει μία μόνο αν υπάρχει πραγματικά· αλλιώς το λέει, και ο ορισμός του φακέλου είναι δική σας δουλειά.

Τρία πράγματα αξίζει να ξέρετε πριν τσεκάρετε το κουτί:

  • Εισάγονται μόνο τα αρχεία που εμφανίζονται. Ό,τι περιέχει ήδη ο φάκελος τη στιγμή που ξεκινά η παρακολούθηση καταγράφεται ως γνωστό και αφήνεται ήσυχο: το να στρέψεις μια παρακολούθηση σε τέσσερα χρόνια αγώνων δεν πρέπει να τους εισαγάγει όλους. Για να εισαγάγετε ό,τι υπάρχει, χρησιμοποιήστε την εισαγωγή φακέλου, που υπάρχει γι” αυτό — και οι δύο συνδυάζονται πολύ καλά, πρώτα η εισαγωγή, μετά η παρακολούθηση.

  • Ένα αρχείο εισάγεται μόνο αφού σταθεροποιηθεί το μέγεθός του. Ένας αγώνας που γράφει ένα άλλο πρόγραμμα μεγαλώνει από τη μια ματιά στην άλλη· το να τον εισαγάγεις μισογραμμένο θα έδινε ένα σφάλμα ανάλυσης με το οποίο κανείς δεν μπορεί να κάνει τίποτα. Το blunderDB περιμένει λοιπόν να δει δύο φορές το ίδιο αρχείο αμετάβλητο.

  • Η εισαγωγή είναι αθόρυβη. Μελετούσατε μια θέση όταν έφτασαν οι αγώνες σας: το να σας πάρει την οθόνη θα ήταν η χειρότερη στιγμή. Η λειτουργία, η ενεργή αναζήτηση, η καρτέλα και η θέση που εμφανίζεται δεν αλλάζουν· η λίστα θέσεων δεν επαναφορτώνεται και δείχνει τους νέους αγώνες στην επόμενη επαναφόρτωση. Η εισαγωγή γίνεται χωρίς παράθυρο και η γραμμή κατάστασης εμφανίζει ένα banner με τον αριθμό των αγώνων που εισήχθησαν, παραλείφθηκαν (διπλότυπα) και απέτυχαν, με ένα κουμπί που ανοίγει την πλήρη αναφορά αν το επιθυμείτε. Όλα τα υπόλοιπα είναι ίδια με μια χειροκίνητη εισαγωγή: τα ίδια διπλότυπα εντοπίζονται, η ίδια δέσμη εισαγωγής, η ίδια αυτόματη ανάλυση αν είναι ενεργοποιημένη.

Το προεπιλεγμένο διάστημα είναι δέκα δευτερόλεπτα· το κατώτατο όριο δύο. Ο φάκελος δεν διατρέχεται αναδρομικά: ένας παρακολουθούμενος φάκελος είναι εκεί όπου ένα εργαλείο αφήνει τους αγώνες του, όχι ένα δέντρο προς εξερεύνηση. Ένα αποπροσαρτημένο δικτυακό κοινόχρηστο δεν σταματά την παρακολούθηση, ούτε κάνει το περιεχόμενό του να περάσει για νέο όταν επιστρέψει.

Η ίδια παρακολούθηση υπάρχει στη γραμμή εντολών, με blunderdb import --type batch --dir <φάκελος> --watch (δείτε Διεπαφή γραμμής εντολών (CLI)): είναι η μορφή που μπορεί να χρησιμοποιήσει ένας διακομιστής, μια προγραμματισμένη εργασία ή ένα σενάριο.

Το παράθυρο διαμόρφωσης παρέχει επίσης ρυθμίσεις εμφάνισης της διεπαφής. Ένα ρυθμιστικό κλίμακας διεπαφής σας επιτρέπει να μεγεθύνετε ή να σμικρύνετε όλα τα στοιχεία της διεπαφής, κάτι που είναι χρήσιμο σε οθόνες υψηλής πυκνότητας ή για τη βελτίωση της αναγνωσιμότητας. Ένα μενού θέσης των πλαισίων καθορίζει πού εμφανίζονται τα πλαίσια (αναζήτηση, ματς, ανάλυση) σε σχέση με το ταμπλό: κάτω, στο πλάι ή αυτόματα (το πλάι επιλέγεται τότε σε πλατιές οθόνες για την καλύτερη αξιοποίηση του διαθέσιμου χώρου). Όπως και οι άλλες ρυθμίσεις, αυτές οι επιλογές διατηρούνται από τη μία συνεδρία στην άλλη.

Ξεναγήσεις και βάση δείγματος

Για να διευκολυνθεί η εξοικείωση, το blunderDB προσφέρει ξεναγήσεις του περιβάλλοντος. Ο κατάλογος των ξεναγήσεων ανοίγει από τη γραμμή εργαλείων ή με την εντολή tour (ψευδώνυμο tutorial). Είναι διαθέσιμες επτά ξεναγήσεις: μια γενική ξενάγηση του περιβάλλοντος, και ξεναγήσεις αφιερωμένες στην αναζήτηση θέσεων, στην ανασκόπηση αγώνων, στην ανασκόπηση τουρνουά, στον πίνακα Eval, στην επανάληψη Anki και στα στατιστικά. Κάθε ξενάγηση επισημαίνει τα σχετικά στοιχεία του περιβάλλοντος, βήμα προς βήμα, ανοίγει τον πίνακα για τον οποίο μιλά, και μπορεί να επαναληφθεί ανά πάσα στιγμή. Κατά την πρώτη εκκίνηση, η γενική ξενάγηση προτείνεται αυτόματα.

Η εντολή demo φορτώνει μια βάση δείγματος που επιτρέπει την εξερεύνηση των λειτουργιών του εργαλείου χωρίς εισαγωγή δικών σας παρτίδων: τρεις αγώνες (δύο από τους οποίους ομαδοποιημένοι σε ένα τουρνουά) αναλυμένους από τα eXtreme Gammon, BGBlitz και gammonNet, τρεις θεματικές συλλογές, σχόλια με ετικέτες (#blunder, #cube) και μια τράπουλα Anki με το ημερολόγιο επαναλήψεών της. Οι παίκτες, το τουρνουά και ο τόπος είναι φανταστικοί. Οι καθοδηγούμενες περιηγήσεις βασίζονται σε αυτή τη βάση όταν καμία βάση δεν είναι ανοιχτή.

Επεξεργασία θέσεων

Το πάτημα του πλήκτρου TAB ανοίγει τον πίνακα αναζήτησης και επιτρέπει την επεξεργασία μιας θέσης στο ταμπλό για την προσθήκή της στη βάση δεδομένων ή τον ορισμό μιας δομής θέσης προς αναζήτηση. Η κατανομή των πουλιών, ο κύβος (cube), το σκορ και η σειρά μπορούν να τροποποιηθούν με τη βοήθεια του ποντικιού (βλ. Επεξεργασία θέσης).

Πρακτική συμβουλή

Ανατρέξτε στο Συντομεύσεις πληκτρολογίου για τις διαθέσιμες συντομεύσεις.

Η γραμμή εντολών

Η γραμμή εντολών, ενσωματωμένη στη γραμμή κατάστασης, επιτρέπει την εκτέλεση του συνόλου των λειτουργιών του blunderDB που είναι διαθέσιμες στη γραφική διεπαφή: γενικές λειτουργίες στη βάση δεδομένων, πλοήγηση θέσεων, εμφάνιση της ανάλυσης ή/και των σχολίων, αναζήτηση θέσεων με βάση φίλτρα… Μετά την πρώτη εξοικείωση με τη διεπαφή, συνιστάται η σταδιακή χρήση της γραμμής εντολών, η οποία επιτρέπει μια ισχυρή και ομαλή χρήση του blunderDB, ιδίως για τις λειτουργίες αναζήτησης θέσεων.

Για να ανοίξετε τη γραμμή εντολών, πατήστε το πλήκτρο SPACE. Για να υποβάλετε ένα ερώτημα και να κλείσετε τη γραμμή εντολών, πατήστε το πλήκτρο ENTER.

Το blunderDB εκτελεί τα ερωτήματα που αποστέλλονται από τον χρήστη υπό την προϋπόθεση ότι είναι έγκυρα και τροποποιεί αμέσως την κατάσταση της βάσης δεδομένων εφόσον χρειάζεται. Δεν απαιτούνται ρητές ενέργειες αποθήκευσης από την πλευρά του χρήστη.

Πρακτική συμβουλή

Ανατρέξτε στο λίστα εντολών για τη λίστα των διαθέσιμων εντολών στη γραμμή εντολών.

Η παλέτα εντολών

Η παλέτα εντολών (CTRL-SHIFT-P) βρίσκει με ένα κατά προσέγγιση όνομα ό,τι δεν ξέρετε πια πού να αναζητήσετε: μια εντολή της γραμμής εντολών, μια καρτέλα, ένα φίλτρο της βιβλιοθήκης ή έναν αγώνα. Τα γράμματα που πληκτρολογείτε πρέπει να εμφανίζονται με τη σειρά, όχι απαραίτητα το ένα δίπλα στο άλλο, χωρίς διάκριση πεζών-κεφαλαίων και τόνων: το «μτρκβ» βρίσκει τη μήτρα του κύβου, το «lyon» τους αγώνες ενός τουρνουά στη Λυών.

Τα βέλη επιλέγουν, το ENTER εκτελεί, το ESC κλείνει. Μια εντολή εκτελείται σαν να είχε πληκτρολογηθεί· τα s και ss ανοίγουν τη γραμμή εντολών για να γράψετε εκεί τα φίλτρα· ένα φίλτρο εκτελείται όπως με διπλό κλικ στη βιβλιοθήκη· ένας αγώνας ανοίγει όπως με διπλό κλικ στο πάνελ Αγώνων.

Όταν είναι ανοιχτή μια Direction, η παλέτα προσθέτει το τουρνουά: παίκτες, τραπέζια, αγώνες σε εξέλιξη και αγωνίσματα (βλ. γρήγορη αναζήτηση).

Πίνακας Ανάλυσης

Ο πίνακας Ανάλυσης (CTRL-L) εμφανίζει τα δεδομένα ανάλυσης της τρέχουσας θέσης, εισηγμένα από το eXtreme Gammon (XG), το GNUbg ή το BGBlitz. Παρουσιάζει τις καλύτερες εναλλακτικές (κινήσεις πουλιών ή αποφάσεις κύβου) μαζί με τις τιμές equity τους και τα αντίστοιχα σφάλματα. Το πλήκτρο d εναλλάσσεται μεταξύ της ανάλυσης κινήσεων πουλιών και της ανάλυσης κύβου. Κατά την πλοήγηση σε έναν αγώνα, η κίνηση που παίχτηκε πραγματικά επισημαίνεται στη λίστα των εναλλακτικών. Πατήστε CTRL-L ή εκτελέστε την εντολή list για να εμφανίσετε ή να αποκρύψετε τον πίνακα.

Κάτω από τους πίνακες, μια πρόταση λέει ενίοτε τι κόστισε η απόφαση που παίχτηκε και γιατί: «Χάνετε 120 mMWC: η κίνηση που παίχτηκε αφήνει τρία blots εκεί όπου η 13/7 8/7 αφήνει μόνο ένα.» Προέρχεται από έξι μετρήσιμους κανόνες — την έκθεση, ένα σημείο του σπιτιού που φτιάχτηκε ή χάθηκε, τις πιθανότητες gammon που εγκαταλείφθηκαν, μια ασφάλεια που κοστίζει περισσότερο απ” όσο αποδίδει, και τις δύο κατευθύνσεις ενός λάθους κύβου (διπλασιασμός πολύ αργά ή πολύ νωρίς, αποδοχή πολύ χαλαρή ή πάσο πολύ σφιχτό).

Ο κανόνας που μετράει είναι η σιωπή: η πρόταση εμφανίζεται μόνο όταν ένας κανόνας εφαρμόζεται με βεβαιότητα, και για λάθος πάνω από το κατώφλι από το οποίο οι μηχανές συμφωνούν ότι πρόκειται για λάθος. Τον υπόλοιπο χρόνο δεν υπάρχει πρόταση — ούτε άδειο πλαίσιο, ούτε «δεν ξέρουμε». Μια λανθασμένη εξήγηση κοστίζει περισσότερο από καμία: διδάσκει κάτι ανακριβές.

Όταν μια θέση έχει κριθεί από πολλές μηχανές, μια λωρίδα στην κορυφή του πίνακα τις βάζει δίπλα δίπλα: μία γραμμή ανά μηχανή, με το βάθος της και την απάντησή της — την ετυμηγορία του κύβου, ή τη δική της καλύτερη κίνηση. Λέει πρώτα αν συμφωνούν, και η διαφωνία είναι που τη δικαιολογεί: «το XG λέει διπλασιασμός, αποδοχή· το gammonNet λέει χωρίς διπλασιασμό» διαβάζεται με μια ματιά, εκεί που έπρεπε να συγκρίνεις δύο πίνακες διαγώνια.

Η καλύτερη κίνηση μιας μηχανής είναι η καλύτερη αυτής της μηχανής: η λίστα των υποψήφιων κινήσεων είναι ταξινομημένη κατά ισοδυναμία, με όλες τις μηχανές ανακατεμένες, οπότε το πρώτο της στοιχείο δεν είναι η καλύτερη κίνηση καμιάς τους ειδικά.

Η λωρίδα εμφανίζεται μόνο όταν υπάρχουν πράγματι πολλές μηχανές, και υπάρχει μόνο σε αυτόν τον πίνακα: ο πίνακας Eval παρουσιάζει μία απόφαση, εκείνη της ενσωματωμένης μηχανής (ADR-0017), και μια σύγκριση δεν θα είχε εκεί θέση.

Οι κινήσεις γράφονται όπως διαβάζονται στο ταμπλό, εδώ όπως και στον πίνακα Eval: το λιγότερο προχωρημένο πούλι κινείται πρώτο, και ένα πούλι που χρησιμοποιεί διαδοχικά περισσότερα ζάρια γράφεται μία μόνο φορά — ένα 64 που παίζεται με το ίδιο πούλι διαβάζεται 24/14, και 24/14* αν χτυπά κατά την άφιξη. Η λεπτομέρεια της διαδρομής επανεμφανίζεται μόνο όταν λέει κάτι παραπάνω: ένα χτύπημα καθ” οδόν διατηρεί το ενδιάμεσο σημείο του, 24/18* 18/14, αλλιώς το χτύπημα στο 18 θα εξαφανιζόταν από τη σημειογραφία.

Η ισοδυναμία μιας εισαγόμενης ανάλυσης ακολουθεί τον ίδιο κανόνα με τον πίνακα Eval: η στήλη δηλώνει το δικό της πλαίσιο αναφοράς, «Equity (money)» ή «Equity (match)» ανάλογα με το σκορ της αναλυόμενης θέσης, ποτέ ένα απλό «Equity» χωρίς ένδειξη κλίμακας. Οι κανόνες Jacoby και Beaver που ισχύουν σε μια θέση money game εμφανίζονται επίσης, ως ετικέτες κάτω από τον πίνακα απόφασης κύβου.

Rollouts

Κάτω από την ανάλυση, το πάνελ Ανάλυση προτείνει να γίνει rollout της θέσης: να παιχτούν εκατοντάδες παρτίδες από κάθε υποψήφια κίνηση ή ενέργεια του κύβου, ώστε να ξεχωρίσουν δύο επιλογές που η άμεση αξιολόγηση μόλις διακρίνει. Τρεις ρυθμίσεις: Γρήγορο (216 παρτίδες, περικομμένες στα 7 μισά-ζάρια), Στάνταρ (1296 παρτίδες, περικομμένες στα 11 μισά-ζάρια) και Ελεύθερο, όπου όλες οι παράμετροι επεξεργάζονται — περικοπή, ελάχιστες και μέγιστες παρτίδες (πολλαπλάσια του 36), όριο JSD, βάθος (ply), αριθμός υποψηφίων, σπόρος και αριθμός εργατών. Το κουμπί Εκκίνηση rollout, το πλήκτρο r του πάνελ ή η εντολή rollout (ψευδώνυμο ro) το ξεκινούν· μια γραμμή προόδου ακολουθεί τις παρτίδες που παίχτηκαν και η Ακύρωση (ή ξανά r) το σταματά χωρίς να γράψει τίποτα.

Το αποτέλεσμα αποθηκεύεται δίπλα στην ανάλυση, ποτέ στη θέση της: μια εισαγμένη ανάλυση δεν τροποποιείται. Κάθε rollout σχηματίζει ένα μπλοκ με, για κάθε υποψήφια, την ισοδυναμία, το διάστημα εμπιστοσύνης 95 %, το JSD (την απόσταση από την καλύτερη κίνηση σε τυπικές αποκλίσεις της διαφοράς: από το όριο και πάνω, η κίνηση κρίνεται και δεν παίζεται πια) και τον αριθμό των παρτίδων. Το rollout σταματά μόλις οι κινήσεις ξεχωρίσουν. Η Διαμόρφωση — η μηχανή και η πλήρης υπογραφή των παραμέτρων — ανοίγει κάτω από τον πίνακα: δύο rollout με την ίδια υπογραφή δίνουν τους ίδιους αριθμούς. Ένα rollout παίζει τον κύβο μέσα στις παρτίδες του: η κατάταξη είναι αξιόπιστη, η απόλυτη ισοδυναμία λιγότερο, κάτι που το μπλοκ υπενθυμίζει. Μια θέση που δεν είναι στη βάση μπορεί να γίνει rollout, αλλά δεν αποθηκεύεται.

Το κουμπί Στην εμφανιζόμενη λίστα… (ή ro search) κάνει rollout, τη μία μετά την άλλη, στις θέσεις της εμφανιζόμενης λίστας — αποτελέσματα αναζήτησης, αγώνας ή συλλογή — που δεν έχουν ακόμη αυτό το rollout· μια επιβεβαίωση δίνει το σύνολο πριν από την έναρξη. Κάθε θέση γράφεται μόλις τελειώσει: η ακύρωση κρατά ό,τι έγινε και η νέα εκκίνηση συνεχίζει από εκεί που σταμάτησε. Η πρόοδος επιβιώνει του κλεισίματος του πάνελ.

Πίνακας Σχολίων

Ο πίνακας Σχόλια (CTRL-P) εμφανίζει, προσθέτει και τροποποιεί τα σχόλια που συνδέονται με την τρέχουσα θέση. Μια θέση μπορεί να φέρει πολλά: εμφανίζονται όλα, από το πιο πρόσφατο στο παλαιότερο. Τα σχόλια που εισάγονται από αρχεία XG συνδέονται αυτόματα με τις αντίστοιχες θέσεις. Πατήστε CTRL-P ή εκτελέστε την εντολή comment για να εμφανίσετε ή να κρύψετε τον πίνακα.

Κάθε σχόλιο που προήλθε από αρχείο φέρει μια ετικέτα προέλευσης (XG, GNU BG, BGF, ή εισηγμένο όταν η προέλευση δεν καταγράφηκε ποτέ). Τα σχόλια που γράψατε εσείς δεν φέρουν καμία: αυτή είναι η συνήθης περίπτωση, και η σήμανση κάθε γραμμής θα ήταν θόρυβος. Η τροποποίηση ενός εισηγμένου σχολίου σας το αποδίδει: μετά την τροποποίηση, η φράση είναι δική σας.

Αυτή η διάκριση φαίνεται και αλλού: η διαγραφή ενός αγώνα δεν καταστρέφει πια μια θέση πάνω στην οποία εσείς είχατε γράψει. Μια σημείωση παρμένη από το αρχείο προέλευσης, αντίθετα, εξαφανίζεται πάντα μαζί με τον αγώνα που την έφερε.

Οι ετικέτες

Μια ετικέτα είναι μια #λέξη γραμμένη σε ένα σχόλιο. Τίποτα δεν τη δηλώνει, κανένας πίνακας δεν τη φέρει, και αυτό είναι σκόπιμο: το λεξιλόγιο είναι η δική σας πρόζα, και το να απαιτείται δήλωση πριν μπορέσετε να βάλετε ετικέτα θα μετέτρεπε μια συνήθεια σε γραφειοκρατία.

Αυτό που έλειπε ήταν το άλλο μισό: να βλέπεις το λεξιλόγιο που έχτισες, και να κάνεις κλικ σε μια ετικέτα αντί να θυμάσαι πώς την έγραφες. Η εντολή tags, ή το κουμπί # δίπλα στο πεδίο εισαγωγής, ανοίγει το παράθυρο του λεξιλογίου: οι ετικέτες αυτής της βάσης, καθεμιά με το πλήθος των θέσεων που τη φέρουν, με δυνατότητα κλικ για την αντίστοιχη αναζήτηση. Κάτω από τη λίστα βρίσκονται οι προτεινόμενες ετικέτες που η βάση δεν χρησιμοποιεί ακόμη — ένα λεξιλόγιο από τη βιβλιογραφία του τάβλι (#blitz, #prime, #holding, #backgame, #containment, #crunch, #ace-point, #timing…), προτεινόμενο και ποτέ επιβεβλημένο: μια ετικέτα εκτός αυτής της λίστας αξίζει ακριβώς όσο και μια που είναι μέσα.

Κατά την πληκτρολόγηση, ένα # προτείνει τις ετικέτες που αυτή η βάση χρησιμοποιεί ήδη, και μετά τις προτεινόμενες. Αυτό εμποδίζει να γράψεις #back-game τη μια μέρα και #backgame την επόμενη, κάτι που τίποτε άλλο δεν θα έπιανε.

Η αναζήτηση με ετικέτα γράφεται #prime στη γραμμή εντολών. Είναι οριοθετημένη: το #prime δεν βρίσκει το #priming, εκεί όπου μια συνηθισμένη αναζήτηση κειμένου, που ψάχνει υποσυμβολοσειρά, δεν μπορεί να τα ξεχωρίσει. Πολλές ετικέτες αθροίζονται — το s #prime #backgame ζητά τις θέσεις που φέρουν και τις δύο — γιατί μια θέση φέρει πολλές ετικέτες: το να ονομάσεις δύο δεν μπορεί παρά να σημαίνει «και τις δύο». Είναι το αντίθετο του φίλτρου φάσης ή προέλευσης, όπου μια θέση έχει μία μόνο τιμή και το να ονομάσεις δύο τιμές δεν μπορεί παρά να σημαίνει «τη μία ή την άλλη».

Την ίδια λίστα παίρνει κανείς εκτός διεπαφής με blunderdb list --type tags (δείτε Διεπαφή γραμμής εντολών (CLI)).

Ο κάδος

Η διαγραφή μιας θέσης, μιας συλλογής ή ενός σχολίου περνά από έναν κάδο: η διαγραφή όντως γίνεται, αλλά ένα αντίγραφο αυτού που εξαφανίζεται φυλάσσεται τριάντα ημέρες. Η εντολή trash ανοίγει το παράθυρο που τα απαριθμεί, καθένα με Επαναφορά και Διαγραφή.

Μια επαναφερμένη θέση επιστρέφει με την ανάλυσή της και τα σχόλιά της — το να επιστραφεί γυμνή θα ήταν επαναφορά μόνο κατ” όνομα. Δεν επιστρέφει με τον παλιό της αριθμό: η αρχική γραμμή δεν υπάρχει πια, και το blunderDB την αποθηκεύει ξανά μέσω του αποτυπώματός της, πράγμα που εγγυάται ότι δεν δημιουργεί ποτέ διπλότυπο αλλά της δίνει νέο αναγνωριστικό. Μια συλλογή επιστρέφει με τη λίστα της· οι θέσεις που περιείχε δεν είχαν ποτέ διαγραφεί — μια συλλογή είναι μια όψη πάνω τους.

Ό,τι είναι παλαιότερο από τριάντα ημέρες το διαγράφει η εντολή vacuum, ποτέ το άνοιγμα μιας βάσης: το να μην κάνει κανείς vacuum σημαίνει να τα κρατά όλα.

Σημείωση

Ο κάδος δεν ταξιδεύει. Μια εξαγωγή δεν τον μεταφέρει, και η διαγραφή ενός αγώνα δεν βάζει τίποτα μέσα του: η εκκαθάριση ορφανών θέσεων που ακολουθεί τη διαγραφή ενός αγώνα είναι αυτόματη συντήρηση, όχι ενέργεια του χρήστη — βλ. τον κανόνα διατήρησης στο Πίνακας Αγώνων.

Πίνακας Αναζήτησης

Ο πίνακας Αναζήτησης (CTRL-F ή TAB) επιτρέπει το φιλτράρισμα των θέσεων σύμφωνα με κριτήρια που συνδυάζονται ελεύθερα: δομή πουλιών, τύπος απόφασης κύβου, μέγεθος σφάλματος, ημερομηνίες, ετικέτες κ.λπ. Το πλήκτρο TAB ανοίγει ταυτόχρονα τον πίνακα αναζήτησης και τον επεξεργαστή θέσης, επιτρέποντας τον ορισμό μιας δομής πουλιών προς αναζήτηση πάνω στο ταμπλό.

Πίνακας Αναζήτησης

Ο πίνακας Αναζήτησης: αριθμητικά φίλτρα, δομή πουλιών στο ταμπλό, καρτέλες Τουλάχιστον / Εκτός.

Για αναζήτηση ανάμεσα στις εμφανιζόμενες θέσεις, χρησιμοποιήστε την εντολή ss ακολουθούμενη από φίλτρα (π.χ.: ss nc, ss E>40). Η ss αναζητά στη λίστα της οθόνης: στα αποτελέσματα της προηγούμενης αναζήτησης, στην ανοιχτή συλλογή ή στις θέσεις του αγώνα που επισκοπείται, είτε η εντολή πληκτρολογείται απευθείας είτε από τον πίνακα αναζήτησης (TAB). Το πλαίσιο ελέγχου Αναζήτηση στα τρέχοντα αποτελέσματα του πίνακα ακολουθεί τον ίδιο κανόνα. Σε συλλογή και σε αγώνα, η s απορρίπτεται: θα αναζητούσε σε όλη τη βιβλιοθήκη και θα αντικαθιστούσε την εμφανιζόμενη λίστα.

Από τα αποτελέσματα μιας αναζήτησης ss που ξεκίνησε από συλλογή ή αγώνα βγαίνετε με Esc, με ένα μόνο πάτημα μόλις ούτε ένα πεδίο ούτε ο πίνακας με την εστίαση έχει κάτι να κλείσει (μια κίνηση επιλεγμένη στην ανάλυση, για παράδειγμα): το blunderDB επιστρέφει σε ολόκληρη τη συλλογή, ή στον αγώνα στην κίνηση που μελετάτε, και στη θέση που αφήσατε. Αυτή η επιστροφή ακολουθεί μόνο την ss: η s, που ξεκινά από τον πίνακα αναζήτησης ανοιγμένο πάνω σε συλλογή ή αγώνα, αναζητά σε όλη τη βιβλιοθήκη, και το Esc δεν επιστρέφει πια στη λίστα που αφήσατε.

Το πάνελ προσφέρει έναν ρητό έλεγχο του τύπου απόφασης που αναζητείται: Αδιάφορο (κανένα φίλτρο), Πιόνια (αποφάσεις κίνησης) ή Κύβος (αποφάσεις κύβου). Όταν είναι επιλεγμένο το Κύβος, μια δεύτερη λίστα προσδιορίζει τον υποτύπο: Όλα, Διπλασιασμός / Όχι (ο παίκτης που έχει τη σειρά πρέπει να αποφασίσει αν θα διπλασιάσει) ή Αποδοχή / Πάσο (απάντηση σε διπλασιασμό του αντιπάλου). Ο έλεγχος είναι συγχρονισμένος με το ταμπλό: η αλλαγή των ζαριών ή του κύβου στο ταμπλό ενημερώνει τον τύπο απόφασης, και αντίστροφα. Στη λειτουργία Αποδοχή / Πάσο, ο κύβος εμφανίζεται στο κέντρο του ταμπλό στην προσφερόμενη τιμή· η τιμή αυτή παραμένει επεξεργάσιμη.

Η φάση του παιχνιδιού — άνοιγμα, μέσο παιχνίδι, κούρσα, μάζεμα — είναι μια ετικέτα που το blunderDB υπολογίζει μόνο από το ταμπλό. Δεν είναι ποτέ επεξεργάσιμη και αναζητείται μέσω της ένδειξης ph: της γραμμής εντολών (ph:race, επαναλαμβανόμενη: ph:race ph:bearoff). Τρία από τα τέσσερα όριά της είναι εκείνα που χρησιμοποιεί το GNU Backgammon για να δρομολογήσει τα δίκτυά του· το τέταρτο, εκεί όπου σταματά το άνοιγμα, είναι σύμβαση του blunderDB: μια θέση βρίσκεται ακόμη στο άνοιγμα όσο κανένα από τα δύο στρατόπεδα δεν έχει μετακινήσει περισσότερα από τέσσερα πούλια από τα σημεία εκκίνησής του, κανένα δεν έχει βγει και κανένα δεν βρίσκεται στη μπάρα.

Σημείωση

Η ετικέτα υπολογίζεται ξανά από την εντολή blunderdb repair. Σε μια βάση που ανοίγει για πρώτη φορά με αυτή την έκδοση, ο υπολογισμός γίνεται μία φορά, κατά το άνοιγμα. Μια βάση της οποίας οι φάσεις δεν υπολογίστηκαν ποτέ δεν επιστρέφει τίποτα για το ph: — τίποτα, αντί για λανθασμένη απάντηση.

Το σύμβολο like κατατάσσει αντί να περιορίζει: η παρουσία του ταξινομεί το αποτέλεσμα κατά αύξουσα απόσταση από μια θέση-στόχο — το like την τρέχουσα, το like42 αυτή με δείκτη 42 — και τα άλλα σύμβολα περιορίζουν το σύνολο που κατατάσσεται έτσι, ώστε το s like42 E>80 να διαβάζεται «οι γειτονικές θέσεις της 42 όπου έσφαλα». Η απόσταση είναι απόσταση μεταφοράς σε pip πουλιών, η ποσότητα κίνησης πουλιών που χωρίζει δύο θέσεις, ιδωμένη από τον παίκτη που παίζει.

Μια γειτονική θέση είναι το ίδιο πρόβλημα, όχι το ίδιο σχέδιο: η κατάταξη γίνεται μέσα στην κλάση του στόχου — ίδιος τύπος απόφασης, ίδιο καθεστώς (χρήματα ή αγώνας) για μια απόφαση κύβου, και αγώνας διαφορετικός από τον δικό του, γιατί οι θέσεις που τον περιβάλλουν στην ίδια του την παρτίδα είναι οι πλησιέστερες δομές του χωρίς ποτέ να είναι γειτονικές του. Τα ζάρια, το σκορ και ο κύβος μένουν εκτός κλάσης· τα συνηθισμένα σύμβολα τα φιλτράρουν όποτε το θέλουμε. Το like42* διευρύνει την κλάση σε όλους τους τύπους απόφασης και στα δύο καθεστώτα, ποτέ στον αγώνα του στόχου· το like<12 απορρίπτει ό,τι απέχει πάνω από δώδεκα pip πουλιών. Μια κατάταξη που δεν βρίσκει τίποτα επιστρέφει κενή λίστα και το λέει, αντί για δέκα άσχετες θέσεις.

Σε λειτουργία επεξεργασίας, το s like παίρνει ως στόχο το σχεδιασμένο ταμπλό: σχεδιάζει κανείς κατά προσέγγιση τη θέση που θυμάται, εκτελεί, και η βιβλιοθήκη απαντά — εκεί όπου η αναζήτηση κατά δομή απαιτεί το ακριβές σχέδιο. Το ταμπλό διαβάζεται τότε ως θέση και όχι ως μοτίβο: ένα σημείο που έμεινε κενό μετρά ως πούλια έξω, πράγμα ακριβές για μια πραγματική θέση και που παραποιεί τον υπολογισμό για ένα σχέδιο αφημένο στη μέση.

Κάθε γειτονική θέση φέρει την απόστασή της κάτω από τους πίνακες ανάλυσης, μαζί με τη θέση με την οποία γειτονεύει. Αυτό επιτρέπει να κρίνει κανείς αν βλέπει μια γειτονική θέση ή μια σύμπτωση, και αυτός είναι ο λόγος ύπαρξης του ορίου. Η κατάταξη ξεκινά επίσης χωρίς τη γραμμή εντολών: CTRL-SHIFT-L, ή η επιλογή Γειτονικές θέσεις του μενού περιβάλλοντος του ταμπλό.

Το σύμβολο n μετρά συναντήσεις: το n>3 κρατά τις θέσεις στις οποίες καταλήγουν περισσότερες από τρεις κινήσεις, σε όλους τους αγώνες. Είναι άλλο ερώτημα από το «τι έκανα λάθος» — μια θέση που συναντήθηκε είκοσι φορές και παίχτηκε σωστά δεκαεννιά παραμένει αυτή που πρέπει να ξέρεις απ” έξω. Μετρώνται οι κινήσεις, όχι οι αγώνες: η ίδια θέση δύο φορές σε έναν αγώνα μετρά δύο, γιατί ήταν δύο αποφάσεις.

Το σχέδιο παιχνιδιού είναι μια δεύτερη παράγωγη ετικέτα, δίπλα στη φάση, και απαντά στην ερώτηση που ένα πακέτο αποθηκευμένων φίλτρων δεν μπορεί να θέσει: «δείξε μου τα λάθη μου σε holding game». Σύμβολο gt:, επαναλήψιμο (gt:holding gt:mutualholding), από την οπτική του παίκτη που παίζει — του σχεδίου μέσα στο οποίο παιρνόταν η απόφαση.

Τα δέκα αναγνωρισμένα σχέδια, με τη σειρά που οι κανόνες τα εξαντλούν, από το πιο ειδικό στο πιο γενικό:

  • race — τα πιο πίσω πούλια των δύο πλευρών διασταυρώθηκαν: καμία επαφή δεν είναι πια δυνατή. Όριο του GNU Backgammon.

  • bearin — ο παίκτης που παίζει μαζεύει τα πούλια ενώ ο αντίπαλος κρατά ακόμη άγκυρα στο σπίτι του.

  • crunch — ο παίκτης που παίζει έχει το πολύ έξι πούλια εκτός των σημείων 1 και 2 του. Κανόνας του GNU Backgammon, κατώφλι του συγγραφέα του.

  • backgame — δύο ή περισσότερες άγκυρες στο σπίτι του αντιπάλου.

  • acepoint — μία μόνο άγκυρα, στο σημείο άσσου του αντιπάλου, με τουλάχιστον είκοσι pip πίσω.

  • blitz — τρία ή περισσότερα σημεία του σπιτιού φτιαγμένα, και ο αντίπαλος στη μπάρα ή με blot προς χτύπημα σε αυτό το σπίτι.

  • primevprime — και οι δύο πλευρές κρατούν φράγμα τουλάχιστον τεσσάρων σημείων, και καθεμιά έχει ένα πούλι παγιδευμένο πίσω από το φράγμα της άλλης.

  • mutualholding — και οι δύο πλευρές κρατούν ψηλή άγκυρα.

  • holding — ο παίκτης που παίζει κρατά ψηλή άγκυρα, ο αντίπαλος όχι.

  • contact — επαφή, και κανένα από τα παραπάνω σχέδια. Το άνοιγμα καταλήγει εδώ.

Τρεις από αυτούς τους κανόνες είναι του ίδιου του GNU Backgammon και τεκμηριώνονται· οι υπόλοιποι είναι συμβάσεις του blunderDB. Η βιβλιογραφία του τάβλι περιγράφει τα σχέδια παιχνιδιού χωρίς να αριθμεί τα όριά τους, και καμία μέτρηση συμφωνίας μεταξύ ταξινομητών δεν έχει δημοσιευτεί για αυτό το πρόβλημα. Τα μη τεκμηριωμένα κατώφλια — τρία σημεία σπιτιού για blitz, τέσσερα σημεία για φράγμα, είκοσι pip πίσω για ace-point game — δηλώνονται λοιπόν εδώ αντί να κρύβονται στον κώδικα, και είναι εκδοσιοποιημένα: αλλάξτε τα, τρέξτε blunderdb repair, και όλη η βάση ξαναετικετάρεται.

Σημείωση

Μία ετικέτα κρατιέται ανά θέση, αυτή του παίκτη που παίζει. Μια παράγωγη ετικέτα δεν είναι ποτέ επεξεργάσιμη, δεν εξάγεται ποτέ ως αλήθεια, και μια βάση της οποίας τα σχέδια δεν υπολογίστηκαν ποτέ δεν επιστρέφει τίποτα για gt: — όπως και για ph:.

Το φίλτρο Επισημασμένη διατηρεί τις θέσεις που επισημάνατε στο λογισμικό προέλευσης του αγώνα. Μόνο το eXtreme Gammon παράγει αυτή την πληροφορία, καταγεγραμμένη κίνηση προς κίνηση στο αρχείο .xg· το blunderDB τη διαβάζει κατά την εισαγωγή και τη διατηρεί. Μια επισημασμένη απόφαση κύβου δίνει δύο επισημασμένες θέσεις, τον διπλασιασμό και την αποδοχή/πάσο, καθώς το blunderDB χωρίζει στα δύο ό,τι το αρχείο προέλευσης καταγράφει ως μία απόφαση.

Σημείωση

Η επισήμανση δεν είναι αναδρομική: οι αγώνες που βρίσκονται ήδη στη βάση δεν φέρουν αυτή την πληροφορία, καθώς υπάρχει μόνο στα αρχεία προέλευσης. Αρκεί να εισαγάγετε ξανά το σχετικό αρχείο .xg — η εισαγωγή εντοπίζει το διπλότυπο και δεν προσθέτει τίποτε άλλο πέρα από τις επισημάνσεις, χωρίς να θίγει τα υπάρχοντα σχόλια ή τις αναλύσεις. Η επισήμανση δεν μπορεί ούτε να τεθεί ούτε να αφαιρεθεί από το blunderDB: για έναν προσωρινό κατάλογο εργασίας, χρησιμοποιήστε καλύτερα μια συλλογή.

Το φίλτρο Σχόλιο ερευνά τα σχόλια που συνδέονται με τις θέσεις σε τρεις αποκλειστικές λειτουργίες. περιέχει κείμενο αναζητά μία ή περισσότερες λέξεις στο κείμενο των σχολίων (πεδίο εισαγωγής, λέξεις χωρισμένες με ;, τουλάχιστον μία πρέπει να ταιριάζει)· έχει σχόλιο διατηρεί κάθε θέση που φέρει σχόλιο, ανεξάρτητα από το περιεχόμενό του· χωρίς σχόλιο διατηρεί αντιθέτως τις μη σχολιασμένες θέσεις — χρήσιμο, σε συνδυασμό με φίλτρο σφάλματος ή ημερομηνίας, για να καταρτίσετε τον κατάλογο όσων απομένουν προς σχολιασμό.

Σημείωση

Τα σχόλια που εισάγονται από αρχείο αγώνα (XG, GNUbg) μετρούν ως σχόλια. Για να κρατήσετε μόνο τα δικά σας, προσθέστε την ένδειξη co:user στη γραμμή εντολών (τα co:xg, co:gnubg, co:bgf και co:unknown δηλώνουν τις άλλες προελεύσεις). Εξάλλου, τα σχόλια που συνδέονται με έναν αγώνα ή ένα τουρνουά δεν αφορούν αυτό: σχολιάζουν τον αγώνα ή το τουρνουά, όχι τις θέσεις του.

Το φίλτρο Αγώνες & Τουρνουά στηρίζεται σε έναν κοινό επιλογέα (παράθυρο διαλόγου) αντί για την πληκτρολόγηση αριθμητικών αναγνωριστικών: δύο λίστες με πλαίσια ελέγχου, μία για τους αγώνες και μία για τα τουρνουά, καθεμία φιλτραρίσιμη με κείμενο (παίκτης, ημερομηνία, διοργάνωση για τους αγώνες· όνομα, ημερομηνία, τοποθεσία για τα τουρνουά), με κουμπιά Όλα / Κανένα που ενεργούν μόνο στο τρέχον φιλτραρισμένο υποσύνολο. Η επιλογή ενός τουρνουά επιλέγει αυτόματα (και γκριζάρει) τους αγώνες-μέλη του στη λίστα αγώνων, καθιστώντας εμφανές ότι ένα τουρνουά ισοδυναμεί με το σύνολο των αγώνων του.

Ο πίνακας αναζήτησης διαθέτει τρεις καρτέλες στο αριστερό του άκρο: Recherche (τα φίλτρα), Historique και Enregistrés. Η καρτέλα Historique παραθέτει τις προηγούμενες αναζητήσεις με την ημερομηνία και την εντολή τους: ένα κλικ επιλέγει μια αναζήτηση και εμφανίζει τη σχετική θέση στο ταμπλό, ένα διπλό κλικ την εκτελεί ξανά. Κάθε καταχώριση μπορεί να αποθηκευτεί στη βιβλιοθήκη φίλτρων (εικονίδιο σελιδοδείκτη, δίνοντας ένα όνομα στο φίλτρο) ή να διαγραφεί. Η καρτέλα Enregistrés περιέχει τη βιβλιοθήκη φίλτρων: κάντε διπλό κλικ σε ένα αποθηκευμένο φίλτρο για να εκτελέσετε ξανά την αντίστοιχη αναζήτηση (βλ. Παράρτημα: Προχωρημένη χρήση των φίλτρων). Η εντολή history (ψευδώνυμο hi) ανοίγει τον πίνακα αναζήτησης.

Το αστέρι ενός φίλτρου της βιβλιοθήκης το καρφιτσώνει. Τα καρφιτσωμένα φίλτρα εμφανίζονται ως ετικέτες στην κορυφή του πλαισίου, όποια καρτέλα κι αν είναι ανοιχτή, αριθμημένα με τη σειρά της βιβλιοθήκης: ένα κλικ σε μια ετικέτα εκτελεί το φίλτρο, και τα ALT-1 … ALT-9 εκτελούν το καρφιτσωμένο φίλτρο αυτής της θέσης από οποιαδήποτε οθόνη σε λειτουργία NORMAL ή EDIT, χωρίς να ανοίξει το πλαίσιο. Το φίλτρο θέτει τότε την ίδια ερώτηση με το διπλό κλικ, μαζί με τη δομή των πουλιών. Το καρφίτσωμα ανήκει στη βάση: ακολουθεί ένα φίλτρο που μετονομάζεται, εξαφανίζεται με ένα φίλτρο που διαγράφεται και δεν ταξιδεύει με την εξαγωγή της βιβλιοθήκης.

Μια αναζήτηση που ξαναεκτελείται διατηρεί την κατάταξή της: η s like42 κατατάσσει ως προς τη θέση 42 και η s like ως προς το ταμπλό που αποθηκεύτηκε με την αναζήτηση — αυτό που περιηγούνταν ή είχε σχεδιαστεί. Μια καταχώριση που δεν κράτησε ταμπλό δεν ξαναεκτελείται με το ταμπλό της οθόνης, και η γραμμή κατάστασης το αναφέρει.

Πρακτική συμβουλή

Ανατρέξτε στο λίστα εντολών για τη λίστα των διαθέσιμων φίλτρων.

Πίνακας Συλλογών

Πίνακας Συλλογών

Ο πίνακας Συλλογών: όνομα, αριθμός θέσεων, περιγραφή, τελευταία τροποποίηση.

Ο πίνακας Συλλογές (CTRL-B) διαχειρίζεται συλλογές θέσεων. Οι συλλογές μπορούν να δημιουργηθούν, να μετονομαστούν και να διαγραφούν. Θέσεις μπορούν να προστεθούν ή να αφαιρεθούν (πλήκτρο Delete, ζητείται επιβεβαίωση). Διπλό κλικ σε μια συλλογή για να περιηγηθείτε στις θέσεις της με τα πλήκτρα ΑΡΙΣΤΕΡΑ και ΔΕΞΙΑ. Η εντολή ss αναζητά ανάμεσα στις θέσεις της ανοιχτής συλλογής· το Esc επιστρέφει έπειτα στη συλλογή (βλ. Πίνακας Αναζήτησης). Η σειρά των συλλογών και των θέσεων μέσα σε μια συλλογή αλλάζει με μεταφορά και απόθεση. Πατήστε CTRL-B ή εκτελέστε την εντολή collection για να εμφανίσετε ή να αποκρύψετε τον πίνακα.

Εισαγωγή: τι γράφεται, τι δεν γράφεται ποτέ

Η εισαγωγή ενός αγώνα, μιας θέσης ή μιας άλλης βάσης προσθέτει ό,τι λείπει· δεν αντικαθιστά ό,τι υπάρχει ήδη.

  • Μια θέση δεν διπλασιάζεται ποτέ. Είναι η ταυτότητά της — πούλια, κύβος, ζάρια, σκορ — που την αναγνωρίζει, ποτέ το αρχείο από το οποίο προέρχεται: η ίδια θέση που συναντάται σε δύο αγώνες παραμένει μία μόνο γραμμή.

  • Μία ανάλυση ανά μηχανισμό. Το eXtreme Gammon, το GNUbg, το BGBlitz και ο ενσωματωμένος αξιολογητής συνυπάρχουν πάνω στην ίδια θέση, και ο πίνακας Ανάλυσης δείχνει την προέλευση της καθεμιάς. Η εισαγωγή της μιας δεν σβήνει την άλλη.

  • Μια εισαγόμενη ανάλυση δεν ξαναϋπολογίζεται ποτέ. Το blunderDB την τακτοποιεί ως έχει, με την ετικέτα επιπέδου της («3-ply», «XG Roller++», «Book»), τις ισοδυναμίες της, τα σφάλματά της, τις πιθανότητές της και την τύχη της ζαριάς. Ο κανόνας είναι «μια αξιολόγηση γεμίζει μόνο ένα κενό»: η αυτόματη ανάλυση μετά την εισαγωγή επισκέπτεται μόνο τις θέσεις χωρίς καμία ανάλυση, και η Επανάλυση παρωχημένων θέσεων αφήνει ανέπαφη κάθε θέση που φέρει εισαγόμενη ανάλυση (βλ. Ρυθμίσεις).

  • Η επανεισαγωγή του ίδιου αρχείου δεν ξαναγράφει τίποτα. Ο αγώνας αναγνωρίζεται ως ήδη παρών· προστίθενται μόνο οι σημάνσεις που τέθηκαν στο λογισμικό προέλευσης, χωρίς να θιγούν ούτε τα σχόλια ούτε οι αναλύσεις.

  • Ό,τι το blunderDB δεν γράφει ποτέ: μια ξαναϋπολογισμένη τύχη — διαβάζεται από το αρχείο πηγής, ή παραμένει άγνωστη — και ένα rollout, του οποίου δεν ανοίγει τα δεδομένα μέσα σε ένα αρχείο .xg και το οποίο δεν ξέρει να παράγει.

Μια συλλογή μπορεί να είναι ζωντανή: το περιεχόμενό της δεν είναι πια χειροποίητη λίστα αλλά το αποτέλεσμα μιας αναζήτησης, επανυπολογισμένο κάθε φορά που ανοίγει. Το κουμπί ◇ στην κεφαλή της συλλογής την κάνει ζωντανή με την τελευταία αναζήτηση· το ◈ λέει ότι ήδη είναι, και το ίδιο κουμπί της επιστρέφει τη λίστα. Τίποτα δεν καταστρέφεται: οι θέσεις που περιείχε είναι ακόμη εκεί όταν γυρίσετε πίσω.

Μια ζωντανή συλλογή της οποίας το ερώτημα φέρει σύμβολο που αυτή η έκδοση δεν γνωρίζει πια αρνείται να ανοίξει, και το λέει, αντί να επιστρέψει όλη τη βάση. Είναι η μοναδική βλάβη που ένα αποθηκευμένο φίλτρο δεν πρέπει να έχει: να διευρύνεται σιωπηλά.

Πίνακας Αγώνων

Ο πίνακας Αγώνων (CTRL-Tab) παραθέτει τους εισηγμένους αγώνες. Κάντε διπλό κλικ σε έναν αγώνα (ή πατήστε ENTER) για να πλοηγηθείτε στις κινήσεις του. Η εντολή m συνεχίζει την πλοήγηση στον τελευταίο αγώνα που επισκεφτήκατε.

Ο χρήστης μπορεί:

  • να περιηγηθεί στις κινήσεις ενός αγώνα χρησιμοποιώντας τα πλήκτρα ΑΡΙΣΤΕΡΑ και ΔΕΞΙΑ,

  • να μεταβεί από τη μία παρτίδα στην άλλη με τη βοήθεια των πλήκτρων PageUp και PageDown,

  • να εμφανίσει την ανάλυση των κινήσεων (πουλιά και κύβος) πατώντας CTRL-L,

  • να εναλλάσσεται μεταξύ της ανάλυσης κινήσεων πουλιών και κύβου με το πλήκτρο d,

  • να δει την κίνηση που παίχτηκε πραγματικά επισημασμένη στην ανάλυση,

  • να αναζητήσει ανάμεσα στις θέσεις του αγώνα με την εντολή ss (π.χ.: ss E>80)· το Esc επιστρέφει έπειτα στην κίνηση που μελετάται (βλ. Πίνακας Αναζήτησης).

Η τελευταία θέση που επισκεφτήκατε σε κάθε αγώνα αποθηκεύεται και επαναφέρεται αυτόματα. Πατήστε CTRL-Tab ή εκτελέστε την εντολή match για να εμφανίσετε ή να αποκρύψετε τον πίνακα.

Το κουμπί ⊕ μιας γραμμής εμπλουτίζει αυτόν τον αγώνα από ένα αρχείο. Πίσω του δεν υπάρχει τίποτα καινούργιο: το να ξαναεισαγάγεις τον ίδιο αγώνα σε άλλη μορφή τον εμπλουτίζει ήδη επιτόπου — το κανονικό αποτύπωμα αναγνωρίζει ότι πρόκειται για τον ίδιο αγώνα, και οι αναλύσεις και τα σχόλια του δεύτερου αρχείου συμπληρώνουν το πρώτο. Αυτό που προσθέτει το κουμπί είναι ότι το βρίσκεις: κανείς δεν μαντεύει ότι μια εισαγωγή είναι και εμπλουτισμός. Η αναφορά που ακολουθεί λέει ποιο από τα δύο συνέβη — «εμπλουτισμένοι: 1» αντί για «εισηγμένοι: 1».

Κάθε αγώνας μπορεί να εξαχθεί σε μεταγραφή Jellyfish .mat μέσω του κουμπιού ⬇ της λίστας αγώνων ή του κουμπιού .mat της καρτέλας του αγώνα.

Ένα κλικ σε έναν αγώνα ανοίγει την καρτέλα του. Η ετικέτα της Καταγραφή παραθέτει τις κινήσεις παρτίδα προς παρτίδα, και ένα κλικ σε μια κίνηση μεταφέρει εκεί την επανεξέταση. Κάθε κίνηση φέρει εκεί τη σοβαρότητά της: ? για ένα σφάλμα, ?? για ένα blunder, μια χρωματιστή γραμμή στο περιθώριο της σειράς, και το κόστος της κίνησης σε equity όταν ο δείκτης περνά πάνω από τη σήμανση. Τα κατώφλια είναι εκείνα της βάσης (Ρυθμίσεις), τα ίδια με τα οποία μετρούν τα στατιστικά. Η κίνηση κρίνεται όπως παίχτηκε: η ίδια θέση που παίχτηκε δύο φορές στον αγώνα λαμβάνει δύο κρίσεις. Μια κίνηση που η ανάλυση δεν βαθμολογεί δεν φέρει καμία σήμανση.

Η κεφαλίδα κάθε παρτίδας μετρά τις σημάνσεις της, είτε είναι ανοιχτή είτε όχι: βλέπει κανείς χωρίς να την ανοίξει σε ποια παρτίδα βρίσκονται τα blunders.

Το κουμπί Συγχώνευση παικτών της γραμμής εργαλείων του πίνακα ανοίγει ένα παράθυρο που παραθέτει όλα τα ονόματα παικτών της βάσης με τον αριθμό των αγώνων τους: επιλέξτε τις παραλλαγές ορθογραφίας του ίδιου παίκτη, επιλέξτε το κανονικό όνομα που θα διατηρηθεί και έπειτα συγχωνεύστε. Χρήσιμο για την ενοποίηση των στατιστικών ανά παίκτη όταν ο ίδιος παίκτης εμφανίζεται με πολλά ονόματα.

Όταν ένας αγώνας είναι ανοιχτός, μια γραμμή πληροφοριών εμφανίζεται πάνω από το ταμπλό: υπενθυμίζει τους παίκτες που συμμετέχουν (παίκτης 1 εναντίον παίκτης 2) καθώς και το πλαίσιο του αγώνα (διοργάνωση, τόπος, γύρος, ημερομηνία και μήκος του αγώνα, όταν αυτές οι πληροφορίες είναι διαθέσιμες). Αυτή η γραμμή εμφανίζεται και εκτός της λειτουργίας αγώνα: όταν μια μελετώμενη θέση (που προκύπτει από μια αναζήτηση, μια συλλογή ή μια άμεση πρόσβαση) προέρχεται από έναν ή περισσότερους αγώνες, υποδεικνύει την προέλευσή της — τον πρώτο σχετικό αγώνα και, ενδεχομένως, ένα σήμα «+N» που παραθέτει τους υπόλοιπους κατά το πέρασμα του δείκτη. Μια θέση που εισήχθη μεμονωμένα, την οποία δεν αναφέρει κανένας αγώνας, δεν εμφανίζει τίποτα.

Οι καρτέλες Αναζήτηση και Eval αντικαθιστούν το ταμπλό με ένα ταμπλό εργασίας: ένα πανό στο πάνω μέρος του ταμπλό το δηλώνει («Ταμπλό αναζήτησης», «Ταμπλό αξιολόγησης») και η γραμμή πληροφοριών αποκρύπτεται όσο θα περιέγραφε μια θέση που δεν εμφανίζεται στην οθόνη. Η επιστροφή στην ανάλυση επαναφέρει τη θέση που μελετάτε.

Κατά το άνοιγμα μιας βάσης που περιέχει ματς, το πλαίσιο Ματς εμφανίζεται αμέσως και η ανασκόπηση ξεκινά απευθείας από την πρώτη θέση, ώστε να μπορείτε να ξεκινήσετε αμέσως την πλοήγηση.

Σημείωση

Μια βάση δεδομένων μπορεί να ανοιχτεί για εγγραφή μόνο από ένα παράθυρο τη φορά. Αν ανοίξετε μια βάση ήδη ανοιχτή σε άλλο παράθυρο του blunderDB, ανοίγει μόνο για ανάγνωση: η περιήγηση, η αναζήτηση και η ανάλυση παραμένουν δυνατές, αλλά κάθε τροποποίηση είναι απενεργοποιημένη και η γραμμή τίτλου εμφανίζει «[μόνο για ανάγνωση]».

Πρακτική συμβουλή

Ανατρέξτε στο Συντομεύσεις πληκτρολογίου για τις διαθέσιμες συντομεύσεις.

Πίνακας Μεταγραφής

Ο πίνακας Μεταγραφή (CTRL-SHIFT-T, εντολή transcribe ή tr) χρησιμεύει για να πληκτρολογήσετε έναν αγώνα που έχετε μπροστά σας — ένα φύλλο αγώνα, μια βιντεοσκόπηση — και να τον κάνετε αγώνα της βιβλιοθήκης. Αυτό που πληκτρολογείται είναι ένα προσχέδιο: ζει μέσα στη βάση, κλείνει και ανοίγει ξανά, και δεν μπαίνει ούτε στα στατιστικά ούτε στις αναζητήσεις όσο δεν έχει αποθηκευτεί ως αγώνας.

Ο πίνακας ανοίγει με τη λίστα των προσχεδίων της βάσης: τελευταία τροποποίηση, παίκτες, μήκος, αριθμός ενεργειών και ο αγώνας που έχει ήδη παραχθεί (# ακολουθούμενο από το αναγνωριστικό του) ή η ένδειξη «κανένας αγώνας». Ένα κλικ ανοίγει ένα προσχέδιο, και το κουμπί Προσχέδια της μπάρας επιστρέφει εκεί. Το κουμπί Νέα μεταγραφή ανοίγει τη φόρμα δημιουργίας.

Η λίστα διατρέχεται και από το πληκτρολόγιο: ΚΑΤΩ και ΠΑΝΩ (ή j και k) μετακινούν την επισήμανση, το ENTER ανοίγει το επισημασμένο προσχέδιο, το n ανοίγει τη φόρμα. Το πρώτο προσχέδιο είναι επισημασμένο κατά το άνοιγμα και είναι το πιο πρόσφατα τροποποιημένο: η επανάληψη της χθεσινής δουλειάς κοστίζει επομένως δύο πλήκτρα, CTRL-SHIFT-T και μετά ENTER.

Η φόρμα ζητά ένα μόνο πράγμα: τη διάρκεια του αγώνα. Η τιμή 0 δηλώνει παρτίδα για χρήματα και εμφανίζει τα πλαίσια Jacoby και Beaver. Το πεδίο ανοίγει με τη διάρκεια του τελευταίου τροποποιημένου προσχεδίου, ή με 7 όταν η βάση δεν περιέχει κανένα. Τα ονόματα των παικτών δεν ζητούνται: το προσχέδιο ονομάζει τις πλευρές Παίκτης 1 και Παίκτης 2, και η λίστα δείχνει «Χωρίς όνομα».

Όλα όσα συνάγονται από ό,τι πληκτρολογήθηκε — το μήκος του αγώνα (ή «Χρήματα»), το σκορ, η ένδειξη Crawford όταν η τρέχουσα παρτίδα είναι τέτοια, ο αριθμός της παρτίδας, η κατάσταση του κύβου — η αξία του, κεντραρισμένος ή στο όνομα εκείνου που τον κατέχει — και η πλευρά που παίζει — εμφανίζονται στη μπάρα του αγώνα, πάνω από το ταμπλό: εκεί βρίσκεται ήδη το βλέμμα όταν αναρωτιέται κανείς ποιος παίζει. Η αναμενόμενη ενέργεια, αντίθετα, γράφεται ολογράφως στη γραμμή κατάστασης: «ζάρια του Kévin», «απάντηση της Alice στο διπλό».

Η μπάρα του προσχεδίου, στην κορυφή του πίνακα, φέρει μόνο τις κινήσεις που βγάζουν το προσχέδιο από τον εαυτό του, τα δύο βέλη αναίρεσης και τον προσανατολισμό του ταμπλό.

Ο παίκτης 1 παραμένει στο κάτω μέρος του ταμπλό, όποιος κι αν έχει τη σειρά. Ένας αγώνας που μεταγράφεται είναι μια παρτίδα που εξελίσσεται: η σειρά αλλάζει σε κάθε ημικίνηση, και το να την ακολουθεί κανείς θα αναποδογύριζε το ταμπλό από τη μια σειρά στην άλλη — τα πούλια που μόλις κοίταξε θα περνούσαν πάνω και το μάτι θα ξανάκανε τη διαδρομή σε κάθε ζαριά. Η σειρά διαβάζεται από τα ζάρια, που αλλάζουν πλευρά. Το κουμπί ⇅ της μπάρας αναστρέφει το ταμπλό και δείχνει τον παίκτη 2 κάτω· δεν τροποποιεί το προσχέδιο, και η προβολή επανέρχεται στη θέση της με το κλείσιμο. Να μη συγχέεται με το κουμπί Εναλλαγή παικτών του πίνακα Μεταδεδομένων, που εναλλάσσει τους δύο παίκτες μέσα στο ίδιο το έγγραφο.

Το κουμπί Μεταδεδομένα της μπάρας ξεδιπλώνει την κεφαλίδα του προσχεδίου, ανά πάσα στιγμή: τα ονόματα των δύο παικτών — με αυτόματη συμπλήρωση από τους παίκτες της βάσης —, τη διοργάνωση, τον τόπο, τον γύρο, την ημερομηνία (τη σημερινή από προεπιλογή), τον καταγραφέα (τον χρήστη της βάσης από προεπιλογή) και το τουρνουά στο οποίο θα ενταχθεί ο αγώνας κατά την αποθήκευση. Κανένα πεδίο δεν είναι υποχρεωτικό: ένα προσχέδιο χωρίς ονόματα αποθηκεύεται και εξάγεται το ίδιο, με κενές κεφαλίδες. Το κουμπί Αντιστροφή των παικτών ανταλλάσσει τα δύο ονόματα, δίνει όλες τις ενέργειες στην απέναντι πλευρά και γυρίζει το ταμπλό: είναι ο ίδιος αγώνας, διαβασμένος από την άλλη πλευρά.

Η διάρκεια του αγώνα αλλάζει από το ίδιο αυτό παράθυρο, ανά πάσα στιγμή: το σκορ, το παιχνίδι Crawford και το σύστημα αναφοράς — παιχνίδι για χρήματα όταν η διάρκεια είναι 0, οπότε εμφανίζονται τα πλαίσια Jacoby και Beaver — υπολογίζονται ξανά από τη μια άκρη του προσχεδίου ως την άλλη, και οι ενέργειες που καταγράφηκαν μετά τη νίκη σημειώνονται «πέρα από το τέλος» χωρίς να διαγραφεί καμία. Η διάρκεια ανήκει στην ταυτότητα μιας θέσης: μετά από μια αποθήκευση, αλλάζοντάς την και αποθηκεύοντας ξανά γράφονται ολοκαίνουργιες θέσεις, προς ανάλυση, ενώ οι παλιές εξαφανίζονται μόλις τίποτα δεν τις κρατά πια.

Κάτω από την μπάρα, το προσχέδιο καταλαμβάνει τρεις περιοχές: την παλέτα των στόχων του ποντικιού, τις υποψήφιες κινήσεις και το μεταγράφημα. Διατάσσονται ανάλογα με το πλάτος του πίνακα. Σε έναν φαρδύ πίνακα — το κάτω dock — και οι τρεις βρίσκονται δίπλα δίπλα, με την παλέτα αριστερά. Σε έναν μεσαίο πίνακα, οι υποψήφιες κινήσεις καταλαμβάνουν το πάνω μέρος και το μεταγράφημα έρχεται δίπλα στο τρίγωνο των ζαριών, στον χώρο που εκείνο αφήνει στα δεξιά του. Σε έναν στενό πίνακα οι τρεις ακολουθούν η μία την άλλη: υποψήφιες κινήσεις, παλέτα, μεταγράφημα — το τρίγωνο και το μεταγράφημα δεν χωρούν εκεί δίπλα δίπλα χωρίς να κοπεί η δεύτερη στήλη του μεταγραφήματος, και αρκεί να πλατύνει κανείς το dock κατά μερικές δεκάδες εικονοστοιχεία για να ενωθούν. Σε κάθε περίπτωση ο κανόνας είναι ο ίδιος: τίποτα δεν παρεμβάλλεται ανάμεσα στα δύο κουτιά της ζαριάς και στην πρώτη γραμμή των υποψήφιων κινήσεων, και τουλάχιστον πέντε υποψήφιες κινήσεις διαβάζονται χωρίς καμία κύλιση.

Η παλέτα δείχνει τα δύο ζάρια καθώς εισάγονται· ένα κλικ πάνω τους τα σβήνει, όπως το BACKSPACE. Μια παρτίδα αρχίζει με την πρώτη της κίνηση, που την παίζει ο νικητής της ζαριάς έναρξης: τα δύο ζάρια της πληκτρολογούνται όπως αυτή η ζαριά, το ζάρι του παίκτη 1 και έπειτα του παίκτη 2, και το μεγαλύτερο δίνει την κίνηση στην πλευρά του, που παίζει και τα δύο ζάρια. Η κίνηση επιλέγεται έπειτα ανάμεσα στις υποψήφιες, όπως κάθε άλλη. Οι ισοπαλίες, που ξαναρίχνονται στο τραπέζι, δεν μεταγράφονται· μια πρώτη κίνηση πληκτρολογημένη ως διπλή καταγράφεται όπως είναι και επισημαίνεται «ασυνεπή ζάρια», αφού καμία ζαριά έναρξης δεν είναι διπλή, και ένας διπλασιασμός του κύβου πριν από την πρώτη κίνηση επισημαίνεται «αδύνατη ενέργεια κύβου». Μια ενέργεια κύβου που καταχωρίζεται μετά το τέλος μιας παρτίδας φέρει την ίδια σήμανση: μένει στην ολοκληρωμένη παρτίδα, δεν ανοίγει νέα και διαγράφεται με το χέρι.

Μόλις πέσει το δεύτερο ζάρι, καταγράφονται όλες οι νόμιμες κινήσεις της ριξιάς, κατατεταγμένες από την ενσωματωμένη μηχανή, η πρώτη προεπιλεγμένη και τα βέλη της τοποθετημένα στο ταμπλό. Η λίστα δίνει την κίνηση, την ισοδυναμία της και την απόκλισή της από την καλύτερη: μεταγράφω σημαίνει αναγνωρίζω την κίνηση που είδα να παίζεται, όχι την κρίνω — γι” αυτό υπάρχει ο πίνακας Αξιολόγηση. Αυτή η κατάταξη είναι μια αξιολόγηση: εμφανίζεται, δεν γράφεται ποτέ στη βάση. Όταν η μηχανή δεν είναι διαθέσιμη, οι κινήσεις καταγράφονται χωρίς κατάταξη και η λίστα το λέει στην κορυφή της.

Ο τροχός επιλέγει την επόμενη ή την προηγούμενη υποψήφια, τόσο πάνω από τη λίστα όσο και πάνω από το ταμπλό: το βλέμμα μένει στο ταμπλό και τα βέλη περνούν, πράγμα που αναγνωρίζει μια κίνηση γρηγορότερα από την ανάγνωση της σημειογραφίας της. Ένα κλικ σε μια γραμμή την επιλέγει, ένα διπλό κλικ την επικυρώνει.

Το τρίγωνο των είκοσι ενός ζαριών βρίσκεται κάτω από τα δύο κελιά της ζαριάς, δίπλα στο πληκτρολόγιο και όχι στη θέση του: δύο ψηφία παραμένουν δύο φορές ταχύτερα από ένα κλικ, και το τρίγωνο υπάρχει για όποιον καταγράφει με το χέρι στο ποντίκι. Ένα κελί ανά ζαριά, ποτέ δύο: το 3-1 και το 1-3 είναι η ίδια ζαριά.

Μια κίνηση που παίζεται στο ταμπλό γλιτώνει το διάβασμα των ζαριών. Όσο δεν έχει εισαχθεί κανένα ζάρι, ένα κλικ σε ένα πούλι και έπειτα στον προορισμό του — ή ένα σύρσιμο από το ένα στο άλλο — παίζει την κίνηση στο ταμπλό, περιορισμένη στις νόμιμες κινήσεις· οι προορισμοί που προσφέρει το επιλεγμένο πούλι φωτίζονται. Τα δύο ζάρια προκύπτουν από τα βήματα: παίζοντας 13/7 και μετά 8/7 λέει 6-1 χωρίς να έχει πληκτρολογηθεί ψηφίο, και η ενέργεια καταγράφεται μόλις η κίνηση ολοκληρωθεί. Το Backspace αναιρεί το τελευταίο βήμα, ένα ψηφίο εγκαταλείπει την κίνηση και επιστρέφει στην εισαγωγή ζαριών, και ένα διπλό κλικ έξω από το ταμπλό την ξαναρχίζει. Όταν πολλές ζαριές δίνουν την ίδια κίνηση — ένα βγάλσιμο που καλύπτουν πολλά ζάρια, ένα ζάρι που δεν παίζεται — τίποτα δεν καταγράφεται και το τρίγωνο αφήνει πατήσιμες μόνο αυτές τις ζαριές: η ζαριά δεν μαντεύεται ποτέ στη θέση εκείνου που παρακολουθεί την παρτίδα.

Με τα δύο ζάρια εισηγμένα, το ταμπλό παίζει κι αυτό, περιορισμένο στις νόμιμες κινήσεις αυτής της ζαριάς — στο τέλος του εγγράφου όπως και σε μια ενέργεια που επανεξετάζεται, της οποίας τα ζάρια φόρτωσε ο δρομέας. Κάθε βήμα που παίζεται κρατά στη λίστα μόνο τις υποψήφιες κινήσεις που το περιέχουν, με την πρώτη προεπιλεγμένη: είναι η χειρονομία για την κίνηση που βρίσκεται μακριά στη λίστα, εκεί όπου η κάθοδος στη δωδέκατη υποψήφια κοστίζει δεκατρία πλήκτρα. Μια ολοκληρωμένη νόμιμη κίνηση καταγράφεται αμέσως, με τα ζάρια όπως πληκτρολογήθηκαν· σε μια ενέργεια που επανεξετάζεται, την αντικαθιστά.

Μια παράνομη κίνηση μεταγράφεται όπως παίχτηκε, χωρίς κουμπί και χωρίς αλλαγή λειτουργίας. Με τα ζάρια εισηγμένα, ένα σύρσιμο που καμία νόμιμη κίνηση δεν προσφέρει τοποθετεί το πούλι εκεί όπου αφήνεται — ακόμη και από σημείο από το οποίο δεν ξεκινά καμία νόμιμη κίνηση, αρκεί να φέρει πούλι της πλευράς που παίζει. Η κίνηση βγαίνει τότε από τους κανόνες: η συνέχεια παίζεται ελεύθερα, με κλικ όπως και με σύρσιμο, η λίστα των υποψήφιων κινήσεων δίνει τη θέση της σε μια γραμμή που το υπενθυμίζει, και τίποτα δεν καταγράφεται πριν από το ENTER, που γράφει τα ζάρια που εισήχθησαν, τα βήματα και το ταμπλό που προέκυψε. Το Backspace αναιρεί το τελευταίο βήμα· η αναίρεση του μόνου βήματος εκτός κανόνων επαναφέρει τη λίστα. Χωρίς εισηγμένα ζάρια, το σύρσιμο μένει περιορισμένο: μια παράνομη κίνηση δεν λέει ποια ριξιά την παρήγαγε.

Η κίνηση πληκτρολογείται επίσης, μέσα στο μεταγραφικό. Ένα διπλό κλικ στο κελί μιας κίνησης — ή ενός χορού, μιας μη καταγεγραμμένης κίνησης — το μετατρέπει σε πεδίο, προσυμπληρωμένο με τη σημειογραφία του. Εκεί πληκτρολογείται μόνο η κίνηση, 13/7 8/7*, bar/22 ή 6/off: τα ζάρια είναι εκείνα του κελιού. Το ENTER την καταγράφει στη θέση της γραμμένης κίνησης, το ESC κλείνει το κελί χωρίς να γράψει τίποτα, και ένα κείμενο που δεν λέει καμία κίνηση αφήνει το πεδίο ανοιχτό. Το διακεκομμένο κελί της τρέχουσας εισαγωγής ανοίγει με τον ίδιο τρόπο, μόλις εισαχθούν και τα δύο ζάρια του.

Μια κίνηση που εισήχθη με το ελεύθερο σύρσιμο ή με τη σημειογραφία και τυχαίνει να είναι νόμιμη παραμένει συνηθισμένη κίνηση — η σύγκριση γίνεται στο ταμπλό που προέκυψε, ποτέ στην προέλευση της χειρονομίας· αλλιώς σημειώνεται «παράνομη κίνηση» στο μεταγραφικό, και η εξαγωγή .mat προειδοποιεί πριν γράψει το αρχείο, χωρίς ποτέ να αρνείται.

Στη γραμμή των ζαριών, η σειρά Διπλασιασμός, Αποδοχή, Πάσο, Παραίτηση φέρνει στο ποντίκι τις τέσσερις χειρονομίες του κύβου: είναι, μαζί με τα δύο ζάρια, οι πέντε δυνατές απαντήσεις σε ένα μόνο ερώτημα — τι έκανε η πλευρά που παίζει; Λέει σε ποιον ανήκει η σειρά: η πλευρά που παίζει ανακοινώνει — διπλασιασμός, παραίτηση — ή η αντίπαλη πλευρά απαντά — αποδοχή, πάσο· ποτέ και τα τέσσερα μαζί, και ένα κουμπί του οποίου η χειρονομία δεν θα απαντούσε σε τίποτα μένει σβηστό. Το πληκτρολόγιο, αντίθετα, δεν αρνείται ποτέ τίποτα: ένα σβηστό κουμπί είναι στόχος που δεν προσφέρεται, όχι απαγορευμένη χειρονομία. Η «Παραίτηση» δεν καταγράφει ακόμη τίποτα: η σειρά γίνεται τα τρία επίπεδα — απλό, gammon, backgammon — και «Ακύρωση», που διπλασιάζει το πλήκτρο ESC. Ο κύβος που είναι σχεδιασμένος στο ταμπλό είναι ο δεύτερος στόχος αυτών των χειρονομιών: ένα κλικ πάνω του προτείνει διπλασιασμό. Μπροστά σε μια προσφορά δεν απαντά — η αποδοχή και το πάσο είναι δύο συμμετρικές απαντήσεις και ζουν μαζί στη σειρά, ένα κλικ η καθεμία.

Η γραμμή κατάστασης λέει με μια λέξη τι περιμένει το προσχέδιο: τον χορό που καταγράφηκε αυτόματα, την πρώτη κίνηση μιας παρτίδας, την αναμενόμενη απάντηση σε διπλό, το επίπεδο που αναμένεται μετά από παραίτηση, τη διόρθωση επί τόπου, την κίνηση «προς επανεξέταση» της οποίας η ριξιά άλλαξε. Απαντά επίσης εκεί στις χειρονομίες που δεν έχουν τίποτα να κάνουν — «τίποτα προς αναίρεση», «καμία ενέργεια κάτω από τον δρομέα» — για ενάμιση δευτερόλεπτο. Η ασυνέπεια που άφησε πίσω της μια ενέργεια επισημαίνεται, αντίθετα, στην κορυφή του μεταγραφικού, εκεί όπου βρίσκεται το εσφαλμένο κελί.

Μια παρτίδα τελειώνει με πάσο, με παραίτηση ή με την έξοδο του δέκατου πέμπτου πουλιού (απλό, gammon ή backgammon, πολλαπλασιασμένο με την αξία του κύβου). Το σκορ, η παρτίδα Crawford και το τέλος του αγώνα εμφανίζονται τότε στη μπάρα του αγώνα, και αναμένεται η πρώτη κίνηση της επόμενης παρτίδας.

Το σκορ μιας παρτίδας είναι αυτό που δίνουν οι προηγούμενες παρτίδες, εκτός αν δηλώθηκε διαφορετικά στο τραπέζι. Ένα διπλό κλικ στο σκορ της κεφαλίδας μιας παρτίδας, μέσα στο μεταγραφικό, το μετατρέπει σε προσυμπληρωμένο πεδίο: εκεί πληκτρολογείται το σκορ στο οποίο παίχτηκε η παρτίδα — 3-2, 3–2 ή 3 2 —, το ENTER το καταγράφει, το ESC κλείνει το πεδίο χωρίς να γράψει τίποτα, και ένα πεδίο που αδειάστηκε και επικυρώθηκε επιστρέφει στο παραγόμενο σκορ. Η παρτίδα παίζεται σε αυτό το σκορ: η παρτίδα Crawford, το τέλος του αγώνα και οι επόμενες παρτίδες απορρέουν από αυτό, και ο αποθηκευμένος αγώνας όπως και το αρχείο .mat το φέρουν. Ένα σκορ που διαφέρει από το παραγόμενο επισημαίνεται, η συμβουλή δίνει το παραγόμενο, και η πρώτη ενέργεια της παρτίδας φέρει την ασυνέπεια «ασυνεπές δηλωμένο σκορ». Στο παιχνίδι με χρήματα δεν υπάρχει σκορ να δηλωθεί.

Το μεταγραφικό καταλαμβάνει το δεξί μισό του πίνακα: μία στήλη ανά παίκτη, μία γραμμή ανά γύρο, η ενέργεια του κύβου και το τέλος της παρτίδας στη στήλη εκείνου που ενεργεί. Το κελί του δρομέα είναι πλαισιωμένο· η μετακίνηση του δρομέα επαναφέρει το ταμπλό στη θέση της στοχευμένης ενέργειας και δείχνει τις υποψήφιές της, με επιλεγμένη την κίνηση που καταγράφηκε. Μια ασυνέπεια (παράνομη κίνηση, διπλή σειρά, αδύνατη ενέργεια κύβου, ενέργεια πέρα από το τέλος του αγώνα, ασυνεπή ζάρια, μη καταγεγραμμένη κίνηση, ασυνεπές δηλωμένο σκορ) διακοσμεί το κελί της και ονομάζεται σε μια συμβουλή. Η μη καταγεγραμμένη κίνηση είναι η περίπτωση ενός αρχείου .mat που ξαναδιαβάστηκε: το gnubg γράφει εκεί ??? όταν δεν κράτησε την κίνηση που παίχτηκε, η ριξιά είναι γνωστή και η κίνηση όχι, και το να τοποθετήσει κανείς τον δρομέα σε αυτό το κελί προτείνει τις κινήσεις αυτής της ριξιάς για να τη συμπληρώσει. Μια διπλή σειρά αφήνει ένα κενό κελί, με διακεκομμένο πλαίσιο, στη στήλη της πλευράς της οποίας λείπει η σειρά: ο δρομέας σταματά εκεί, ένα κλικ τον οδηγεί εκεί, και εκεί πληκτρολογείται η σειρά που λείπει — μια διαγραμμένη απόφαση, για παράδειγμα. Οι παρτίδες διπλώνονται· αυτή του δρομέα είναι ανοιχτή.

Ό,τι πληκτρολογείται σχεδιάζεται στο μεταγραφικό, με διακεκομμένο περίγραμμα, ακριβώς στη θέση όπου θα γραφτεί: τα ζάρια καθώς πέφτουν, η σημειογραφία της κίνησης μόλις επιλεγεί, και στη στήλη της πλευράς στην οποία ανήκει η ενέργεια. Μια διόρθωση καλύπτει το κελί που αντικαθιστά, μια εισαγωγή ανοίγει ένα κελί ανάμεσα στους δύο γείτονές της, μια νέα καταχώριση εμφανίζεται στο κάτω μέρος της τρέχουσας παρτίδας. Τίποτα δεν γράφεται στο προσχέδιο πριν από την επικύρωση· αυτό που διαβάζεται και αυτό που θα πει το έγγραφο δεν αποκλίνουν ποτέ.

Το να διορθώνεις σημαίνει να πληκτρολογείς στο κελί όπου βρίσκεσαι. Με τον δρομέα πάνω σε μια ενέργεια, ένα ψηφίο ξαναρχίζει τη ριξιά της επιτόπου, και οι τέσσερις ενέργειες κύβου μετρούν κι αυτές ως διορθώσεις: πάνω σε ένα πάσο, το t — ή το κουμπί Αποδοχή — γράφει μια αποδοχή στη θέση του πάσου, χωρίς να χρειάζεται να το διαγράψεις και έπειτα να εισαγάγεις. Η παρτίδα συνεχίζει τότε την πορεία της: ένα κελί ανοίγει ακριβώς μετά την αποδοχή, στην πλευρά αυτού που διπλασίασε, και η συνέχεια της παρτίδας πληκτρολογείται εκεί ως συνήθως, εισαγόμενη πριν από την πρώτη κίνηση της επόμενης παρτίδας, μέχρι να τελειώσει η παρτίδα. Τα ίδια πλήκτρα γεμίζουν το κελί που μόλις άνοιξε μια εισαγωγή: i και έπειτα d εισάγει έναν διπλασιασμό πριν από τη στοχευμένη ενέργεια. Αυτή η πρώτη κίνηση κρατά το σκορ με το οποίο ξεκινούσε η παρτίδα της, πλέον δηλωμένο: αν το τέλος της παρτίδας που συνεχίστηκε δώσει άλλο, η απόκλιση σημειώνεται.

Η επιστροφή στην τελευταία ενέργεια είναι επιστροφή εκεί όπου γράφεται η μεταγραφή. Ένα ψηφίο που πληκτρολογείται πάνω της διορθώνει ακόμη τη ριξιά της, αλλά μόλις ξαναπληκτρολογηθεί αυτή η ριξιά, το επόμενο ψηφίο την επικυρώνει και ανοίγει την επόμενη απόφαση· το ENTER την επικυρώνει επίσης. Οι επόμενες αποφάσεις προστίθενται τότε στη συνέχεια, όπως την πρώτη φορά.

Η πληκτρολόγηση άλλης ζαριάς στην πρώτη κίνηση μιας παρτίδας αποφασίζει ξανά ποιος ξεκινά: το ζάρι του παίκτη 1 πληκτρολογείται πρώτο, του παίκτη 2 μετά, και κερδίζει το μεγαλύτερο — μεγάλο ζάρι πρώτα, η κίνηση πηγαίνει στον παίκτη 1, κάτω στο ταμπλό· μικρό ζάρι πρώτα, πηγαίνει στον παίκτη 2, επάνω. Η πρώτη υποψήφια κίνηση της νέας ζαριάς προεπιλέγεται και η κίνηση πρέπει να ελεγχθεί. Η επαναπληκτρολόγηση της ίδιας ζαριάς, με όποια σειρά, δεν αλλάζει τίποτα. Για να δοθεί η πρώτη κίνηση στον άλλο παίκτη χωρίς αλλαγή ζαριάς, χρησιμοποιείται το s: η σειρά των ζαριών ακολουθεί την πλευρά, και μια πρώτη κίνηση από την πλευρά που δεν ορίζει αυτή η σειρά σημειώνεται «ασυνεπή ζάρια». Η υπόλοιπη παρτίδα κρατά τις πλευρές της.

Μια εισαγωγή στη μέση του εγγράφου συνεχίζει να εισάγει: η επικύρωση ανοίγει ένα κενό κελί στη συνέχεια, και η επόμενη ενέργεια εισάγεται με τη σειρά της αντί να αντικαταστήσει την επόμενη. Αυτό είναι που επιτρέπει να συμπληρώσεις όλο το τέλος μιας παρτίδας — ένα πάσο που θα έπρεπε να ήταν αποδοχή — χωρίς να χάσεις ό,τι έχει ήδη πληκτρολογηθεί από την επόμενη παρτίδα. Το τέλος της παρτίδας, ή η μετακίνηση του δρομέα, τερματίζει την εισαγωγή: ο δρομέας τοποθετείται τότε στην πρώτη κίνηση της επόμενης παρτίδας.

Το Delete (ή x) αφαιρεί την απόφαση που επεξεργάζεστε και επιστρέφει στην προηγούμενη, έτοιμη να διορθωθεί: σε γραμμένο κελί, η ενέργεια εξαφανίζεται· σε ανοιχτή εισαγωγή ή σε ριξιά πληκτρολογημένη στο τέλος του εγγράφου, εγκαταλείπεται η πληκτρολόγηση. Πατώντας επανειλημμένα Delete ανεβαίνετε έτσι το μεταγραφικό σβήνοντας. Οι ενέργειες που ακολουθούν κρατούν την πλευρά τους, και η διπλή σειρά που αφήνει μια διαγραφή επισημαίνεται χωρίς ο δρομέας να επιστρέφει εκεί.

Ένα δεξί κλικ σε ένα κελί ανοίγει τις διορθώσεις αυτής της ενέργειας — εισαγωγή πριν, εισαγωγή μετά, διαγραφή, αλλαγή πλευράς — και φέρνει τον δρομέα επάνω της στο πέρασμα· είναι οι ίδιες χειρονομίες με τα πλήκτρα i, a, x και s, και το μενού του περιηγητή αφαιρείται μόνο εκεί. Αλλού δεν έχουν κουμπιά: ένα κουμπί που θα ενεργούσε στην «ενέργεια κάτω από τον δρομέα» θα στόχευε ένα κελί που ίσως δεν βλέπει κανείς, ενώ το δεξί κλικ ονομάζει το δικό του.

Η γραμμή του προσχεδίου φέρει τις δύο μόνες εξόδους του. Η «Ολοκλήρωση» (CTRL-ENTER) γράφει τον αγώνα στη βιβλιοθήκη και ελευθερώνει το προσχέδιο· η ανάλυση μόνο των νέων θέσεων ξεκινά αμέσως, με την πρόοδο και την ακύρωσή της στη γραμμή κατάστασης. Η «Εγκατάλειψη» διαγράφει το προσχέδιο χωρίς αγώνα· η επιβεβαίωση ζητείται μόνο για προσχέδιο που δεν έχει ολοκληρωθεί ποτέ, αφού παίρνει μαζί του ό,τι είναι γραμμένο σε αυτό. Δίπλα, η γραμμή λέει τι θα κάνει η Ολοκλήρωση — έναν νέο αγώνα ή την αντικατάσταση του αγώνα #n. Δεν λέει τίποτα για τη διαφύλαξη του ίδιου του προσχεδίου: γράφεται στη βάση μετά από κάθε ενέργεια, και η επιστροφή στη λίστα το αφήνει για να συνεχιστεί αργότερα.

Το «Κείμενο .mat» ανοίγει το αρχείο Jellyfish όπως θα γραφόταν, σε ένα παράθυρο αρκετά φαρδύ ώστε οι στήλες του να μείνουν ευθυγραμμισμένες, με ένα κουμπί για την αντιγραφή του. Η «Εξαγωγή .mat» γράφει το ίδιο αρχείο στον δίσκο. Τα δύο βέλη ↶ και ↷ αναιρούν και επαναλαμβάνουν, όπως τα CTRL-Z και CTRL-SHIFT-Z.

Αν η ανάλυση ενός μεταγεγραμμένου αγώνα διακόπηκε — η εφαρμογή έκλεισε ενώ έτρεχε η παρτίδα ανάλυσης —, η γραμμή κατάστασης το επισημαίνει στο επόμενο άνοιγμα της βάσης και προτείνει να ολοκληρωθεί. Τίποτα δεν κρατιέται από αυτή τη διακοπή: η πρόταση επανέρχεται όσο απομένουν θέσεις προς ανάλυση, και η ανάλυση που ξαναρχίζει αφορά μόνο αυτόν τον αγώνα, ποτέ ολόκληρη τη βιβλιοθήκη.

Ένα προσχέδιο που φέρει ασυνέπειες ολοκληρώνεται παρ” όλα αυτά, μετά από μια προειδοποίηση: τίποτα δεν απορρίπτεται. Μια παράνομη κίνηση εξάγεται όπως παίχτηκε, με την προειδοποίηση ότι το gnubg και το XG θα την επισημάνουν («Invalid move») και θα αποκλίνουν στη συνέχεια.

Ο πίνακας Αγώνων υπενθυμίζει κάθε προσχέδιο σε εξέλιξη πάνω από τη λίστα των αγώνων: η γραμμή «Προσχέδιο σε εξέλιξη» ανοίγει την καρτέλα Μεταγραφή.

Για να διορθώσετε έναν αγώνα της βιβλιοθήκης, το κουμπί ✎ της λίστας αγώνων ή το «Επεξεργασία της μεταγραφής» στην καρτέλα του ανοίγει ένα προσχέδιο από αυτόν τον αγώνα — ή ξανανοίγει αυτό που είναι ήδη ανοιχτό πάνω του: ένα προσχέδιο ανά αγώνα. Η ολοκλήρωση αυτού του προσχεδίου αντικαθιστά τον αγώνα με το ίδιο αναγνωριστικό· οι θέσεις των αμετάβλητων ενεργειών κρατούν τα σχόλια, τις αναλύσεις και τις κάρτες τους. Ένας εισαγμένος αγώνας (XG, GnuBG, BGF) φέρει αναλύσεις και σχόλια που ένα .mat δεν φέρει: πριν από το άνοιγμα, ένας διάλογος λέει μέχρι πόσα, και ότι η ολοκλήρωση του προσχεδίου μπορεί να τα χάσει.

Πρακτική συμβουλή

Ανατρέξτε στο Συντομεύσεις πληκτρολογίου για τις διαθέσιμες συντομεύσεις.

Πίνακας Τουρνουά

Πίνακας Τουρνουά

Ο πίνακας Τουρνουά: ένα τουρνουά ανά γραμμή, αριθμός ματς, PR του παίκτη αναφοράς.

Ο πίνακας Τουρνουά (CTRL-Y) επιτρέπει την ομαδοποίηση αγώνων σε τουρνουά για οργανωμένη παρακολούθηση και στατιστική ανάλυση ανά διοργάνωση. Τα τουρνουά μπορούν να δημιουργηθούν, να μετονομαστούν και να διαγραφούν· οι αγώνες μπορούν να ανατεθούν σε αυτά. Τα στατιστικά του πίνακα Stats μπορούν να φιλτραριστούν ανά τουρνουά. Πατήστε CTRL-Y για να εμφανίσετε ή να αποκρύψετε τον πίνακα.

Τα τουρνουά γεμίζουν από μόνα τους κατά την εισαγωγή. Τα αρχεία XG, GnuBG και BGF ονομάζουν τη διοργάνωσή τους· όταν εισάγεται ένας νέος αγώνας, το blunderDB τον κατατάσσει στο τουρνουά με αυτό το όνομα και το δημιουργεί αν δεν υπάρχει ακόμη. Η ημερομηνία και ο τόπος του τουρνουά μένουν κενά — εδώ συμπληρώνονται. Ένας αγώνας που υπάρχει ήδη στη βάση δεν ανακατατάσσεται ποτέ: η εκ νέου εισαγωγή του αρχείου του δεν αναιρεί την ταξινόμηση που έγινε με το χέρι.

Η στήλη PR κάθε τουρνουά εμφανίζει το PR του παίκτη αναφοράς — δηλαδή του παίκτη που συμμετέχει στους περισσότερους αγώνες του τουρνουά (σε περίπτωση ισοπαλίας, εκείνου που πήρε τις περισσότερες αποφάσεις). Το PR δεν αναμειγνύει επομένως το δικό σας παιχνίδι με εκείνο των αντιπάλων σας: για τα δικά σας τουρνουά, αντικατοπτρίζει μόνο τη δική σας απόδοση. Το όνομα του παίκτη αναφοράς εμφανίζεται σε πλαίσιο υπόδειξης όταν περνάτε πάνω από την τιμή.

Διεύθυνση τουρνουά

Το blunderDB μπορεί να διευθύνει ένα τουρνουά, όχι απλώς να το αρχειοθετεί. Τη διεύθυνση την κρατά η μηχανή Nicomaque, του Nicolas Harmand: αυτή κρατά τη μορφή, τις κληρώσεις ζευγαριών, τους πίνακες και την κατάταξη· το blunderDB της δίνει τη διεπαφή του και φυλάει τους αγώνες της. Το κουμπί ⓘ της μπάρας του πίνακα θυμίζει αυτή την αναφορά και οδηγεί στο αποθετήριο και στην τεκμηρίωση της μηχανής.

Ένα διευθυνόμενο τουρνουά επιλέγεται από τον πίνακα Πίνακας Τουρνουά (CTRL-Y, εντολή direct): ανοίξτε ένα τουρνουά και μετά Διεύθυνση αυτού του τουρνουά. Ένα τουρνουά που ήδη διευθύνεται δείχνει την κατάστασή του δίπλα στο όνομά του και το κουμπί γίνεται Άνοιγμα. Όσο μια διεύθυνση είναι ανοιχτή, η κύρια περιοχή δείχνει το τουρνουά στη θέση του πίνακα — η μοναδική εξαίρεση του blunderDB σε αυτόν τον κανόνα· οποιαδήποτε άλλη καρτέλα επαναφέρει τον πίνακα.

Μια διεύθυνση έχει τρεις καταστάσεις: υπό προετοιμασία όσο δεν έχει ξεκινήσει κανένας αγώνας, σε εξέλιξη στη συνέχεια, κλειστή μόλις παγώσει η κατάταξη. Το άνοιγμα ενός κλειστού τουρνουά είναι δυνατό και ζητά επιβεβαίωση: η τελική κατάταξη παύει να είναι τελική.

Ό,τι αποφασίζεται γράφεται σε ένα ημερολόγιο, και τίποτα άλλο. Η κατάταξη, οι πίνακες, οι προτάσεις και οι προειδοποιήσεις αναπαράγονται από αυτό το ημερολόγιο σε κάθε άνοιγμα: μια διακοπή ρεύματος δεν κοστίζει τίποτα, και μια διόρθωση δεν σβήνει ποτέ ό,τι συνέβη — προστίθεται σε αυτό.

Η σελίδα Διεύθυνσης

Εδώ περνά ο διευθυντής τον περισσότερο χρόνο του. Από πάνω προς τα κάτω: οι προειδοποιήσεις της μηχανής, που μένουν ορατές και δεν μπλοκάρουν ποτέ τίποτα· το πλέγμα των τραπεζιών, που στην κεφαλίδα του φέρει το κουμπί Εκτύπωση φύλλου ζευγαριών· η τελευταία απόφαση· η λίστα προτάσεων· και οι ελεύθεροι παίκτες. Το πλέγμα προηγείται της λίστας: μια μεγάλη λίστα δεν το σπρώχνει ποτέ έξω από την οθόνη.

Η προβολή καταλαμβάνει όλο το πλάτος της κύριας περιοχής και κάθε καρτέλα κυλά μόνη της: όταν φεύγετε από μια καρτέλα και επιστρέφετε, ή όταν αλλάζετε από το ένα αγώνισμα στο άλλο, βρίσκετε τη θέση όπου την αφήσατε. Τα κουμπιά και τα πεδία έχουν ύψος τουλάχιστον 40 pixel, ώστε να πατιούνται χωρίς ακρίβεια στο γραφείο· ο αριθμός των στηλών του πλέγματος ακολουθεί το πλάτος της περιοχής και όχι του παραθύρου. Στις Ρυθμίσεις, κάθε ενότητα διπλώνει στον τίτλο της και το κουμπί Άνοιγμα στο πρόγραμμα περιήγησης της κεφαλίδας ανοίγει τη σελίδα τοίχου με ένα κλικ, μόλις επιλεγεί φάκελος εξόδου.

Ένας προτεινόμενος γύρος ανακοινώνεται πριν ξεκινήσει: το Επόμενος γύρος…, δίπλα στο Εκτύπωση φύλλου, ζητά την ημερομηνία και την ώρα προς εκτύπωση («Δευτέρα 21/09, 20:00») και τυπώνει το φύλλο με τα ζευγαρώματα της ουράς, σημειωμένο ως «ανακοινωμένο». Τίποτα δεν ξεκινά ούτε γράφεται στο ημερολόγιο: ο γύρος ξεκινά την ημέρα του, στην ώρα του. Ένα ζευγάρωμα που περιμένει ελεύθερο τραπέζι φέρει μια παύλα αντί για αριθμό τραπεζιού.

Στην κορυφή της προβολής τουρνουά, η λωρίδα ρολογιού χωράει σε μία γραμμή: την ώρα, τον χρόνο από το πρώτο ματς που ξεκίνησε, τα ματς που παίχτηκαν και που είναι σε εξέλιξη, τον παρατηρούμενο ρυθμό σε λεπτά ανά πόντο απέναντι στον προβλεπόμενο, τα αργά ματς, το επόμενο διάλειμμα και το εκτιμώμενο τέλος. Το εκτιμώμενο τέλος είναι η πρόβλεψη της μηχανής: αναπαράγει το ημερολόγιο, ολοκληρώνει το τουρνουά δεκαπέντε φορές με τον προβλεπόμενο ρυθμό, και η λωρίδα δίνει τη διάμεσο, μετατοπισμένη μετά τα δηλωμένα διαλείμματα. Μια νύχτα που δεν έχει δηλωθεί ως διάλειμμα μετράει επομένως ως παιχνίδι. Μια ώρα που δεν είναι της σημερινής ημέρας φέρει την ημέρα της.

Από τη δεύτερη ημέρα, ο χρόνος που πέρασε δίνει τη θέση του στην ημέρα παιχνιδιού (η ημέρα του πρώτου ματς είναι η ημέρα 1) και στον χρόνο παιχνιδιού: τον χρόνο κατά τον οποίο τουλάχιστον ένα ματς ήταν σε εξέλιξη, χωρίς τις νύχτες ούτε τα διαστήματα όπου κανένα τραπέζι δεν έπαιζε. Ένα κλειστό τουρνουά δεν έχει πια λωρίδα ρολογιού.

Μια πρόταση επιβεβαιώνεται με ένα κλικ στο Έναρξη. Το Έναρξη όλων επιβεβαιώνει με δύο κλικ τις προτάσεις που έχουν τραπέζι, αφού πρώτα δείξει τη λίστα τους· το Επιβεβαίωση βρίσκεται στην κορυφή αυτής της λίστας. Τα ζεύγη χωρίς τραπέζι μένουν στη λίστα, με την ένδειξη «κανένα ελεύθερο τραπέζι»: σε λειτουργία γύρων, ένας γύρος μένει ανοιχτός όσο δεν έχουν μπει σε αυτόν όλοι οι παίκτες του. Το «Αγνόηση προς το παρόν» δεν γράφει τίποτα: η μηχανή είναι ντετερμινιστική, και η πρόταση επιστρέφει ίδια στην επόμενη κλήση. Η χειροκίνητη κλήρωση ζεύγους προσφέρεται πάντοτε — η μηχανή προτείνει, ο διευθυντής αποφασίζει.

Ένας αγώνας που ζευγαρώνεται με το χέρι χωρίς αριθμό τραπεζιού παίρνει το πρώτο ελεύθερο τραπέζι· ένα τραπέζι όπου διεξάγεται αγώνας απορρίπτεται. Αν όλα τα τραπέζια είναι κατειλημμένα, ξεκινά παρ’ όλα αυτά και το κελί του εμφανίζεται στο τέλος του πλέγματος, «χωρίς τραπέζι», μέχρι να μετακινηθεί σε ένα τραπέζι.

Μια πρόταση μπορεί να φέρει παρατήρηση της μηχανής: κανένα ελεύθερο τραπέζι, ή αναμενόμενο τέλος αγώνα μέσα σε διάλειμμα. Παραμένει εκκινήσιμη και στις δύο περιπτώσεις. Όταν μια φάση λειτουργεί με μικρούς γύρους, η λίστα δείχνει τον χρόνο που απομένει ως την επόμενη παρτίδα· στη λήξη οι προτάσεις εμφανίζονται μόνες τους, και τίποτα δεν ξεκινά από μόνο του.

Η καρτέλα αποτελέσματος

Ένα κλικ σε κατειλημμένο τραπέζι ανοίγει την καρτέλα του αγώνα. Δείχνει δύο μεγάλους στόχους: τα ονόματα των δύο παικτών. Κάνοντας κλικ σε αυτόν που κέρδισε καταγράφεται το αποτέλεσμα — δύο κλικ συνολικά, μαζί με το τραπέζι. Ο νικητής είναι το μόνο που απαιτείται· το σκορ είναι ελεύθερο, το ένα, και τα δύο ή κανένα. Από το πληκτρολόγιο, το ΑΡΙΣΤΕΡΑ ή το ΔΕΞΙΑ επιλέγει τον νικητή και το ENTER τον καταγράφει. Η καρτέλα κλείνει μόνο όταν γραφτεί το αποτέλεσμα: μια αποτυχία την αφήνει ανοιχτή, με το μήνυμά της.

Το κουμπί ⋯ της καρτέλας ξεδιπλώνει ό,τι χρειάζεται σπάνια: την παραίτηση (forfait) — κάθε κουμπί κατονομάζει τον απόντα και αυτόν που κερδίζει —, μια ελεύθερη παρατήρηση («έληξε ο χρόνος», «εγκαταλείφθηκε λόγω…»), τη μετακίνηση του αγώνα σε άλλο τραπέζι και την ακύρωσή του. Η παραίτηση και η ακύρωση επιβεβαιώνονται. Όταν μετακινηθεί σε κατειλημμένο τραπέζι, ο αγώνας ανταλλάσσει το τραπέζι του με αυτόν που το καταλαμβάνει: δύο αγώνες δεν μοιράζονται ποτέ ένα τραπέζι και η ίδια κίνηση τους επαναφέρει. Αν ένα παλιό ημερολόγιο άφησε δύο σε ένα τραπέζι, το πλέγμα δείχνει και τα δύο κελιά, επισημασμένα, μέχρι να μετακινηθεί το ένα.

Ένα λάθος καταχώρισης που εντοπίζεται αμέσως διορθώνεται με δύο κλικ κάτω από το πλέγμα: Διόρθωση της τελευταίας απόφασης και μετά ο σωστός νικητής (το CTRL-Z ανοίγει την ίδια διόρθωση). Μια παλαιότερη διόρθωση γίνεται από το ιστορικό.

Τα μενού περιβάλλοντος

Ένα δεξί κλικ, το πλήκτρο MENU ή το SHIFT-F10 σε ένα αντικείμενο της σελίδας Direction ανοίγει τις συνήθεις ενέργειές του χωρίς να περάσει από την καρτέλα: ένα κελί του πλέγματος (ελεύθερο ή κατειλημμένο), έναν παίκτη (καρτέλα Παίκτες, ελεύθεροι παίκτες), μια θέση του πίνακα, μια θέση, μια πρόταση της λίστας, μια γραμμή του ιστορικού. Το μενού ανοίγει πάνω στο αντικείμενο· τα ΠΑΝΩ και ΚΑΤΩ το διατρέχουν, το ENTER επιλέγει, το ESC το κλείνει και επιστρέφει την εστίαση στο αντικείμενο.

  • Κατειλημμένο κελί: καταχώριση αποτελέσματος, παραίτηση του ενός ή του άλλου, αλλαγή τραπεζιού (η επιλογή κατειλημμένου τραπεζιού ανταλλάσσει τους δύο αγώνες), ακύρωση του αγώνα, ιστορικό κάθε παίκτη.

  • Ελεύθερο κελί: έναρξη εδώ της επιλεγμένης αντιστοίχισης, θέση του τραπεζιού εκτός λειτουργίας ή επαναφορά του σε λειτουργία (τραπέζια μιας διοργάνωσης). Ένα τραπέζι δεσμευμένο για άλλο αγώνισμα δεν προσφέρει τίποτα.

  • Παίκτης: καταχώριση αποτελέσματος του τρέχοντος αγώνα του, μετάβαση στο τραπέζι του, ιστορικό, χειροκίνητη αντιστοίχιση με άλλον ελεύθερο παίκτη, μετάβαση στο άλλο αγώνισμα όπου παίζει επίσης, σήμανση ως απόντα ή παρόντα, απόσυρση τώρα ή μετά τον αγώνα του, επανεγγραφή, διόρθωση των στοιχείων.

  • Θέση χωρίς αγώνα: σύνδεση ενός εισηγμένου αγώνα που περιμένει αυτή η θέση.

  • Αντιστοίχιση: έναρξη, έναρξη σε τραπέζι…, αλλαγή μήκους…, διαφορετικό ταίριασμα (αυτές οι τρεις επιλογές ανοίγουν τη χειροκίνητη αντιστοίχιση με τους δύο παίκτες, το μήκος και το τραπέζι της αντιστοίχισης), προσωρινή παράβλεψη, εκτύπωση του φύλλου του γύρου.

  • Γραμμή ιστορικού: διόρθωση ή ακύρωση, προσθήκη παρατήρησης, φιλτράρισμα σε έναν από τους παίκτες.

Η παραίτηση, η ακύρωση ενός αγώνα και η απόσυρση ενός παίκτη διατηρούν την επιβεβαίωση που έχουν στην καρτέλα και στα κουμπιά των γραμμών. Ενώ μια ενέργεια βρίσκεται σε εξέλιξη, οι επιλογές που ενεργούν είναι γκριζαρισμένες, όπως τα κουμπιά. Ένα μόνο μενού είναι ανοιχτό κάθε φορά: το άνοιγμα δεύτερου κλείνει το πρώτο.

Με το πληκτρολόγιο, το πλέγμα καταλαμβάνει μία μόνο στάση TAB: κάθε κελί, και το ελεύθερο, παίρνει εστίαση, και τα ΑΡΙΣΤΕΡΑ, ΔΕΞΙΑ, ΠΑΝΩ, ΚΑΤΩ, HOME και END μετακινούν από κελί σε κελί. Ένα ψηφίο ανοίγει την καρτέλα του τραπεζιού με αυτόν τον αριθμό· για τραπέζι πάνω από το 9, το δεύτερο ψηφίο πληκτρολογείται εντός 0,4 s. Το M ανοίγει την καρτέλα στο πεδίο τραπεζιού, και το X επίσης, είτε η καρτέλα είναι ήδη ανοιχτή είτε όχι: η επιλογή κατειλημμένου τραπεζιού ανταλλάσσει τους δύο αγώνες.

Με το ποντίκι, σύρετε ένα κατειλημμένο κελί πάνω σε άλλο: σε ελεύθερο κελί ο αγώνας αλλάζει τραπέζι· σε κατειλημμένο κελί, μια γραμμή «Τραπέζι 3 ↔ Τραπέζι 7;» ζητά επιβεβαίωση της ανταλλαγής των δύο αγώνων. Ένα είδωλο ακολουθεί τον δείκτη και το κελί-στόχος επισημαίνεται· το ESC ακυρώνει την κίνηση, και τίποτα δεν γράφεται μέχρι να αφεθεί ο δείκτης πάνω σε κελί. Ένα τραπέζι εκτός λειτουργίας απορρίπτεται και η γραμμή κατάστασης δίνει τον λόγο. Στη γραμμή εντολών, η blunderdb tournament move κάνει την ίδια μετακίνηση ή ανταλλαγή (βλ. Διεπαφή γραμμής εντολών (CLI)).

Πλήρης οθόνη

Το πλήκτρο F11 στη σελίδα Διεύθυνση, ή το κουμπί κάτω δεξιά, την περνά σε πλήρη οθόνη: η γραμμή εργαλείων, οι καρτέλες, το ταμπλό, ο πίνακας και η γραμμή κατάστασης εξαφανίζονται και ολόκληρο το παράθυρο δίνεται στη διεύθυνση. Η λειτουργία διατηρείται σε όλες τις καρτέλες της διεύθυνσης (Διεύθυνση, Παίκτες, Ιστορικό, …). Ένα ανοιχτό μενού ή μια ανοιχτή κάρτα κλείνει πρώτα με ESC· ένα δεύτερο ESC, ή F11, βγαίνει από την πλήρη οθόνη και επαναφέρει το παράθυρο στην προηγούμενη κατάστασή του. Η έξοδος από τη σελίδα, με αλλαγή καρτέλας της εφαρμογής ή κλείσιμο της διεύθυνσης, τερματίζει κι αυτή τη λειτουργία.

Η γρήγορη αναζήτηση

Το πλήκτρο / της σελίδας Direction ανοίγει την παλέτα μόνο για το τουρνουά: παίκτες, τραπέζια, αγώνες σε εξέλιξη και αγωνίσματα της ανοιχτής διοργάνωσης, ή του αγωνίσματος μόνου όταν δεν ανήκει σε καμία διοργάνωση. Πληκτρολογείτε ένα όνομα, μια λέσχη ή έναν αριθμό τραπεζιού («4» ή «t4»)· οι παίκτες σε τραπέζι προηγούνται των ελεύθερων παικτών. Το ENTER οδηγεί στο αντικείμενο: ένας παίκτης σε αγώνα, ένας αγώνας ή ένα κατειλημμένο τραπέζι ανοίγουν την καρτέλα του τραπεζιού, ένα ελεύθερο τραπέζι παίρνει την εστίαση στο πλέγμα, ένας ελεύθερος παίκτης εμφανίζεται στην καρτέλα Παίκτες φιλτραρισμένος με το όνομά του, ένα αγώνισμα γίνεται η τρέχουσα καρτέλα. Ένα αποτέλεσμα άλλου αγωνίσματος της διοργάνωσης αλλάζει πρώτα αγώνισμα. Το ESC κλείνει χωρίς να ανοίξει τίποτα, και σε ένα πεδίο εισαγωγής το πλήκτρο παραμένει κάθετος. Το CTRL-SHIFT-P ανοίγει την πλήρη παλέτα, που περιέχει και το τουρνουά.

Οι παίκτες

Η καρτέλα Παίκτες εγγράφει, διορθώνει και αποσύρει. Το πεδίο εγγραφής κρατά την εστίαση και αδειάζει μετά από κάθε όνομα: είκοσι παίκτες εγγράφονται μόνο με το πληκτρολόγιο. Η αυτόματη συμπλήρωση προτείνει τους παίκτες της βάσης· επιλέγοντας έναν καθορίζεται η ακριβής γραφή που φέρουν οι αγώνες του και προσυμπληρώνεται η βαθμολογία του με το PR του.

Το ευρετήριο συγκεντρώνει τους συμμετέχοντες όλων των διευθυνόμενων τουρνουά της βάσης, χωρίς διπλοεγγραφές κατ” όνομα, με τον σύλλογο και τη βαθμολογία της τελευταίας τους εγγραφής. Δεν αποθηκεύεται ποτέ: η διαγραφή μιας διεύθυνσης αφαιρεί από αυτό τους συμμετέχοντές της. Η επαναφορά των συμμετεχόντων προηγούμενου τουρνουά είναι ένα κλικ, όσοι κι αν είναι· το ευρετήριο αντιγράφεται σε CSV ή αποθηκεύεται σε αρχείο (Αποθήκευση…), και διαβάζεται ξανά επικολλημένο.

Ένα τουρνουά διπλών εγγράφει ζευγάρια: το πλαίσιο Ζευγάρι προσθέτει όνομα, σύλλογο και βαθμολογία του συμπαίκτη. Το ζευγάρι παίζει με το όνομα «A / B», που φέρουν και τα ματς του· η βαθμολογία του είναι ο μέσος όρος των δύο, και μια τιμή στο Βαθμολογία ζευγαριού την αντικαθιστά. Ο κατάλογος κρατά τα δύο πρόσωπα, ποτέ το ζευγάρι.

Πριν από την Εγγραφή, η προεπισκόπηση ενός επικολλημένου CSV απαριθμεί τις μη αναγνώσιμες γραμμές — χωρίς όνομα, χωρίς διαχωριστικό όταν οι άλλες γραμμές έχουν, βαθμολογία που δεν είναι αριθμός — και τα διπλότυπα, μέσα στην επικόλληση ή με έναν παίκτη ήδη εγγεγραμμένο. Ένα διπλότυπο δεν εγγράφεται, εκτός αν επιλεγεί το πλαίσιό του.

Ένας καθυστερημένος που φτάνει μετά την κλήρωση παίρνει ελεύθερο ρεπό αν ο πίνακας προσφέρει κάποιο, και η διεπαφή γράφει δίπλα στο πεδίο πού θα μπει, πριν επικυρωθεί. Χωρίς ελεύθερη θέση, εγγράφεται έτσι κι αλλιώς και η προβολή λέει σε ποια φάση θα μπει. Καμία κλήρωση που έχει ήδη γίνει δεν ξαναγίνεται.

Μια απόσυρση γίνεται τώρα ή μετά τον τρέχοντα αγώνα του, ανάλογα με το αν ο παίκτης φεύγει αμέσως ή τελειώνει αυτό που παίζει· επιβεβαιώνεται.

Ένας παίκτης που χάνει έναν γύρο δεν χρειάζεται να αποχωρήσει: το Δήλωση απουσίας, στη γραμμή του, ανοίγει μια μικρή φόρμα κάτω από το όνομά του — μέχρι μια ώρα (προσυμπληρωμένη με την επόμενη ώρα), ή, όταν η τρέχουσα φάση είναι ελβετικό σύστημα ανά γύρο, μέχρι τον γύρο με τον αριθμό του. Ο κινητήρας παύει τότε απλώς να τον ζευγαρώνει, αλλά η θέση του, οι ζωές του και η θέση του στο ταμπλό παραμένουν όσα έχει κερδίσει — η απουσία δεν είναι παραίτηση. Το Επιστροφή, στη γραμμή του, αίρει την απουσία με ένα κλικ, πριν ή μετά τη δηλωμένη προθεσμία.

Η διόρθωση της καρτέλας ενός παίκτη που αποχώρησε — όνομα, σύλλογος, βαθμολογία — τον αφήνει αποσυρμένο. Η επιστροφή του είναι ξεχωριστή κίνηση: Επανεγγραφή, στη γραμμή του. Ζευγαρώνεται ξανά, με τα αποτελέσματα και τις ζωές που είχε όταν αποχώρησε· τα ματς που χάθηκαν με φορφέ στην αποχώρησή του παραμένουν χαμένα.

Πίνακες, θέσεις, κατάταξη, ιστορικό

Η καρτέλα Δέντρα σχεδιάζει τους πίνακες με τις γραμμές σύνδεσής τους, από τον πρώτο γύρο έως τον τελικό, με την παρηγορητική φάση δίπλα στον κύριο πίνακα και, για ελβετικό σύστημα, τον πίνακα ζωών. Ένας όμιλος διαβάζεται ως διασταυρούμενος πίνακας αποτελεσμάτων. Ένας πίνακας που δεν έχει κληρωθεί δείχνει το γκριζαρισμένο σκελετό του. Ένας αγώνας που έχει παιχτεί φέρει το αποτέλεσμά του· ένας αγώνας που επισημαίνει η μηχανή σημειώνεται επιτόπου. Μια κουκκίδα δίπλα στο όνομα της καρτέλας δείχνει ότι ένας πίνακας βρίσκεται σε εξέλιξη.

Το κλικ σε μια θέση (ή το Enter σε εστιασμένη θέση) ανοίγει πάνω της την ίδια καρτέλα με το πλέγμα των τραπεζιών: ο νικητής ενός αγώνα σε εξέλιξη καταχωρείται με δύο κλικ και ένας ολοκληρωμένος αγώνας διορθώνεται κάνοντας κλικ στο όνομα του πραγματικού νικητή.

Η καρτέλα Θέσεις συνδέει το τουρνουά με τη βιβλιοθήκη. Κάθε αγώνας του τουρνουά είναι μια θέση, που γεμίζει με δύο τρόπους: καταγράφοντας τον αγώνα επί τόπου (Πίνακας Μεταγραφής), ή επισυνάπτοντας έναν ήδη εισαγμένο αγώνα. Τίποτα δεν επισυνάπτεται με συμπερασμό: μια σύμπτωση ονομάτων είναι πρόταση προς αποδοχή, μια μερική αντιστοιχία δεν προτείνεται καν, και αν το αρχείο ενός επισυναπτόμενου αγώνα αντιφάσκει με το καταγεγραμμένο αποτέλεσμα, η διαφορά δείχνεται χωρίς να επιλύεται — κατά τη διάρκεια ενός τουρνουά, ο λόγος του διευθυντή ισχύει.

Η καρτέλα Κατάταξη δείχνει την τρέχουσα κατάταξη, ενότητα προς ενότητα, με τον απολογισμό του καθενός (νίκες–ήττες) και τα έπαθλα όταν έχει οριστεί δωρεά. Δύο ισοβαθμούντες μοιράζονται τη θέση και το έπαθλο. Ένας παίκτης που αποσύρθηκε κρατά τη θέση που του αξίζει η πορεία του, με την ένδειξη «αποσύρθηκε» μαζί με τον απολογισμό του ή το σημείο του ταμπλό όπου σταμάτησε. Το Κλείσιμο τουρνουά παγώνει την τελική κατάταξη. Η κατάταξη αντιγράφεται σε CSV, στη γλώσσα της διεπαφής, ή αποθηκεύεται σε αρχείο: η Αποθήκευση… ανοίγει τον διάλογο του συστήματος με ένα προτεινόμενο όνομα, το τουρνουά ακολουθούμενο από τη λέξη «κατάταξη» και τη σημερινή ημερομηνία, και το αρχείο περιέχει ακριβώς το αντιγραμμένο CSV. Στη γραμμή εντολών, το blunderdb tournament standings γράφει το ίδιο CSV.

Το κλείσιμο χωρίς ματς σε εξέλιξη είναι ένα κλικ. Με ματς σε εξέλιξη, η Κατάταξη λέει πόσα είναι και περιμένει ένα δεύτερο κλικ επί τόπου: το κλείσιμο παγώνει την κατάταξη χωρίς αυτά, και το αποτέλεσμά τους δεν καταχωρίζεται πια. Το Επανάνοιγμα επιβεβαιώνεται με τον ίδιο τρόπο· η τελική κατάταξη παύει τότε να είναι τελική, και το επανάνοιγμα μένει στο ημερολόγιο.

Η καρτέλα Ιστορικό είναι το ημερολόγιο σε απλά λόγια: μία γραμμή ανά απόφαση, με τη σειρά, φιλτραρίσιμη κατά παίκτη ή κατά αγώνα. Αυτό ξαναδιαβάζει ένας διευθυντής μετά από ένσταση, και εκεί διορθώνεται ή σχολιάζεται μια παλαιότερη απόφαση.

Η Διόρθωση, στη γραμμή ενός αποτελέσματος, ανοίγει από κάτω την ίδια διόρθωση με την τελευταία απόφαση: κλικ στον σωστό νικητή, με το σκορ αν χρειάζεται. Το αρχικό αποτέλεσμα μένει στη θέση του στο ημερολόγιο, η διόρθωση προστίθεται, και η κατάταξη την λαμβάνει υπόψη αμέσως.

Οι ρυθμίσεις

Η καρτέλα Ρυθμίσεις ανοίγει σε ονομασμένες μορφές: έξι έτοιμα τουρνουά συλλόγου, με το πρώτο να συνιστάται. Η επιλογή ενός αρκεί για να ξεκινήσετε· τα πεδία παραμένουν τροποποιήσιμα στη συνέχεια.

Εδώ ρυθμίζονται: οι φάσεις και το μήκος των αγώνων τους, τα μήκη ανά γύρο ενός πίνακα (το «15, 13, 11» διαβάζεται από τον τελευταίο γύρο προς τα πίσω), ο αριθμός των τραπεζιών, ο προβλεπόμενος ρυθμός σε λεπτά ανά πόντο (8 εξ ορισμού· από αυτόν ξεκινούν η λωρίδα ρολογιού και το εκτιμώμενο τέλος), τα διαλείμματα της ημέρας, η δωρεά (δικαίωμα συμμετοχής, παρακράτηση του συλλόγου, κλίμακα ανά ενότητα) και ο φάκελος προβολής.

Ένας πίνακας έχει τρία κουτάκια: Παρηγοριάς (οι ηττημένοι του παίζουν δεύτερο πίνακα, ξεχωριστή ενότητα στην κατάταξη), Συμφιλίωση (ο νικητής της παρηγοριάς παίζει με τον νικητή του κύριου πίνακα· το κουτάκι εμφανίζεται μόνο με την παρηγοριά) και Επαναφόρτιση (στον διπλό αποκλεισμό, ο νικητής του κύριου πίνακα πρέπει να ηττηθεί δύο φορές· το κουτάκι εμφανίζεται μόνο με τη συμφιλίωση). Ο πίνακας παρηγοριάς έχει δική του κατάταξη μόνο με κλίμακα επάθλων: όσο η κλίμακα της ενότητας Παρηγοριάς είναι κενή, οι Ρυθμίσεις το υπενθυμίζουν. Μια φάση Όμιλοι ρυθμίζεται με το μέγεθος των ομίλων (4 εξ ορισμού) και τον αριθμό των προκρινόμενων ανά όμιλο (2 εξ ορισμού).

Οι ρυθμίσεις παραμένουν προσβάσιμες κατά τη διάρκεια του τουρνουά: να χαμηλώσετε το όριο μετάβασης στις 22:00 για να τελειώσει νωρίτερα, να προσθέσετε ένα τουρνουά παρηγοριάς το Σάββατο βράδυ, όσο δεν έχει γίνει η κλήρωση του ταμπλό. Ό,τι έχει πλέον παγώσει εμφανίζεται γκριζαρισμένο με την αιτία του: η μορφή μιας φάσης που έχει ανοίξει, ο αριθμός ζωών που έχει μοιράσει και, από την κλήρωση μιας φάσης, το μέγεθος των ομίλων της και ο αριθμός προκρινόμενων. Η αποθήκευση κατά τη διάρκεια του τουρνουά δείχνει πρώτα τη λίστα με ό,τι θα αλλάξει και ζητά επιβεβαίωση. Ό,τι αρνείται η μηχανή εμφανίζεται εκεί με την αιτία του, και τότε τίποτα δεν αποθηκεύεται: έτσι συμβαίνει με το τουρνουά παρηγοριάς, τη συμφιλίωση ή την επαναφόρτιση ενός ταμπλό που έχει ήδη κληρωθεί.

Ένα τραπέζι με χαλασμένο ταμπλό δηλώνεται στα Τραπέζια εκτός λειτουργίας: οι αριθμοί του, χωρισμένοι με κόμματα («7, 12»). Η μηχανή δεν το αναθέτει πια, και το πλέγμα το δείχνει μη διαθέσιμο· η μείωση του αριθμού τραπεζιών θα αφαιρούσε το τελευταίο, όχι το χαλασμένο. Αν ένα ματς είναι σε εξέλιξη σε τραπέζι που τίθεται εκτός λειτουργίας, η λίστα των αλλαγών το λέει και ονομάζει ένα ελεύθερο τραπέζι όπου μπορεί να μετακινηθεί, από την καρτέλα του ματς.

Οι τοποθετημένοι παίκτες είναι επιλογή, ανενεργή εξ ορισμού: η μελέτη της μηχανής καταλήγει σε «καμία προστατευμένη τοποθέτηση», που είναι η σημερινή κουλτούρα του τάβλι. Ενεργοποιημένη, οι παίκτες τοποθετούνται κατά βαθμολογία.

Τα αγωνίσματα μιας διοργάνωσης

Πολλά αγωνίσματα που παίζονται στα ίδια τραπέζια — ένα κύριο, ένα speed, διπλά — ομαδοποιούνται σε μια Διοργάνωση, στο κάτω μέρος των Ρυθμίσεων: το Δημιουργία και σύνδεση… δημιουργεί τη διοργάνωση με τον αριθμό τραπεζιών της, το Σύνδεση… προσθέτει σε αυτήν ένα αγώνισμα υπό διεύθυνση. Η σύνδεση δείχνει πρώτα τι θα αλλάξει: τα τραπέζια του αγωνίσματος γίνονται της διοργάνωσης. Το Αποσύνδεση από τη διοργάνωση επιστρέφει το αγώνισμα στον εαυτό του, με το ημερολόγιο και τα τραπέζια του· το Διαγραφή της διοργάνωσης, έπειτα από επιβεβαίωση, τη μεταφέρει στον κάδο και αποσυνδέει τα αγωνίσματά της χωρίς να διαγράψει κανένα.

Σε μια διοργάνωση, κανένα αγώνισμα δεν προτείνει τραπέζι όπου παίζει άλλο: το πλέγμα δείχνει αυτά τα τραπέζια κατειλημμένα, με το όνομα του αγωνίσματος, και ένα ζευγάρωμα χωρίς ελεύθερο τραπέζι περιμένει. Ένα τραπέζι εκτός λειτουργίας σημειώνεται μία φορά, στη διοργάνωση, και ισχύει για όλα τα αγωνίσματά της· ο αριθμός τραπεζιών, τα εκτός λειτουργίας τραπέζια και τα διαλείμματα που αλλάζουν στις Ρυθμίσεις ενός αγωνίσματος ισχύουν και για τη διοργάνωση, και η λίστα των αλλαγών κατονομάζει τα άλλα αγωνίσματα.

Οι ιδιότητες των τραπεζιών ρυθμίζονται στον πίνακα Διοργάνωση: ένας πίνακας με μία γραμμή ανά τραπέζι, με το όνομά του (π.χ. «Stream»), την αίθουσά του (ελεύθερη ετικέτα), ένα πλαίσιο Δεσμευμένο και τους παίκτες για τους οποίους είναι Ορισμένο για, που επιλέγονται ανάμεσα στους εγγεγραμμένους των αγωνισμάτων της διοργάνωσης. Για σαράντα τραπέζια, το Τραπέζια από N έως M, αίθουσα ορίζει μια αίθουσα σε ολόκληρο εύρος με μία κίνηση· το Αποθήκευση γράφει μόνο τα τραπέζια που έχουν κάποια ιδιότητα, τα υπόλοιπα μένουν συνηθισμένα τραπέζια. Ένα δεσμευμένο τραπέζι δεν προτείνεται ποτέ, αλλά μπορεί κανείς να τοποθετήσει εκεί έναν αγώνα με το χέρι, με εκκίνηση, μετακίνηση ή σύρσιμο και απόθεση. Ένα ορισμένο τραπέζι δέχεται πρώτα τον αγώνα του κατόχου του, όταν είναι ελεύθερο· διαφορετικά ο αγώνας παίρνει ένα συνηθισμένο τραπέζι, και εκτός των αγώνων των κατόχων του συμπεριφέρεται σαν δεσμευμένο τραπέζι. Δύο κάτοχοι διαφορετικών τραπεζιών που συναντιούνται παίζουν στο μικρότερο από τα δύο.

Μια αίθουσα είναι το σύνολο των τραπεζιών που φέρουν την ίδια ετικέτα: «αίθουσα Α» για τα τραπέζια 1 έως 20, «αίθουσα Β» για τα επόμενα. Στις Ρυθμίσεις κάθε συνδεδεμένου αγωνίσματος, το Αίθουσες όπου παίζεται αυτό το αγώνισμα επιλέγει τις αίθουσες όπου παίζεται: το DMP στη Β, το speed στην Α. Χωρίς επιλεγμένο πλαίσιο, είναι όλα τα τραπέζια· ένα αγώνισμα δεν λαμβάνει καμία πρόταση εκτός των αιθουσών του και δεν μπορεί να μετακινήσει εκεί έναν αγώνα. Η αφαίρεση μιας αίθουσας που φέρει εν εξελίξει αγώνα του αγωνίσματος απορρίπτεται, με αναφορά του τραπεζιού. Ένα αγώνισμα που παίζεται μόνο του ρυθμίζει τις ίδιες ιδιότητες τραπεζιών στις δικές του Ρυθμίσεις, χωρίς αίθουσες αγωνίσματος.

Το άνοιγμα της Direction ενός αγωνίσματος μιας διοργάνωσης ανοίγει και τα υπόλοιπα: μία καρτέλα ανά αγώνισμα εμφανίζεται στην κορυφή της Direction, καθεμία με τη σύνοψή της — προτάσεις σε αναμονή, αγώνες σε εξέλιξη, μια ειδοποίηση αν υπάρχει. Η αλλαγή αγωνίσματος είναι ένα κλικ στην καρτέλα του, χωρίς επιβεβαίωση· το αγώνισμα που αφήνεται δεν κλείνει και δεν ξαναπαίζεται, παραμένει ακριβώς όπως αφέθηκε. Ένα τουρνουά εκτός οποιασδήποτε διοργάνωσης έχει μόνο ένα αγώνισμα: καμία καρτέλα να δείξει.

Η καρτέλα Όλα τα τραπέζια, στα αριστερά των αγωνισμάτων, δείχνει όλα τα τραπέζια της διοργάνωσης σε ένα ενιαίο πλέγμα: ένα κελί ανά τραπέζι, όποιο αγώνισμα κι αν το καταλαμβάνει, σημειωμένο με το όνομα και το χρώμα του αγωνίσματός του. Η καρτέλα αποτελέσματος, τα μενού περιβάλλοντος, το πληκτρολόγιο και η μεταφορά με σύρσιμο λειτουργούν εκεί όπως στο πλέγμα ενός αγωνίσματος, και κάθε κίνηση απευθύνεται στο αγώνισμα του κελιού. Η μεταφορά ενός αγώνα σε τραπέζι που καταλαμβάνει άλλο αγώνισμα ανταλλάσσει τους δύο αγώνες μετά από επιβεβαίωση που κατονομάζει και τα δύο αγωνίσματα. Κάτω από το πλέγμα, οι προτάσεις όλων των αγωνισμάτων ομαδοποιούνται ανά αγώνισμα, καθεμία με το κουμπί της Έναρξη. Ένα κλικ σε ένα αγώνισμα ή σε μια καρτέλα προβολής εγκαταλείπει τα Όλα τα τραπέζια.

Όταν η διοργάνωση έχει πολλές αίθουσες, το πλέγμα ομαδοποιείται ανά αίθουσα, κάτω από το όνομα καθεμιάς. Το όνομα ενός τραπεζιού εμφανίζεται δίπλα στον αριθμό του, με μια σημαία για ένα δεσμευμένο τραπέζι και ένα αστέρι ακολουθούμενο από τους κατόχους για ένα ορισμένο τραπέζι· οι προτάσεις αναφέρουν επίσης το τραπέζι.

Ένα πρόσωπο μπορεί να παίζει σε πολλά αγωνίσματα της διοργάνωσης: δύο Συμμετέχοντες με το ίδιο όνομα είναι το ίδιο πρόσωπο, και σε ένα ζευγάρι διπλών μετράει καθένα από τα δύο μέλη. Όσο παίζει σε ένα αγώνισμα, τα άλλα δεν το προτείνουν, και η λίστα τους Σε αναμονή λέει πού παίζει: «παίζει στο κύριο, τραπέζι 4». Η χειροκίνητη αντιστοίχιση επιτρέπεται: ο αγώνας ξεκινά και το κελί του στο πλέγμα φέρει την ίδια ένδειξη.

Η προβολή του τουρνουά

Ένα τουρνουά το βλέπουν. Η επιλογή ενός φακέλου προβολής στις Ρυθμίσεις αρκεί μια για πάντα: το blunderDB ξαναγράφει εκεί μια αυτόνομη σελίδα HTML σε κάθε αλλαγή, και η σελίδα ανανεώνεται μόνη της. Ανοίγει εκτός σύνδεσης, σε δεύτερη οθόνη ή προβαλλόμενη, και δεν φορτώνει κανέναν εξωτερικό πόρο. Το Άνοιγμα στο πρόγραμμα περιήγησης την εμφανίζει αμέσως.

Το φύλλο ζευγαριών τοποθετείται στο τραπέζι υποδοχής: ένα κλικ στο Εκτύπωση φύλλου ανοίγει τον διάλογο εκτύπωσης του συστήματος. Μία γραμμή ανά αγώνα — οι δύο παίκτες, το μήκος, το τραπέζι, δύο κενά κουτάκια για το σκορ — και ένας γύρος τριάντα δύο παικτών χωρά σε μία σελίδα A4.

Μια διοργάνωση έχει τον δικό της φάκελο εξόδου, επιλεγμένο μία φορά στο πλαίσιο Ρυθμίσεών της με το ίδιο κουμπί Επιλογή φακέλου: το blunderDB γράφει εκεί το index.html, τη σελίδα τοίχου της διοργάνωσης — μία γραμμή ανά τραπέζι, όποιο αγώνισμα κι αν το κατέχει, με τους ανακοινωμένους γύρους κάθε αγωνίσματος και έναν σύνδεσμο προς τη δική του σελίδα — και κάθε προσαρτημένο αγώνισμα γράφει τη δική του σε έναν υποφάκελο. Μια ενέργεια σε οποιοδήποτε αγώνισμα της διοργάνωσης αναδημιουργεί τη σελίδα τοίχου· ο δικός του φάκελος ενός προσαρτημένου αγωνίσματος διατηρείται αλλά αγνοείται όσο παραμένει στη διοργάνωση.

Όταν ένα αγώνισμα βρίσκεται σε φάση ταμπλό και το ταμπλό έχει κληρωθεί, η σελίδα τοίχου του και αυτή της διοργάνωσης δείχνουν το δέντρο μεγάλο, ευανάγνωστο από μακριά: μία στήλη ανά γύρο, με τους ηττημένους που περνούν στην παρηγοριά διακεκομμένους. Η σελίδα εναλλάσσεται μόνη της, χωρίς script, ανάμεσα στο συνηθισμένο περιεχόμενό της (τα τραπέζια, για τη διοργάνωση) και το δέντρο κάθε αγωνίσματος σε ταμπλό, δώδεκα δευτερόλεπτα το καθένα· ανανεώνεται πάντα κάθε τριάντα δευτερόλεπτα και συνεχίζει την εναλλαγή από εκεί που ήταν. Ένα αγώνισμα χωρίς ταμπλό — για παράδειγμα μια ελβετική φάση — δεν έχει δέντρο και η σελίδα μένει όπως πριν.

Εκτός διεπαφής, η υποεντολή blunderdb tournament διαβάζει ένα διευθυνόμενο τουρνουά χωρίς γραφικό περιβάλλον: list, verify, standings, page και export· το page --rencontre γράφει τη σελίδα τοίχου μιας διοργάνωσης αντί της σελίδας ενός μόνο αγωνίσματος. Δείτε Διεπαφή γραμμής εντολών (CLI).

Πίνακας Stats

Εισαγωγή

Ο πίνακας Stats επιτρέπει την ανάλυση του επιπέδου παιχνιδιού και την παρακολούθηση της προόδου στο χρόνο με βάση τις θέσεις που έχουν εισαχθεί στη βάση δεδομένων. Υπολογίζει και εμφανίζει τους δείκτες PR (Performance Rating) και MWC cost (Match Winning Chance cost) για το σύνολο των θέσεων ή για ένα φιλτραρισμένο υποσύνολο.

Ο πίνακας Stats είναι ιδιαίτερα χρήσιμος για:

  • τον προσδιορισμό του επιπέδου σας σε σχέση με τις ζώνες επιπέδου (Παγκόσμια κλάση, Ειδικός, Προχωρημένος…) χάρη στο συνολικό PR·

  • την παρακολούθηση της προόδου σας τουρνουά προς τουρνουά ή αγώνα προς αγώνα χάρη στα γραφήματα της καρτέλας Progression·

  • τον εντοπισμό των αδυναμιών σας: η καρτέλα Erreurs εμφανίζει την κατανομή μεταξύ κινήσεων πουλιών και αποφάσεων κύβου, καθώς και την κατανομή των μεγεθών σφάλματος·

  • σύγκριση των παικτών της βάσης μεταξύ τους, μία γραμμή ανά παίκτη, μέσω της καρτέλας Παίκτες — χρήσιμο για την παρακολούθηση μιας ολόκληρης διοργάνωσης·

  • την άμεση πρόσβαση στις σχετικές θέσεις κάνοντας κλικ σε οποιονδήποτε δείκτη (drill-down).

Άνοιγμα του πίνακα

Για να ανοίξετε τον πίνακα Stats:

  • Πατήστε CTRL-D.

  • Πληκτρολογήστε την εντολή stats ή st στη γραμμή εντολών.

Σημείωση

Ο πίνακας ανανεώνεται αυτόματα σε κάθε τροποποίηση του φίλτρου. Δεν επανυπολογίζει τα στατιστικά κατά την απλή εναλλαγή PR ↔ MWC: και οι δύο μετρικές υπολογίζονται ταυτόχρονα από το backend.

Γραμμή φίλτρου

Η γραμμή φίλτρου, στο επάνω μέρος του πίνακα, επιτρέπει τον περιορισμό του υπολογισμού σε ένα υποσύνολο θέσεων.

Οπτική γωνία παίκτη

Η αναπτυσσόμενη λίστα Παίκτης επιτρέπει το φιλτράρισμα των στατιστικών σύμφωνα με τον αναλυόμενο παίκτη. Το blunderDB επιλέγει αυτόματα τον παίκτη του οποίου το όνομα εμφανίζεται πιο συχνά στη βάση δεδομένων — τροποποιήσιμο ανά πάσα στιγμή.

Πρακτική συμβουλή

Η αλλαγή παίκτη δεν προκαλεί απώλεια δεδομένων· αρκεί να επιλέξετε ξανά τον προηγούμενο παίκτη από τη λίστα.

Διαθέσιμα φίλτρα

  • Τουρνουά — περιορισμός σε ένα ή περισσότερα τουρνουά. Μπορούν να επιλεγούν πολλά τουρνουά ταυτόχρονα.

  • Ημερομηνίες — χρονικό εύρος (Από … Έως). Αν συμπληρωθεί μόνο η ημερομηνία έναρξης, περιλαμβάνονται οι πιο πρόσφατες θέσεις.

  • Τύπος απόφασης — Όλα / Κινήσεις πουλιών / Αποφάσεις κύβου.

  • Διάρκεια αγώνα — περιορισμός σε συγκεκριμένα μήκη αγώνα (1, 3, 5, 7, 9, 11, 13, 15, 21 πόντοι). Μπορούν να συνδυαστούν πολλά μήκη.

Ένα κουμπί Reset μηδενίζει όλα τα φίλτρα (εκτός από τον αυτόματα εντοπισμένο παίκτη).

Σημείωση

Τα φίλτρα αποθηκεύονται στις ρυθμίσεις του blunderDB (config.yaml) και επαναφέρονται κατά το επόμενο άνοιγμα.

Εναλλαγή PR / MWC

Το κουμπί PR / MWC στο επάνω μέρος του πίνακα εναλλάσσει την εμφανιζόμενη μετρική σε όλες τις καρτέλες.

PR (Performance Rating)

Το μέσο σφάλμα ισοδυναμίας ανά μετρούμενη απόφαση, πολλαπλασιασμένο επί 500 όπως κάνουν το eXtreme Gammon και το GNUbg: ένα PR 5,0 αντιστοιχεί σε 0,010 χαμένης ισοδυναμίας ανά απόφαση, δηλαδή 10 millipoints (mpt). Ο ακριβής κανόνας μέτρησης — ποιες αποφάσεις μπαίνουν στον παρονομαστή, πώς μετατρέπεται το σκορ — είναι αυτός του Παράρτημα: Μοντέλο στατιστικών — ευθυγράμμιση XG / gnuBG / blunderDB.

Οι ζώνες επιπέδου που ο πίνακας σχεδιάζει πίσω από την καμπύλη προόδου είναι ένα ενδεικτικό σημείο αναφοράς του ίδιου του blunderDB: καμία δημοσίευση δεν αποτελεί αυθεντία για αυτά τα κατώφλια. Το άνω όριο κάθε ζώνης εξαιρείται: ένα PR ίσο με 4 είναι Προχωρημένος, όχι Ειδικός.

Επίπεδο

PR

Παγκόσμια κλάση

< 2

Expert

2 – 4

Προχωρημένος

4 – 6

Μέσος

6 – 9

Περιστασιακός

9 – 12

Αρχάριος

≥ 12

MWC cost (Match Winning Chance cost)

Σωρευτική πιθανότητα νίκης αγώνα που χάνεται εξαιτίας των σφαλμάτων, σε ολόκληρο το φιλτραρισμένο σύνολο δεδομένων. Υπολογίζεται με βάση τη MET Kazaross-XG2 που είναι ενσωματωμένη στο blunderDB.

Προσοχή

Το MWC cost δεν εφαρμόζεται στις θέσεις money-game (χωρίς διακύβευμα αγώνα). Αυτές οι θέσεις εξαιρούνται από τον υπολογισμό MWC. Οι τιμές MWC εξαρτώνται από τη MET που χρησιμοποιείται· δεν είναι άμεσα συγκρίσιμες μεταξύ λογισμικών που χρησιμοποιούν διαφορετικές METs.

Η εναλλαγή PR ↔ MWC είναι ακαριαία: δεν πραγματοποιείται κανένας επανυπολογισμός στο backend.

Η αναφορά HTML

Το κουμπί Αναφορά HTML στην κεφαλίδα του πίνακα παράγει ένα αυτόνομο έγγραφο: ένα μόνο αρχείο, χωρίς εξωτερική εικόνα, χωρίς απομακρυσμένο φύλλο στυλ, χωρίς σενάριο. Τα διαγράμματα είναι ενσωματωμένο SVG, σχεδιασμένα από τον ίδιο μηχανισμό με το ταμπλό στην οθόνη, με τη δική σας παλέτα. Ανοίγει σε οποιονδήποτε περιηγητή, ταξιδεύει με ηλεκτρονικό ταχυδρομείο, και τυπώνεται σε PDF από τον ίδιο τον περιηγητή — πράγμα που αποφεύγει την ενσωμάτωση γεννήτριας PDF για κάτι που όλοι έχουν ήδη.

Περιέχει τους δείκτες του τρέχοντος εύρους (θέσεις, αγώνες, μετρημένες αποφάσεις, PR συνολικό, κινήσεων και κύβου), έπειτα τις δέκα πιο ακριβές αποφάσεις, καθεμιά με το διάγραμμά της, το κόστος της, τον αγώνα από τον οποίο προέρχεται και την καλύτερη κίνηση όταν μια ανάλυση τη δίνει.

Η αναφορά φέρει το τρέχον φίλτρο του πίνακα Στατιστικών. Μια αναφορά που δεν δηλώνει το εύρος της είναι μια αναφορά της οποίας οι αριθμοί δεν σημαίνουν τίποτα: ρυθμίστε το φίλτρο — ένα τουρνουά, ένα εύρος ημερομηνιών, έναν παίκτη — πριν την παραγάγετε.

Καρτέλα Dashboard

Η καρτέλα Dashboard παρέχει μια συνοπτική εικόνα των βασικών δεικτών.

Καρτέλα Dashboard του πίνακα Stats

Η καρτέλα Dashboard: συνολικό PR, PR πουλιών, PR κύβου.

Κάρτες επιπέδου

Τρεις κάρτες εμφανίζουν το PR (ή το MWC) για:

  • PR Συνολικό — όλες τις αποφάσεις (κινήσεις + κύβος)·

  • PR Πούλι — μόνο τις κινήσεις που παίχτηκαν·

  • PR Κύβος — μόνο τις αποφάσεις κύβου.

Κάνοντας κλικ σε μια κάρτα φορτώνονται στον πίνακα ανάλυσης οι θέσεις του αντίστοιχου υποσυνόλου (drill-down).

Σημείωση

Ο συνολικός αριθμός των αποφάσεων εμφανίζεται στο κάτω μέρος κάθε κάρτας κατά την αιώρηση του δείκτη.

Κυλιόμενο PR στις τελευταίες N αποφάσεις

Μια γραμμή τιμών PR (ή MWC) που υπολογίζονται στις τελευταίες N αποφάσεις (N = 5, 10, 50, 100, 250, 500, 1000) επιτρέπει τη μέτρηση της πρόσφατης τάσης. Οι αχνές τιμές αντιστοιχούν σε N μεγαλύτερο από τον αριθμό των διαθέσιμων αποφάσεων.

Κάνοντας κλικ σε μια τιμή φορτώνονται οι τελευταίες N αντίστοιχες θέσεις.

Κορυφαία σφάλματα (Top blunders)

Η λίστα των 10 χειρότερων σφαλμάτων (ή MWC cost), ταξινομημένων κατά φθίνον μέγεθος. Κάνοντας κλικ σε μια γραμμή φορτώνεται η σχετική θέση στον πίνακα ανάλυσης.

Καρτέλα Progression

Η καρτέλα Progression παρουσιάζει την εξέλιξη του επιπέδου στο χρόνο.

Στην κορυφή της καρτέλας, ένας στόχος: «PR < 5 μέσα σε δώδεκα εβδομάδες». Ένας στόχος, μια προθεσμία, και μια τάση που λέει προς τα πού πάτε — τίποτα παραπάνω. Ένας στόχος που θα άρχιζε να βαθμολογεί, να συγχαίρει ή να υπενθυμίζει θα ήταν άλλη λειτουργία, όχι αυτή.

Το κουμπί Πρόταση προτείνει έναν στόχο από το τρέχον επίπεδο: το κάτω όριο της ζώνης όπου βρίσκεστε, δηλαδή την είσοδο στην επόμενη. Το να προτείνεις «λίγο καλύτερα» δεν θα αγκυρωνόταν πουθενά· το να προτείνεις μια ζώνη λέει κάτι — το πέρασμα από μέσο σε προχωρημένο φαίνεται και λέγεται.

Η τάση είναι προσαρμογή ελαχίστων τετραγώνων στο PR των αγώνων σας, προβαλλόμενη στην προθεσμία. Αρνείται να αποφανθεί κάτω από τρεις αγώνες: το να χαράξεις ευθεία ανάμεσα σε δύο σημεία θα ήταν ισχυρισμός που δεν στέκει. Και η φράση το λέει κάθε φορά — μια τάση δεν είναι πρόβλεψη.

Ο στόχος αποθηκεύεται στα μεταδεδομένα της βάσης, όχι στη διαμόρφωση: αφορά αυτή τη βιβλιοθήκη, άρα ακολουθεί το αρχείο και όχι το μηχάνημα. Καμία αλλαγή σχήματος: το metadata είναι ήδη πίνακας κλειδιών/τιμών, αναγνώσιμος από το blunderdb info όπως και από τον δαίμονα.

Γραμμικό γράφημα ανά τουρνουά

Ένα γραμμικό γράφημα εμφανίζει το PR (ή το MWC) για κάθε τουρνουά (άξονας X: σειρά των τουρνουά, άξονας Y: τιμή της μετρικής). Έγχρωμες ζώνες αποτυπώνουν τα κατώφλια επιπέδου.

Κάνοντας κλικ σε ένα σημείο του γραφήματος ανοίγει ένα μενού περιβάλλοντος με δύο επιλογές:

  • Άνοιγμα τουρνουά — ανοίγει το τουρνουά στον πίνακα Τουρνουά.

  • Άνοιγμα θέσεων — φορτώνει όλες τις θέσεις του τουρνουά στον πίνακα ανάλυσης.

Διάγραμμα διασποράς ανά αγώνα

Ένα διάγραμμα διασποράς αναπαριστά κάθε αγώνα (άξονας X: ημερομηνία, άξονας Y: PR ή MWC). Το μέγεθος του σημείου είναι ανάλογο του αριθμού των αποφάσεων στον αγώνα.

Κάνοντας κλικ σε ένα σημείο ανοίγει ένα μενού περιβάλλοντος:

  • Άνοιγμα αγώνα — ανοίγει τον αγώνα στον πίνακα αγώνων.

  • Άνοιγμα θέσεων — φορτώνει όλες τις θέσεις του αγώνα στον πίνακα ανάλυσης.

Καρτέλα Erreurs

Η καρτέλα Erreurs αναλύει τις πηγές των σφαλμάτων.

Καρτέλα Errors του πίνακα Stats

Η καρτέλα Errors: κατανομή του PR ανά ενέργεια κύβου.

Επαναλαμβανόμενα λάθη

Στην κορυφή της καρτέλας, ένας πίνακας ομαδοποιεί τα λάθη του τρέχοντος φίλτρου — άρα μόνο ενός παίκτη όταν έχει φιλτραριστεί ένας παίκτης — ανά σχέδιο παιχνιδιού και ανά θέμα, με πρώτο το πιο δαπανηρό. Απαντά στο ερώτημα «πού χάνω τα περισσότερα;»: για παράδειγμα, «κράτημα · πολλά blots».

  • Ένα λάθος είναι μια μετρημένη απόφαση της οποίας το κόστος φτάνει το όριο Λάθος της βιβλιοθήκης.

  • Το σχέδιο παιχνιδιού είναι αυτό του παίκτη που έχει σειρά, όπως το παρουσιάζει η καρτέλα Αναλύσεις.

  • Το θέμα μιας κίνησης πούλιων είναι αυτό που ονομάζουν οι κανόνες της πρότασης εξήγησης του Πίνακα Ανάλυσης: υποτιμημένο gammon, πολλά blots, σημείο που δεν έγινε, υπερβολικά παθητικό. Το θέμα μιας απόφασης κύβου είναι η κατεύθυνση του λάθους, όπως στην κατεύθυνση των λαθών κύβου παρακάτω: χαμένο διπλασιασμό, πρόωρο διπλασιασμό, λανθασμένο πάσο, λανθασμένη αποδοχή.

  • Ένα λάθος που κανένας κανόνας δεν ονομάζει με βεβαιότητα δεν εικάζεται: βγαίνει από την κατάταξη και εμφανίζεται χωριστά, κάτω από τον πίνακα, σε μία γραμμή ανά σχέδιο παιχνιδιού («χωρίς αναγνωρισμένο θέμα: N λάθη, κόστος X»), επίσης με δυνατότητα κλικ. Αυτό το υπόλοιπο είναι συχνά το βαρύτερο, επειδή η εξήγηση εκφέρεται μόνο από 60 mp και πάνω, πάνω από το όριο Λάθος: κατατεταγμένο με τα άλλα, θα βρισκόταν επικεφαλής ενός πίνακα που δεν θα έλεγε τίποτα.

  • Το κόστος είναι το μερίδιο του PR του φίλτρου που αντιπροσωπεύει η ομάδα: ο τύπος του PR εφαρμοσμένος στα λάθη της ομάδας, σε σχέση με όλες τις μετρημένες αποφάσεις. Τα κόστη των ομάδων δεν ξεπερνούν λοιπόν ποτέ το PR.

Το κλικ σε μια ομάδα φορτώνει τις θέσεις της, από την πιο δαπανηρή στη λιγότερο δαπανηρή. Το θέμα υπολογίζεται εκ νέου σε κάθε εμφάνιση και δεν αποθηκεύεται ποτέ: όπως το σχέδιο παιχνιδιού, είναι μια παράγωγη ετικέτα που δεν επεξεργάζεται. Στη γραμμή εντολών: blunderdb stats recurring (βλ. stats — Επαναλαμβανόμενα λάθη).

Κατανομή ανά ενέργεια κύβου

Ένα ραβδόγραμμα εμφανίζει το PR (ή το MWC) για κάθε τύπο απόφασης κύβου: NoDouble, DoubleTake, DoublePass, TooGood. Κάθε ράβδος υποδεικνύει επίσης τον αριθμό των αποφάσεων και το ποσοστό σφαλμάτων σε επεξηγηματική ετικέτα.

Κάνοντας κλικ σε μια ράβδο φορτώνονται οι θέσεις που αντιστοιχούν σε αυτή την ενέργεια κύβου, μόνο εκείνες με σφάλμα (drill-down).

Κατεύθυνση των λαθών κύβου

Η παραπάνω κατανομή δείχνει πόσο κοστίζουν οι αποφάσεις κύβου· ο πίνακας αυτός δείχνει προς ποια κατεύθυνση σφάλλουν.

Μια θέση κύβου φέρει δύο αποφάσεις που λαμβάνονται από δύο διαφορετικούς παίκτες, οι οποίες παρουσιάζονται εδώ σε δύο γραμμές:

  • Προσφορά — ο παίκτης που κατέχει τον κύβο διπλασιάζει ή όχι. Τα λάθη του είναι τα χαμένα διπλασιάσματα (έπρεπε να διπλασιάσει) και τα πρόωρα διπλασιάσματα (δεν έπρεπε).

  • Απάντηση — ο παίκτης στον οποίο προσφέρεται ο κύβος δέχεται ή πασάρει. Τα λάθη του είναι τα λανθασμένα πάσα (μια σωστή αποδοχή πασαρίστηκε) και οι λανθασμένες αποδοχές (ένα σωστό πάσο έγινε αποδεκτό).

Οι δύο γραμμές παραμένουν χωριστές σκόπιμα: ένας παίκτης μπορεί κάλλιστα να διπλασιάζει αργά και να δέχεται χαλαρά, και ένας ενιαίος δείκτης θα το αποκαλούσε «ισορροπημένο» χάνοντας και τα δύο μισά της πληροφορίας.

Κάθε κελί εμφανίζει το πλήθος των αποφάσεων· το tooltip δίνει τη συσσωρευμένη χαμένη ισοδυναμία. Το κλικ σε ένα κελί φορτώνει τις αντίστοιχες θέσεις. Ένα κελί με μηδέν δεν είναι κλικαρίσιμο.

Σημείωση

Ο πίνακας αυτός μετρά αποφάσεις, δεν κρίνει. Από ποια απόκλιση και έπειτα μια τάση αξίζει να ονομαστεί εξαρτάται από το μέγεθος του δείγματος και από ένα σημείο αναφοράς, που δεν είναι δεδομένα της μηχανής.

Σύγκριση Checker / Cube

Ένα συγκριτικό διάγραμμα τοποθετεί δίπλα-δίπλα το PR των κινήσεων πουλιών και των αποφάσεων κύβου. Κάνοντας κλικ σε μια ράβδο φορτώνονται οι θέσεις του υποσυνόλου με σφάλμα.

Ιστόγραμμα των μεγεθών σφάλματος

Ένα ιστόγραμμα κατανέμει τα σφάλματα σύμφωνα με το μέγεθός τους σε millipoints (mpt, διαστήματα: 0–5, 5–10, 10–25, 25–50, 50–100, ≥ 100). Κάνοντας κλικ σε μια ράβδο φορτώνονται οι θέσεις του διαστήματος.

Καρτέλα Αναλύσεις

Η καρτέλα Αναλύσεις τεμαχίζει τις ίδιες αποφάσεις που μετρούν τα συνολικά μεγέθη κατά τέσσερις άξονες. Κανένας δεν επαναπροσδιορίζει τι μετρά ως απόφαση: θα ήταν ένα δεύτερο PR με το ίδιο όνομα.

  • Ανά φάση παιχνιδιού — άνοιγμα, μέσο παιχνίδι, κούρσα, μάζεμα. Αυτό απαντά στο «το PR μου στην κούρσα έναντι του PR μου στην επαφή». Η ετικέτα υπολογίζεται από το ταμπλό (βλ. Πίνακας Αναζήτησης)· μια βάση της οποίας οι φάσεις δεν υπολογίστηκαν ποτέ τα κατατάσσει όλα ως Αταξινόμητη, και η blunderdb repair τη συμπληρώνει.

  • Ανά σχέδιο παιχνιδιού — κούρσα, blitz, άγκυρα, backgame, φράγμα κατά φράγματος… Αυτή είναι η ανάλυση για την οποία υπάρχει ο ταξινομητής: «πού χάνω περισσότερα;», σχέδιο προς σχέδιο. Ίδια παράγωγη ετικέτα με τη φάση, ίδιες επιφυλάξεις, και το blunderdb repair τη γεμίζει με τον ίδιο τρόπο.

  • Ανά ετικέτα — τα #λέξη γραμμένα στα σχόλια. Μια θέση μπορεί να φέρει πολλές: αυτές οι γραμμές δεν αθροίζονται στο σύνολο, και ο πίνακας το λέει από κάτω. Μια ετικέτα χαρακτηρίζει, δεν διαμερίζει.

  • Ανά σκορ — οι πόντοι που λείπουν και στα δύο στρατόπεδα, διαβασμένοι από την πλευρά του παίκτη που παίζει, δηλαδή από την πλευρά αυτού που αποφασίζει. Η γραμμή Money είναι το παιχνίδι για χρήματα. Ένα κελί με λιγότερες από δέκα αποφάσεις είναι γκριζαρισμένο με το πλήθος του ορατό αντί να κρύβεται: πολύ λίγες για να διαβαστούν, αλλά η παράλειψη παραμένει επαληθεύσιμη.

Σημείωση

Το παιχνίδι Crawford δεν διακρίνεται: το blunderDB δεν καταγράφει αυτή την ένδειξη σε μια θέση. Η πρακτική επίδραση είναι μικρή — ένα παιχνίδι Crawford δεν έχει καμία απόφαση κύβου — αλλά η παράλειψη είναι πραγματική και αξίζει να γραφτεί παρά να αφεθεί στην εικασία.

Μελέτη και πραγματικό παιχνίδι

Η εντολή blunderdb list --type study --days 30 βάζει δίπλα-δίπλα τρεις αριθμούς, σχέδιο προς σχέδιο: πόσες διακριτές θέσεις επαναλήφθηκαν στην περίοδο, ποιο ήταν το PR πριν από αυτήν, ποιο είναι το PR έκτοτε.

Τρεις αριθμοί, και όχι τέταρτος. Δεν υπάρχει ούτε στήλη κέρδους ούτε βέλος, γιατί τίποτα εδώ δεν ελέγχει τίποτα: ο παίκτης μπορεί να συνάντησε ισχυρότερους αντιπάλους, να άλλαξε μορφή, ή απλώς να έπαιξε περισσότερες κούρσες αυτόν τον μήνα. Η σύγκριση ανήκει στον αναγνώστη· μια στήλη που θα ανήγγελλε αποτέλεσμα θα ισχυριζόταν αιτιότητα που αυτά τα δεδομένα δεν φέρουν. Οι αριθμοί, πάντως, είναι ακριβείς.

Οι επαναλήψεις μετρώνται σε διακριτές θέσεις: μια κάρτα που επαναλήφθηκε τέσσερις φορές τον μήνα είναι μία θέση που μελετήθηκε, και το να μετρηθούν οι επαναλήψεις θα έκανε έναν μήνα παπαγαλίας να μοιάζει με μήνα κάλυψης. Οι αποφάσεις του PR, αντίθετα, μετρώνται όλες — καθεμιά πάρθηκε μία φορά. Ένα PR που στηρίζεται σε λιγότερες από δέκα αποφάσεις εμφανίζεται —, με το δείγμα του ορατό δίπλα.

Καρτέλα Παίκτες

Οι τέσσερις προηγούμενες καρτέλες περιγράφουν έναν παίκτη· η καρτέλα Παίκτες τους συγκρίνει όλους. Εμφανίζει μια γραμμή ανά παίκτη της βάσης, πράγμα που απαντά στην ανάγκη ενός διοργανωτή που παρακολουθεί ένα ολόκληρο τουρνουά αντί για έναν παίκτη.

Καρτέλα Players του πίνακα Stats

Η καρτέλα Players: μία γραμμή ανά παίκτη, ταξινομήσιμη κατά οποιαδήποτε στήλη.

Στήλες, με τη σειρά:

Στήλη

Σημασία

Παίκτης

Το όνομα όπως εμφανίζεται στους αγώνες. Ένας παίκτης καταχωρισμένος με δύο γραφές εμφανίζεται επομένως σε δύο γραμμές· χρησιμοποιήστε τη συγχώνευση παικτών για να τις ενώσετε.

Αγώνες

Πλήθος αγώνων που παίχτηκαν στην επιλεγμένη περίοδο.

Ν–Η

Νίκες και ήττες. Ένας ημιτελής αγώνας (κολοβωμένο αρχείο, εγκατάλειψη) δεν μετρά ούτε ως νίκη ούτε ως ήττα: το Ν + Η μπορεί επομένως να είναι μικρότερο από το πλήθος των αγώνων.

Αποφάσεις

Πλήθος μετρημένων αποφάσεων — ο παρονομαστής του PR. Είναι η στήλη που λέει τι αξίζουν οι διπλανοί δείκτες: ένα PR υπολογισμένο σε δώδεκα αποφάσεις δεν σημαίνει τίποτα.

PR

Συνολικό Performance Rating.

PR πουλιών, PR κύβου

Το PR αναλυμένο ανά τύπο απόφασης.

Snowie

Snowie Error Rate (βλ. Παράρτημα: Μοντέλο στατιστικών — ευθυγράμμιση XG / gnuBG / blunderDB).

Σοβαρά λάθη

Πλήθος σφαλμάτων που φτάνουν το κατώφλι blunder της βιβλιοθήκης (0,100 EMG εξ ορισμού).

Τύχη

Μέση τύχη ανά ζαριά, σε millipoints (mpt), με πρόσημο: θετική αν τα ζάρια ήταν ευνοϊκά.

Χρήση:

  • Ταξινόμηση — κάντε κλικ σε μια κεφαλίδα στήλης. Ο πίνακας ανοίγει ταξινομημένος κατά αύξον PR, με τον καλύτερο παίκτη πρώτο. Οι παίκτες για τους οποίους δεν μετρήθηκε τίποτα παραμένουν στο κάτω μέρος όποια και αν είναι η φορά της ταξινόμησης: ένα μηδέν ελλείψει δεδομένων δεν είναι τέλεια απόδοση.

  • Άνοιγμα λεπτομερειών παίκτη — κάντε κλικ σε μια γραμμή. Ο παίκτης επιλέγεται στη γραμμή φίλτρων και η προβολή μεταβαίνει στην καρτέλα Dashboard.

  • Περιορισμός της περιόδου — τα φίλτρα ημερομηνιών, τουρνουά και μήκους αγώνα ισχύουν κανονικά, πράγμα που επιτρέπει τον περιορισμό του πίνακα στις ημερομηνίες μιας διοργάνωσης.

  • Σύγκριση δύο παικτών — τσεκάρετε το κουτί της πρώτης στήλης σε δύο γραμμές. Πάνω από τον πίνακα εμφανίζεται ένα πλαίσιο που παραθέτει τους δείκτες τους αντικριστά· τσεκάροντας τρίτο παίκτη αντικαθίσταται ο παλαιότερος από τους δύο. Το κουτί δεν επιλέγει τη γραμμή: το τσεκάρισμα συγκρίνει, το κλικ ανοίγει τη λεπτομέρεια.

Στο πλαίσιο αυτό μόνο οι ρυθμοί παίρνουν ετυμηγορία, και ο καλύτερος από τους δύο μπαίνει με έντονα. Τρεις δείκτες δεν παίρνουν ποτέ, και αξίζει να ειπωθεί γιατί. Η τύχη δεν είναι προσόν: ένας πιο τυχερός παίκτης δεν είναι καλύτερος. Οι αγώνες, το ρεκόρ και οι αποφάσεις δείχνουν τι αξίζουν οι ρυθμοί, αλλά αν τα βάζαμε σε ανταγωνισμό θα κέρδιζε όποιος απλώς έπαιξε περισσότερο. Το πλήθος των blunder δεν συγκρίνεται ωμό — δώδεκα στις χίλιες αποφάσεις είναι καλύτερα από δέκα στις εκατό —, γι” αυτό το πλαίσιο προσθέτει μια γραμμή Blunder / 100 αποφ. που όντως συγκρίνεται, και αφήνει το πλήθος δίπλα ως συμφραζόμενο.

Η ισοπαλία δεν είναι νίκη: δεν μπαίνει με έντονα σε καμία πλευρά. Ένας ρυθμός χωρίς τίποτα από πίσω εμφανίζεται ως «—» και δεν κρίνει τίποτα.

Σημείωση

Σε αυτή την καρτέλα, η λίστα Παίκτης και η επιλογή του τύπου απόφασης είναι απενεργοποιημένες: ο πίνακας δείχνει όλους τους παίκτες και ήδη διαχωρίζει τις αποφάσεις πουλιών και κύβου σε ξεχωριστές στήλες.

Σημαντικό

Μια παύλα («—») σημαίνει τιμή που δεν μετρήθηκε ποτέ, να μη συγχέεται με το μηδέν. Αυτό ισχύει ιδίως για τη στήλη Τύχη σε κάθε αγώνα που εισήχθη πριν από την έκδοση 2.15.0 του σχήματος: η τύχη δεν διατηρούνταν τότε, και τίποτα δεν επιτρέπει την εκ των υστέρων ανασύστασή της. Η επανεισαγωγή του αρχείου προέλευσης δεν αρκεί: η εισαγωγή αναγνωρίζει διπλότυπο και κρατά μόνο τις σημάνσεις του. Ο αγώνας πρέπει να διαγραφεί και έπειτα να εισαχθεί ξανά. Οι μορφές που δεν τη μεταφέρουν (BGF, Jellyfish .mat) δεν θα τη δώσουν ποτέ.

Κανόνας συνάθροισης

Σημαντικό

Το PR ενός τουρνουά (ή οποιουδήποτε υποσυνόλου) υπολογίζεται με τον κανόνα άθροισμα/άθροισμα — ποτέ ως μέσος όρος των επιμέρους PR των αγώνων.

Τύπος:

\[PR_{tournoi} = 500 \times \frac{\sum_{i} \text{erreur}_i}{\text{nombre total de décisions}}\]

Παράδειγμα: ένας παίκτης παίζει δύο αγώνες σε ένα τουρνουά —

  • Αγώνας A: 10 αποφάσεις, 0,100 χαμένης ισοδυναμίας → PR = 5,0

  • Αγώνας B: 90 αποφάσεις, 0,540 χαμένης ισοδυναμίας → PR = 3,0

Αφελής μέσος όρος των PR: (5,0 + 3,0) / 2 = 4,0 (λανθασμένο)

Κανόνας άθροισμα/άθροισμα: 500 × 0,640 / (10 + 90) = 3,2 (σωστό)

Ο κανόνας άθροισμα/άθροισμα είναι ο μόνος που χειρίζεται σωστά τη διακύμανση του μήκους των αγώνων (ένας αγώνας 21 πόντων ζυγίζει περισσότερο από έναν αγώνα 1 πόντου).

MWC: περιορισμοί

  • Το MWC cost υπολογίζεται από τη MET Kazaross-XG2, τον de facto πίνακα αναφοράς στο αγωνιστικό τάβλι. Τα αποτελέσματα δεν είναι άμεσα συγκρίσιμα με λογισμικά που χρησιμοποιούν άλλα MET. Είναι ο ίδιος πίνακας, διαβασμένος από το ίδιο σημείο εισόδου, με εκείνον που χρησιμοποιεί ο ενσωματωμένος αξιολογητής για τις αποφάσεις κύβου του στο σκορ: τα στατιστικά και ο μηχανισμός δεν μπορούν να αποκλίνουν σε αυτό. Δίνει δικές του τιμές έως 25 πόντους προς κατάκτηση από κάθε πλευρά· πέρα από εκεί, επεκτείνεται με έναν πίνακα Zadeh υπολογισμένο όπως αυτόν του GNUbg, μέχρι τους 64.

  • Οι θέσεις money-game (χωρίς σκορ αγώνα) εξαιρούνται από τον υπολογισμό MWC. Αν η βάση δεδομένων σας περιέχει πολλές θέσεις money-game, το MWC cost μπορεί να υποεκτιμηθεί ή να μην είναι διαθέσιμο.

  • Το MWC cost είναι σωρευτικό σε ολόκληρο το φιλτραρισμένο σύνολο δεδομένων — όχι δείκτης ανά απόφαση. Μετρά τη συνολική επίδραση των σφαλμάτων σας στις πιθανότητες νίκης σας.

Πίνακας Eval

Ο πίνακας Eval (CTRL-E) αξιολογεί ζωντανά τη θέση που βρίσκεται στο ταμπλό, όποια κι αν είναι· σε θέση bearoff εξειδικεύεται και υπολογίζει επιπλέον το EPC (Effective Pip Count). Ενεργοποιείται πατώντας CTRL-E, κάνοντας κλικ στην καρτέλα Eval του κάτω πίνακα ή εκτελώντας την εντολή eval· το epc, το παλιό της όνομα, τον ανοίγει επίσης. Ο πίνακας ονομαζόταν EPC, έπειτα Bearoff, πριν γίνει Eval — εδώ πρέπει επομένως να αναζητηθεί ό,τι μια προηγούμενη έκδοση αποκαλούσε πίνακα Bearoff, καθώς το όνομα δηλώνει πλέον μόνο την καρτέλα ρυθμίσεων των πινάκων bearoff.

Ο πίνακας δείχνει πάντα τη μοναδική απόφαση που ζητά η θέση που είναι τοποθετημένη στο ταμπλό — ποτέ δύο ταυτόχρονα — και τα γεγονότα που τη συνοδεύουν. Κάθε μέγεθος διαβάζεται στον άξονα που του ταιριάζει και όχι σε έναν μοναδικό επιβεβλημένο άξονα: η πιθανότητα νίκης, gammon, backgammon και η cubeless ισοδυναμία κάθε παίκτη, υπολογισμένες πριν από τη ζαριά, διαβάζονται ανά παίκτη (κάτω, πάνω, έπειτα Δ), στα αριστερά της απόφασης κύβου, όταν δεν είναι τοποθετημένο κανένα ζάρι. Τα γεγονότα και η απόφαση μένουν δίπλα-δίπλα: η απόφαση κύβου δεν περνά ποτέ κάτω από τους αριθμούς που τη δικαιολογούν, όποια κι αν είναι η γλώσσα της διεπαφής και η θέση στο ταμπλό. Μόλις τοποθετηθούν ζάρια, οι ίδιες αυτές τιμές πριν από τη ζαριά αλλάζουν άξονα: διαβάζονται στη βολή, στην κορυφή της λίστας των υποψήφιων κινήσεων, ως μια πλάγια γραμμή πριν από τη ζαριά — όχι μία ακόμη υποψήφια κίνηση, αλλά ένα σημείο αναφοράς με το οποίο διαβάζεται κάθε κίνηση. Η διαφορά ανάμεσα σε αυτή τη γραμμή και μια κίνηση περιέχει την τύχη της ζαριάς, ποτέ την αξία της κίνησης, και επομένως δεν φέρει καμία στήλη σφάλματος. Σε μια θέση καθαρού bearoff, ένας δεύτερος πίνακας, πάντα ανά παίκτη και πάντα παρών, με ή χωρίς τοποθετημένα ζάρια, φέρει το EPC, το pip count, το wastage, τον μέσο αριθμό ζαριών και την τυπική απόκλιση· αυτές οι πέντε στήλες δεν μετακινούνται ποτέ. Οι δύο πίνακες είναι στοιβαγμένοι και μοιράζονται το ίδιο πλέγμα στηλών: ίδια άκρα, ίδια σημάδια στηλών, μία μόνο στήλη κουκκίδων — διαβάζονται σαν ένα μόνο αντικείμενο με δύο ορόφους. Το κουμπί Προσθήκη στη βάση, το σήμα καθεστώτος, η απόδοση στη μηχανή (εκεί φαίνεται και το βάθος της τελευταίας αξιολόγησης) και το πλαίσιο επιλογής Πρόκληση σχηματίζουν μια ξεχωριστή λωρίδα, στοιχισμένη δεξιά πάνω από τους πίνακες.

Μόνο η λίστα των υποψήφιων κινήσεων κυλά — η γραμμή πριν από τη ζαριά, και αυτή, μένει καρφιτσωμένη πάνω από αυτήν· το υπόλοιπο του πίνακα (γεγονότα, σήμα, απόφαση κύβου) παραμένει πάντα ορατό, χωρίς ιδιαίτερη ρύθμιση του μεγέθους του πίνακα.

Ο πίνακας γεγονότων και η απόφαση υπολογίζονται από το gammonNet, ενσωματωμένο, χωρίς XG ούτε gnubg. Ο υπολογισμός ακολουθεί τη θέση χωρίς ποτέ να παγώνει τη διεπαφή: ένα βάθος 0-ply εμφανίζεται αμέσως σε κάθε χειρισμό, και έπειτα, μετά από μισό δευτερόλεπτο ακινησίας, μια βαθύτερη αξιολόγηση (2 ply από προεπιλογή, ρυθμιζόμενη στην καρτέλα gammonNet των ρυθμίσεων) την αντικαθιστά στο παρασκήνιο — κάθε νέος χειρισμός ακυρώνει αυτόν τον υπολογισμό παρασκηνίου. Το βάθος που εμφανίζεται στη λωρίδα των σημάτων, ή μέσα στο σήμα καθεστώτος σε μια θέση κούρσας, είναι πάντα εκείνο που πράγματι παρήγαγε τον εμφανιζόμενο αριθμό, ποτέ εκείνο που ζητήθηκε· δεν επαναλαμβάνεται σε κάθε γραμμή, αφού μια ζωντανή αξιολόγηση μοιράζεται το ίδιο βάθος για όλες τις κινήσεις. Η ισοδυναμία των υποψήφιων κινήσεων και της απόφασης κύβου ακολουθεί το σκορ της θέσης: σε money game εκφράζεται σε πόντους, σε σκορ αγώνα σε κανονικοποιημένη ισοδυναμία — την ίδια κλίμακα με το XG και το GNU Backgammon, όπου το να κερδίσεις την αξία του τρέχοντος κύβου αξίζει +1 και το να τη χάσεις −1 — ποτέ αναμεμειγμένες στον ίδιο πίνακα. Η επικεφαλίδα της στήλης το δηλώνει ρητά αντί να αφήνει την κλίμακα σε εικασία: «Equity (money)» σε money game, «Equity (match)» σε σκορ αγώνα. Λαμβάνει υπόψη τον ζωντανό κύβο: η αναζήτηση αποτιμά κάθε τελική θέση με το μοντέλο κύβου (Janowski, μετρημένη αποδοτικότητα) στην κατάσταση κύβου της θέσης, όπως κάνουν το XG και το GNU Backgammon στην αξιολόγηση cubeful. Αυτό είναι που καθιστά ορατά στο σκορ τα φαινόμενα gammon-go και gammon-save — στο 4-away/2-away, ο παίκτης που υστερεί παίζει 8/2 6/2 σε ένα άνοιγμα 6-4 επειδή ο πρόωρος διπλασιασμός του θα δώσει στο gammon την αξία του αγώνα, κάτι που μια αξιολόγηση χωρίς κύβο δεν μπορεί να δει. Η γραμμή πριν από τη ζαριά, από την άλλη, παραμένει μια ισοδυναμία cubeless: είναι ένα δεδομένο της θέσης, όχι μια απόφαση. Η αξιολόγηση δεν καταγράφεται ποτέ: είναι ένας υπολογισμός, όχι μια ανάλυση. Κάνοντας κλικ σε μια υποψήφια κίνηση την εμφανίζετε στο ταμπλό με τη μορφή βελών, ακριβώς όπως στον πίνακα Ανάλυσης. Το διακριτικό κουμπί ?, στη λωρίδα των σημάτων, οδηγεί στο αποθετήριο της μηχανής gammonNet· η πλήρης απόδοση (δίκτυο Strehl, διαμόρφωση gammonNet) βρίσκεται στις Ευχαριστίες της βοήθειας.

Το κουμπί Προσθήκη στη βάση, στην αρχή της λωρίδας σημάτων, καταχωρεί στη βάση τη θέση που βρίσκεται στο ταμπλό· το CTRL-S, η εντολή w και το κουμπί Αποθήκευση θέσης της γραμμής εργαλείων κάνουν το ίδιο. Καταγράφεται μόνο η θέση, ποτέ η αξιολόγηση που εμφανίζεται· αν η αυτόματη ανάλυση gammonNet είναι ενεργή, η παρτίδα της ξεκινά στη συνέχεια, όπως μετά από μια εισαγωγή. Η γραμμή κατάστασης ανακοινώνει τον αριθμό της θέσης, ακόμη κι αν υπήρχε ήδη στη βάση: τότε σημειώνεται ως μεμονωμένη εισαγωγή, και το φίλτρο Μεμονωμένη εισαγωγή (s i) τη βρίσκει. Ο πίνακας μένει ανοιχτός στο ίδιο ταμπλό, που παραμένει πρόχειρο ταμπλό: μπορείτε να μετακινήσετε ένα πούλι και να προσθέσετε την παραλλαγή, και η έξοδος από τον πίνακα σας επιστρέφει σε ό,τι μελετούσατε. Το κουμπί είναι απενεργοποιημένο όσο δεν είναι ανοιχτή καμία βάση ή όσο η θέση δεν μπορεί να καταχωρηθεί (για παράδειγμα η αρχική θέση του πίνακα, όπου ο πάνω παίκτης έχει βγάλει όλα τα πούλια του)· η επεξήγησή του δίνει τον λόγο.

Ο χρήστης επεξεργάζεται τη θέση των πουλιών σε ολόκληρο το ταμπλό, ακριβώς όπως στη λειτουργία επεξεργασίας: το αριστερό κλικ τοποθετεί ένα πούλι του κάτω παίκτη, το δεξί κλικ ένα πούλι του πάνω παίκτη. Ο δεύτερος πίνακας, εκείνος της κούρσας, εμφανίζεται μόνο όταν η προκύπτουσα θέση είναι καθαρό bearoff (όλα τα πούλια και των δύο παικτών στο τεταρτημόριό τους)· σε κάθε άλλη θέση, μόνο ο πίνακας των τεσσάρων κοινών στηλών (νίκη, gammon, backgammon, cubeless) αποκρίνεται, και η απόφαση αφορά τα πούλια ή έναν γενικό κύβο ανάλογα με το αν είναι τοποθετημένα ζάρια.

Σε κάθε πίνακα γεγονότων, μία γραμμή ανά παίκτη — που αναγνωρίζεται από τη χρωματιστή κουκκίδα του, με τον μαύρο παίκτη πάντα κάτω. Ο πρώτος φέρει, όσο δεν είναι τοποθετημένο κανένα ζάρι, τη νίκη, το gammon, το backgammon (πιθανότητες, χωρίς το σύμβολο %) και την cubeless ισοδυναμία του παίκτη· ο δεύτερος, σε μια θέση bearoff και με ή χωρίς τοποθετημένα ζάρια, το EPC, το pip count, το wastage (διαφορά μεταξύ του EPC και του pip count), τον μέσο αριθμό ζαριών και την τυπική απόκλιση. Όταν και οι δύο παίκτες έχουν τιμές προς σύγκριση, μια γραμμή Δ δίνει τις προσημασμένες διαφορές (κάτω − πάνω: αρνητικές όταν προηγείται ο μαύρος παίκτης). Εκτός θέσης κούρσας, η τοποθέτηση ζαριών εξαφανίζει επομένως τους ίδιους τους πίνακες γεγονότων: οι τέσσερις στήλες που έφεραν μόλις άλλαξαν άξονα, στη βολή, στην κορυφή της λίστας των κινήσεων.

Η απόφαση κύβου έχει πάντα την ίδια μορφή, όποια κι αν είναι η προέλευση των αριθμών — ακριβής πίνακας, αξιολογημένο καθεστώς ή συνηθισμένη αξιολόγηση gammonNet: μία γραμμή ανά επιλογή, με τη σειρά όχι διπλασιασμός, διπλασιασμός/αποδοχή, διπλασιασμός/πάσο, με την ισοδυναμία της στο πλαίσιο αναφοράς της θέσης και την απόκλισή της από την καλύτερη επιλογή. Η σειρά δεν αλλάζει ποτέ, σε αντίθεση με τη λίστα των κινήσεων: οι τρεις επιλογές έχουν όνομα, άρα διαβάζεται το όνομα, όχι η κατάταξη. Η καλύτερη αναγνωρίζεται από την ανάδειξή της και από το κενό κελί απόκλισής της. Όταν ο κύβος έχει ήδη γυριστεί, οι επιλογές διαβάζονται όχι αναδιπλασιασμός, αναδιπλασιασμός/αποδοχή, αναδιπλασιασμός/πάσο.

Μια τελευταία γραμμή δίνει την ετυμηγορία. Παίρνει τέσσερις τιμές: όχι διπλασιασμός, διπλασιασμός, αποδοχή, διπλασιασμός, πάσο και πολύ καλό για διπλασιασμό, η τελευταία όταν το να παιχτεί η θέση αποδίδει περισσότερα από το να εισπραχθεί ο πόντος: ο διπλασιασμός θα ήταν τότε σφάλμα για τον αντίθετο λόγο από εκείνον του απλού όχι διπλασιασμός. Είναι επίσης το μόνο σημείο όπου ο πίνακας λέει ότι δεν υπάρχει ετυμηγορία, αντί να αφήνει να εννοηθεί ότι ένας υπολογισμός βρίσκεται σε εξέλιξη:

  • καμία απόφαση — το καθεστώς δεν τη δικαιούται· η ετυμηγορία κύβου δεν εκτιμάται ποτέ (βλ. το σήμα εκτιμώμενο)·

  • μη αξιολογήσιμη σε αυτό το σκορ — ο μηχανισμός απορρίπτει τη θέση, τυπικά ένα σκορ εκτός του ορίζοντα του πίνακα ισοδυναμίας αγώνα, δηλαδή μια πλευρά με περισσότερους από 64 πόντους προς κατάκτηση·

  • κύβος του αντιπάλου και νεκρός κύβος (Crawford) — ο κύβος δεν μπορεί να γυριστεί. Οι ισοδυναμίες παραμένουν ορατές, ενδεικτικά, αλλά καμία επιλογή δεν φέρει απόκλιση: ένα σφάλμα είναι αυτό που κοστίζει μια επιλογή, και εδώ δεν υπάρχει επιλογή.

Σε money game, οι κανόνες Jacoby και Beaver που ισχύουν στη θέση εμφανίζονται κάτω από τον πίνακα κύβου, ως μικρές ετικέτες δίπλα στην ετυμηγορία που τροποποιούν: η ετυμηγορία «κανένα double» μιας θέσης υπό τον κανόνα Jacoby δεν είναι ο ίδιος υπολογισμός όπως χωρίς αυτόν, και τίποτα άλλο στην οθόνη δεν το δήλωνε.

Ένα τρίτο σήμα, Μέγιστος κύβος, εμφανίζεται όταν το αναγνωριστικό της πηγής βάζει ανώτατο όριο στον κύβο — τόσο σε σκορ αγώνα όσο και σε money game. Αυτό δεν περιγράφει τον υπολογισμό που φαίνεται από πάνω: ο ενσωματωμένος αξιολογητής δεν μοντελοποιεί ανώτατο όριο, οπότε η ετυμηγορία είναι εκείνη ενός ελεύθερου κύβου. Ακριβώς γι” αυτό υπάρχει το σήμα: ένας κύβος με ανώτατο όριο είναι ο μοναδικός ορατός λόγος για τον οποίο το blunderDB και το eXtreme Gammon μπορούν να ανακοινώσουν δύο διαφορετικές ετυμηγορίες για την ίδια θέση.

Το σήμα καθεστώτος, το βάθος αξιολόγησης, ο σύνδεσμος προς τη μηχανή και το πλαίσιο επιλογής Πρόκληση σχηματίζουν μια ξεχωριστή λωρίδα, στοιχισμένη δεξιά πάνω από τους πίνακες.

Ο παίκτης στη βολή και η θέση του κύβου επεξεργάζονται απευθείας στο ταμπλό, όπως στη λειτουργία επεξεργασίας: κάνοντας κλικ στο ορθογώνιο bearoff/σκορ ενός παίκτη του δίνετε τη βολή· κάνοντας κλικ στον κύβο αυτός εναλλάσσεται κεντραρισμένος → στην κατοχή του κάτω παίκτη → στην κατοχή του πάνω παίκτη (δεξί κλικ με αντίστροφη σειρά). Η τιμή του κύβου παραμένει καρφιτσωμένη — σε money game οι ισοδυναμίες εκφράζονται σε μονάδες του τρέχοντος κύβου, μόνο ο κάτοχός του μετρά. Η ανάλυση επανυπολογίζεται αμέσως. Στο εκτιμώμενο καθεστώς, το ίδιο το σήμα μπορεί να πατηθεί και ανοίγει απευθείας την καρτέλα Bearoff των ρυθμίσεων· η επεξήγησή του (tooltip) εξηγεί γιατί (ετυμηγορία κύβου μη εκτιμήσιμη, ADR-0009) και πώς να επεκτείνετε το ακριβές πεδίο.

Το σκορ επεξεργάζεται και αυτό απευθείας στο ταμπλό, όπως στη λειτουργία επεξεργασίας: το αριστερό κλικ στο ορθογώνιο σκορ ενός παίκτη μειώνει τον αριθμό των πόντων που του απομένουν, το δεξί κλικ τον αυξάνει. Η έξοδος από το σκορ money (-1, -1) με επεξεργασία μιας μόνο πλευράς ευθυγραμμίζει αυτόματα την άλλη πλευρά στην ίδια τιμή αντί να αφήνει ένα ασυνεπές σκορ. Σε μια θέση bearoff στο ακριβές καθεστώς, το πέρασμα από σκορ money σε σκορ αγώνα αφήνει την πιθανότητα νίκης ως έχει (μια ανάγνωση από τη βάση, έγκυρη όποιο κι αν είναι το πλαίσιο αναφοράς) αλλά μεταβάλλει την εμφανιζόμενη ισοδυναμία και ετυμηγορία κύβου σε εκείνες του αξιολογημένου καθεστώτος — ο ακριβής πίνακας, όντας money εκ κατασκευής, δεν μπορεί να απαντήσει στην ερώτηση που τίθεται στο σκορ. Το σήμα γίνεται τότε σύνθετο («ακριβές (νίκη) · αξιολογημένο (κύβος)») για να το δηλώσει ρητά.

Τα ζάρια, τέλος, επεξεργάζονται με τον ίδιο τρόπο, και αυτά είναι που καθορίζουν το ερώτημα που τίθεται: τοποθετημένα ζάρια δίνουν μια απόφαση πουλιών (τη λίστα των υποψήφιων κινήσεων), χωρίς ζάρια μια απόφαση κύβου. Αριστερό κλικ σε ένα ζάρι αυξάνει την τιμή του (το 6 γυρίζει στο 1), δεξί κλικ τη μειώνει (το 1 γυρίζει στο 6)· κλικ σε ένα ζάρι σε ταμπλό που δεν έχει ζάρια τοποθετεί δύο μονομιάς — ένα μόνο ζάρι δεν θα ήταν ούτε απόφαση πουλιών ούτε απόφαση κύβου. Κλικ στο ορθογώνιο ενός παίκτη αφαιρεί τα ζάρια για να τεθεί ερώτημα κύβου, και το επόμενο κλικ σε ένα ζάρι τα επαναφέρει όπως ήταν.

Το BACKSPACE, ή ένα διπλό κλικ έξω από το ταμπλό, καθαρίζει τη θέση: άδειο ταμπλό, σκορ money (-1, -1), χωρίς τοποθετημένα ζάρια — τιμές ειδικές για τον πίνακα Eval, διαφορετικές από εκείνες που χρησιμοποιούνται στη λειτουργία επεξεργασίας (7 παντού, ζάρια 3-1), ώστε να παραμένουν συνεπείς με ό,τι εμφανίζει ο πίνακας από προεπιλογή.

Μήτρα του κύβου

Μια απόφαση κύβου δεν είναι ιδιότητα του ταμπλό. Τα ίδια πούλια, το ίδιο pip count, διπλασιάζονται στο 2-away/4-away και δεν διπλασιάζονται στο 4-away/2-away· όποιος έμαθε την απάντηση money έμαθε ένα μόνο κελί ενός πλέγματος. Ο πίνακας Eval δείχνει το κελί που φέρει η θέση· η μήτρα του κύβου δείχνει ολόκληρο το πλέγμα.

Η εντολή cm την ανοίγει στη θέση που εμφανίζεται. Κάθε κελί δίνει την ετυμηγορία σε ένα σκορ: η γραμμή είναι οι πόντοι που χρειάζεται ακόμη ο παίκτης στη σειρά, η στήλη εκείνοι του αντιπάλου. Οι τέσσερις ετυμηγορίες γράφονται ΧΔ (χωρίς διπλασιασμό), ΔΑ (διπλασιασμός, αποδοχή), ΔΠ (διπλασιασμός, πάσο) και ΠΚ (πολύ καλό)· ένα κελί που απορρίπτει η μηχανή φέρει ερωτηματικό και εξηγεί γιατί όταν το δείχνεις, μαζί με τις τρεις ισοδυναμίες του. Προσφέρονται τρία μήκη αγώνα: 5, 7 και 9 πόντοι.

Το κελί του σκορ που φέρει πραγματικά η θέση είναι πλαισιωμένο, και οι επικεφαλίδες της γραμμής και της στήλης του υπογραμμισμένες: η ανάγνωση ξεκινά από εκεί, «το κελί μου, και γύρω του». Πλαισιώνεται μόλις τα δύο σκορ away της θέσης χωρούν στο εμφανιζόμενο πλέγμα· η αλλαγή μήκους το μετακινεί ή το αφαιρεί. Μια θέση money, το παιχνίδι Crawford ή ένα away πέρα από το πλέγμα δεν υποδεικνύουν κανένα: δεν υπάρχει κελί να δείξουμε, και το να δείξουμε ένα κατά προσέγγιση θα ήταν λάθος.

Το σκορ της θέσης αντικαθίσταται από εκείνο κάθε κελιού· ο κύβος της διατηρείται. Το πλέγμα απαντά στο ερώτημα σε ποιο σκορ θα γύριζα αυτόν τον κύβο, όχι σε τι θα έκανε μια κεντρική θέση. Είναι μετά το Crawford από άκρη σε άκρη: στο παιχνίδι Crawford ο κύβος δεν παίζει, και μια στήλη με «δεν μπορείτε να διπλασιάσετε» δεν θα έλεγε τίποτα για τη θέση.

Κάθε κελί είναι δική του αναζήτηση. Η μηχανή λαμβάνει υπόψη το σκορ — δεν παίζει το ίδιο παιχνίδι στο 2-away και στο 7-away — οπότε μία μόνο αναζήτηση διαβασμένη μέσα από διαφορετικές ισοδυναμίες αγώνα θα ήταν λάθος ακριβώς εκεί που μετράει το σκορ. Το πλέγμα έρχεται πρώτα σε 0-ply και ξαναϋπολογίζεται στο ρυθμισμένο βάθος εμφάνισης μόλις το παράθυρο ηρεμήσει: η ίδια κλιμάκωση με τον υπόλοιπο πίνακα, για ένα πλέγμα 9 πόντων που κοστίζει περίπου ενάμιση δευτερόλεπτο.

Το ίδιο πλέγμα υπολογίζεται εκτός διεπαφής, με την εντολή cubematrix της γραμμής εντολών.

Μεταφορά μιας θέσης στον πίνακα Eval

Ο πίνακας ανοίγει από προεπιλογή σε μια θέση bearoff, αλλά η μελέτη ξεκινά συνήθως από μια θέση που έχετε ήδη στα χέρια σας. Δύο χειρισμοί τη φέρνουν εκεί:

  • Δεξί κλικ στο ταμπλό, σε έναν πίνακα ανάλυσης ή κατά την πλοήγηση σε έναν αγώνα, και έπειτα Αξιολόγηση αυτής της θέσης: ο πίνακας Eval ανοίγει απευθείας σε αυτή τη θέση, όπως ακριβώς εμφανίζεται. Το μενού περιβάλλοντος δεν εμφανίζεται στον πίνακα Eval ούτε στον πίνακα Αναζήτησης, όπου το δεξί κουμπί χρησιμεύει ήδη για την τοποθέτηση των πουλιών του άλλου χρώματος.

  • CTRL-C και έπειτα CTRL-V: αντιγράψτε τη θέση από τον πίνακα ανάλυσης, και έπειτα επικολλήστε τη μία φορά στον πίνακα Eval. Η επικόλληση δέχεται επίσης ένα αναγνωριστικό από αλλού — ένα XGID (eXtreme Gammon, GNU Backgammon, άλλη εμφάνιση του blunderDB) ή ένα OGID (OpenGammon): αρκεί να βρίσκεται στο πρόχειρο.

  • Η εντολή import XGID=… (ή import OGID=…) για την περίπτωση που το αναγνωριστικό δεν είναι στο πρόχειρο αλλά σε ένα μήνυμα, σε ένα φόρουμ που διαβάζεται στο τερματικό, ή παράγεται από ένα σενάριο. Είναι το ίδιο ρήμα με το σκέτο import: χωρίς όρισμα ανοίγει επιλογέα αρχείων, με όρισμα διαβάζει το αναγνωριστικό. Η διαδρομή είναι μετά ίδια με της επικόλλησης — ίδια ανάγνωση, ίδια αποδιπλασίαση, ίδιο άνοιγμα της εισηγμένης θέσης.

Ένα OGID μεταφέρει μόνο μια θέση: ούτε αξιολόγηση, ούτε σχόλιο. Η θέση φτάνει επομένως χωρίς ανάλυση, ακριβώς όπως ένα γυμνό XGID, και ο ενσωματωμένος αξιολογητής μπορεί να καλύψει το κενό στη συνέχεια.

Σε ένα OGID, η παρτίδα Crawford αναγνωρίζεται από το C που ακολουθεί το μήκος του αγώνα (7C): χωρίς αυτό, ένας παίκτης που απέχει έναν πόντο από τον στόχο βρίσκεται μετά την Crawford.

Το ταμπλό του πίνακα Eval είναι ένα προσχέδιο: η θέση φτάνει εκεί χωρίς το αναγνωριστικό της στη βάση, έτσι ώστε καμία τροποποίηση που γίνεται εδώ να μην μπορεί να ξαναγράψει την εγγραφή από την οποία προέρχεται. Όλες οι συνήθεις επεξεργασίες του ταμπλό παραμένουν διαθέσιμες εκεί (πούλια, κύβος, ζάρια, σκορ), και η αξιολόγηση ακολουθεί κάθε τροποποίηση.

Προς την αντίθετη κατεύθυνση, το CTRL-C αντιγράφει το ταμπλό του πίνακα Eval στο πρόχειρο, με ένα XGID επανυπολογισμένο από τα τοποθετημένα πούλια — άρα άμεσα επικολλήσιμο στο eXtreme Gammon ή σε άλλη εμφάνιση του blunderDB. Μόνο η θέση ταξιδεύει: η αξιολόγηση που εμφανίζει ο πίνακας δεν είναι εγγραφή της βάσης και δεν συνοδεύει την αντιγραφή.

Φεύγοντας από τον πίνακα Eval, η θέση που εξεταζόταν προηγουμένως αποκαθίσταται: το προσχέδιο δεν αποθηκεύεται ποτέ από μόνο του.

Όταν η θέση είναι καθαρό bearoff (όλα τα πούλια και των δύο παικτών στο τεταρτημόριό τους) και δεν είναι τοποθετημένο κανένα ζάρι, η απόφαση κύβου εμφανίζει, για τον παίκτη στη βολή:

  • στο ακριβές καθεστώς: τις ισοδυναμίες money (cubeless, χωρίς διπλασιασμό, διπλασιασμός/αποδοχή, διπλασιασμός/πάσο) και την ετυμηγορία κύβου money (όχι διπλασιασμός, διπλασιασμός/αποδοχή, διπλασιασμός/πάσο ή πολύ καλό για διπλασιασμό) — εκτός σκορ αγώνα, βλ. παραπάνω για την περίπτωση του σκορ,

  • στο αξιολογημένο καθεστώς: τις ίδιες ισοδυναμίες και την ίδια ετυμηγορία τεσσάρων τιμών, αλλά παιγμένες από το gammonNet (αναζήτηση + μοντέλο κύβου Janowski) αντί να διαβάζονται από έναν πίνακα — διαθέσιμες ακόμη και στο σκορ αγώνα, κάτι που το εκτιμώμενο καθεστώς δεν μπόρεσε ποτέ να προσφέρει·

  • στο εκτιμώμενο καθεστώς: η ετυμηγορία κύβου τότε σκόπιμα δεν εμφανίζεται — μόνο η πιθανότητα νίκης, στον πίνακα γεγονότων, συνοδευόμενη από το περιθώριο σφάλματός της, παραμένει διαθέσιμη.

Μόλις τοποθετηθούν ζάρια σε μια θέση κούρσας, αυτή η απόφαση κύβου πριν από τη ζαριά εξαφανίζεται — το ταμπλό ζητά τότε μια απόφαση πουλιών, όχι κύβου — αλλά η πιθανότητα νίκης παραμένει ένα γεγονός της θέσης, όχι μια απόφαση: μεταβαίνει στη γραμμή πριν από τη ζαριά στην κορυφή της λίστας των κινήσεων, δίπλα στο EPC, το οποίο παραμένει εμφανές ακριβώς στα αριστερά.

Ένα σήμα υποδεικνύει το καθεστώς: ακριβές (τιμή που διαβάστηκε από μια two-sided βάση δεδομένων), αξιολογημένο · <βάθος> (παιγμένο από το gammonNet — το εμφανιζόμενο βάθος είναι εκείνο που πράγματι παρήγαγε τον εμφανιζόμενο αριθμό), εκτιμώμενο ± περιθώριο, ή, στο σκορ αγώνα εντός του ακριβούς πεδίου, ακριβές (νίκη) · αξιολογημένο (κύβος) — βλ. παραπάνω. Το ακριβές καθεστώς υπερισχύει οπουδήποτε είναι διαθέσιμο· διαφορετικά το αξιολογημένο καθεστώς εμφανίζεται μόλις ολοκληρώσει τον υπολογισμό του, αντικαθιστώντας επιτόπου το εκτιμώμενο καθεστώς που εμφανιζόταν κατά την αναμονή. Βλ. Μεθοδολογία και υποθέσεις του πίνακα Eval για τον ακριβή ορισμό των τριών καθεστώτων και των υποθέσεών τους.

Διεύρυνση του ακριβούς πεδίου. Ο πίνακας που υπολογίζεται στην πρώτη εκκίνηση καλύπτει 6 πούλια ανά παίκτη. Δύο τρόποι να πάτε παραπέρα, στην καρτέλα Bearoff των ρυθμίσεων:

  • να υπολογίσετε έναν ευρύτερο αμφίπλευρο πίνακα — έως TS-06-15 αν το μηχάνημα έχει τη μνήμη. Η καρτέλα δηλώνει το μέγεθος, τη μνήμη και τον χρόνο σε αυτό το μηχάνημα πριν αρχίσει, και ο υπολογισμός κάνει παύση και συνεχίζει. Ένας ακυρωμένος υπολογισμός αφήνει ένα αρχείο .part που δεν διαβάζεται ποτέ ως πίνακας·

  • ορισμός οποιουδήποτε αρχείου .bd two-sided του gnubg. Η βάση με το ευρύτερο πεδίο υπερισχύει αυτόματα.

Το ταμπλό του πίνακα είναι πρόχειρο, και το θυμάται. Αν φύγετε από τον πίνακα Eval και επιστρέψετε, βρίσκετε τη θέση στην οποία τον αφήσατε, όχι το προεπιλεγμένο ταμπλό μαζέματος: αυτό εμφανίζεται μόνο την πρώτη φορά που ανοίγει ο πίνακας σε μια συνεδρία. Η αποστολή μιας θέσης από τη βάση στον πίνακα υπερισχύει αυτής της μνήμης, και το BACKSPACE επαναφέρει το προεπιλεγμένο ταμπλό ανά πάσα στιγμή. Τίποτα δεν γράφεται στη βάση στο μεταξύ — το πρόχειρο δεν έχει ταυτότητα θέσης και η αξιολόγησή του υπολογίζεται εκ νέου κατά την άφιξη αντί να μεταφέρεται.

Λειτουργία πρόκλησης. Το πλαίσιο επιλογής Πρόκληση, στη λωρίδα των σημάτων, ενεργοποιεί μια λειτουργία εξάσκησης: σε κάθε τροποποίηση της θέσης, οι τιμές τριών ζωνών αποκρύπτονται (αντικαθίστανται από «···»)· ένα κλικ σε μια ζώνη αποκαλύπτει μόνο αυτή τη ζώνη. Χωρίς ζάρια, πρόκειται για τη γραμμή του κάτω παίκτη, τη γραμμή του πάνω παίκτη και την απόφαση κύβου — η γραμμή Δ εμφανίζεται μόνο αφού αποκαλυφθούν και οι δύο γραμμές παικτών. Το μπλοκ απόφασης διατηρεί τότε τις τρεις γραμμές του: είναι οι τιμές του, η ετυμηγορία του και η ανάδειξη της καλύτερης επιλογής που εξαφανίζονται, αλλιώς η άσκηση θα λυνόταν αναζητώντας την έντονη γραμμή. Με τοποθετημένα ζάρια σε μια θέση κούρσας, η γραμμή EPC κάθε παίκτη αποκρύπτεται όπως πριν, αλλά η τρίτη ζώνη καλύπτει τότε τη γραμμή πριν από τη ζαριά και τη λίστα των κινήσεων μαζί: καθώς η λίστα είναι ταξινομημένη από την καλύτερη κίνηση προς τη χειρότερη, η μερική αποκάλυψή της θα έδινε ήδη την απάντηση. Με τοποθετημένα ζάρια εκτός θέσης κούρσας, αυτή η ίδια μοναδική ζώνη καλύπτει από μόνη της ό,τι εμφανίζει ο πίνακας. Μπορείτε έτσι να εξασκηθείτε στην εκτίμηση του EPC κάθε πλευράς, και έπειτα να αποφανθείτε για τον κύβο ή για την κίνηση που πρέπει να παιχτεί, πριν επαληθεύσετε. Η ρύθμιση απομνημονεύεται.

Για να κλείσετε τον πίνακα Eval, πατήστε CTRL-E ή μεταβείτε σε άλλη καρτέλα.

Μεθοδολογία και υποθέσεις του πίνακα Eval

Κάθε τιμή που εμφανίζεται στον πίνακα βασίζεται σε συγκεκριμένες υποθέσεις, που διατυπώνονται εδώ εξαντλητικά.

Τομέας. Η ζώνη κούρσας — πιθανότητα νίκης και ετυμηγορία κύβου — αφορά μόνο το καθαρό bearoff: όλα τα εναπομείναντα πούλια των δύο παικτών στο σπίτι τους. Η θέση αποτιμάται πριν από τη ζαριά· τα τυχόν τοποθετημένα ζάρια αγνοούνται.

Τα μπλοκ EPC, αντίθετα, πάνε πιο μακριά: μια πλευρά παίρνει το EPC της μόλις το πιο μακρινό της πούλι χωρέσει στον φορτωμένο μονόπλευρο πίνακα. Με τον προεπιλεγμένο πίνακα (έξι σημεία) αυτός είναι ο παλιός κανόνας του σπιτιού· με πίνακα οκτώ σημείων, υπολογισμένον από την καρτέλα Bearoff, μια πλευρά με πούλι στο 8 αντιμετωπίζεται όπως κάθε άλλη. Τίποτα δεν παρεκτείνεται: ένα πούλι ένα σημείο πιο μακριά απλώς δεν έχει EPC, ακριβώς όπως ένα πούλι στο 7 δεν είχε πριν. Όταν ο πίνακας που απάντησε δεν είναι αυτός των έξι σημείων, το όνομά του εμφανίζεται στη γωνία του μπλοκ κούρσας («OS-08») — χωρίς αυτό θα διάβαζε κανείς «έξι» εξ ορισμού και θα πίστευε την πλευρά εντελώς μέσα.

Μπλοκ EPC (πάντα ακριβή). Το EPC, ο μέσος αριθμός ζαριών και η τυπική απόκλιση προέρχονται από την ακριβή κατανομή του αριθμού ζαριών για να βγουν όλα τα πούλια, διαβασμένη από τη μονόπλευρη βάση του GNUbg (6 έως 10 σημεία, 15 πούλια, υπολογισμένη στο μηχάνημα). EPC = μέσες ζαριές × 49/6 (49/6 ≈ 8,167 είναι ο ακριβής μέσος όρος pip ανά ζαριά, με τις διπλές να μετρούν τέσσερις φορές)· wastage = EPC − pip count. Η μόνη εξιδανίκευση είναι το μονόπλευρο βέλτιστο παιχνίδι: κάθε παίκτης ελαχιστοποιεί τις δικές του ζαριές αγνοώντας τον αντίπαλο — αυτός είναι ο καθιερωμένος ορισμός του EPC.

Πιθανότητα νίκης, ακριβές καθεστώς. Απευθείας ανάγνωση από την ευρύτερη διαθέσιμη βάση two-sided (TS-06-06 υπολογισμένη κατά την πρώτη εκκίνηση, εξωτερικό αρχείο, ή TS-06-11 υπολογισμένη από την καρτέλα Bearoff). Οι βάσεις αυτές προκύπτουν από πλήρη ανάδρομη ανάλυση υπό βέλτιστο two-sided παιχνίδι και των δύο πλευρών: καμία πρόσθετη υπόθεση, σφάλμα περιορισμένο στην κβάντιση (< 0,002 %).

Πιθανότητα νίκης, εκτιμώμενο καθεστώς. Εκτός του πεδίου της βάσης: η πιθανότητα προκύπτει με συνέλιξη των δύο one-sided κατανομών (ο παίκτης στη βολή κερδίζει αν ο αριθμός των ζαριών του είναι μικρότερος ή ίσος με του αντιπάλου), και στη συνέχεια με εφαρμογή μιας παγιωμένης πολυωνυμικής διόρθωσης, βαθμονομημένης εκτός σύνδεσης έναντι της βάσης TS-06-11. Τρεις υποθέσεις:

  • ανεξαρτησία των δύο διαδικασιών εξόδου — δομική στην κούρσα, χωρίς επαφή δεν υπάρχει καμία αλληλεπίδραση·

  • βέλτιστο one-sided παιχνίδι και των δύο πλευρών — αυτή είναι η προσέγγιση: στην πραγματικότητα ο παίκτης που ακολουθεί αποκλίνει για να παίξει τη διακύμανση και ο προπορευόμενος για ασφάλεια. Το μετρημένο αποτέλεσμα είναι μια αντισυμμετρική μεροληψία (η συνέλιξη υπερβάλλει το προβάδισμα του προπορευόμενου) την οποία η διόρθωση απορροφά στατιστικά·

  • η διόρθωση βαθμονομήθηκε και επικυρώθηκε στο πεδίο του oracle (έως 11 πούλια ανά παίκτη). Μετρημένο υπολειπόμενο σφάλμα: τυπική απόκλιση 0,05 %, 99ο εκατοστημόριο 0,17 %, μέγιστο παρατηρημένο 0,9 % (σε μονάδες πιθανότητας νίκης). Πέρα από τα 11 πούλια ανά παίκτη, το όριο αυτό προεκτείνεται — η τάση είναι μονότονη αλλά κανένα oracle δεν την πιστοποιεί.

Ισοδυναμίες και ετυμηγορία κύβου (μόνο στο ακριβές καθεστώς). Οι εμφανιζόμενες ισοδυναμίες είναι εκείνες του money game, χωρίς Jacoby, στο πλαίσιο αναφοράς της βιβλιογραφίας του bearoff. Στο πεδίο ≤ 11 πούλια ανά παίκτη, τα gammon είναι αδύνατα (κάθε πλευρά έχει ήδη βγάλει τουλάχιστον 4 πούλια): αυτό δεν είναι προσέγγιση. Η ετυμηγορία (όχι διπλασιασμός / διπλασιασμός, αποδοχή / διπλασιασμός, πάσο) ανακατασκευάζεται ακριβώς από τις αποθηκευμένες ισοδυναμίες, σύμφωνα με τον κανόνα του GNUbg, επικυρωμένο ένα προς ένα έναντι της ανάλυσής του.

Σημείωση

Οι cubeful ισοδυναμίες προϋποθέτουν βέλτιστο παιχνίδι κύβου και των δύο πλευρών μέχρι το τέλος: τα μελλοντικά recube αποτιμώνται πλήρως (πλήρης ανάδρομη ανάλυση). Στις πολύ ασταθείς κούρσες του τέλους της παρτίδας, ο καταρράκτης των recube καταναλώνει σχεδόν όλο το πλεονέκτημα της πλευράς στη βολή — οι ισοδυναμίες «χωρίς διπλασιασμό» και «διπλασιασμός/αποδοχή» μπορεί τότε να είναι κοντά στο μηδέν εκεί όπου μια μηχανή όπως το XG, της οποίας το μοντέλο κύβου δεν αποτιμά αυτόν τον καταρράκτη, εμφανίζει τιμές κοντά στο dead cube (για παράδειγμα 2 πούλια στο σημείο 3 έναντι 2 πουλιών στο σημείο 2: 62 % νίκη, ακριβές D/T +0,006 έναντι +0,475 στο XG). Η εμφανιζόμενη απόφαση, ωστόσο, συμπίπτει με εκείνη των μηχανών.

Πιθανότητα νίκης και ετυμηγορία, αξιολογημένο καθεστώς. Εκτός του ακριβούς πεδίου, η πιθανότητα νίκης προέρχεται από την ακατέργαστη έξοδο του gammonNet (αναζήτηση 0 ή 2 ply ανάλογα με τον χειρισμό, ποτέ από ανάγνωση πίνακα), και η ετυμηγορία από ένα «Decide» Janowski εφαρμοσμένο σε αυτή την έξοδο — η αναζήτηση παίζει την τροχιά αντί να συνοψίζει ένα στιγμιότυπό της, που είναι ακριβώς αυτό που το εκτιμώμενο καθεστώς δεν μπορούσε να κάνει (βλ. παρακάτω) και επιτρέπει, μόνο αυτό από τα τρία καθεστώτα μαζί με το ακριβές, μια ετυμηγορία στο σκορ αγώνα.

Αυτό το καθεστώς μετρήθηκε, δεν υποτέθηκε απλώς, έναντι του ενσωματωμένου two-sided πίνακα (TestEvalMeasure, 4000 δειγματοληπτικές αποφάσεις money, κανονικές παράμετροι 2 ply k=12): συμφωνία ετυμηγορίας money 93,4 % (3735/4000), αναλυμένη κατά απόσταση από το σημείο αποδοχής του gammonNet — 61,1 % σε λιγότερο από 1 % από το σημείο αποδοχής (η ζώνη που είναι πιο ευαίσθητη σε ένα κορώνα-γράμματα), 88,3 % μεταξύ 1 και 5 %, 91,5 % μεταξύ 5 και 10 %, 94,0 % μεταξύ 10 και 20 %, 94,4 % πέρα από αυτό. Απόκλιση πιθανότητας νίκης: μέση 0,85 %, διάμεσος 0,44 %, 95ο εκατοστημόριο 3,21 %, μέγιστο 8,30 %. Απόκλιση cubeful ισοδυναμίας: μέση 0,039, διάμεσος 0,018, 95ο εκατοστημόριο 0,151, μέγιστο 0,406. Η μορφή είναι η αναμενόμενη: το μεγαλύτερο μέρος της διαφωνίας συγκεντρώνεται ακριβώς στο σημείο αποδοχής, όπου δύο νομίμως διαφορετικές μέθοδοι αποκλίνουν περισσότερο σε μια οριακή απόφαση — όχι ένα διάχυτο σφάλμα που θα κόστιζε ισοδυναμία παντού.

Η μέτρηση αυτή αφορά αποφάσεις money, σε κούρσα. Η ετυμηγορία στο σκορ αγώνα — που μόνο αυτό το καθεστώς ξέρει να δίνει — και οι θέσεις επαφής δεν έχουν δημοσιευμένη μέτρηση: τα παραπάνω δεν μεταφέρονται σε αυτές τις περιπτώσεις.

Γιατί όχι βαθύτερα από 2 ply; Επειδή η μέτρηση λέει ότι δεν αποδίδει τίποτα. Μια απόφαση πουλιών κοστίζει 99 ms στα 2 ply και 8,4 s στα 3 ply στο ίδιο μηχάνημα — ογδόντα πέντε φορές περισσότερο. Σε σαράντα πραγματικές αποφάσεις που ξαναπαίχτηκαν και στα δύο βάθη, η βαθύτερη αναζήτηση άλλαξε γνώμη δύο φορές, και τις δύο φορές το κέρδος που απέδιδε στον εαυτό της άξιζε το πολύ 0,0005 κανονικοποιημένης ισοδυναμίας: δύο τάξεις μεγέθους κάτω από το 0,020, το κατώφλι από το οποίο το eXtreme Gammon μιλά για σφάλμα. Ανά απόφαση, όλες οι περιπτώσεις μαζί, το κέρδος είναι 0,0000.

Η ρύθμιση επομένως δεν προσφέρεται. Δεν σημαίνει ότι τα 3 ply δεν αξίζουν τίποτα γενικά, αλλά ότι σε αυτό το δίκτυο, με το κανονικό φίλτρο, δεν πληρώνουν την αναμονή κάποιου που κάθεται μπροστά σε έναν πίνακα. Η μέτρηση είναι αναπαραγώγιμη (TestThreePlyMeasure) και το συμπέρασμα θα ξανακριθεί αν το δίκτυο αλλάξει.

Γιατί δεν υπάρχει εκτιμώμενη ετυμηγορία; Όσα ακολουθούν αφορούν ειδικά τη μέθοδο της συνέλιξης (εκτιμώμενο καθεστώς), όχι το αξιολογημένο καθεστώς παραπάνω: η cubeful ισοδυναμία είναι ένα πρόβλημα τροχιάς (πότε να διπλασιάσει κανείς), το οποίο καμία στατιστική σύνοψη της θέσης δεν συλλαμβάνει — το καλύτερο στατικό μοντέλο που μετρήθηκε αφήνει ένα υπολειπόμενο σφάλμα (τυπική απόκλιση 0,016 ισοδυναμίας, μέγιστο 0,20) που αρκεί για να αντιστρέψει όλες τις οριακές αποφάσεις. Ομοίως, η μετατροπή της ετυμηγορίας στο σκορ του αγώνα μέσω πίνακα ισοδυναμιών αγώνα μετρήθηκε ανεπαρκής (12 % διαφωνίες με την ανάλυση 2-ply του GNUbg, με πραγματικά blunder). Καθώς μια λανθασμένη ετυμηγορία που εμφανίζεται με βεβαιότητα είναι χειρότερη από καμία ετυμηγορία, η συνέλιξη δεν είχε ποτέ το δικαίωμα να εμφανίζει ετυμηγορία — είναι μια αναζήτηση που παίζει την τροχιά, όχι μια στατιστική σύνοψη, που καλύπτει αυτό το κενό.

Σημείωση

Οι βάσεις bearoff είναι αμετάβλητοι μαθηματικοί πίνακες. Το blunderDB τους υπολογίζει το ίδιο, πανομοιότυπα με το εργαλείο makebearoff του GNUbg — byte προς byte — στην καρτέλα Bearoff των ρυθμίσεων ή με blunderdb bearoff generate.

Πίνακας Anki

Ο πίνακας Anki (CTRL-K) επιτρέπει τη μελέτη θέσεων με διαστήματα επανάληψης χρησιμοποιώντας τον αλγόριθμο FSRS. Ο χρήστης μπορεί να δημιουργήσει πακέτα (decks) από συλλογές ή από αποτελέσματα αναζήτησης.

Δημιουργία πακέτων: Κάντε κλικ στο New Deck για να δημιουργήσετε ένα πακέτο από μια συλλογή ή από τα τρέχοντα αποτελέσματα αναζήτησης. Τα πακέτα που βασίζονται σε αναζήτηση συγχρονίζονται αυτόματα κατά την ενεργοποίηση της καρτέλας Anki.

Ένα πακέτο με καρτέλες σκορ. Η τρίτη πηγή, Καρτέλες σκορ, δεν ζητά τίποτε άλλο από ένα όνομα: το blunderDB γεμίζει το πακέτο με τα 36 μη διατεταγμένα σκορ από 2 έως 9 away, και η κάρτα ενός σκορ είναι η ίδια καρτέλα που εμφανίζει η άσκηση Σκορ — σημεία αποδοχής και τιμές γκάμον, και οι δύο όψεις. Αυτό το πακέτο υπάρχει μόνο αν το δημιουργήσετε: 36 κάρτες που οφείλονται την πρώτη μέρα είναι ένα χρέος επανάληψης, και συνάπτεται εσκεμμένα. Το κουμπί συγχρονισμού το αναδημιουργεί.

Τα δύο μέρη δεν κάνουν την ίδια δουλειά. Η άσκηση Σκορ κάνει να ανακαλείτε αυτούς τους αριθμούς με το χρονόμετρο και μετρά την ταχύτητα· το πακέτο τους κάνει να κρατούν στον χρόνο και δεν μετρά τίποτε από αυτά. Οι δύο ιστορίες μένουν χωριστές: το ιστορικό της Εξάσκησης αγνοεί τις επαναλήψεις του Anki, και οι στατιστικές του Anki αγνοούν τις συνεδρίες Εξάσκησης.

Επανάληψη: Επιλέξτε ένα πακέτο και έπειτα κάντε κλικ στο Study (ή κάντε διπλό κλικ σε ένα πακέτο) για να ξεκινήσετε την επανάληψη των καρτών που οφείλονται. Κάθε κάρτα εμφανίζει την αντίστοιχη θέση στο ταμπλό. Αξιολογήστε την ανάκλησή σας με τα πλήκτρα 1 (Ξανά), 2 (Δύσκολο), 3 (Καλό), ή 4 (Εύκολο). Πατήστε Esc για να σταματήσετε και να επιστρέψετε στη λίστα των πακέτων.

Οι αποφάσεις κύβου κάνουν δύο κάρτες, αλυσιδωτές. Μια απόφαση κύβου είναι δύο ερωτήσεις — «διπλασιασμός;», μετά «αποδοχή;» — και το blunderDB τις αποθηκεύει ανέκαθεν ως δύο θέσεις. Μια τράπουλα που επιλέγει μόνο τη μία μισή παίρνει και την άλλη: η απόφαση συμπληρώνεται, δεν διογκώνεται. Και όταν και οι δύο είναι απαιτητές, η δεύτερη έρχεται αμέσως μετά την πρώτη.

Καθεμιά κρατά τον δικό της βαθμό και το δικό της πρόγραμμα: δεν είναι δύο στιγμές μιας κάρτας, είναι δύο κάρτες. Η αλυσίδα δεν προωθεί καμία προθεσμία — ταξινομεί τις ήδη απαιτητές κάρτες, τίποτα άλλο. Καθώς γεννιούνται μαζί, είναι απαιτητές μαζί την πρώτη φορά, και εκεί ακριβώς χρησιμεύει.

Εμφάνιση της απάντησης: Η κάρτα θέτει ένα ερώτημα — ποια κίνηση να παιχτεί, ή ποια ενέργεια κύβου. Σκεφτείτε, και έπειτα πατήστε ΔΙΑΣΤΗΜΑ (ή κάντε κλικ στην κρυμμένη περιοχή) για να αποκαλύψετε την απάντηση: την καταγεγραμμένη ανάλυση της θέσης, όπως την παρουσιάζει η καρτέλα Ανάλυση. Εμφανίζεται κάτω από τα κουμπιά αξιολόγησης, τα οποία μένουν στη θέση τους και προσιτά. Κλικ σε μια κίνηση της λίστας την εμφανίζει στο ταμπλό.

Τίποτα δεν σας υποχρεώνει να αποκαλύψετε την απάντηση για να αξιολογήσετε: αν είστε σίγουροι, τα πλήκτρα 1 έως 4 παραμένουν ενεργά. Η απάντηση κρύβεται ξανά στην επόμενη κάρτα, όχι όμως αν απλώς αλλάξετε καρτέλα — πηγαίνετε να συμβουλευτείτε τον πίνακα Eval ή το σχόλιο της θέσης, θα σας περιμένει όταν επιστρέψετε.

Μια θέση χωρίς καταγεγραμμένη ανάλυση το δηλώνει απευθείας, χωρίς κρυμμένη περιοχή.

Περιορισμός της συνεδρίας. Από προεπιλογή, μια συνεδρία επανάληψης εξαντλεί όλες τις κάρτες που είναι σε αναμονή. Μπορείτε να την περιορίσετε σε έναν αριθμό καρτών, ανά πακέτο, στις Ρυθμίσεις: επιλέξτε Περιορισμός συνεδρίας και δηλώστε πόσες κάρτες πρέπει να σερβίρει μια συνεδρία. Όταν το όριο συμπληρωθεί, η συνεδρία σταματά και το ανακοινώνει — το μήνυμα ξεχωρίζει το «όριο συμπληρώθηκε, τόσες κάρτες ακόμη σε αναμονή» από μια πραγματικά άδεια ουρά. Για να συνεχίσετε παρ” όλα αυτά, υπάρχει η ελεύθερη εξάσκηση: παρουσιάζει άλλες θέσεις χωρίς να αλλάζει τίποτα στο πρόγραμμα.

Ένα όριο 0 δεν σερβίρει καμία κάρτα: είναι μια κατάσταση από μόνη της, χρήσιμη για να παγώσετε ένα πακέτο όσο προετοιμάζεστε για ένα τουρνουά, και δεν είναι το ίδιο με το «χωρίς όριο». Το κουμπί Study είναι τότε ανενεργό.

Το όριο αφορά τη συνεδρία, όχι την ημέρα. Ένα πακέτο του blunderDB χτίζεται πάνω σε μια συλλογή ή σε μια αναζήτηση: είναι ένα πεπερασμένο σύνολο, που εισάγεται σε λίγες συνεδρίες και του οποίου ο ημερήσιος όγκος περιορίζεται ήδη από το μέγεθός του. Ένα ημερήσιο πλαφόν δεν θα ενεργοποιούνταν ποτέ, ή αλλιώς θα δημιουργούσε καθυστέρηση σε ένα πακέτο που χωρούσε σε μία συνεδρία.

Ελεύθερη εξάσκηση (cram): Το κουμπί Cram, δίπλα στο Study, ξεκινά μια συνεδρία ελεύθερης εξάσκησης: σας παρουσιάζονται τυχαίες θέσεις από την τράπουλα χωρίς να λαμβάνεται υπόψη το πρόγραμμα FSRS. Αυτή η λειτουργία δεν τροποποιεί ποτέ το πρόγραμμα επαναλαμβανόμενης μελέτης — ιδανική για προθέρμανση πριν από ένα τουρνουά ή για εντατική επανάληψη μιας θεματικής τράπουλας χωρίς να διαταράσσεται η σειρά της. Μια ένδειξη Cram αντικαθιστά την κατάσταση της κάρτας και ένα κουμπί Επόμενο (πλήκτρα 1 έως 4) μετακινείται στις θέσεις. Το Esc επιστρέφει στη λίστα χωρίς να αποθηκεύει διακοπείσα συνεδρία.

Να παραμερίσετε μια κάρτα, χωρίς να τη βαθμολογήσετε. Κατά την επανάληψη, ένα δεξί κλικ στην κεφαλίδα της κάρτας προσφέρει τρεις χειρονομίες που τη βγάζουν από τη συνεδρία χωρίς να πουν τίποτα στον προγραμματιστή:

  • Αναστολή — η κάρτα κρατά το πρόγραμμά της και δεν ξαναεμφανίζεται όσο είναι σε αναστολή. Έτσι παραμερίζεται μια λανθασμένη ή όχι ακόμη χρήσιμη κάρτα, χωρίς να χαθεί το ιστορικό που τη συνοδεύει.

  • Απόκρυψη — η κάρτα εξαφανίζεται ως την επόμενη μέρα. Σε αντίθεση με την αναστολή, αυτό δεν λέει τίποτα για την αξία της: είναι για εκείνη που μόλις είδατε αλλού, ή που προτιμάτε να μη συναντήσετε δύο φορές σε ένα βράδυ.

  • Αφαίρεση — η κάρτα φεύγει από την τράπουλα, μετά από επιβεβαίωση. Η ίδια η θέση μένει στη βάση: μια τράπουλα είναι λίστα μελέτης πάνω στη βιβλιοθήκη, ποτέ αντίγραφό της.

Καμία από τις τρεις δεν καταγράφει βαθμό: μια παραμερισμένη κάρτα δεν είναι απαντημένη κάρτα και δεν μετρά στο σύνολο της συνεδρίας.

Ιστορικό επαναλήψεων. Στις Ρυθμίσεις μιας τράπουλας, το κουμπί Ιστορικό επαναλήψεων δείχνει τι ειπώθηκε στον προγραμματιστή — ημερομηνία, θέση, βαθμός, κατάσταση, διάστημα που δόθηκε — σε αντίθεση με το τι σχεδιάζει. Είναι το μόνο μέρος όπου φαίνεται ένας βαθμός που δόθηκε κατά λάθος. Εκεί δεν διορθώνεται: το πρόγραμμα μένει εκτός εμβέλειας, και ακριβώς αυτός ο κανόνας κάνει το ιστορικό χρήσιμο — το παρελθόν δεν ξαναγράφεται, αλλά μπορεί να γίνει γνωστό.

Διακοπή/Συνέχιση: Μπορείτε να διακόψετε μια συνεδρία επανάληψης ανά πάσα στιγμή με το Esc. Το κουμπί αλλάζει σε Resume και εμφανίζει την πρόοδό σας. Κάντε κλικ σε αυτό για να συνεχίσετε από εκεί που σταματήσατε.

Διαχείριση πακέτων: Χρησιμοποιήστε τα κουμπιά ενεργειών για μετονομασία, συγχρονισμό, επαναφορά ή διαγραφή πακέτων (ζητείται επιβεβαίωση για τις δύο τελευταίες ενέργειες). Οι παράμετροι FSRS (στόχος διατήρησης, μέγιστο διάστημα, τυχαιότητα) ρυθμίζονται ανά πακέτο στις Ρυθμίσεις (εικονίδιο γραναζιού).

Διατήρηση: ο στόχος και η μέτρηση. Ο στόχος διατήρησης είναι η δική σας επιλογή στον συμβιβασμό ανάμεσα στον φόρτο εργασίας και στην ποιότητα της ανάκλησης: όσο πιο υψηλός είναι, τόσο πιο σύντομα γίνονται τα διαστήματα και τόσο περισσότερο επαναλαμβάνετε. Απέναντι, οι Ρυθμίσεις εμφανίζουν τη μετρημένη διατήρηση πάνω στις δικές σας επαναλήψεις — μια πληροφορία, ποτέ ένα χειριστήριο: το blunderDB δεν αλλάζει τον στόχο σας για να κυνηγήσει το ποσοστό επιτυχίας σας. Κάτω από είκοσι περίπου επαναλήψεις, η μέτρηση δεν εμφανίζεται: θα διαβαζόταν ως γεγονός ενώ είναι μόνο θόρυβος.

Η αλλαγή της διατήρησης δεν είναι αναδρομική: κάθε κάρτα υιοθετεί τον νέο ρυθμό στην επόμενη επανάληψή της, και οι ήδη ορισμένες προθεσμίες δεν μετακινούνται. Το αποτέλεσμα είναι επομένως σταδιακό, και αόρατο την ίδια ημέρα.

Το μέγιστο διάστημα περιορίζει την απόσταση. Ένα πακέτο που δημιουργήθηκε πρόσφατα ξεκινά από έναν χρόνο: μια θέση που ο αλγόριθμος θα ανέβαλλε για αρκετά χρόνια έχει εγκαταλείψει το πακέτο χωρίς να το αποφασίσετε εσείς, και το δικό σας παιχνίδι αλλάζει γρηγορότερα από αυτό. Τα παλαιότερα πακέτα διατηρούν την τιμή που είχαν.

Πίνακας Εξάσκηση

Ο πίνακας Anki κάνει επανάληψη σε ό,τι συγκρατείται· ο πίνακας Εξάσκηση δουλεύει ό,τι υπολογίζεται, με το χρονόμετρο. Ανοίγει με CTRL-J, με το κουμπί της γραμμής εργαλείων αμέσως μετά το « Position aléatoire », ή με την εντολή train. Η καρτέλα σκορ ανήκει και στα δύο: υπολογίζεται εδώ και συγκρατείται σε ένα πακέτο με καρτέλες σκορ.

Σε ηρεμία, ο πίνακας δείχνει τον εκκινητή και τον απολογισμό των προηγούμενων συνεδριών.

Ο εκκινητής

Τρεις επιλογές, και μετά « Démarrer »:

  • η άσκηση — Scores, Pions (μέτρημα), Bearoff, Évaluation ή Décision·

  • η πηγή της ερώτησης, όταν η άσκηση έχει περισσότερες από μία — Vivier (κανονικές μορφές της άσκησης), Plateau (η θέση όπως είναι) ή Base (μια θέση της λίστας που ξεφυλλίζετε)·

  • το όριο ανά ερώτηση — κανένα, 15, 30 ή 60 δευτερόλεπτα.

Η επιλεγμένη πηγή απομνημονεύεται για κάθε άσκηση, από τη μια συνεδρία στην άλλη.

Τα train scores, train pips, train bearoff, train evaluation και train decision ανοίγουν τον πίνακα και ξεκινούν αμέσως· τα train tp και train takepoint είναι συνώνυμα του train scores, το train epc του train bearoff, το train quiz του train decision.

Οι πέντε ασκήσεις

Το Scores τραβά στην τύχη ένα από τα 36 μη διατεταγμένα σκορ από 2 έως 9 away και εμφανίζει μια καρτέλα σκορ: δύο στήλες — Vous (εσείς) και L’adversaire (ο αντίπαλος) — και επτά γραμμές — το σημείο αποδοχής με κύβο 2 και μετά με κύβο 4, καθένα για μακρά κούρσα και για την τελευταία ζαριά, και έπειτα την αξία του gammon με κύβους 1, 2 και 4.

Κάθε στήλη φέρει μόνο τα κελιά που οι πίνακες αναφοράς — αυτοί που εμφανίζουν οι εντολές tp2_live, tp2_last, tp4_live, tp4_last, gv1, gv2 και gv4 — ορίζουν για την πλευρά της: τρεις αριθμοί στο 2a-2a, δεκατέσσερις το πολύ, και μία μόνο στήλη σε ισόπαλο σκορ. Μια γραμμή που καμία από τις δύο πλευρές δεν ορίζει δεν εμφανίζεται στην καρτέλα — δεν υπάρχει λοιπόν κανένα κελί « n/a » για να μαντέψετε. Οι δύο πλευρές είναι εκεί επειδή μια απόφαση κύβου στο σκορ χρειάζεται και τις δύο: το διορθωμένο σημείο αποδοχής συνδυάζει τις αξίες gammon και των δύο παικτών, και είναι το σημείο αποδοχής του αντιπάλου που λέει αν το δικό σας διπλασιασμό τον περνάει.

Το Pions (pip) ζητά το μέτρημα των pip και των δύο πλευρών. Το pipcount του ταμπλό είναι κρυμμένο όσο η ερώτηση είναι ανοιχτή· το « Révéler » το δείχνει — ακόμη κι αν είχατε κρύψει το pipcount με το p, αλλιώς η απάντηση θα έμενε αόρατη και η άσκηση ανεπαλήθευτη. Είναι μάσκα και όχι ρύθμιση: η δική σας επιλογή δεν αλλάζει και ξαναπαίρνει το πάνω χέρι από την επόμενη ερώτηση. Η πηγή Plateau θέτει μία ερώτηση για τη θέση που εμφανίζεται, και μόνο μία· η πηγή Base τραβά μια νέα θέση σε κάθε ερώτηση και τη φέρνει στο ταμπλό.

Το Bearoff ζητά το EPC και των δύο πλευρών — το ενεργό μέτρημα, αυτό που προσθέτει στο pipcount τη σπατάλη των πουλιών που βγαίνουν με πόντους περισσευούμενους. Είναι ο τομέας όπου η μηχανή είναι ακριβής, και εκείνος όπου το EPC διαφέρει πραγματικά από το μέτρημα των πουλιών.

Κάθε ερώτηση παράγεται: η μηχανή ξεκινά από έναν σπόρο και παίζει μερικές ζαριές, και το στιγμιότυπο είναι αυτό που σας τίθεται. Μια τυχαία τοποθέτηση δεν θα είχε τα κενά, τις χαμηλές στοίβες και τις ασυμμετρίες ενός αληθινού bearoff. Ο σπόρος έρχεται από το Vivier (μια ολοκληρωμένη είσοδο στην έδρα, έπειτα από μηδέν έως δέκα ημικινήσεις), από το Plateau (η θέση που εμφανίζεται, έπειτα από μία έως τέσσερις ημικινήσεις — ποτέ μηδέν, αφού μόλις την είδατε) ή από τη Base (μια θέση της λίστας που ξεφυλλίζετε, όπως είναι: είναι ήδη αληθινή).

Ο τομέας της άσκησης: και οι δύο πλευρές εξ ολοκλήρου στην έδρα τους, από 4 έως 15 πούλια ανά πλευρά και τα υπόλοιπα βγαλμένα, κύβος στο κέντρο, παιχνίδι για χρήματα. Ένας σπόρος που δεν χωρά εκεί απορρίπτεται με το όνομά του, και τίποτα δεν ξεκινά — καμία σιωπηλή προσαρμογή: το να παίξει κανείς μέχρι να σπάσει η επαφή θα σας έδινε μια θέση που δεν επιλέξατε. Ένα άδειο ταμπλό αποτελεί εξαίρεση: η ερώτηση έρχεται τότε από τη δεξαμενή, και ο πίνακας λέει γιατί.

Η άσκηση χρειάζεται τον μονόπλευρο πίνακα bearoff· όσο αυτός παράγεται στο παρασκήνιο (βλ. Ρυθμίσεις), το λέει αντί να θέτει ερώτηση χωρίς απάντηση.

Η Évaluation ρωτά πόσο αξίζει μια θέση: την πιθανότητα νίκης του παίκτη που παίζει, σε ποσοστό, και την απόφαση κύβου — Pas de double, Double, prend ή Double, passe. Είναι οι δύο αριθμοί που δείχνει ο πίνακας Eval, ζητούμενοι πριν εμφανιστούν. Το πεδίο είναι κάθε θέση: ένας αγώνας δρόμου όπως και μια θέση επαφής, σε παιχνίδι με χρήματα.

Όπως στο Bearoff, η ερώτηση παράγεται: ο σπόρος προέρχεται από το Vivier (μια θέση όπου η επαφή μόλις έσπασε, και έπειτα μηδέν έως δέκα ημικινήσεις που παίζει η μηχανή), από το Plateau (η εμφανιζόμενη θέση, και έπειτα μία έως τέσσερις ημικινήσεις· η ερώτηση τίθεται σε παιχνίδι με χρήματα, με τον κύβο στο κέντρο, όποιο κι αν είναι το σκορ του σπόρου) ή από τη Base (μια θέση της λίστας περιήγησης, όπως είναι). Μια θέση της βάσης ταιριάζει μόνο αν είναι απόφαση κύβου σε παιχνίδι με χρήματα — χωρίς ζάρια, με τον κύβο στο κέντρο ή στον παίκτη που παίζει —· αλλιώς η κλήρωση περνά στην επόμενη, και όταν καμία δεν ταιριάζει, η άσκηση το λέει. Ένα ταμπλό που δεν είναι θέση παρτίδας — όχι δεκαπέντε πούλια ανά πλευρά, ή τελειωμένη παρτίδα — απορρίπτεται με εξήγηση· με άδειο ταμπλό η ερώτηση έρχεται από τη δεξαμενή.

Η αλήθεια είναι της μηχανής: η βάση bearoff δύο πλευρών όταν η θέση περιέχεται σε αυτήν, το gammonNet στο κανονικό του βάθος οπουδήποτε αλλού, και ο πίνακας λέει ποια απάντησε. Τίποτα δεν εκτιμάται: μια θέση που η μηχανή δεν αξιολογεί δεν τίθεται.

Το Décision θέτει μια απόφαση ήδη αναλυμένη: μια θέση της λίστας που περιηγείστε — τη μόνη του πηγή — με την απόφαση που φέρει, κίνηση πουλιών ή απόφαση κύβου, και κρίνει η αποθηκευμένη ανάλυση. Μια θέση χωρίς ανάλυση δεν θέτει ερώτηση, και μια θέση που τέθηκε δεν επιστρέφει στη συνεδρία· όταν η λίστα εξαντληθεί, ο πίνακας το λέει. Χωρίς ανοιχτή βάση, ή χωρίς αναλυμένη θέση στη λίστα, η άσκηση αρνείται λέγοντας γιατί, και τίποτα δεν ξεκινά.

Όσο μια ερώτηση Évaluation ή Décision περιμένει την απάντησή της, ο πίνακας Ανάλυσης παραμένει καλυμμένος: φέρει την απάντηση.

Να απαντήσετε

Ο τρόπος απάντησης είναι ιδιότητα της άσκησης, ποτέ ρύθμιση: ό,τι μετριέται ή απαγγέλλεται αποκαλύπτεται, ό,τι εκτιμάται πληκτρολογείται — γιατί εκεί, το μέγεθος του σφάλματος είναι το μάθημα.

Τα Scores και Pions αποκαλύπτονται: υπολογίζετε με το μυαλό, κάνετε κλικ στο « Révéler », και η αλήθεια εμφανίζεται. Κάθε αριθμός θεωρείται τότε σωστός εξ ορισμού — κάνετε κλικ σε αυτόν που αστοχήσατε για να τον σημειώσετε λάθος (Tab και μετά Διάστημα κάνει την ίδια κίνηση από το πληκτρολόγιο), και ένα δεύτερο κλικ ακυρώνει το σημάδι. Τίποτα δεν πληκτρολογείται: ένα μέτρημα πουλιών ή ένα κελί πίνακα είναι σωστό ή λάθος, και το να το γράψετε δεν διδάσκει τίποτα περισσότερο από το να το διαβάσετε.

Το Bearoff πληκτρολογείται: γράφετε τα δύο EPC, το « Valider » τα κρίνει με ανοχή μισού πόντου — η διακριτικότητα στην οποία το EPC αλλάζει μια απόφαση κούρσας — και η αλήθεια εμφανίζεται δίπλα σε αυτό που γράψατε. Η εφαρμογή κρίνει, δεν υπάρχει τίποτα να τσεκάρετε. Η απόκλιση καταγράφεται με το πρόσημό της: το να υπερεκτιμάς δεν είναι το να υποτιμάς, και είναι ο απολογισμός που βγάζει τον μέσο όρο.

Η Évaluation συνδυάζει τις δύο κινήσεις σε μία ερώτηση. Η πιθανότητα νίκης πληκτρολογείται και κρίνεται με ακρίβεια πέντε μονάδων, μαζί με την προσημασμένη απόκλιση· η απόφαση κύβου επιλέγεται — το κλικ κρατά το κουμπί χωρίς να κρίνει τίποτα, και το « Valider » κρίνει και τα δύο μαζί. Ο κύβος δεν έχει ανοχή: σωστό είναι μόνο το κουμπί που κάνει σωστό η ετυμηγορία της μηχανής, και μια θέση πολύ καλή για διπλασιασμό απαντιέται με Pas de double. Το Enter στο πεδίο οδηγεί στην απόφαση κύβου όσο δεν έχει επιλεγεί, και έπειτα επικυρώνει. Μετά την απάντηση, ο πίνακας δείχνει την αλήθεια — την ετυμηγορία με τέσσερις εκβάσεις —, την πηγή της, και το EPC και των δύο πλευρών όταν η θέση έχει ακριβές· το EPC δεν ζητείται ποτέ εδώ, έχει τη δική του άσκηση. Το ημερολόγιο μετρά τους δύο αριθμούς χωριστά: μπορεί κανείς να εκτιμά σωστά μια θέση και να διαβάζει λάθος τον κύβο της.

Το Décision επιλέγεται. Σε μια απόφαση πουλιών, παίξτε την κίνηση στο ταμπλό: κάντε κλικ στο σημείο εκκίνησης και έπειτα στον προορισμό, ή σύρετε το πούλι, μία φορά για κάθε ζάρι. Το ταμπλό προσφέρει μόνο ό,τι παίζεται — ένα κλικ που δεν επιτρέπει καμία νόμιμη κίνηση δεν μετακινεί τίποτα. Στον πίνακα, το « Annuler le pas » γυρίζει πίσω ένα ζάρι, το « Recommencer » επαναφέρει τη θέση όπως τη θέτει η ερώτηση (ένα διπλό κλικ έξω από το ταμπλό κάνει το ίδιο), και το « Valider », ενεργό μόλις ολοκληρωθεί η κίνηση, τη στέλνει για κρίση. Το πεδίο καταγραφής δέχεται επίσης την κίνηση πληκτρολογημένη (13/7 8/7, η σημειογραφία της καταγραφής): τα βήματα τοποθετούνται στο ταμπλό σε κάθε πάτημα πλήκτρου, ένα κοκκινισμένο πεδίο δείχνει ότι ένα βήμα δεν παίζεται, και το ENTER επικυρώνει ολόκληρη την κίνηση. Όταν ο πίνακας έχει την εστίαση, το BACKSPACE αναιρεί ένα βήμα, το ESC ξαναρχίζει την κίνηση και το ENTER την επικυρώνει. Σε απόφαση κύβου, πατήστε Χωρίς διπλασιασμό, Διπλασιασμός, αποδοχή ή Διπλασιασμός, πάσο: το κλικ είναι η απάντηση.

Η διόρθωση ξεχωρίζει τρεις εκβάσεις, και το να τις μπερδέψει κανείς θα ήταν ψέμα. Μια παράτυπη κίνηση δεν είναι κακή επιλογή — είναι σφάλμα κανόνα. Μια έγκυρη κίνηση που η μηχανή δεν κατέταξε δεν είναι σφάλμα κρίσης: απλώς δεν έχει τιμή, και δεν κοστίζει τίποτα. Μια καταταγμένη κίνηση κοστίζει ό,τι λέει η ανάλυση, σε χιλιοστά του πόντου. Σωστή είναι μόνο μια καταταγμένη κίνηση χωρίς κόστος· η καλύτερη κίνηση εμφανίζεται σε κάθε περίπτωση.

Το χρονόμετρο ξεκινά με την εμφάνιση της ερώτησης και σταματά στο « Révéler », στο « Valider » ή στο κλικ μιας απόφασης κύβου της Décision· η επόμενη ερώτηση ετοιμάζεται όσο απαντάτε, άρα δεν χρονομετρείται ποτέ μαζί με τη δική σας. Το τσεκάρισμα των λαθών δεν χρονομετρείται ούτε αυτό. Με όριο, μια ερώτηση που έμεινε αναπάντητη στη λήξη αποκαλύπτεται μόνη της και μετρά εκτός χρόνου: όλοι οι αριθμοί της είναι λάθος, και ο χρόνος της δεν μπαίνει στη διάμεσο — δεν μετράμε μια απάντηση που δεν δόθηκε. Μια απόφαση εκτός χρόνου δείχνει την καλύτερη κίνηση και δεν μπαίνει στο PR της συνεδρίας.

Το « Suivante » καταγράφει την ερώτηση και θέτει μια άλλη. Η συνεδρία δεν έχει καθορισμένη διάρκεια: κρατά μέχρι το « Terminer », που την γράφει στο ημερολόγιο, ή το « Quitter », που την πετά. Όλα τα κουμπιά είναι στον πίνακα· το ταμπλό δείχνει την ερώτηση και την απάντησή της, δεν φέρει κανένα χειριστήριο.

Όσο μια ερώτηση είναι τοποθετημένη στο ταμπλό, αποκαλυμμένη ή όχι, τα πλήκτρα που διατρέχουν τη λίστα δεν την κυλούν: η ερώτηση κρατά το ταμπλό μέχρι το « Suivante », το « Terminer » ή το « Quitter ».

Το ημερολόγιο και ο απολογισμός

Οι συνεδρίες που ολοκληρώθηκαν διατηρούνται στην ίδια τη βάση — ακολουθούν λοιπόν το αρχείο — και χωρίς ανώτατο όριο. Σε ηρεμία, ο πίνακας δείχνει μία γραμμή ανά άσκηση: τον αριθμό των συνεδριών, το ποσοστό λαθών, τον διάμεσο χρόνο και, από δέκα συνεδρίες και πάνω, την τάση, δηλαδή τη διαφορά ανάμεσα στο ποσοστό λαθών των δέκα τελευταίων συνεδριών και σε αυτό όλων — αρνητική, βελτιώνεστε.

Για το Décision, η γραμμή δίνει επίσης το PR της τελευταίας συνεδρίας, υπολογισμένο με τον τύπο που εφαρμόζουν τα στατιστικά στο πραγματικό παιχνίδι — 500 × μέσο σφάλμα σε κανονικοποιημένη ισοδυναμία, πάνω στις αποφάσεις που κρίθηκαν. Ένα PR εξάσκησης 6 και ένα PR αγώνα 6 μετρούν το ίδιο πράγμα στην ίδια κλίμακα.

Πατώντας το όνομα της άσκησης ξεδιπλώνεται η λεπτομέρεια ανά τύπο αριθμού: « Point de prise 4 · dernier lancer, 6 / 9 ». Αυτή η λεπτομέρεια είναι που δίνει αξία στο ημερολόγιο, και μετράει ανά τύπο και όχι ανά πλευρά: το ίδιο κελί του ίδιου πίνακα, ιδωμένο από τη μία ή την άλλη πλευρά, είναι μία και μόνη αδυναμία.

Πίνακας Μεταδεδομένων

Ο πίνακας Μεταδεδομένων εμφανίζει τις γενικές πληροφορίες της τρέχουσας βάσης δεδομένων: όνομα, περιγραφή, αριθμό θέσεων, αριθμό αγώνων και παρτίδων, έκδοση του σχήματος. Προσβάσιμος μέσω της εντολής meta.

Εμφανίζει επίσης, όταν υπάρχει, την προέλευση της βάσης — βλ. Διανομή μιας βάσης: προέλευση και κωδικός πρόσβασης. Μια συνηθισμένη βάση δεν εμφανίζει αυτή την ενότητα.

Διανομή μιας βάσης: προέλευση και κωδικός πρόσβασης

Ένας δάσκαλος που διανέμει μια βάση θέσεων διαθέτει δύο μηχανισμούς, ανεξάρτητους μεταξύ τους, και οι δύο προαιρετικοί και επιλεγόμενοι κατά την εξαγωγή: να σημάνει το αρχείο με την προέλευσή του και να το προστατεύσει με κωδικό πρόσβασης.

Σημείωση

Κανένας από τους δύο δεν παρακολουθεί την τύχη του αρχείου. Το blunderDB δεν καταγράφει τίποτε από την πλευρά εκείνου που λαμβάνει τη βάση: το άνοιγμα μιας σημασμένης βάσης είναι ακριβώς σαν το άνοιγμα οποιασδήποτε άλλης, και πουθενά δεν καταγράφεται ποιος την άνοιξε, πότε, ούτε από πού προέρχεται το περιεχόμενό της.

Σήμανση μιας βάσης με την προέλευσή της

Το παράθυρο εξαγωγής χωράει σε μία μόνο οθόνη: η φόρμα και, πάνω της, μια ένδειξη προόδου κατά τη διάρκεια της εγγραφής. Κλείνει από μόνο του όταν ολοκληρωθεί και το αποτέλεσμα εμφανίζεται στη γραμμή κατάστασης.

Τρία σημεία αξίζουν προσοχής:

  • Η εξαγωγή αφορά τις θέσεις που εμφανίζονται αυτή τη στιγμή, όχι ολόκληρη τη βάση. Μετά από μια αναζήτηση εξάγονται μόνο τα αποτελέσματα — το παράθυρο το υπενθυμίζει στην κορυφή.

  • Μια συλλογή της οποίας οι θέσεις δεν περιλαμβάνονται όλες στην επιλογή φτάνει περικομμένη. Η λίστα δείχνει επομένως, για κάθε συλλογή, το καλυπτόμενο μέρος («12/40») και το επισημαίνει με κόκκινο όταν είναι μερικό.

  • Τα τουρνουά μπορούν να εξαχθούν μόνο μαζί με τους αγώνες: χωρίς αυτούς δεν υπάρχει ο σύνδεσμος τουρνουά–αγώνα και το τουρνουά θα έφτανε κενό. Το πλαίσιο παραμένει απενεργοποιημένο όσο δεν έχει επιλεγεί το «συμπερίληψη των αγώνων».

Τα πεδία Χρήστης, Περιγραφή και Ημερομηνία περιγράφουν το αρχείο που παράγεται· συμπληρώνονται εκ των προτέρων από τη βάση προέλευσης. Το πλαίσιο Τα αποθηκευμένα φίλτρα μου είναι ξεχωριστό από τα υπόλοιπα: δεν εξάγει περιεχόμενο αλλά τις δικές σας αποθηκευμένες αναζητήσεις, οι οποίες δεν χρησιμεύουν στη βάση κάποιου άλλου.

Η επιλογή Σήμανση αυτού του αρχείου με την προέλευσή του εμφανίζει δύο πεδία:

  • Προέλευση — τι είναι αυτό το αρχείο και από πού προέρχεται, με δικά σας λόγια: «Μάθημα του Jean Dupont — 12 Μαρτίου 2026». Το πεδίο αυτό είναι υποχρεωτικό: όσο παραμένει κενό, το κουμπί εξαγωγής μένει ανενεργό.

  • Σημείωση, προαιρετική — όροι χρήσης, διεύθυνση επικοινωνίας, ένα αίτημα να μην αναδιανεμηθεί.

Η σήμανση υπογράφεται με την ταυτότητα εκδότη σας. Είναι επομένως αναλλοίωτη και μη πλαστογραφήσιμη: κανείς δεν μπορεί να την τροποποιήσει ούτε να κατασκευάσει μία στο όνομά σας. Δεν είναι όμως ανεξίτηλη — το αρχείο που διανέμεται είναι μια συνηθισμένη βάση SQLite και το blunderDB είναι ελεύθερο λογισμικό. Δεν εμποδίζει τίποτε: λέει από πού προέρχεται το αρχείο.

Ταυτότητα εκδότη

Οι σημάνσεις υπογράφονται με την ταυτότητα εκδότη σας, η οποία δημιουργείται από μόνη της την πρώτη φορά που σημαίνετε ένα αρχείο· δεν χρειάζεται καμία ρύθμιση. Ανήκει σε ένα πρόσωπο και όχι σε μια βάση: όλα σας τα αρχεία φέρουν το ίδιο δημόσιο αποτύπωμα, της μορφής A3F1-9C24-7B05-E1D8.

Μπορείτε να γνωστοποιήσετε αυτό το αποτύπωμα στους παραλήπτες σας ώστε να επαληθεύουν ότι ένα αρχείο προέρχεται πράγματι από εσάς. Η ταυτότητα μεταφέρεται από τον έναν υπολογιστή στον άλλο με ένα μόνο αρχείο (επέκταση .bdbid), ενδεχομένως προστατευμένο με συνθηματική φράση. Το αρχείο αυτό επιτρέπει την υπογραφή στο όνομά σας: μην το μοιράζεστε.

Στις ρυθμίσεις (εικονίδιο γραναζιού της γραμμής εργαλείων), η καρτέλα Ταυτότητα εκδότη εμφανίζει το όνομα και το αποτύπωμά σας και προσφέρει Αποθήκευση ταυτότητας…, Φόρτωση ταυτότητας… και Αναδημιουργία….

Προειδοποίηση

Η αναδημιουργία δεν ανακαλεί τίποτε. Μια σήμανση ενσωματώνει το δημόσιο κλειδί που την υπέγραψε: επαληθεύεται επομένως για πάντα, από μόνη της. Αν το αρχείο ταυτότητάς σας διέρρευσε, όποιος το κατέχει θα μπορεί να συνεχίσει να υπογράφει με το παλιό σας αποτύπωμα, και οι σημάνσεις αυτές θα παραμένουν έγκυρες.

Αυτό που σας προστατεύει μετά από μια διαρροή δεν είναι λογισμικό: είναι να δημοσιοποιήσετε το νέο σας αποτύπωμα και να αποκηρύξετε το παλιό απέναντι στους παραλήπτες σας.

Η αναδημιουργία αντικαθιστά το τρέχον κλειδί· το blunderDB προτείνει να το αποθηκεύσετε πριν το αντικαταστήσει.

Προστασία μιας βάσης με κωδικό πρόσβασης

Ο κωδικός πληκτρολογείται κρυμμένος, εδώ όπως και κατά το άνοιγμα ενός προστατευμένου αρχείου· το εικονίδιο σε σχήμα ματιού τον εμφανίζει όσο το κρατάτε πατημένο και τον κρύβει ξανά μόλις το αφήσετε.

Η επιλογή Προστασία αυτού του αρχείου με κωδικό πρόσβασης παράγει αρχείο με επέκταση .dbx — ακόμη και αν είχατε επιλέξει όνομα σε .db στο παράθυρο αποθήκευσης, καθώς αυτό ανοίγει πριν ζητηθεί ο κωδικός. Για να το ανοίξετε, χρησιμοποιήστε το συνηθισμένο άνοιγμα βάσης: το παράθυρο επιλογής δέχεται τόσο .db όσο και .dbx. Το blunderDB ζητά τότε τον κωδικό και εγκαθιστά δίπλα μια συνηθισμένη βάση· στη συνέχεια δεν ζητείται τίποτε άλλο.

Το παράθυρο προτείνει τη διαγραφή του προστατευμένου αρχείου μετά το άνοιγμα: διαφορετικά διατηρείτε το ίδιο περιεχόμενο με δύο ονόματα. Το πλαίσιο δεν είναι επιλεγμένο εξ ορισμού — το προστατευμένο αρχείο παραμένει δικό σας αν σκοπεύετε να το διαβιβάσετε — και η διαγραφή γίνεται μόνο μετά από επιτυχές άνοιγμα.

Προειδοποίηση

Ο κωδικός προστατεύει τη μεταφορά του αρχείου, όχι τη βάση. Εμποδίζει έναν τρίτο να ανοίξει ένα αρχείο ξεχασμένο σε έναν φάκελο λήψεων ή ένα συνημμένο που προωθήθηκε κατά λάθος. Δεν προστατεύει από εκείνον στον οποίο δώσατε τον κωδικό.

Ο κωδικός επαληθεύεται σε κάθε άνοιγμα, ακόμη και όταν το αρχείο έχει ήδη ανοιχτεί προηγουμένως σε αυτόν τον υπολογιστή.

Τεχνικά, η βάση κρυπτογραφείται με AES-256 σε λειτουργία GCM, με κλειδί που παράγεται από τον κωδικό μέσω Argon2id (64 MiB μνήμης, 3 περάσματα, 4 νήματα) και τυχαίο αλάτι ξεχωριστό για κάθε αρχείο. Η λειτουργία GCM πιστοποιεί το σύνολο: ένας λανθασμένος κωδικός εντοπίζεται ως τέτοιος, όπως και κάθε αλλοίωση του κρυπτογραφημένου αρχείου — ποτέ δεν καταλήγει κανείς σιωπηλά με κατεστραμμένη βάση.

Η κεφαλίδα του προστατευμένου αρχείου παραμένει μη κρυπτογραφημένη: η προέλευσή του παραμένει αναγνώσιμη χωρίς τον κωδικό.

Ανάγνωση της προέλευσης ενός αρχείου

Στην εφαρμογή, ανοίξτε το αρχείο και εμφανίστε τον πίνακα Μεταδεδομένα (εντολή meta). Στην κορυφή του πίνακα εμφανίζεται μια ενότητα Προέλευση, μόνο για ανάγνωση, που δείχνει τι καταχωρήθηκε, από ποιον, πότε, και την κατάσταση της υπογραφής:

  • «✓ η υπογραφή επαληθεύτηκε — σημάνθηκε από εσάς»: το αρχείο φέρει τη δική σας σήμανση, ανέπαφη·

  • «✓ η υπογραφή επαληθεύτηκε»: η σήμανση είναι ανέπαφη και προέρχεται από άλλο κλειδί — συγκρίνετε το αποτύπωμά της με εκείνο που σας γνωστοποίησε ο δημιουργός·

  • «⚠ μη έγκυρη υπογραφή»: το έγγραφο τροποποιήθηκε ή πλαστογραφήθηκε.

Η ενότητα αυτή δεν εμφανίζεται σε μια συνηθισμένη βάση.

Από τη γραμμή εντολών, το blunderdb info --db αρχείο.db εμφανίζει την προέλευση και την κατάσταση της υπογραφής, χωρίς ποτέ να γράφει στο αρχείο. Η εντολή λειτουργεί και σε προστατευμένο αρχείο, χωρίς τον κωδικό. Βλ. CLI_USAGE.md για τις επιλογές --watermark και --password της export, καθώς και για τις identity και open.

Δημοσίευση μιας βάσης για άλλους

Μια σημασμένη βάση διανέμεται όπως οποιοδήποτε αρχείο — ηλεκτρονικό ταχυδρομείο, προσωπικός ιστότοπος, στικάκι USB. Το blunderDB δεν παρέχει καμία υπηρεσία: ούτε αποθετήριο, ούτε φιλοξενούμενο κατάλογο, ούτε λογαριασμό. Είναι άμεση συνέπεια της σχεδίασής του: τίποτα δεν καταγράφεται ποτέ από την πλευρά εκείνου που λαμβάνει ένα αρχείο, και δεν θα υπήρχε λοιπόν τίποτα να αναφερθεί σε μια υπηρεσία, ακόμη κι αν υπήρχε.

Αυτό που κάνει μια δημοσιευμένη βάση χρήσιμη σε κάποιον άλλο περιορίζεται σε τέσσερα πεδία, όλα ήδη παρόντα:

  • Χρήστης — ποιος τη συγκρότησε, με το όνομα που θέλετε να αναφέρεται.

  • Περιγραφή — τι περιέχει η βάση, σε μία φράση που χωράει σε μια λίστα: «240 αποφάσεις κύβου στο σκορ, σχολιασμένες, ενδιάμεσο επίπεδο».

  • Προέλευση (του υδατογραφήματος) — τι είναι αυτό το αρχείο και για ποιον παρήχθη. Είναι το πρώτο που διαβάζει ο παραλήπτης στον πίνακα Μεταδεδομένα.

  • Αποτύπωμα εκδότη — δημοσιεύστε το δίπλα στο αρχείο, όχι μέσα του: συγκρίνοντάς το ο παραλήπτης επαληθεύει ότι το αρχείο προέρχεται από εσάς και όχι από κάποιον που πήρε το όνομά σας.

Μια βάση που δημοσιεύεται χωρίς υδατογράφημα παραμένει απολύτως χρήσιμη· είναι απλώς ανώνυμη, και ο πίνακας Μεταδεδομένα δεν εμφανίζει τότε καμία ενότητα Προέλευση.

Για να γίνει γνωστή μια βάση, η κατηγορία Show and tell των συζητήσεων του αποθετηρίου χρησιμεύει ως ευρετήριο: είναι μια λίστα που τηρούν όσοι δημοσιεύουν, όχι μια υπηρεσία που παρέχει το blunderDB. Η ανακοίνωση μιας βάσης εκεί απαιτεί τον σύνδεσμο, τα τέσσερα παραπάνω πεδία και το αποτύπωμα.