O grach

Kilka dni temu dotarła do mnie informacja o wydaniu nowej wersji gry NetHack, po 12 latach przerwy. Wzięło mnie na wspominki, więc z tej okazji wpis o grach. Po pierwsze Nethack czyli gra typu roguelike. Pamiętam zakład z M., który z nas pierwszy przekroczy barierę miliona punktów. Mam save z wizardem, który ma ponad milion punktów (sprawdziliśmy komisyjnie wychodząc z gry). Pewnie już nie włączę, bo wyszedłem z wprawy, więc zapewne zginąłby po kilku-kilkunastu ruchach. Tak czy inaczej „rogaliki” były fajne. Oczywiście bez save scummingu! A najważniejszy był właśnie NetHack.

Kolejna ważna gra, to CounterStrike. W wersji 1.5. I garażowe (i nie tylko) LAN party. W przeciwieństwie do innych FPS był dość „wolny” i dość taktyczny. Bardziej drużynowy, mniej oparty na refleksie. Trochę mi zamiłowanie do tego typu rozrywki zostało, o czym dalej. No i efektem ubocznym gry w CSa była nauka Perla – mieliśmy autorski system generowania statystyk, który momentami wyprzedzał to, co oferowały dostępne gotowce (ale tylko momentami, poza tym, był dostosowany do naszych „klanów”). Dziś pewnie przestraszyłbym się, gdybym zajrzał w kod, ale było to pierwsze praktyczne użycie Perla. I działało całkiem fajnie. IIRC z braku „prawdziwego” serwera WWW dystrybucja HTMLi odbywała się mailowo w plikach zip.

A dziś? Pogrywam czasami, choć coraz rzadziej, w drobiazgi z Humble Bundle. Godny odnotowania tytuł: Faster Than Light, który jest określany jako rougelike-like (IMO niezupełnie słusznie, choć jakieś echa w klimacie są). Poza sympatią do roguelikeów zostały mi nadal związki gier z programowaniem, np. bardzo spodobał mi się pomysł CodeCombat, czyli gry i jednoczesnej nauki programowania.

Numer jeden i chyba jedyna gra, w którą obecnie gram aktywnie, to World of Tanks. Trochę rozwinięcie CSa – jest pod wieloma względami podobny – i „wolny”, i taktyczny, i drużynowy. Choć niezupełnie FPS. Jest też parę trybów rozgrywki. Ostatnio odkryłem nowe warstwy: po pierwsze gra w klanie (amatorski, for fun, średnia wieku pewnie 30+), po drugie gra z ludźmi, którzy grają… nieźle. Nie jest to poziom ESL, ale jak się zobaczy w praktyce dobre rozstawienie, taktykę i wykonanie, to gra nabiera zupełnie nowego wymiaru. Polecam.

Ostatnią ciekawą grą, o której się dowiedziałem jest Minecraft Pi, czyli serwer Minecrafta przygotowany do uruchomienia na Raspberry Pi (i zapewne podobnych komputerach z ARM). Kolejny związek z programowaniem – ma uczyć programowania w języku Python. Niezupełnie tylko rozumiem, jak jest z licencjonowaniem i klientem – odwiedziłem sklep z grami i jest tam klient Minecrafta, ale czy jest on wymagany, żeby grać w klony typu Minecraft Pi? Trochę dziwi mnie brak alternatywnych, otwartych klientów, szczególnie na Linuksa. Chyba, że źle szukałem (przyznaję, pobieżnie)? W każdym razie jest plan, żeby także tą grą się pobawić, tylko to raczej przy jakimś dłuższym urlopie…

Tyle o grach komputerowych. O niekomputerowych innym razem.

Gra Ingress – wrażenia

W Ingress grałem od początku października 2014 do początku stycznia 2015, czyli bity kwartał. Intensywność różna, choć najwyżej umiarkowana. Żadnych wielkich zrywów, maratonów itp. Ostatecznie osiągnąłem poziom 7 (i pół) z 16 aktualnie dostępnych w grze. Kiedyś było 8 poziomów. Wydaje mi się, że tyle wystarczy, by wyrobić sobie zdanie o produkcie.

Logo Ingress

Źródło: https://pl.wikipedia.org/wiki/Plik:Ingress_Logo_vector.svg

Czym jest Ingress?

Ingress – gra z gatunku MMO w systemie rzeczywistości rozszerzonej – tako rzecze Wikipedia w artykule nt. Ingress. I zasadniczo ma rację, bo nic dodać, nic ująć, ale własnymi słowami: gracze dzielą się na dwie drużyny (frakcje; Resistance i Enlightened) i działają za pośrednictwem urządzeń wyposażonych w GPS i dostęp do internetu (czytaj: smartfon) w wirtualnym świecie nałożonym na rzeczywisty. Działania graczy sprowadzają się do interakcji przy użyciu wirtualnego sprzętu z wirtualnymi portalami, umieszczonymi na interesujących bądź przynajmniej charakterystycznych elementach rzeczywistych (tablica, pomnik, most, grafitti, rzeźba itp.).

Gra jest tak skonstruowana, że nie ma konkretnego celu ani zakończenia. Ogólnie chodzi o to, żeby nasza frakcja zdobywała (w danym okresie/etapie) więcej punktów, niż frakcja przeciwna. Gracz poruszając się w świecie (rzeczywistym) zdobywa punkty akcji, które może wykorzystać do rozbudowy portali, linków (połączenia portali) lub pól (obszary ograniczone linkami) swojej frakcji lub niszczenia portali (linków, pól) frakcji przeciwnej. Jak widać, by móc działać wystarczy połazić po mieście, a przy odpowiednim balansie gra może trwać w nieskończoność. Sprytne.

Dodatkowo dochodzi element gamifikacji – poziomy, odznaki, osiągnięcia, statystyki, w tym także dotyczących działań w świecie realnym (np. ilość przebytych km w danym okresie czasu). Trzeba przyznać, że całość gry jest dobrze przemyślana i wciąga.

Jak grać w Ingress?

Kilka szybkich i ważnych porad dla początkujących, których nie znałem, gdy zaczynałem grać:

  • odległość od portalu w momencie stawiania rezonatora ma znaczenie – im dalej, tym lepiej, bo trudniej zniszczyć taki portal,
  • długość tworzonych linków nie ma znaczenia dla punktacji,
  • wielkość tworzonych nie ma znaczenia dla punktacji.

Więcej porad znajdziesz na stronie Ingress Resistance Poznań.

Jak można to wykorzystać?

Poza najbardziej oczywistą rzeczą, czyli poligonem dla autorów aplikacji opartych na GPS (poprawa algorytmów, zarówno lokalizacji, jak i działania programu typu oszczędzanie baterii, poprawa map), czy badaniem poruszania się/zagęszczenia ludzi w danym rejonie, widzę dla Ingress parę innych zastosowań.

Przede wszystkim, skłonienie użytkownika do podawania dokładnej lokalizacji otwiera drogę do serwowania reklam. Dokładnych reklam, dotyczących sklepów/usług w zasięgu wzroku. Jeśli połączyć to z wiedzą, czego szukał użytkownik ostatnio w sieci (apteka, szewc, zegarmistrz, karta SD, fryzjer), to robi się interesująco. A teraz dodajmy do tego wiedzę, ile czasu i w jaki sposób poruszał się użytkownik oraz np. stan baterii i można zaproponować np. jedzenie albo picie w miejscu oferującym możliwość doładowania telefonu (OTOH dziwię się, że tak się fast foody itp. nie reklamują…). Przypuszczam, że tego typu reklamy miałyby szanse być bardzo skuteczne.

Kolejna możliwość, to dobrze znane z różnych gier promocje czy kupne bonusy i power-upy. Ale nie w formie płacenia prawdziwymi pieniędzmi za czysto wirtualne przedmioty, tylko skrzyżowania z reklamą. Co prawda chyba jeszcze nie jesteśmy systemowo przygotowani na coś takiego, ale wyobrażam to sobie w sposób podobny do powyższego – kupujesz pizzę w określonym lokalu, wklepujesz kod z paragonu (ew. korzystasz z wbudowanych płatności…) i dostajesz przedmioty w grze.

Czemu przestałem grać w Ingress?

Nie ukrywajmy, choć niby można grać „przy okazji”, to zabawa w Ingress zajmuje trochę czasu. Nawet, jeśli gra się wyłącznie przy okazji, w drodze, to jednak tu i tam się przystanie, tu zwolni, parę minut z życiorysu znika. Kolejna sprawa to czas pracy urządzenia na baterii. Gra po prostu wysysa energię z akumulatorów i oznaczała u mnie dodatkowe ładowanie w ciągu dnia. Transfer też znika dość szybko – mi na umiarkowane granie przy okazji schodziło ok. 1 GB danych miesięcznie.

Gwoździem do trumny było jednak coś, co pojawiło się przy którejś aktualizacji: wymuszona zgoda na otrzymywanie powiadomień (zamieszczona poniżej). Czyżby przymiarka do opisanego wyżej sposobu wykorzystania? Nie wiem. Stwierdziłem, że enough is enough, przemyślałem za i przeciw i po prostu odinstalowałem grę.

Ingress licencja

Źródło: screenshot z aplikacji Ingress.

PS Wpis przeleżał blisko pół roku w szkicach, nie wszystkie informacje muszą być więc aktualne. Zdaję sobie sprawę, że grałem dość nietypowo, bo zupełnie bez aspektu socjalnego. Podobno ludzie spotykają się IRL w celu grania. Trochę zazdroszczę ilości wolnego czasu, ale fakt, Ingress może być fajnym pretekstem do wycieczek, spacerów, pozwala zwrócić uwagę na pewne aspekty rzeczywistości, które normalnie umykają itp. Z drugiej strony, jest to trochę chodzenie z nosem wlepionym w wyświetlacz, zamiast rozglądać się wokół.

Mumble, czyli alternatywa dla TeamSpeak

Powody dla powstania wpisu są dwa. Po pierwsze, pogrywam sobie czasem w World of Tanks, ostatnimi czasy niekoniecznie sam, a częściej w plutonie. Oczywiście można grać przy pomocy porozumiewania się wbudowanym chatem, czyli pisząc i używając wbudowanych komend i tak długi czas z K. graliśmy, ale przyszedł M. i namówił nas na zorganizowanie mikrofonów i słuchawek. I faktycznie, w przypadku komunikacji głosowej fun jest nieporównywalnie większy.

Korzystaliśmy z wbudowanego w grę mechanizmu, który wymaga wciśnięcia klawisza, jeśli chce się coś powiedzieć. Wykonalne, ale palców jest ograniczona ilość i w czasie gry mają lepsze zajęcia, niż obsługa głosu. Zdarza się, że się zapomni o wciśnięciu klawisza czy po prostu nie ma czasu go wcisnąć. I komunikat ginie.

Trochę zaczęliśmy myśleć o alternatywach. Ostatecznie gracze z jakiegoś powodu korzystają z TeamSpeaka… W klanie K. jako system komunikacji głosowej obowiązywał nie TeamSpeak, ale Mumble, którego nazwa zupełnie nic mi nie mówiła.

Logo Mumble

Źródło: https://en.wikipedia.org/wiki/File:Icons_mumble.svg

Rzuciłem okiem i okazało się, że jest natywna wersja linuksowa, a software to open source. I tu drugi powód powstania wpisu: TeamSpeak jest dostępny (zarówno klient, jak i serwer) na Linuksa, ale nie jest open source i dostarczana jest binarka. Tylko dla architektur i386 oraz amd64 w Debianie. Niedawno na kanale IRC ktoś pytał o tego typu chat grupowy z możliwością uruchomienia serwera na procesorze ARM. Mumble jako open source oczywiście jest dostępne także na architektury armel oraz armhf. Poza tym, lubię testować alternatywy.

Zainstalowałem serwer (można ograniczyć dostęp hasłem, domyślna konfiguracja jest prosta i wystarczająca do uruchomienia…), choć można skorzystać z serwerów publicznych. W konfiguracji serwera można też zgłosić swój serwer do katalogu publicznych.

Instalacja klienta jest równie prosta, jedyne co trzeba zrobić, to wyskalować dźwięk przy pomocy wizarda. Klient ma trzy metody włączania nadawania: non-stop (mikrofon cały czas „zbiera” – średnio wygodne dla reszty uczestników), znana z WoT aktywacja klawiszem oraz tryb najlepszy, czyli aktywacja głosem. I po to jest kalibracja, żeby przy odpowiednim natężeniu dźwięku (czyli gdy coś mówimy) klient zaczynał transmisję, ale nie zbierał cały czas tła.

Najważniejsze cechy Mumble:

  • szyfrowana komunikacja (domyślnie)
  • niskie opóźnienie
  • open source
  • wieloplatformowość (Linux, Windows, OS X)
  • niskie wymagania zasobów (serwer; jest nawet wersja serwera dla OpenWrt)
  • usuwanie echa
  • pozycjonowane audio (słychać z którego kierunku mówi osoba)
  • in-game overlay (jest wyświetlane, kto mówi)

Z ostatnich trzech nie korzystam, bo – kolejno – gramy na słuchawkach, nie ma potrzeby/nie zauważyłem, zupełnie nie mam potrzeby. Jeśli chodzi o jakość dźwięku i opóźnienie jestem bardzo zadowolony (póki co testowane na dwóch osobach na kanale, większą ilością się nie zebraliśmy). Jakość dźwięku lepsza zarówno niż w WoT, jak i na Skype (skoro VoIP porównujemy). Nie wiem na ile w tym zasługi łącz, a na ile klienta, ale jeśli tylko wszyscy w plutonie mają zainstalowanego klienta Mumble, to korzystamy z tego rozwiązania. Polecam.

Więcej o Mumble można poczytać na angielskiej stronie Wikipedii. Ale nie ma co czytać, trzeba instalować. 😉