50_51_52_53_54_55_szachy_PL.pdf

(1669 KB) Pobierz
5700559 UNPDF
praktyka
Szachy
Matuj Linuksa
Sławomir Stępień
Gra w szachy jest na tyle popularna, że środowisko użytkowników Linuksa nie musi się obawiać o małą
ilość oprogramowania, które umożliwia nam rozgrywkę na naszym komputerze. Oczywiście nie tylko
ilość się liczy, ale także jakość. Na szczęście nie ma żadnego problemu, bo wszystkie opisane poniżej
programy mają swoją renomę i są naprawdę godnymi przeciwnikami.
W iele z nich zajmuje czołowe miejsca na ko-
sora jest w stanie wygrać szybką partię z człowiekiem. Powo-
dem tej przewagi jest fakt, że komputer jest w stanie przeanali-
zować więcej posunięć w krótkim czasie niż człowiek. Podob-
nie wygląda sytuacja, gdy komputer ma znaczną ilość czasu do
obmyślania ruchu. W takiej sytuacji też będzie w stanie prze-
analizować wystarczającą ilość ruchów, aby dać mata człowie-
kowi. Istnieje możliwość, aby ograniczyć moc obliczeniową
programu, dzięki czemu zyskujemy przewagę.
Innym problemem, który utrudnia określenie rankingu
programu szachowego jest to, że program nie gra z człowie-
kiem, tak często jak człowiek z człowiekiem. Dlatego ranking
programu, to najczęściej ranking wyliczony na podstawie roz-
grywek między innymi programami. Do starć programów sza-
chowym dochodzi na Mistrzostwach Świata Programów Sza-
chowych World Computer-Chess Championship , gdzie najlep-
sze programy grają ze sobą i walczą o mistrzowski tytuł. Na
stronie zeszłorocznych mistrzostw http://www.cs.unimaas.nl/
wccc2006/ można zobaczyć ranking programów szachowym.
Oczywiście wyników tych nie można bezpośrednio porównać
do wyników prowadzonych przez Światową Federację Sza-
chową z przytoczonych tu powodów, choć widać, że niektóre
programy są lepsze od aktualnego mistrza.
Kilka słów o rankingu
Problem oceny programów szachowych jest chyba bardziej
skomplikowany, niż ocena umiejętności szachowych ludzi,
a na taki stan rzeczy składa się wiele czynników. Głównym
czynnikiem jest to, że program komputerowy gra bardziej tak-
tycznie, a mniej strategicznie. Dzięki temu człowiek jest w sta-
nie wygrać, myśląc bardziej strategicznie. Czołowi gracze sza-
chowi z łatwości mogą wywnioskować już po jednym ruchu
i w odpowiedniej sytuacji, czy mają do czynienia z graczem
komputerowym czy z człowiekiem.
Innym zagadnieniem wpływającym na trudność oceny
umiejętności programów szachowych jest czas w jakim pro-
wadzona jest rozgrywka. Programy szachowe radzą sobie le-
piej od człowieka w odpowiednich przedziałach czasowych,
co jednoznacznie wynika z możliwości przewidywania ru-
chów na szachownicy. Komputer nawet bez szybkiego proce-
50
grudzień 2007
lejnych Mistrzostwach Świata Programów
Szachowych, gdzie programy komputero-
we grają przeciw innym programom. My-
ślisz, że jesteś w stanie je pokonać?
5700559.016.png 5700559.017.png
 
praktyka
Szachy
Silniki szachowe
Tak to już mamy w Linuksie, że wiele progra-
mów (nawet te bardzo skomplikowane) posia-
dają nieprzystępny interfejs tekstowy. Podob-
nie wygląda kwestia użytkowania silników
szachowych pod Linuksem. Jeśli kiedyś gra-
łeś w szachy (a zapewne tak było), to wiesz,
że żeby podać pozycje na szachownicy wy-
starczy podać dwie wartości. Fakt ten spra-
wia, że programy, które grają w szachy posłu-
gują się specjalnymi protokołami, które umoż-
liwiają im komunikacje z innymi programa-
mi (w tym także z GUI). Także dzięki unii-
kacji podstawowych protokołów mamy możli-
wość rozgrywki przez sieć. O możliwości uru-
chomienia silnika w GUI porozmawiamy nie-
bawem, a teraz zobaczymy jak sam silnik za-
instalować uruchomić i skonigurować. Jak ła-
two się domyślić program szachowy, który
działa dla innego programu (najczęściej jest
to GUI) nazywa się silnikiem, bo pracuje pod
„maską” GUI.
zwalają na załadowanie pliku, który zawiera róż-
nego rodzaju otwarcia szachowe Opening book
oraz pozycje gry końcowej Endgame tableba-
se . Crafty ma także możliwość automatycznego
uczenia się na podstawie pozycji na szachowni-
cy. Wszystkie wymienione tu poprawki, umożli-
wiające grę w szachy sprawiają, że ten silnik sta-
je się godnym przeciwnikiem.
Instalacja
Instalacja Crafty może odbyć się, ze źródeł oraz
z gotowego pliku binarnego. Tak się składa, że
źródła dostępne są tylko do wersji 20.14, a ak-
tualna wersja to 21.5. Jeśli chcesz zainstalować
program ze źródeł, to wejdź na stronę: ftp://
ftp.cis.uab.edu/pub/hyatt/source/ i pobierz naj-
nowszą wersję. Następnie rozpakuj archiwum
ZIP poleceniem: unzip crafty-20.14.zip
i wejdź do rozpakowanego katalogu,wydając
polecenie: make linux (jeśli posiadasz jakiś
niestandardowy procesor, to wydaj polecenie:
make help , aby zobaczyć jak zoptymalizować
kompilacje). Po udanej kompilacji otrzymasz
plik wykonywalny: crafty . Instalacja pliku bi-
narnego, który można pobrać ze strony: http://
www.craftychess.com/Crafty-21.5_Linux.zip ,
także nie sprawia najmniejszych problemów.
Archiwum zawiera gotowe pliki wykonywalne
do różnych architektur. Gdy już posiadamy plik
wykonywalny, to warto go skopiować do jakie-
goś katalogu, gdzie będzie zapisywał swoją kon-
igurację i pliki dziennika. Gdy będziemy goto-
wi na rozgrywkę, to uruchamiamy plik polece-
niem: ./crafty . Jednak jeśli okaże się, że pro-
gram jest dla nas za łatwy do ogrania, to przy-
chodzi czas na jego konigurację.
Rysunek 2. Crafty vs Sjeng na planszy XBoard
ogrania albo trudniejszy. Wszystkie polecenia
wydajemy bezpośrednio w programie lub zapi-
sujemy je do pliku .craftyrc , który możemy za-
pisać w katalogu domowym lub w katalogu,
gdzie znajduje się plik binarny programu. Pro-
gram, aby mógł poprawić swoje możliwości
szuka przy starcie plików z różnymi możliwo-
ściami otwarcia. Pliki te nazywają się: book.bin
oraz books.bin. i możemy pobrać z adresu: ftp:
//ftp.cis.uab.edu/pub/hyatt/book/ . Po pobraniu
warto zapisać je w katalogu, gdzie znajduje się
program lub w osobnym katalogu, co wyma-
ga, aby przy uruchamianiu programu przeka-
zać mu argument: bookpath=/sciezka/do/
katalogu lub wpisując do pliku koniguracyj-
nego to właśnie polecenie. Inne ciekawe opcje,
które pozwalają osiągnąć programowi dobre
wyniki to m.in.: ponder [on/off] – opcja ta
włącza on lub wyłącza off możliwość analizo-
wania gry w czasie gdy ruch należy do prze-
ciwnika. Jeśli chcesz aby w czasie Twojej tu-
ry program nie obmyślał następnych swoich ru-
chów, a tym samym stał się słabszy, ustaw tę
opcję na wyłączona; st [liczba] – polecenie
to określa jaki czas (podany w sekundach) pro-
gram ma na wykonanie ruchu. Jeśli chcesz, aby
program wykonał ruch najszybciej jak tylko
się da, to ustaw tę wartość na 1 ; hash [wiel-
kość] – opcja ta ustawia wielkość tablicy mie-
szającej w jednostkach kilobajt i megabajt. Mi-
nimalna wartość tej opcji to rozmiar 48K, wiel-
kości większe niż kilobajty muszą być wielo-
krotnością 3. megabajtów; hashp [wielkość]
– opcja podobna do poprzedniej tylko wpływa-
jąca na innym algorytm. Jej minimalna wiel-
kość to 16K, wielkości większe niż kilobaj-
ty muszą być wielokrotnością 2. megabajtów;
sd [głębokość] – opcja ustawia o ile ruchów
do przodu program ma analizować rozgrywkę.
Oczywiście ustawienie tej wartości na 1 powo-
duje, że program staje się łatwiejszy do ogra-
Crafty
Crafty to bardzo rozbudowany silnik szacho-
wy, który już od dłuższego czasu zajmuje czo-
łowe pozycje na Mistrzostwach Świata Progra-
mów Szachowym. Jego ranking w ICC wyno-
si 2792 ELO (w rozgrywce standard). Crafty zo-
stał napisany przez Dr. Roberta Hyatta i bezpo-
średnio wywodzi się od swojego mistrzowskie-
go poprzednika – Cray Blitz (mistrz w latach
1983-1989), który został napisany z myślą o pra-
cy na komputerze Cray. Crafty jako pierwszy te-
go typu program wprowadził obsługę wielu pro-
cesorów. Na efektywność tego silnika wpływa
wiele skomplikowanych algorytmów takich jak:
plansza bitowa bitboard , algorytmy przeszuki-
wania Negascout, Alpha-Beta, Transposition ta-
ble, Killer heuristic . Nowe wersje programu po-
Koniguracja
Crafty pozwala na zmianę kilku opcji, które
powodują, że program staje się łatwiejszy do
Rysunek 1. Oto jak wygląda plansza w trybie tekstowym rysowana przez program Sjeng
www.lpmagazine.org
51
5700559.018.png 5700559.001.png 5700559.002.png 5700559.003.png 5700559.004.png
 
praktyka
Szachy
nia. Wszystkie przytoczone tu opcje można wy-
dawać bezpośrednio w programie lub zapisać
je do pliku koniguracyjnego .craftyrc . Jeśli in-
teresują Cię wszystkie dostępne opcje i sposób
ich ustawiania, to odsyłam pod adres: http://
www.cis.uab.edu/hyatt/craftydoc.html , gdzie znaj-
duje się pełna dokumentacja możliwości pro-
gramu. O tym jak używać Crafty w GUI po-
wiem w dalszej części artykułu, gdzie opisuję
popularne nakładki graiczne.
mem, to należy pobrać jego źródła i skompi-
lować je samemu. Adres gdzie można pobrać
źródła: http://ftp.gnu.org/pub/gnu/chess/.
zować rozgrywkę. Oczywiście ustawienie
tej wartości na 1 powoduje, że program
staje się łatwiejszy do ogrania. O tym
jak używać GNU Chess w GUI powiem
w dalszej części artykułu, gdzie opisuję
popularne nakładki graiczne.
Koniguracja
GNU Chess pozwala użytkownikowi na
zmianę kilku ważnych opcji w celu dostoso-
wania poziomu gry do wymagań. Jeśli chodzi
o sposób koniguracji programu, to nie zdoła-
łem zmusić programu, aby czytał swoją kon-
iguracje z pliku. Wygląda na to, że konigu-
racja musi odbyć się bezpośrednio, z progra-
mu lub przekazując argumenty wywołania:
Sjeng
Sjeng to bardziej skomplikowany program,
który pozwala rozegrać różne warianty zwykłej
gry w szachy. Program głównie gra w kloca
bughouse oraz w dwu osobową odmianę klo-
ca crazyhouse . Nowe wersje programu potra-
ią grać jeszcze w inne popularne odmiany sza-
chów. Głównym twórcą jest Gian-Carlo Pa-
scutto, a jego ranking w rożnych odmianach
gry jest inny, ale można z pewnością powie-
dzieć, że średni ranking wynosi ok. 2500 ELO.
Sjeng, podobnie jak GNU Chess jest w stanie
malować plansze w trybie tekstowym.
GNU Chess
GNU Chess to jedna z najstarszych części pro-
jektu GNU. Rozwój tego silnika rozpoczął się
jeszcze w 1984 roku, a jego pierwszym auto-
rem był Stuart Cracraft. W latach 1998-1999
wyszła piąta wersja programu, a jego kod źró-
dłowy został napisany od początku, co by-
ło konieczne, aby zachować jego czytelność
i ustrzec się przed, tzw. spaghetti code . W cza-
sie, gdy kod programu powstawał od początku
zdecydowano się, by zastosować bardziej wy-
myślne struktury danych i szybsze algoryt-
my, niż te zastosowane wcześniej. Jeśli cho-
dzi o ranking tego programu, to wynosi wię-
cej niż 2100 ELO na sprzęcie klasy Pentium
200Mhz. Podobnie, jak w przypadku Crafty
na efektywność tego silnika wpływają za-
stosowane w nim algorytmy. Także tu mamy
do czynienia z planszą bitową, algorytmem
Negascout oraz możliwością użycia książki
z otwarciami szachowymi.
GNU Chess w porównaniu z Crafty za-
wiera prosty system rysowania planszy w try-
bie tekstowym. Jeśli z jakiś powodów nie mo-
żemy zagrać z GUI, to zawsze jest to jakieś
wyjście.
book [add/on/off/best/worst/random]
– opcja podobna do tej z Crafty. GNU
Chess także potrai czytać ruchy z książki
otwarcia. Jeśli chcesz utworzyć plik binar-
ny z ruchami to należy posłużyć się komen-
book add plik.pgn , gdzie plik.pgn
to plik, w którym znajduje się spis ruchów
w formacie PGN. Program poszukuje pli-
ków książek w katalogach: /usr/share/ga-
mes/gnuchess/, /usr/lib/games/gnuchess/ oraz
w katalogu, z którego aktualnie uruchomio-
no program. Jeśli program gra zbyt dobrze,
to wyłączenie użycia książki spowodu-
je spadek „umiejętności” programu. GNU
Chess także potrai zagrać najlepszy ruch
z książki best , najgorszy worst oraz losowy
random ; easy – wydając to polecenie, spo-
wodujemy że program nie będzie obmyślał
ruchu w czasie, gdy to nasza kolej by go
zrobić. Opcję tę możemy przekazać pod-
czas uruchamiania programu, przekazując
parametr – easy , np.: gnuchess –easy ,
hard – odwrotność przed chwilą omówio-
nej opcji. Jeśli chcesz, aby program grał le-
piej wydaj ją. Domyślnie ta opcja jest włą-
czona; hash [on/off] – polecenie to włą-
cza lub wyłącza użycie tablicy mieszają-
cej. Jeśli chcesz, aby program grał gorzej,
to należy tablice wyłączyć poleceniem:
hash off ;
hashsize [wielkość] – opcja ta ustawia
wielkość tablicy mieszającej. Oczywiście
im mniejsza wartość typ program jest ła-
twiejszy do ogrania. Minimalna wielkość
tej opcji to 1024 , większe wartości mu-
szą być potęgami dwójki, ale większe niż
1024 . Opcja te jest dostępna, także jako
argument uruchomienia programu: –ha-
shsize=size , gdzie size to wielkość ta-
blicy; null [on/off] – opcja ta wyłą-
cza i włącza opcje przyśpieszenia prze-
szukiwania heurystycznego . Wyłączenie
tej opcji sprawia, że program gra gorzej;
depth [głębokość] – opcja ustawia
o ile ruchów do przodu program ma anali-
Instalacja
Sjeng dostępny jest w kilku wariantach. Nas
oczywiście interesują tylko te otwarte, więc
w tym przypadku nie mamy dość dużego wy-
boru. Jedyna bezpłatna wersja Sjenga to stara
wersja. To, że ta wersja jest stara nie oznacza,
że program jest słabym przeciwnikiem. Ważne
jest to, że potrai zagrać z nami w kloca. Strona,
z której możemy pobrać silnik znajduje się pod
adresem: http://www.sjeng.org/download.html .
Pobieramy najnowszą „stara” wersję i przecho-
dzimy do rozpakowania archiwum poleceniem:
tar xvfz Sjeng-Free-11.2.tar.gz . Następ-
nie wchodzimy do utworzonego katalogu i wy-
dajemy polecenie: ./conigure . Po udanej kon-
iguracji pozostaje już tylko wydać polecenie:
make , które utworzy nam plik wykonywalny:
sjeng . Jeśli chcesz zainstalować pogram auto-
matycznie, to wydaj polecenie (z konta root ):
make install . Od tej pory będziesz mógł uru-
chomić program, wydając polecenie: sjeng . Je-
śli Twoim oczom ukarze się plansza do gry, to
znaczy, że program działa prawidłowo i przy-
szedł czas, aby poddać go koniguracji.
Instalacja
GNU Chess to tak dojrzały projekt, że więk-
szość dystrybucji posiada go w swoich repo-
zytoriach. Jeśli nie wiesz, czy razem z syste-
mem zainstalował się program, to wydaj pole-
cenie gnuchess , a po uruchomieniu program
powinien wyświetlić informacje o swojej wer-
sji i rozmiarach tablic mieszających. Jeśli jed-
nak program nie został zainstalowany z syste-
Koniguracja
Główna koniguracja tego silnika odbywa się
w pliku: sjeng.rc , który należy umieścić w kata-
logu bieżącym, z którego uruchamiamy program.
Plik koniguracyjny znajduje się w rozpakowa-
nym katalogu ze źródłami. Jeśli nie czujesz się
na siłach, aby samemu go pisać, to warto go sko-
piować do katalogu, z którego będziesz urucha-
miał grę. Edycja tego pliku odbywa się przy po-
mocy zwykłego edytora tekstowego takiego jak,
np: vim . Każda linia w pliku koniguracyjnym
programu Sjeng odpowiada za inną opcję. Linie,
zaczynające się od znaku '#' nie są brane pod
Rysunek 3. Eboard wygląda dużo lepiej niż XBoard
52
grudzień 2007
5700559.005.png 5700559.006.png 5700559.007.png 5700559.008.png
 
praktyka
Szachy
uwagę. Wszystkie linie w przykładowym pliku
są dość solidnie opisane dlatego nie będę ich tu
przytaczał. Pozwolę sobie przypomnieć, że ten
silnik gra w różne warianty gry w szachy, dlate-
go niektóre dostępne opcje działają tylko w od-
powiednich wariantach. Innym miejscem, opisu-
jącym koniguracje programu pod odpowiednie
warianty jest plik README w katalogu ze źró-
dłami. Znajdziemy tam, m.in. sposób na automa-
tyczne generowanie książek, zawierających po-
zycje końcowe dla wariantu suicide oraz sposób
na wygenerowanie pliku, zawierającego otwar-
cie z pliku PGN .
to musisz program zainstalować ze źródeł. Ad-
res strony do pobrania najnowszej wersji to:
http://ftp.gnu.org/gnu/xboard/xboard-4.2.7.
tar.gz . Gdy źródła zostaną pobrane należy je
rozpakować poleceniem: tar xvfz xboard-
4.2.7.tar.gz , a następie wejść do właśnie
utworzonego katalogu ze źródłami i wydać po-
lecenie: ./conigure , a następnie: make . Jeśli
chcesz zainstalować program, to wykonaj: su ,
a następnie: make install . Zainstalowany pro-
gram uruchamia się poleceniem: xboard .
jest adresem serwera ICS Internet Chess Se-
rver mamy możliwość rozegrania partii z czło-
wiekiem. Granie jednak na takim serwerze wy-
maga znajomości komend, które trzeba wyda-
wać serwerowi, aby rozpocząć rozgrywkę. Je-
śli jesteś zainteresowany tymi komendami, to
odsyłam do linków, umieszczonych w ramce W
sieci . Program eboard radzi sobie na tym polu
o wiele lepiej, więc nie będziesz zawsze skaza-
ny na używanie XBoard do grania przez sieć.
Kolejna możliwość, to po prostu uruchomienie
programu bez silnika szachowego i bez połą-
czenia internetowego. Ta możliwość nadaje się,
gdy chcesz zagrać przeciw znajomemu na jed-
nej maszynie. Aby uruchomić program w tym
trybie, to wydaj polecenie: xboard -ncp . Inne
możliwości to: użycie skryptu: pxboard , któ-
ry utworzy rurkę do XBoard i prześle tam nie-
zbędne informacje oraz program: cmail , który
pozwala zagrać w szachy korespondencyjne.
O tym, jak tych opcji używać przeczytasz na
stronie podręcznika programu man xboard.
Większość opcji tego GUI znajdziemy w jego
menu pod przyciskiem Options . Wiele z tych
opcji wpływa na wygląd szachownicy. Nic nie
stoi na przeszkodzie, aby stan gry zapisać i od-
tworzyć go za jakiś czas. Wszystkie te opcje
znajdziemy pod przyciskiem menu File . W me-
nu pod przyciskiem Mode znajdują się opcje,
które w czasie rzeczywistym sterują tym w ja-
kim trybie program pracuje. Możemy tam zna-
leźć m.in. opcję, która powoduje, że dwa silni-
ki walczą ze sobą, tryb analizy partii, listę wy-
konanych ruchów itp.
Koniguracja
Program może wygląda dość niepozornie, ale,
to co kryje się wewnątrz jest wystarczające, aby
zadowolić niewybrednego gracza. Program po-
trai uruchomić się na kilka sposobów. Pierw-
szy sposób to rozgrywka między człowiekiem,
a programem szachowym. Domyślnie zaraz po
starcie program XBoard uruchamia dla gracza
czarnego silnik GNU Chess poleceniem: gnu-
chessx. Jeśli chcesz się zmierzyć z innym sil-
nikiem, to uruchom program z argumentem:
-fcp nazwa_silnika , np.: xboard -fcp cra-
fty . Istnieje także możliwość, aby dwa progra-
my szachowe walczyły między sobą bez naszej
ingerencji. Aby tego dokonać uruchom pro-
gram tak: xboard -mg 1 -fcp nazwa_sil-
nika1 -scp nazwa_silnika2 , gdzie liczba 1
odpowiada liczbie potyczek, które zostaną ro-
zegrane. Inną możliwością uruchomienia pro-
gramu jest gra na serwerze szachowym. Uru-
chamiając program poleceniem: xboard -ics
-icshost nazwa_hosta , gdzie nazwa_hosta
Interfejsy użytkownika
Jestem dość pewny, że wielu czytelników po
uruchomieniu wymienionych wcześniej progra-
mów szachowych zwątpiła w sens gry w sza-
chy w środowisku tekstowym. Oczywiście trze-
ba być naprawdę desperatem, aby tak grać. Jed-
nak nie wszystko jest stracone, a moim skrom-
nym zdaniem wszystko jeszcze bardziej się
upraszcza, jeśli chodzi o rozgrywkę przy po-
mocy GUI. Jak wspomniałem na wstępie, to że
silniki szachowe mają nieprzystępny interfejs
tekstowy pozwala twórcom GUI na łatwiejsze
i szybsze tworzenie aplikacji. Już nie muszą
skupiać się na tym, aby program ładnie wyglą-
dał i był trudnym przeciwnikiem. Dzięki zasto-
sowaniu prostego protokołu możliwe stało się
utworzenie GUI dla wielu popularnych silni-
ków, zarazem polepszyło to przenośność apli-
kacji GUI na wiele platform, a także uniikacje
gry przez internet.
XBoard
XBoard to klasyczny interfejs przeznaczony
do grania w szachy. Głównym twórcą projek-
tu jest Tim Mann; wersje tego programu działa-
ją także na systemie Windows (pod nazwą Win-
Board). Dzięki XBoard możemy przeprowa-
dzić rozgrywkę na wiele możliwości, ponieważ
ten program idealnie komunikuje się z silnika-
mi szachowymi i serwerami, gdzie grają ludzie
oraz potrai stworzyć grę, gdzie do wymiany in-
formacji (pozycji bierek na szachownicy) wy-
korzysta protokół SMTP oraz POP3. Wszyst-
kie wcześniej wymienione silniki szachowe bez
problemu są obsługiwane przez ten program.
Instalacja
Podobnie jak GNU Chess, XBoard jest często
instalowany razem z systemem i nie wymaga-
na jest jego instalacja ze źródeł. Jeśli nie wiesz,
czy program jest już zainstalowany, to wydaj
polecenie: xboard i zobacz, czy pojawi się okno
z szachownicą. Jeśli okno się pojawiło, to
przejdź do miejsca, gdzie opisuję konigurację
programu. Jeśli jednak okno się nie pojawiło,
Rysunek 4. Eboard pozwala nam zagrać w kolca na dwóch szachownicach
www.lpmagazine.org
53
5700559.009.png 5700559.010.png 5700559.011.png
 
praktyka
Szachy
Eboard
Eboard w przeciwieństwie do XBoard to przede
wszystkim program, który ma ułatwić grę na
serwerach ICS. Program oczywiście daje moż-
liwość zagrania przeciw silnikom szachowym,
ale jego główne zadanie to obsługa ICS. Pro-
gram tworzy Felipe Bergo , a GUI jest pisane w
GTK+, co pozytywnie wypływa na wygląd sa-
mej aplikacji. Eboard potrai także działać jako
serwer dla innego programu eboard , co pozwala
choćby na rozgrywkę po LAN'ie . Takiej możli-
wości XBoard nam nie dawał, ponieważ tam po-
średnikiem zawsze musi być ICS.
rem. Mamy tam do wyboru: Connect to FICS
– co spowoduje, że program połączy się do dar-
mowego serwera ICS, Connect to Other Se-
rver – program poprosi o padanie adresu ser-
wera ICS oraz numeru portu, do którego ma się
podłączyć. Bardzo przydatną możliwością te-
go programu jest bezpośrednie połączenie mię-
dzy dwoma ebordami. Jeśli chcesz połączyć się
z innym programem eboard, to wybierz z menu
Peer opcje Direct Connect with Remote eboard .
Jeśli chcesz się połączyć, to na zakładce Start
a connection wpisz adres hosta oraz port i klik-
nij Connect . Jeśli jednak wolisz, aby to in-
ni się łączyli do Ciebie, to przejdź na zakład-
Wait for a connection , wpisz port, na któ-
rym program będzie nasłuchiwał i kliknij Wait .
Inne opcje w menu Peer odnoszą się, m.in. do
r-ozgrywki z silnikiem szachowym. Standardo-
wo mamy tam do wyboru GNU Chess w wersji
4, Crafty oraz Sjeng. Jeśli chcesz zagrać prze-
ciw innemu silnikowi, to wybierz z menu Ge-
neric Engine , gdzie będziesz mógł na zakładce
Engine Command wybrać, z jakim programem
chcesz się zmierzyć oraz z jakiego katalogu ma
się odbyć uruchamianie go. To bardzo ważne,
jeśli program przeszukuje określoną lokalizację
w poszukiwaniu, np. książek otwarcia, aby po-
dać odpowiedni katalog. Na zakładce Side and
Time możemy ustawić jak długo trwa posunię-
cie, jakim kolorem gramy oraz czy program ma
obmyślać ruch, gdy nasza kolej na jego wyko-
nanie. Bardzo pomocna w grze jest część, z pra-
wej strony okna programu, gdzie znajdziemy
zakładki. Zakładki sprawiają, że możemy grać
z jednego programu na paru szachownicach na
raz lub obserwować grę innych. Ważną zakład-
ką jest zakładka o tytule: Console , gdzie wy-
świetlane są informacje, które program otrzy-
W Sieci
http://www.gnu.org/software/chess/
http://www.craftychess.com/
http://www.sjeng.org/download.html
http://www.freechess.org/
http://www.unix-ag.uni-kl.de/~chess/
gicshelp/
http://www.tim-mann.org/xboard.html
http://www.softax.pl/prywatne/marcink/
szachy/art/ics_opis
Instalacja
Jeśli program nie został zainstalowany razem
z systemem, to jego źródła można pobrać z na-
stępującego adresu: http://www.bergo.eng.br/
eboard/index.php?p=2 . Po pobraniu paczki wy-
starczy ją rozpakować poleceniem: tar xvfj
eboard-1.0.4.tar.bz2 . Następnie wchodzi-
my do utworzonego katalogu i wydajemy pole-
cenie: ./conigure . Jeśli koniguracja przebie-
gła pomyślnie, to przyszedł czas na kompilacje
poleceniem: make oraz na instalacje (z konta ro-
ot ) poleceniem: make install . Program uru-
chamiamy poleceniem: eboard . Inne aplika-
cje, jakie zainstalują się razem z programem to:
eboard-addtheme oraz eboard-conig . Pierw-
sza z nich służy do dodania nowego motywu do
programu, a druga zwraca różne katalogi, gdzie
program będzie pracował.
muje od serwera i programów szachowych. Za-
raz po podłączeniu do serwera musimy zalogo-
wać się właśnie w tej zakładce. Inna zakładka,
która pojawia się po zalogowaniu to zakład-
ka Seek Table . Zakładka ta wyświetla listę gier,
które czekają na przeciwnika. Jeśli chcesz za-
grać, to wystarczy zaznaczyć wybraną grę
i kliknąć przycisk Play Selected . U dołu głów-
nego okna mamy także część, gdzie możemy
wydawać polecenia, a po kliknięciu na przycisk
z tytułem [cmd] mamy możliwość przeprowa-
dzenia najzwyklejszego czatu z innymi osoba-
mi na serwerze. Bardzo przydatne opcje znaj-
dują się w menu Windows . Jest tam m.in. przy-
cisk, który wyświetla okno ze wszystkimi gra-
mi, jakie odbywają się na serwerze, do którego
jesteśmy podłączeni (mamy także możliwość
ich obserwacji). Inny przycisk wyświetla okno
z aktualnymi rozgrywkami, jakie prowadzimy
lokalnie w programie. Dzięki temu oknu jeste-
śmy w stanie zapisać stan gry do pliku PGN
lub go załadować. Wybierając z menu Settings ,
a następnie Preferences mamy dostęp do opcji,
związanych w wyglądem aplikacji, użytych
czcionek, kolorów oraz dźwięków.
Koniguracja
Jako, że program ma nam ułatwić rozgrywkę
przez sieć na serwerach ICS, to w menu pod
przyciskiem Peer znajdziemy wszystkie nie-
zbędne polecenia, aby połączyć się z serwe-
Podsumowanie
Wszystkie opisane tu programy stanowią ide-
alną podstawę, aby bez żadnych kompleksów
zagrać bardzo dobrą partię szachów. Mam na-
dzieję, że poziom programów da każdemu
taką samą satysfakcję, jak potyczka z człowie-
kiem. Dzięki takim serwerom, jak FICS nie zaw-
sze musimy grać z komputerem. Na serwe-
rach FICS znajdziemy swoje ulubione odmiany
gry w szachy i zagramy w nie razem z przyja-
ciółmi.
O autorze
Rysunek 5. Strona darmowego serwera szachowego FICS, gdzie znajdziemy oprogramowanie oraz pomoc
związaną z serwerami ICS
Autor hobbistycznie zajmuje się Linuksem
już od wielu lat. Programista – samouk. Od
wielu lat pracuje na starych komputerach
z niezwykłymi efektami.
Kontakt z autorem: s.stepien@interia.pl
54
grudzień 2007
5700559.012.png 5700559.013.png 5700559.014.png 5700559.015.png
 
Zgłoś jeśli naruszono regulamin