NetHack -NetHack

NetHack
Nethack wypuszcza plik djinni.png
Uwolniony dżinni spełnia życzenie gracza
Deweloper(zy) Zespół deweloperów NetHack
Pierwsze wydanie 1.3d / 28 lipca 1987 ; 34 lata temu ( 1987-07-28 )
Wersja stabilna
3.6.6 / 8 marca 2020 r .; 19 miesięcy temu ( 2020-03-08 )
Magazyn
System operacyjny Windows , Linux , Mac OS X , Windows CE , OS/2 , *BSD , System V , Solaris , HP-UX , BeOS , VMS , HaikuOS
Rodzaj Roguelike
Licencja NetHack General Public License (pochodna ogólnej licencji publicznej BISON, prekursor GPL )
Strona internetowa www .nethack .org Edytuj to na Wikidanych

NetHack tojednoosobowa gra wideo typu roguelike typu open source , wydana po raz pierwszy w 1987 roku i utrzymywana przez NetHack DevTeam. Gra jest rozwidleniem programowym gry Hack z 1982 roku, inspirowanej grą Rogue z 1980 roku. Gracz wciela się w jedną z kilku predefiniowanych klas postaci, aby schodzić przez wiele poziomów lochów, walcząc z potworami i zbierając skarby, aby odzyskać „Amulet Yendor” na najniższym piętrze, a następnie uciec. Jako tradycyjny roguelike, NetHack oferuje generowane proceduralnie lochy i skarby,walkę typu hack and slash , rozgrywkę opartą na kafelkach (domyślnie z grafiką ASCII, ale z opcjonalnymi zestawami graficznymi) oraz permadeath , zmuszając gracza do ponownego uruchomienia, jeśli jego postać zginie. Podczas gdy Rogue , Hack i inni wcześniejsi roguelike'i pozostali wierni wysokiej scenerii fantasy , NetHack z czasemwprowadziłelementyhumorystyczne i anachroniczne , w tym popularne odniesienia kulturowe do dzieł takich jak Świat Dysku i Poszukiwacze Zaginionej Arki .

Jest identyfikowany jako jeden z „głównych rogalików” Johna Harrisa. Porównując go z Rogue , Engadget ' s Justin Olivetti napisał, że zajęło jej aspekt eksploracji i «stało się znacznie bogatsza z encyklopedii obiektów, większej słownictwa, bogactwo popkultury wspomina i postawy układanka za». W 2000 roku Salon opisał ją jako „jedną z najlepszych gier, jakie ma do zaoferowania świat komputerów”.

Rozgrywka

Przed rozpoczęciem gry, gracze wybierają swojego bohatera wyścigowego , rolę , seks i wyrównanie , lub pozwolić gra przypisać atrybuty losowo. Istnieją tradycyjne role fantasy, takie jak rycerz , czarodziej , łotr i kapłan ; ale są też nietypowe role, w tym archeologa , turysty i jaskiniowca . Postać gracza jest rola i wyrównanie decydują o bóstwo postać służy w grze «jak inne potwory reagować ku sobie», a także umiejętności i cechy charakteru.

Po stworzeniu postaci gracza wprowadzany jest cel główny. Aby wygrać grę, gracz musi odzyskać Amulet Yendor, znajdujący się na najniższym poziomie lochu i ofiarować go swojemu bóstwu. Pomyślne wykonanie tego zadania nagradza gracza darem nieśmiertelności , a o graczu mówi się, że "wznosi się", osiągając status półboga . Na drodze do amuletu należy wykonać szereg zadań podrzędnych, w tym jedno zadanie specyficzne dla klasy.

Postacią gracza, o ile nie zdecydują się być, towarzyszy zwierzę domowe, zazwyczaj kotek lub piesek , chociaż rycerze zaczynają od osiodłanego kucyka . Zwierzęta wyrastają z walki i można je zmieniać na różne sposoby. Większość pozostałych potworów można również oswoić za pomocą magii lub jedzenia.

Poziomy lochów

Lochy NetHack obejmują około pięćdziesiąt podstawowych poziomów, z których większość jest generowana proceduralnie, gdy postać gracza wchodzi na nie po raz pierwszy. Typowy poziom zawiera drogę „w górę” i „w dół” do innych poziomów. Mogą to być schody, drabiny, zapadnie itp. Poziomy zawierają również kilka „pokojów” połączonych korytarzami. Pokoje te są losowo generowanymi prostokątami (w przeciwieństwie do liniowych korytarzy) i mogą zawierać elementy, takie jak ołtarze, sklepy, fontanny, pułapki, trony, baseny z wodą i umywalki w oparciu o losowo generowane elementy pomieszczenia. Niektóre konkretne poziomy są zgodne z jednym z wielu stałych projektów lub zawierają stałe elementy. Późniejsze wersje gry dodały specjalne gałęzie poziomów lochów. Są to opcjonalne trasy, które mogą zawierać bardziej wymagające potwory, ale mogą nagradzać bardziej pożądanymi skarbami, aby ukończyć główny loch. Poziomy, raz wygenerowane, pozostały trwałe, w przeciwieństwie do gier, w których generowano poziomy w stylu Morii .

Przedmioty i narzędzia

Ekwipunek gracza

NetHack zawiera różnorodne przedmioty: broń (do walki wręcz lub dystansową ), zbroję chroniącą gracza, zwoje i księgi zaklęć do przeczytania, mikstury do wypicia , różdżki, pierścienie, amulety oraz zestaw narzędzi , takich jak klucze i lampy.

Identyfikacja przedmiotów przez NetHack jest prawie identyczna jak w przypadku Rogue'a . Na przykład nowo odkryta mikstura może być określana jako „różowa mikstura” bez żadnych innych wskazówek co do jej tożsamości. Gracze mogą wykonywać różne akcje i sztuczki, aby wydedukować lub przynajmniej zawęzić tożsamość mikstury. Najbardziej oczywistą jest nieco ryzykowna taktyka po prostu picia. Wszystkie przedmioty określonego typu będą miały ten sam opis. Na przykład, wszystkie „zwoje zaklętej broni” mogą być oznaczone jako „TEMOV”, a po ich zidentyfikowaniu wszystkie „zwoje zaklętej broni” znalezione później będą oznaczone jednoznacznie jako takie. Rozpoczęcie nowej gry spowoduje ponowne zamieszanie opisów przedmiotów, więc „srebrny pierścień”, który jest „pierścieniem lewitacji” w jednej grze, może być „pierścieniem głodu” w innej.

Błogosławieństwa i przekleństwa

Podobnie jak w wielu innych grach typu roguelike, wszystkie przedmioty w NetHack są albo „ błogosławione ”, „nieprzeklęte” lub „ przeklęte ”. Większość przedmiotów jest uznana za nie przeklętą, ale status przedmiotu błogosławiony lub przeklęty jest nieznany, dopóki nie zostanie zidentyfikowany lub wykryty innymi sposobami.

Ogólnie rzecz biorąc, pobłogosławiony przedmiot będzie silniejszy niż przedmiot bez klątwy, a przeklęty będzie słabszy, z tą dodatkową wadą, że po założeniu przez gracza, nie można go łatwo zdjąć. Tam, gdzie przedmiot wywierałby wpływ na postać, klątwa ogólnie spowoduje, że efekt będzie szkodliwy lub zwiększy ilość wyrządzonych krzywd. Są jednak bardzo konkretne wyjątki. Na przykład wypicie przeklętej „mikstury wzmocnienia poziomu” sprawi, że postać dosłownie wzniesie się przez sufit na wyższy poziom, zamiast zdobywać poziom doświadczenia .

Śmierć postaci

Podobnie jak w innych grach typu roguelike, NetHack oferuje permadeath : nie można wskrzesić postaci, które utraciły ważność.

Chociaż NetHack może zostać ukończony przez nowych lub średniozaawansowanych graczy bez żadnych sztucznych ograniczeń, doświadczeni gracze mogą próbować "zachować się" dla dodatkowego wyzwania. Są to dobrowolne ograniczenia dotyczące podejmowanych działań, takich jak niestosowanie życzeń, przestrzeganie diety wegetariańskiej lub wegańskiej , a nawet nie zabijanie potworów. Podczas gdy zachowania są zazwyczaj śledzone przez grę i są wyświetlane w momencie śmierci lub wstąpienia, w społeczności praktykowane są nieoficjalne zachowania.

Kiedy gracz umiera, przyczyna śmierci i wynik są tworzone i dodawane do listy, na której postać gracza jest oceniana w stosunku do innych poprzednich postaci. Monit „Czy chcesz, aby Twój dobytek został zidentyfikowany?” jest przyznawany domyślnie na końcu każdej gry, dzięki czemu gracz może poznać nieznane właściwości przedmiotów w ekwipunku po śmierci. Mogą być również wyświetlane atrybuty gracza (takie jak odporności, szczęście i inne), zachowanie (zazwyczaj wyzwania stawiane przez samego siebie, takie jak granie ateistą lub wegetarianinem) oraz zestawienie zabitych stworzeń.

Gra sporadycznie zapisuje poziom, na którym zginęła postać, a następnie integruje ten poziom z późniejszą grą. Odbywa się to za pomocą „plików kości”, które są zapisywane na komputerze, na którym znajduje się gra. Gracz korzystający z publicznie dostępnej kopii gry może zatem napotkać szczątki i rzeczy wielu innych graczy, chociaż wiele z tych rzeczy mogło zostać przeklętych.

Ze względu na liczne sposoby, w jakie postać gracza może umrzeć w wyniku kombinacji własnych działań, a także reakcji z systemów interakcji w grze, gracze często określają przedwczesną śmierć jako „Yet Another Stupid Death” (YASD). Takie zgony są uważane za część nauki gry w NetHack, aby uniknąć sytuacji, w których ta sama śmierć może się powtórzyć.

NetHack pozwala graczom na zapisanie gry, dzięki czemu nie trzeba ukończyć gry w jednej sesji, ale po otwarciu nowej gry poprzedni plik zapisu jest następnie czyszczony, aby wymusić opcję trwałej śmierci. Jedną z opcji, z której korzystają niektórzy gracze, jest wykonanie kopii zapasowej pliku zapisu gry przed rozpoczęciem gry, a jeśli ich postać zginie, przywrócenie ze skopiowanej wersji, praktyka znana jako „zapisywanie szumów”. Dodatkowo gracze mogą również manipulować „plikami kości” w sposób niezamierzony przez twórców. Chociaż pomagają one graczowi w nauce gry i omijaniu granic wiecznej śmierci, obie są uważane za formy oszukiwania w grze.

Kultura wokół spoilerów

NetHack opiera się w dużej mierze na odkrywaniu sekretów i sztuczek podczas rozgrywki. Poznanie ich może zająć lata, a nawet doświadczeni gracze rutynowo odkrywają nowe. Wiele stron fanowskich i forów dyskusyjnych NetHack oferuje listy sekretów gier znanych jako „spoilery”.

Berło

NetHack został pierwotnie stworzony tylko z prostym tekstowym interfejsem użytkownika ASCII , chociaż opcja użycia czegoś bardziej skomplikowanego została dodana później w jego rozwoju. Elementy interfejsu, takie jak środowisko, jednostki i obiekty, są reprezentowane przez układy glifów ASCII lub Extended ASCII , tryb " Grafika DEC " lub " Grafika IBM ". Oprócz otoczenia interfejs wyświetla również informacje o charakterze i sytuacji.

Szczegółowy przykład:

You see here a silver ring.
                                            ------------
                                          ##....._.....|
                                            |...........#          ------
                                           #...........|           |....|
                       ---------------   ###------------           |...(|
                       |..%...........|##########               ###-@...|
                       |...%...........###    #                 ## |....|
                       +.......<......|       ###              ### |..!.|
                       ---------------          #              #   ------
                                                ###          ###
                                                  #          #
                                               ---.-----   ###
                                               |.......|   #
                                               |........####
                                               |.......|
                                               |.......|
                                               ---------
  Hacker the Conjurer            St:11 Dx:13 Co:12 In:11 Wi:18 Ch:11  Neutral
  Dlvl:3  $:120 HP:39(41) Pw:36(36) AC:6  Exp:5 T:1073

Gracz (znak „@”, w tym przypadku czarodziej) wszedł na poziom schodami (znak „<”) i zabił kilka potworów, pozostawiając za sobą ich ciała (znaki „%”). Podczas eksploracji gracz odkrył trzy pokoje połączone korytarzami (znaki „#”): jeden z ołtarzem (znak „_”), drugi pusty i ostatni (w którym aktualnie znajduje się gracz) zawierający miksturę ( znak '!') i skrzynię (znak '('). Gracz właśnie przeniósł się na kwadrat ze srebrnym pierścieniem. Części poziomu są wciąż niezbadane (prawdopodobnie dostępne przez drzwi na zachód (znak '+' znak)), a gracz musi jeszcze znaleźć na dole (znak '>') do następnego poziomu.

Oprócz oryginalnego interfejsu termcap pokazanego powyżej, istnieją inne interfejsy, które zastępują standardowe reprezentacje ekranowe obrazami dwuwymiarowymi lub kafelkami , zwanymi zbiorczo „trybem kafelków”. Tego rodzaju interfejsy graficzne zostały z powodzeniem zaimplementowane na Amidze , X Window System , GUI Microsoft Windows , zestawie narzędzi Qt oraz bibliotekach GNOME .

Istnieją również ulepszone opcje graficzne, takie jak perspektywa izometryczna w Falcon's Eye i Vulture's Eye lub trójwymiarowy rendering oferowany przez noegnud. Vulture's Eye to rozwidlenie nieistniejącego już projektu Falcon's Eye. Vulture's Eye dodaje dodatkową grafikę, dźwięki, poprawki błędów i ulepszenia wydajności i jest aktywnie rozwijany w otwartym środowisku współpracy.

Historia i rozwój

Główne wydania NetHack
1987 v1.3d (Pierwsze publiczne wydanie)
v2.2a
1988
1989 v3.0.0
1990
1991
1992
1993 v3.1.0
1994
1995
1996 v3.2.0
1997
1998
1999 v3.3.0
2000
2001
2002 v3.4.0
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015 v3.6.0
2016
2017
2018
2019
2020

NetHack jest pochodną oprogramowania Hack , który sam został zainspirowany przez Rogue . Hack został stworzony przez uczniów Jaya Fenlasona, Kenny'ego Woodlanda, Mike'a Thome'a ​​i Jonathana Payne'a z Lincoln-Sudbury Regional High School w ramach zajęć komputerowych, po obejrzeniu i graniu w Rogue w laboratoriach komputerowych Uniwersytetu Kalifornijskiego w Berkeley . Grupa próbowała zdobyć kod źródłowy Rogue'a od Glenna Wichmana i Michaela Toya, aby na nim bazować, ale Wichman i Toy odmówili, zmuszając uczniów do samodzielnego tworzenia procedur tworzenia lochów. W związku z tym gra została nazwana Hack, po części ze względu na rozgrywkę hack-and-slash, a kod do generowania lochów był uważany za hack programistyczny . Po zakończeniu zajęć kończyła się również praca uczniów nad programem, choć mieli grę roboczą. Fenlason dostarczył kod źródłowy na lokalną konferencję USENIX i ostatecznie został przesłany do grup dyskusyjnych USENET . Kod zwrócił uwagę wielu graczy, którzy rozpoczęli prace nad modyfikacją i ulepszaniem gry oraz przenoszeniem jej na inne systemy komputerowe. Hack nie miał żadnego formalnego opiekuna i chociaż powszechnie uznawano, że jedna osoba posiada główny kod bieżącej wersji Hack , wiele rozwidleń oprogramowania wyłoniło się z niezorganizowanego rozwoju gry.

Ostatecznie Mike Stephenson objął rolę opiekuna kodu źródłowego Hacka . W tym momencie postanowił stworzyć nowy widelec gry, wprowadzając nowatorskie pomysły Izchaka Millera , profesora filozofii na University of Pennsylvania i Janet Walz, innej hakerki komputerowej. Nazwali siebie DevTeam i zmienili nazwę swojego oddziału NetHack, ponieważ ich współpraca odbywała się przez Internet. Rozszerzyli bestiariusz i inne obiekty w grze i czerpali z innych źródeł spoza scenerii fantasy, takich jak Świat Dysku z wprowadzeniem klasy postaci turystycznej. Wiedząc o istnieniu wielu widelców Hack , DevTeam ustanowił zasadę, że chociaż gra była open source i każdy mógł stworzyć widelec jako nowy projekt, tylko kilku wybranych członków DevTeam mogło wprowadzać modyfikacje w głównym repozytorium źródeł grę, aby gracze mieli pewność, że wydanie DevTeam było legalną wersją NetHack .

Historia wydań

Pierwsze wydanie NetHack firmy DevTeam miało miejsce 28 lipca 1987 roku.

Rdzeń DevTeam rozszerzył się wraz z wydaniem NetHack 3.0 w lipcu 1989 roku. W tym momencie ustanowili kulturę zaciśniętych ust, ujawniając niewiele, jeśli w ogóle, między wydaniami. Ze względu na coraz większą głębię i złożoność każdego wydania, zespół programistów cieszy się wśród fanów niemal mitycznym statusem. Ta postrzegana wszechwiedza została uchwycona w inicjalizacji TDTTOE, „DevTeam myśli o wszystkim”, w tym, że wiele możliwych nowych elementów rozgrywki , które mogą wystąpić z powodu zachowania złożonych systemów gry, zostało już zaprogramowanych przez DevTeam. Od wersji 3.0 DevTeam zazwyczaj ograniczył się do drobnych poprawek błędów, reprezentowanych przez zmianę trzeciego numeru wersji (np. v3.0.1 na v3.0.0) i publikuje główne aktualizacje (v3.1.0 na v3.0.0) tylko wtedy, gdy Do gry dodawane są istotne nowe funkcje, w tym obsługa nowych platform. Wiele osób ze społeczności, które pomogły przy przenoszeniu portów do innych systemów, zostało później zaproszonych do dołączenia do DevTeam, gdy potrzeby zespołu rosły, a obecnie kluczowym członkiem pozostaje Stephenson.

Aktualizacje gry były zazwyczaj regularne od około 1987 do 2003 roku, a DevTeam wypuścił wersję 3.4.3 w grudniu 2003. Kolejne aktualizacje DevTeam obejmowały nowe zestawy klocków i zgodność z wariantami Mac OS, ale nie wprowadzono żadnych większych aktualizacji gry . Wobec braku nowych wydań od twórców pojawiło się kilka stworzonych przez społeczność aktualizacji kodu i wariantów opracowanych przez fanów.

7 grudnia 2015 została wydana wersja 3.6.0, pierwsza główna wersja od ponad dekady. Chociaż łatka nie dodała głównych nowych funkcji rozgrywki, aktualizacja została zaprojektowana w celu przygotowania gry do rozszerzenia w przyszłości, z uwagami do łatki DevTeam stwierdzającymi: „To wydanie składa się z szeregu fundamentalnych zmian w zespole, podstawowej infrastrukturze i zmianach w podejście do tworzenia gier”. Stephenson powiedział, że pomimo liczby gier typu roguelike, które pojawiły się od czasu wydania v3.4.3, zauważyli, że NetHack wciąż jest omawiany w sieci, częściowo ze względu na jego wysoki stopień przenośności, i postanowili kontynuować jego rozwój. Według członka DevTeam, Paula Winnera, starali się ocenić, jakie funkcje społeczności zostały wprowadzone w poprzedniej dekadzie, aby ulepszyć grę przy jednoczesnym zachowaniu niezbędnej równowagi. Aktualizacja pojawiła się wkrótce po śmierci Terry'ego Pratchetta , którego Świat Dysku miał duży wpływ na grę, a nowa aktualizacja zawierała hołd dla niego. Wraz z wydaniem 3.6.0 NetHack pozostaje „jedną z najstarszych gier, które wciąż są rozwijane”.

Publiczny tylko do odczytu zwierciadło Nethack jest git repozytorium została udostępniona w dniu 10 lutego 2016. Od v3.6.0 The DevTeam nadal aktualizacjach wciskanych do tytułu, z najnowszej będącego v3.6.6 w dniu 8 marca 2020 roku w wersji 3.7 .0 jest obecnie w fazie rozwoju.

Od 2020 r. oficjalne wydanie źródła obsługuje następujące systemy: Windows , Linux , macOS , Windows CE , OS/2 , Unix ( BSD , System V , Solaris , HP-UX ), BeOS i VMS .

Licencjonowanie, porty i porty pochodne

Powszechna Licencja Publiczna NetHack (NGPL)
Autor Mike Stephenson i in.
Opublikowany 1989
Zatwierdzone przez OSI tak
Prawo autorskie tak
Strona internetowa https://www.nethack.org/common/license.html

NetHack jest wydany na licencji NetHack General Public License, napisanej w 1989 roku przez Mike'a Stephensona, wzorowanej na licencji GNU Bison (napisanej przez Richarda Stallmana w 1988 roku). Podobnie jak licencja Bison i późniejsza GNU General Public License Stallmana , licencja NetHack została napisana, aby umożliwić swobodne udostępnianie i modyfikację kodu źródłowego pod jego ochroną. Jednocześnie licencja wyraźnie stwierdza, że ​​kod źródłowy nie jest objęty żadną gwarancją , chroniąc w ten sposób oryginalnych autorów przed sporami sądowymi . Powszechna Licencja Publiczna NetHack to licencja oprogramowania typu copyleft certyfikowana jako licencja open source przez Open Source Initiative .

Powszechna Licencja Publiczna NetHack pozwala każdemu przenieść grę na platformę nie obsługiwaną przez oficjalny DevTeam, pod warunkiem, że korzysta z tej samej licencji. Z biegiem lat licencja ta doprowadziła do powstania dużej liczby portów i umiędzynarodowionych wersji w języku niemieckim, japońskim i hiszpańskim. Licencja zezwala również na forki oprogramowania, o ile są one rozpowszechniane na tej samej licencji, z wyjątkiem tego, że twórca dzieła pochodnego może zaoferować ochronę gwarancyjną nowego dzieła. W pracy pochodnej wymagane jest wskazanie dokonanych modyfikacji oraz terminów zmian. Ponadto kod źródłowy utworu pochodnego musi zostać udostępniony bezpłatnie, z wyjątkiem nominalnych opłat dystrybucyjnych. Pozwoliło to również na widełki kodu źródłowego NetHack, w tym Slash'EM , UnNetHack i dNethack .

Wsparcie online

Błędy, humorystyczne wiadomości, historie, doświadczenia i pomysły na następną wersję są omawiane na grupie dyskusyjnej Usenetu rec.games.roguelike.nethack.

Publiczny serwer pod adresem nethack.alt.org, powszechnie znany jako „NAO”, daje graczom dostęp do NetHack za pośrednictwem interfejsu Telnet lub SSH . W tej samej witrynie dostępny jest również klient oparty na przeglądarce. Ebonhack łączy się z NAO za pomocą graficznego interfejsu opartego na kafelkach.

Przez cały listopad coroczny turniej /dev/null NetHack odbywał się co roku od 1999 do 2016 roku. Listopadowy Turniej NetHack, początkowo pomyślany jako jednorazowy hołd dla devnull, odbywa się co roku od 2018 roku. Letni Turniej Cross-Variant odbywa się corocznie od 2011 roku.

Środowisko edukacyjne NetHack

Zespół badawczy sztucznej inteligencji (AI) Facebooka wraz z naukowcami z University of Oxford , New York University , Imperial College London i University College London opracowali platformę open source o nazwie NetHack Learning Environment, zaprojektowaną do nauczania agentów AI grać w NetHack . Środowisko baza jest w stanie manewrować agenta i walczyć drogę przez lochy, ale zespół stara społeczności przyczynić się do budowania AI na zawiłości Nethack „s połączonych systemów, stosując niejawny wiedzę, która pochodzi z zasobów player wykonane, dając w ten sposób oznacza, że ​​programiści mogą podłączyć się do środowiska z dodatkowymi zasobami. Badania Facebooka doprowadziły firmę do przedstawienia Nethack jako wielkiego wyzwania w sztucznej inteligencji w czerwcu 2021 r., częściowo ze względu na permanentną śmierć gry i niemożność eksperymentowania z otoczeniem bez wywoływania reakcji. Facebook poinformował, że ogłosi konkurs w tej dziedzinie, który rozpocznie się w 2021 r. na konferencji poświęconej neuronowym systemom przetwarzania informacji .

Zobacz też

Bibliografia

  • Craddock, David L (5 sierpnia 2015). Magrath, Andrzej (red.). Dungeon Hacks: Jak NetHack, Angband i inne Roguelikes zmieniły kurs gier wideo . Naciśnij Start Naciśnij. Numer ISBN 978-0-692-50186-3.

Zewnętrzne linki