Mahjong przez Internet 1 – xmj

xmj

xmj w trakcie gry

W tym wpisie omówię program do grania w chińską tradycyjną odmianę Mahjonga. Program jest w języku angielskim.

Jak słusznie zauważono na stronie PLM, trudno wyszukać w internecie aplikacje do gry w Mahjonga. Trudno, ponieważ większość wyników wyszukiwania to programy do jednoosobowego mahjonga, mniej jest tych do czteroosobowego. Część z czteroosobowych jest po japońsku, co może nie przeszkadza uczącym się tego języka. Mnie niestety przeszkadza, a jak na razie „nie chce mi się przebijać przez krzaki”. 😉

Zajmę się programem Mah-Jong for Linux, Unix, MacOS and Windows. Nazwa wydaje się trochę długa i nieporęczna, dlatego będę używał krótszej nazwy „xmj”, ponieważ właśnie taką nazwę wyświetla program na pasku tytułu. 🙂

Będzie to opis typu „krok po kroku”, tak, aby nawet osoby nieznające dobrze angielskiego, nauczyły się używać xmj. Program jest na tyle prosty w obsłudze, że każda osoba znająca trochę  język angielski i zasady Mahjonga, nie musi dalej czytać – wystarczy, że zainstaluje i uruchomi program 🙂

Możliwości programu xmj

Program służy do gry na zasadach Mahjonga chińskiego tradycyjnego, zaczerpnięte z książki A. D. Millington, „The Complete Book of Mah-Jongg”, Weidenfield & Nicolson (1993), ISBN 0 297 81340 4. Wydaje mi się, że są to dokładnie te same zasady, jakie mamy opisane na naszej stronie. Przynajmniej nie wyłapałem jeszcze żadnych różnic. Szczegółowe zasady i możliwe układy specjalne omówię na końcu.

Program umożliwia granie „z komputerem” i granie przez Internet (także przez sieć lokalną). Można uzupełniać graczy sieciowych (ludzkich) graczami komputerowymi, tzn. gdy mamy trzy osoby do gry, to program może grać jako czwarta. Nie ma więc kłopotu z „czwartym do mahjonga” ;P

Instalacja

Strona programu to http://mahjong.julianbradfield.org/. Dla systemu Windows najlepiej pobrać najnowszą paczkę z gtk2. Po rozpakowaniu i wejściu do folderu xmj uruchamiamy program plikiem xmj.exe.

Użytkownicy Ubuntu mogą zainstalować program przez Centrum Oprogramowania Ubuntu (jest w domyślnym repozytorium).

Użytkownicy innych systemów muszą sobie sami pobrać co potrzebują ze strony projektu.

Uruchomienie

 

xmj po uruchomieniu

Program po uruchomieniu

Na początek spróbujemy zagrać sami z komputerem. W tym celu z menu Game wybieramy New local game…

 

NewGame

Przy pierwszym uruchomieniu możemy nie zmieniać ustawień. Wystarczy kliknać Start Game

Klikamy Start Game.

ready?

Gotowy do gry? Gotowy!

Klikamy, że jesteśmy gotowi: Ready.

deklarowanie kwiatków

Ujawnianie kamieni bonusowych, tzn. kwiatów i pór roku.

W tym momencie wszyscy mają rozdane swoje kamienie. Widzimy, że Wschód (patrz okrągły znacznik wchodu) jest po naszej lewej stronie, czyli jesteśmy Południem. Ręka domyślnie jest posortowana. Rosnąco Bambusy, Znaki i Kółka, potem Wiatry i Smoki, całkiem po prawej kamienie bonusowe, powyżej mamy Kwiat (rozpoznaję po czerwonej arabskiej jedynce). Kamienie bonusowe nie biorę udziału w grze (dają tylko punkty dodatkowe) i trzeba je wymienić na zwykły kamień, robimy to klikając na przycisk Declare (deklarujemy). Gdy już ujawniliśmy wszystkie bonusy to klikamy Finish. Mamy jeszcze opcję deklarowania Ukrytego Konga, możemy to zrobić, gdy mamy w ręce 4 identyczne kamienie. Należy wtedy zaznaczyć pierwszy z nich i kliknąć przycisk Kong.

Branie zrzutek

Pierwsza zrzutka

Pierwsza zrzutka

W powyższej sytuacji jesteśmy Zachodem. Zgodnie z zasadami, pierwszą osobą wyrzucającą kamień jest Wschód, właśnie widzimy jak wyrzucił 7 bambus. Widzimy okno dialogowe z następującymi przyciskami:

  • No claim – nie biorę
  • Chow – biorę do Chow, czyli sekwencji
  • Pung – biorę do Punga, czyli trzech takich samych – trzeba mieć już parę w ręce
  • Kong – biorę do Konga, czyli czterech – trzeba mieć już 3 takie same kamienie w ręce
  • Mah Jong – czyli Mahjong, tzn. wygrywam, a wyrzucony kamień jest ostatnim jaki potrzebuję.

Widzimy też na żółtym tle, że gracz po prawej chce zagrać zrzutkę do Punga, moglibyśmy go przebić tylko gdyby nam ten kamień pasował do Mahjonga.

Program nic nie podpowiada w graniu, nie pokazuje, kiedy możemy złożyć układ, nie mówi, co zabrać, jedyne co pomaga to, że nie pozwala nam popełnić błędu, tzn. gdy klikniemy np. na początku Mah Jong a wcale go nie mamy, to jedynie wyskoczy komunikat, że nie możemy tego zrobić. Podobnie z klikaniem w inne nieistniejące układy. Nikt nam nie naliczy kary, nie zrobi martwej ręki. Można to traktować jak dobry sposób nauki gry metodą prób i błędów. 🙂

Odrzucanie kamienia

Odrzucenie kamienia

Odrzucanie kamienia

Gdy jest nasza kolej i „dobraliśmy z muru”, widzimy który kamień dobraliśmy – jest „wgłębiony” (powyżej jest to 3 kółka). Możemy od razu odrzucić ten sam kamień klikając Discard, ale możemy też wybrać wcześniej inny kamień (klikając go). Najprościej jest odrzucać klikając podwójnie na zbędny kamień (dwuklik).

Mamy też inne opcje:

  • &Calling – prawdopodobnie jest to zgłoszenie polowania (chyba jest to dostępne tylko w pierwszej kolejce, jak ktoś mi to wytłumaczy to będę wdzięczny ;))
  • Kong – chcemy zgłosić Ukrytego Konga – tzn. mamy 4 takie same kamienie.
  • Mah Jong! – wygraliśmy, ostatnio dobrany kamień daje nam zwycięstwo 🙂

Wygrana

Jak już było widać przy braniu zrzutek, w każdym momencie możemy zgłosić wygraną klikając przycisk Mah Jong.

Liczenie punktów

Gdy ktoś zgłosi Mahjonga, rozpoczyna się liczenie punktów.

odrzucenie kamienia

Koniec gry, liczenie punktów – ujawnianie układów

Program liczy punkty automatycznie. Jedyne co trzeba zrobić, to wskazać, jakie mamy ukryte układy na końcu gry, tzn. co mamy w ręce. Robimy to, klikając kamień pierwszy z lewej danego układu, i klikamy przycisk, co to jest za układ:

  • Eyes – para
  • Chow – sekwencja (3 kolejne kamienie)
  • Pung – 3 identyczne kamienie
  • Special Hand – układ specjalny

Jeżeli nie my złożyliśmy Mahjonga, a już zaznaczymy i zatwierdzimy wszystkie posiadane układy (albo gdy nie mamy ich wcale), klikamy Finish, czyli koniec.

Przypominam, że w tych zasadach liczy się punkty wszystkich graczy i standardowo następują rozliczenia między wszystkimi graczami (w opcjach można to zmienić).

Gra przez Internet (sieć)

Program działa na zasadzie Klient-Serwer, tzn. że jeden z graczy (nazwijmy go gospodarzem), uruchamia u siebie serwer (jest to funkcja naszego programu), a pozostali podłączają się do tego serwera – dlatego kolejność „zgłoszeń” ma znaczenie. Najpierw uruchamiamy serwer, potem mogą się podłączać inni.

Gospodarz powinien posiadać komputer z zewnętrznym adresem IP. Większość dostawców internetu w Polsce takie adresy przydziela. Jeżeli adres jest dynamicznie nadawany (zmienny), to nie szkodzi, wystarczy, że gospodarz sprawdzi jaki akurat ma adres na jednej ze stron oferujących taką możliwość.

W razie korzystania w domu z routera, trzeba w nim ustawić przekierowanie portów. Nie będę tego tutaj opisywał, bo to obszerny temat, ze względu na różnorodność dostępnych routerów. Ogólnie mówiąc należy przekierować dany port (standardowo 5000) na komputer lokalny, na którym jest uruchomimy serwer (gospodarz gry). Dokładne instrukcje ustawień przekierowania dla danego routera najłatwiej znaleźć w Google lub instrukcji routera.

Poniżej podaję kolejne kroki ustawiania gry przez Internet:

Uruchamianie serwera

Gospodarz wybiera z menu Game pozycję New local game…

 

 

 

 

 

NewGame

 

Wystarczy wpisać swoje imię, numer portu najprościej zostawić taki, jak domyślny (5000). Odznaczamy tyle pozycji Start computer player,  ilu innych graczy ma się z nami połączyć. Następnie klikamy Start Game. Teraz gospodarz widzi komunikat Waiting for game to (re)start, który oznacza, że trzeba czekać na pozostałych graczy, aż się połączą.

Łączenie z serwerem – gospodarzem

Teraz pozostali gracze mogą połączyć się z serwerem. Z menu Game wybierają Join server…

 

 

 

 

 

Łączenie z serwerem

 

Wypełniamy odpowiednie pola:

  • Host – wpisujemy IP gospodarza, (które nam podał, po sprawdzeniu np. tutaj). [Można też wpisać adres internetowy inny niż IP, to zależy od gospodarza, czy jakiś adres kieruje na niego. Patrz: DDNS]
  • Port – port, jaki ma gospodarz nasłuchując połączeń, standardowo: 5000,
  • Player ID – liczba, numer gracza, musi być inna niż innych graczy,
  • Name – nazwa gracza

Klikamy Connect, czyli połącz.

Gdy wszyscy gracze się połączą, musza zatwierdzić, że są gotowi do gry (Ready). Później gra wygląda tak samo jak gra lokalna (z komputerem).

W czasie gry sieciowej możemy korzystać z prostego Czatu z innymi graczami. Okno czatu włączamy w menu Show -> Messages.

Warto wiedzieć

W czasie gry możemy wyświetlić okno informacyjne (jak poniższe), jest to pozycja Game Info w menu Show.

Informacje o grze

Informacje o grze

Opcje

Program umożliwia modyfikowanie wielu opcji, takich jak, umożliwienie wygranej układem „siedem par”, zmianę punków za kamienie bonusowe, wyłączenie kamieni bonusowych, zmiany sposobu wyświetlania, pokazanie muru, martwy mur – lub go brak, wyłączenie sortowania ręki, i dużo innych opcji, które opisał Mike w innym wpisie.

Linki zewnętrzne

 

 

Skomentuj Michał Anuluj pisanie odpowiedzi

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *