Zahrajte si šachy, zkuste Eboard

Především pro milovníky šachu je určen program Eboard. O tom, že nabízí více než jen hru proti počítači, se dozvíte v tomto článku.

11.1.2006 06:00 | František Bublík | přečteno 18922×

Myslím, že každý kdo se seznámil s pravidly šachu, si alespoň jednou na počítači pustil nějaký šachový program a pokusil se (většinou neúspěšně) s počítačem soupeřit. Doby, kdy byly počítače šachově hloupé a daly se lehce porazit, jsou už v nenávratnu. Pro platformu windows dnes existuje celá řada komerčních programů jako například Fritz nebo Chessbase. Má šachová minulost a linuxová současnost mě vedly k občasnému zkoušení šachových programů na Linuxu, až jsem objevil Eboard. O zkušenosti s tímto výborným programem bych se s vámi rád podělil.

Instalace Eboardu je v modernich distribucích jako např. Mandriva 2006 triviální. Instalační program vyřeší všechny závislosti. Za zmínku stojí jen skutečnost, že pokud chceme hrát proti počítači, potřebujeme k tomu ještě šachový motor - engine. Eboard je v tomto ohledu pouze frontend. Instalační program pravděpodobně nabídne Gnuchess, my si můžeme přiinstalovat ještě Crafty (který doporučuji) a Sjeng. Zdatní šachisté mohou porovnávat výkonnost těchto motorů, nám ostatním to může být celkem jedno, kterýkoli z nich nám bude silným soupeřem.

Hra proti počítači

Po prvním spuštění programu eboard nás uvítá okno programu s dalším otevřeným oknem nápovědy v češtině. Co se prvního nastavení týká, tak na mém systému bylo potřeba přes nabídku "Nastavení => Možnosti => Fonty" vybrat správnou variantu fontů - iso-8859-2. V případě, že budeme chtít odehrané partie analyzovat nebo jen prohlížet, zaškrtneme také příslušné políčko na záložce "Automatické ukládání".

A nyní se již můžeme pustit do hry. V nabídce "Oponent" vybereme položku "Hrát proti motoru". Pokud máme motory nainstalovány, automaticky se nám v nabídce objeví. Vybráním jednoho z nich se dostaneme na další okno, ve kterém nastavíme vlastnosti motoru. To je vhodné tehdy, kdy chceme snížit výkonnost motoru, aby nám příliš nenaboural naše sebevědomí. Dá se tady nastavit hloubka - tedy kolik tahů dopředu motor počítá, lze také vypnout přemýšlení v čase soupeře a samozřejmě také nastavit časovou délku na určitý počet tahů. Nastavením hloubky na tři tahy a vypnutím přemýšlení v čase soupeře se dá i z takového mistra jakým je Crafty udělat začátečník. Pokud mu ponecháte jeho základní nastavení, tedy neomezenou hloubku, bude s vámi hrát silou velmistra s ELO 2617 (testováno na Athlonu 1200). Tedy po výběru nastavení, jaká vám vyhovují, stačí už jen potvrdit tlačítkem OK a partie začne. V pravém panelu okna se zobrazuje statistika - jméno soupeře, hodiny a poměr materiálu (figurek). Partie končí matem, patem nebo trojím opakováním stejné pozice. Odehraná partie se automaticky uloží do souboru "~/.eboard/mygames.pgn" , pokud jsme to na začátku povolili.

Hra po Internetu

Hru proti počítači není složité uvést do provozu, ale může nás časem omrzet. Pokud zatoužíme si zahrát s živým soupeřem přes internet, program Eboard nám k tomu nabídne výborné podmínky. Šachy přes internet se hrají pomocí ICS (Internet Chess Server). Jedná se o volně přístupné šachové servery, založené na unixovém systému, ke kterým se můžeme přihlásit například přes telnet a hrát šachy v textovém režimu. K tomu, abychom něco takového nemuseli podstupovat, nám program Eboard zprostředkuje pohodlné grafické prostředí. K ICS se přihlašujeme jako hosté, nebo si na nich můžeme zřídit registraci. Registrace přinese několik výhod navíc ... bude nám automaticky počítáno ELO z odehraných partií na serveru, můžeme se zúčastnit turnajů atd. Nejznámější ICS server je pravděpodobně www.freechess.org, evropští uživatelé navštěvují hojně eics.freechess.org. Další volné šachové servery naleznete na stránkách www.freechess.org v sekci links. Pokud se budete chtít dozvědět více o internetových šachových serverech, najdete další podrobné informace na www.chessjournal.cz/cz/one_news.asp?IDNews=27 .

Program Eboard nabízí pohodlný přístup k ICS, není tedy na začátek třeba se učit množství konzolových příkazů. Konzoli programu uvidíte pouze při přihlašování k serveru a pak se jí už nemusíte zabývat, nebudete-li chtít. Tedy jdeme hrát šachy po internetu! V hlavní nabídce programu zvolíme položku "Oponent" a vybereme nabídku "Připojit k FICS". To nás přesměruje do konzole programu, ve které se objeví výpis ze serveru www.freechess.org, který je v programu předdefinován. Výpis se zastaví na výzvě "login:" do příkazového řádku napíšeme slovo "guest" a potvrdíme entrem. Server nám ke slovu guest přidělí několik identifikačních písmen např. guestGWHR, pod touto přezdívkou se budeme nyní zobrazovat ostatním soupeřům, a vyzve nás ještě jednou k potvrzení entrem. Můžeme použít i jinou přezdívku, po zadání nás systém informuje, že tato přezdívka není registrována a lze ji použít k hraní nepočítaných partií. Tím proběhlo přihlášení.

Výpis v konzoli opět trochu popojede. Zobrazí se malá nápověda a pak se začnou objevovat postupně řádky podobné následujícímu:
GuestNMXQ (++++) seeking 10 5 unrated blitz ("play 96" to respond)

První pole je jasné, jde o přezdívku soupeře, druhé pole ukazuje jeho ELO ( v případě znamének ++++ jde o neregistrovaného hráče, kterému se ELO nepočítá). Slovo "seeking" znamená, že hráč čeká na protivníka. Čísla 10 a 5 nám říkají, že celkový čas na partii je deset minut s bonusem pěti sekund za provedený tah. Slovo "unrated" nás informuje o tom, že partie nebude počítaná do statistik serveru. Slovo blitz nám říká, že půjde o bleskovou partii. Tomuto poli je dobré věnovat pozornost, protože nás informuje o variantě šachů, kterou soupeř nabízí. Můžeme se zde setkat s variantou lightning, crazyhouse, suicide (možná i dalšími), ve kterých platí jiná pravidla než v klasickém šachu. Já jsem chtěl hrát vždy klasické šachy, proto jsem vybíral soupeře, kteří nabízeli variantu "standard". Pokud si zde vybereme soupeře, napíšeme do příkazového řádku příkaz "play" a číslo, které je v závorce výpisu. V našem příkladu tedy "play 96". Jak jsem již předeslal, konzole na tohle není nutná. Stačí se přepnout na záložku "Tabulka nabídek" a dostaneme se do grafického prostředí, kde si soupeře vybereme poklepáním myší.

Poté, co soupeře vybereme, program nás přepne na okno hlavní šachovnice a hra začíná. V průběhu hry lze soupeři nabídnout remízu přes nabídku "Partie" => "Nabídnout remízu", nebo také partii vzdát.
V případě, že nám nevyhovuje žádný momentální soupeř, můžeme učinit nabídku sami zadáním příkazu "seek". Například pro partii s dvaceti minutami pro každého hráče napíšeme jednoduše "seek 20 0". Po přijetí soupeřem nás program hned přepne na hlavní šachovnici a hra začíná. Můžeme využít i možnost něco našemu soupeři napsat, např. pozdrav apod. K tomu využijeme příkazový řádek pod šachovnicí uvozený tlačítkem [přík]. Do příkazového řádku napíšeme "tell jméno zpráva", kdy "tell" je příkaz pro server, "jméno" - komu chceme poslat zprávu. Pokud hrajeme partii, můžeme klepnutím na tlačítko přepnout režim na příkaz "say" (nápis "[kom] say" se objeví na tlačítku) a napíšeme zprávu přímo do příkazového řádku a odešleme entrem. Bude-li někdo chtít používat serverové příkazy přímo, je jich něco kolem stovky, využije asi rád možnost otevřít si samostatnou konzoli přes nabídku "Okna".

Hra přes ICS není jedinou možností jak hrát šachy se vzdáleným soupeřem. Program Eboard nabízí možnost vytvoření přímého připojení ke vzdálenému Eboardu. Přes nabídku "Oponent" vybereme možnost "Přímé spojení na vzdálený eboard". Na jednom počítači vybereme v následujícím dialogu záložku "Čekat na spojení" a potvrdíme tlačítkem "Čekej".

Na počítači druhém, na záložce "Navázat spojení", zadáme IP adresu vzdáleného počítače, ponecháme TCP port na přednastavené hodnotě, pokud jsme se nedomluvili vzájemně na jiném, a potvrdíme tlačítkem "Spojit". Až na druhé straně soupeř spojení potvrdí, objeví se "okno nabídek", ve kterém se soupeři vzájemně domluví na délce partie a kdo bude hrát jakou barvou figur. Okno nabídek zůstává otevřené po celou dobu partie a můžeme v něm opět nabídnout remízu nebo vzdát partii.

Prohlížení partií offline

Nejrozšířenějším formátem pro ukládání šachových partií je formát PGN (portabel game notation). Jedná se o textový soubor s přesně definovanou syntaxí. Uvedu zde příklad půvabné, miniaturní partie ve formátu PGN:

[Event "?"]
[Site "unknown 1620"]
[Date "????.??.??"]
[Round "?"]
[White "Greco G"]
[Black "Unknown"]
[Result "1-0"]
[ECO "C37/09"]

1. e4 e5 2. f4 exf4 3. Nf3 g5 4. Bc4 g4 5. Ne5 Qh4+ 6. Kf1 Nf6 7. Bxf7+ Kd8 8. d4 Nxe4 9. Qe2 Ng3+ 10. hxg3 Qxh1+ 11. Kf2 fxg3 12. Kxg3 Qxc1 13. Nc6+ Nxc6 14. Qe8+ 1-0

Jak vidíte, soubor obsahuje hlavičku se záznamy o partii a pak vlastní zápis s písmeny odpovídajícími anglickým názvům figur. Podrobnosti o formátu PGN se můžete dočíst na této adrese. Není potřeba zakládat pro každou partii samostatný soubor, do jednoho souboru můžeme vložit partií opravdu hodně. Můj prozatím největší soubor *.pgn má necelých 5 megabytů a obsahuje 7789 partií. Načítání takto velkého souboru samozřejmě chvíli trvá, ale program jej asi po 20 vteřinách zpracuje a zobrazí seznam partií. K načtení souboru *.pgn se dostaneme trochu neintuitivní cestou přes nabídku "Okna" => "Partie na klientovi". V následujícím okně je nám umožněno nahrát *.pgn soubor a poté co se zobrazí seznam partií, některou z nich vybereme. Tím se zpřístupní další možnosti jako "Zobrazit partii", "Uložit partii", "Odstranit partii" nebo "Upravit info". Poslední volbou upravujeme hlavičku partie.

Po zvolení "Zobrazit partii" nás program přepne do šachovnice, nikoli hlavní, v pravém sloupci programu se objeví nová záložka s názvem partie. Načtením dalších partií se vytvoří další záložky, mezi kterými můžeme přepínat a porovnávat tak jednotlivé partie, což je například praktické při studiu šachových zahájení. Přehrávání jednotlivých partií provádíme pomocí tlačítek pod šachovnicí, na nichž vidíme znaky známé z multimediálních přehrávačů. Jejich funkčnost je zřejmá.

Jak na jiné šachové formáty? Šachových databázových formátů existuje pochopitelně více. Ná stránkách www.enpassant.dk/chess/softeng.htm o nich najdeme více informací a hlavně i konverzní prográmky pro převod jednotlivých formátů mezi sebou. Sám jsem vyzkoušel CA2PGN.EXE, který převádí formát Chess Assistant do PGN. Jedná se o dosovský, řádkový program, který mi bezproblémově fungoval v emulátoru dosbox. U každé utilitky je i textový popis, podle kterého lze vše hravě zvládnout. Zapátráme-li na internetu, objevíme velké množství databází, ať již šachových zahájení, nebo partií jednotlivých mistrů, případně zápisy celých turnajů. Tyto databáze mohou sloužit jak pro potěšení šachového hráče, tak i jako materiál ke studiu šachové hry.

Žádný software není dokonalý. I program Eboard má své mouchy. Nepodařilo se mi nastavit český font pro záložky, a tak nabídka "Hl.šachovnice" se nezobrazovala s "š". Další záložky už písmeno s háčkem neobsahují, takže budí zdání, že česky umí. Je to drobnost, kterou rád oželím s ohledem na další možnosti programu. Další věc je spíš doporučení ke zlepšení funkčnosti programu. Bylo by praktické mít možnost v seznamu lokálních partií nějak vyhledávat, nebo pro začátek je alespoň řadit, dle soupeřů nebo výsledků atd. Po vybrání partie ze seznamu a jejím zobrazení, si okno seznamu nepamatuje pozici kurzoru a přesune se vždy znovu na začátek. Jediným vodítkem je sledovat v druhém poli, zda už byla partie zobrazená či nikoli. Program jsem také po dlouhém zkoumání přivedl několikrát k pádu, a to tak, že jsem šachovému enginu Crafty vnucoval "přerušení partie" a další položky v menu "Partie". Jinak se program chová stabilně a celkový dojem z něj je výborný. Používám ho asi měsíc a za tu dobu jsem si jej oblíbil. Můžu ho všem doporučit. Dle mého názoru vám poskytne nejlepší prostředí a služby ze všech linuxových šachových frontendů.

Online verze článku: http://www.linuxsoft.cz/article.php?id_article=1075