このバージョンはある意味で特別なものである。 3.6 の開発の終盤に、このゲームの多くのユーモラスで楽しい要素の中でも多くの インスピレーションを受けた、小説家 Terry Pratchett が亡くなった。 私たちはこのバージョンを彼への記憶に捧げる。
最近、あなたは日々の仕事に満たされなく、敬遠しつつある自分に気がついた。 最近数ヶ月、あなたが見る夢は探査、盗み、聖戦、戦闘といったものであったが、 あなたにはその理由がはっきりとはわからなかった。 あなたはこれらの夢を実際には生まれてこのかたずっと見続けていて、 なぜか今までそれらについて忘れようとしていたのではないか、と思った。 ある夜、あなたは飛び起きて、 夢の中の洞窟のあらゆる角の後ろに潜んでいるように見える、 奇妙で強力な怪物の鮮明な記憶にぞっとして大声で叫んだ。 あなたの夢に出没する内容は本当なのだろうか? 夜毎に、廃墟の近くの不思議な洞窟に入るという欲求が強くなった。 それでも、毎朝あなたはそのような考えを、 洞窟に入って帰って来なかった人々の話を思い出すことで頭から追い出した。 しかし、ついにあなたは夢の中に出てくる不思議な場所を捜し求めるという思いを 抑えきれなくなった。 何といっても、冒険者は最初にその道を通っていった時より、 こちらに戻って来る時の方が裕福になっているように見えるのだ。 戻って来ない人たちは皆、単にまだ冒険を続けているだけなのでは?
あちこちで尋ねるうちに、あなたはある噂を耳にした。 イェンダーの魔除けとかいうものがあり、手に入れることができたなら、 すばらしい財産をもたらすと言うのだ。 あなたが聞いたとある伝説では、 魔除けを見つけたものは神から不死の体を授かるとさえ言われているらしい。 魔除けは恐怖の迷宮の奥深く、ゲヘナの谷を越えたどこかにあるという噂である。 伝説を聞いた瞬間あなたは、自分には洞窟に入って彼らの話している 魔除けを捜し求めるべき深遠で未知のなんらかの理由があると確信した。 あなたはたとえ魔除けの力が真実でなくても、 少なくとも冒険談を地元の吟遊詩人にかなりの金額で売り込めるだろうと考えた。 夢の中で出てきた恐ろしく、不思議な怪物に出会うことができればなおさらである。 あなたは地元の安宿で最後の宿を取り対策を練った。 安宿の壁に掲げられた成功率のオッズが下がれば下がるほど、 あなたは意気消沈した。
朝起きると、あなたは所持品をかき集め、あなたは洞窟に向けて旅立った。 無事何日かの旅を続けて恐怖の迷宮への入口を 示す古代の遺跡へとたどり着いた。夜も更けていたので入口でキャンプをすることにし、 その夜は広々とした空の下で眠りに就いた。翌朝あなたは道具をかき集め、 もしかすると地上での最後になるかもしれない食事を済ませ、 洞窟へと入っていった…
こうしてあなたは NetHack というゲームを始めることになった。あなたの目的は 持てる限りの宝を集め、イェンダーの魔除けを見つけ出し、さらにはこの恐怖 の迷宮から生きて脱出することである。
冒険におけるいろいろな困難に対応するための各種の能力や力は、 あなたの生い立ちと修行によって変化する。
また、キャラクターの種族も選ぶことができる。
画面上にはあなたが現在いる洞窟の階 ですでに探索を終えた部分の地図と、そこで目にした物が示されている。さら に深く探検を進めるに連れて洞窟はその姿を次第にあなたの前の画面に明らか にしていく。
NetHack の祖先である rogue が最初に現れたとき、その スクリーン指向はコンピュータファンタジーゲームの中でも全く独特のものであった。 それ以来スクリーン指向は例外的なものというよりむしろ標準となった。 NetHack はこのすばらしい伝統を受け継いでいる。疑似的な英語で コマンドを入力し、結果が文章で表示されるテキストアドベンチャーゲームとは 異なり、NetHack のコマンドはすべて 1 文字か 2 文字のキー入力で 与えられ、その結果は画面上にグラフィカルに表示される。 画面は最低 80 桁および 24 行の大きさが推奨される。 それ以上の大きさがあっても 21×80 の領域だけが地図の表示に使われる。
NetHack は点字や音声合成の助けを借りて、目の不自由な人でもプレイできる。 目の不自由な人のためのNetHackの設定方法については、このドキュメントで 後述する。
NetHack はプレイするたびに新しい洞窟を作成する。 このため何回かゲームに勝利したことのある作者たちにも、 いまだこのゲームは楽しく興奮に満ちたものと感じられる。
NetHack はさまざまな表示のオプションを提供する。 オプションはあなたのハードウェアやソフトウェアの能力に依存し、 プラットフォーム毎にさまざまである。 さまざまなコンパイル時のオプションは実行ファイルが作られたときにのみ可能となる。 モノクロキャラクタインタフェース、 カラーキャラクタインタフェース、 タイルと呼ばれる小さな絵を用いたグラフィカルインタフェースの 3 つの表示方法がある。 2 つのキャラクタインタフェースはフォントを他の文字に置き換えることもできるが、 標準設定では 標準の ASCII キャラクタを用いて全てを表現する。 さまざまな表示のオプションはゲーム内容には影響を与えない。 タイルや色はガイドブックで表記できないし、 それは全てのプラットフォームに共通ではないので、 ゲーム中に表示されるものの説明としては モノクロキャラクタディスプレイで表示される標準の ASCII キャラクタを用いる。 NetHack で何が起きているのかを理解するには、まず NetHack では画面が どうなっているのかを理解しなくてはならない。NetHack の画面は、テキストアド ベンチャーゲームにおける「あなたは…を見た」のような文章の代わりである。 図 1 は NetHack では画面に何が表示されるかの一例である。 画面がどのように表示されるかはプラットホームに依存する。
The bat bites! ------ |....| ---------- |.<..|####...@...$.| |....-# |...B....+ |....| |.d......| ------ -------|-- Player the Rambler St:12 Dx:7 Co:18 In:11 Wi:9 Ch:15 Neutral Dlvl:1 $:0 HP:9(12) Pw:3(3) AC:10 Exp:1/19 T:257 Weak
画面の下 2 行には、あなたの現在の状態を表す暗号のような情報の断片が含まれている。 どちらかの行が画面の幅よりも長くなるとその全部を見ることはできない かもしれない。以下に状態を示すいろいろな項目が何を意味するのかを述べる (コンフィグレーションによっては、以下に一覧されている状態を示す項目の すべてが表示されるとは限らない)。
画面の最上行は視覚的に表現できないことを説明するメッセージのために使われる。 最上行に''--More--''が表示されたときは、 このあとにさらにメッセージが続いているけれども 現在のメッセージをまず確実に読むよう促しているということである。 次のメッセージを読むためには単にスペースキーを押せばよい。
メッセージ行にどんなメッセージをどのように表示するかを変更するには、 ''Configuring Message Types'' と verbose オプションを参照のこと。
画面のその他の部分は、あなたが現在いる階で それまでに探索し終わった部分の地図である。 画面上のシンボルはそれぞれ何かを表している。 表示されるシンボルのうちいくつかは、 さまざまなグラフィックオプションを設定することによって変えることができる。 そうでなければ標準設定のシンボルが用いられる。 次に標準設定のシンボルの意味の一覧を示す。
これらのシンボルをすべて記憶する必要はない。'/' コマンドでどのシンボ ルが何を表すか知ることができる(詳細は次の項を参照のこと)。
コマンドは 1 文字か 2 文字のキー入力を行うことで実行される。 いくつかのコマンド、例えば''search''はそれ以上 NetHack に 情報を与える必要がない。 他のコマンドは例えば方向や使用する物などの情報をさらに与える必要がある。 これらさらなる情報を必要とするコマンドに対しては、 NetHack は選択メニューもしくはコマンドラインプロンプトのいずれかを表示する。 どちらが表示されるかは主として 'menustyle' オプションをどのように設定したかによる。
例えば ''What do you want to use? [a-zA-Z ?*]'' という形式の質問がよくあるが、 これはあなたに持っている物のうちどれを選ぶかを尋ねるものである。 この質問において「a-zA-Z」はあなたが選べる持ち物の目録記号である。 '?' を入力するとこれらの物の目録一覧が得られ、 個々の記号が何を表しているのか知ることができる。 この例では、'*' もある。これは一覧には表示されておらず、 通常そのコマンドでの使用を想定していない物でも、使おうと思えばそれを 選ぶことができることを示している。'*' を入力するとすべての持ち物の目録が 表示され、個々の持ち物すべてについての目録記号を知ることができる。 考え直して結局このコマンドを使わないことにしたときには 'ESC' キーを押せば コマンドを終了することができる。
コマンドの中には、その前に数字を入力することで何回も繰り返すこと ができるものもある。例えば「10s」は 10 回の探索を表している。もし number_pad オプションがオンのときには数字の前に 'n' を入力しなければならない。 つまり上の例では代わりに「n 10s」と入力しなければならない。 複数回実行することが無意味なコマンドではこれは無視される。 さらに、移動コマンドの前に特定の文字(プレフィックス)を付けることによって さまざまな移動方法をとることができる(後述)。 繰り返し回数やプレフィックスを取り消すためには 'ESC' キーを押せばよい。
コマンドの一覧はかなり長いが、ゲーム中に '?' コマンドを使用して ヘルプメニューを見ることにより、いつでもコマンドの一覧を見ることができる。 以下はコマンドの一覧である。
y k u | 7 8 9 |
| / | | / |
h- . -l | 4- . -6 |
/ | | / | |
b j n | 1 2 3 |
(if {it number_pad/} set) |
もしあなたのキーボードにメタキー (別のキーと一緒に押すことによって そのキーの'メタ'[第 8、または'上位']ビットをセットする)があれば、 コマンドの頭文字をメタキーと一緒に押すことによって多くの 拡張コマンドを起動することができる。 NT, OS/2, PC, ST NetHack では 'Alt' キーがこの目的に使われる。 Amiga では、altmeta オプションを設定することでこの振る舞いが得られる。 その他のシステムでは、'Alt' と他のキーをタイプすると Escape と タイプしたキーからなる 2 文字の並びが転送されるので、 nethack にこれをmeta+キーと組み合わせるために altmeta オプションを設定できる。
number_pad オプションがオンのときは、これらに加えいくつかの文字コマンドが有効になる。
洞窟内の部屋や通路は明りがついていることもあるし、ついていないこともある。 明りのついている部分で自分の視野に入る部分は画面に表示される。 暗いところでは周囲 1 つ分の空間だけが見える。 壁や通路は画面に表示されたままになる。
隠し通路は表示されない。これらは 's'(search: 探す) コマンドで 発見することができる。
出入口は部屋と通路を接続するものである。出入口の中には扉のないものがある。 このときにはそのまま通り抜けることができる。その他の出入口には扉があるが、 その扉は開いているか、閉じているか、錠がかかっているかのいずれかである。 閉じている扉を開けるには 'o'(open: 扉を開ける) コマンドを 用いる。再び扉を閉じるには 'c'(close: 扉を閉じる) コマンドを用いる。
扉に錠がかかっているときは 'a'(apply: 道具を用いる) コマンドで錠をはずす 道具を使うか、'^{D}'(kick: 蹴る) コマンドで扉を蹴破ることで 通ることができる。
開いた扉に斜めから入ることはできない。水平あるいは垂直方向から真っ直ぐに 近付かなければならない。扉のない出入口にはこのような制限はない。
扉は怪物を締め出すのに役に立つ。たいていの怪物は扉を開けることができない。 けれどもいくつかの怪物にとっては扉を開ける必要などない(例: 亡霊は 扉を通り抜けることができる)。
隠し扉は表示されない。これらは 's'(search: 探す) コマンドで発見する ことができる。一度発見すると普通の扉と同様になる。
そそっかしい冒険者を陥れようとする罠が洞窟のあちこちにある。 例えば落し穴に落ちると上り出るのに数ターンの間その場から動けなくなるであろう。 そこに誰かが足を踏み入れて引っかかるか、's'(search: 探す) コマンドで見つけるか して初めて罠は表示される。怪物も罠の餌食になることがある。これは非常に有効な 防御戦術である。
古典的コンピュータゲームである''倉庫番''を基にした特別なダンジョンへの 分かれ道も存在する。 このダンジョンでの目的は大岩を落し穴に入れることである。 慎重に先読みすれば、全ての階は倉庫番の伝統のルールでクリアできる。 行き詰まってしまった冒険者のためにいくつかの助け舟が用意されているが、 これらは運を低下させてしまう。
一般的に洞窟の各階には、前の階への上り階段('<')と、 次の階への下り階段('>')がひとつずつある。 しかし、例外もある。 例えば、洞窟の比較的浅い階であなたは二つの下り階段がある階を発見するだろう。 ひとつは洞窟の続きであり、 もうひとつはノームの坑道として知られる地帯に続いている。 この坑道は最後には行き止まりになっていて、 ここを探検した(あなたがそうすることを選択した場合)後、 元の洞窟にまで戻って来る必要がある。
階段を使うか、あるいは他の階に移動する罠に引っ掛かった場合、 いままでいた階は非活性化されて、ディスク上のファイルに貯えられる。 昔訪れた階に再び訪れた場合、ディスク上のファイルが読み込まれて再活性化される。 初めて訪れる階に移動した場合、その階は(ほとんどの階は一から、 「特別な」階はテンプレートから、「骨の」階(後述)の場合はファイルから読み込んで) 新たに作成される。 怪物は現在の階にいるものだけが行動する。 他の階にいるものは止まっている。 普通、あなたが階段を使うと、あなたは目的地で対応する階段の上に現れる。 しかし、ペット(後述)といくつかの怪物はあなたが階段を上り降りした時についてきて、 時々それらの一体があなたと入れ替わることがある。 こうなった場合、ペットやその他の怪物が階段の上に現れ、 あなたはそのそばに現れる。
はしごは階段と同じ役目であり、階を繋ぐこの二つの種類は ゲーム中ほとんど区別ができない。
時々ドアのそばに店主がいて、床にたくさんの物が置いてある部屋に 行き当たることがある.物を拾って、'p'コマンドを使うことで 物を買うことができる. 物を拾う前に、物の上に立って''#chat''コマンドを使うことで値段を確認できる. 支払いをする前に物を使うと借金になり、店主は債務を支払うまでは 店の外に出してくれなくなる.
店の中にいるときに物を落すことで物を店主に売ることができる. 売却価格を提示され、売るかどうかを確認されるか、 単に店主が興味がないことを知らされる(一般的に、 店で売っている物と同じ種類の物が買い取り対象である)。
偶然で物を店の中に落してしまうと、店主は普通代償なしに所有権を主張する. 物を取り戻すためには買い戻す必要がある.
店主は資金不足になることがある。こうなった場合、何かを売ろうとすると 現金の代わりに信用貸しを提案される。 信用貸しは物を買うときに使えるが、同じ店でだけ有効である。 他の店主は引き受けない。 (迷宮で「クレジットカード」を手に入れることがあるが、 これを店で使おうとしてはいけない。店主は受け入れない。)
$コマンドを使うと、今持ち運んでいる金貨の数(かばんや箱に入っているものは 除く)とともに、負債や信用貸しがあれば表示される。 Iuコマンドは未払いの物(まだ店が所有する物)の一覧(あれば)を表示する。 Ixコマンドは使ってしまった物の代金の一覧(あれば)が表示される。
店のいくつかの性質は意外なものかもしれない。
画面上にはあなたから見える怪物しか表示されないが、ひょっとすると闇の 中で怪物とばったり出くわすことになるかもしれないので注意が必要である。 魔法のアイテムの中には、怪物があなたを発見するよりも前にあなたが怪物を 発見するのに役立つ物もある(しかしこの能力に大変優れている怪物もいる。)
'/' コマンドと ';' コマンドが画面上に表示されている怪物に関する情報を得るのに 用いられる。 ''#name'' コマンド、または別名の 'C' コマンドは怪物に名前をつけるのに用いられ、 複数の怪物がいる時に、ある怪物を他のものと見分けたいときに便利である。 名前としてスペースを指定すると、以前につけた名前を消すことになる。
拡張コマンド「#chat」によって、隣接する怪物と交流できる。 実際の台詞は選択できない(言い換えると、あなたが何をしゃべるかは選べない)が、 店主や Oracle of Delphi(デルファイの神殿)といった相手と話をすることは、 有益な結果をもたらす。
発見した怪物と戦いたいときには、 単にその怪物に向かって移動するようにすればよい。 多くの怪物はあなたが戦いを挑まない限り、 他のことを気にすることはない。 腹を立てると大変危険な怪物もいる。 「三十六計逃げるにしかず」ということわざを忘れずに。
ほとんどの場合、友好的な怪物の位置に移動することで攻撃をしようとすると、 意図を確認される。 デフォルトでは 'y' を押すと確認したことになるが、 移動に 'y' を使っていると間違いがちである。 代わりに ''yes'' の返答が必要なように paranoid_confirmation オプションを設定できる。
怪物が見えない(怪物が透明、またはあなたが目が見えない)場合、 怪物がいるとあなたが思った位置に'I'の文字が表示される。 その区画に歩こうとすると、見えている時と同じようにあなたは怪物に攻撃しようとする。 もちろん、もし怪物が移動してしまっていたら、あなたの攻撃は空を切ることになる。 もし怪物がすでに移動してしまっていると考え、戦いたくない場合は、 'm'コマンドを使うことで戦うことなく移動できる。 逆に、そこに怪物がいるかどうかわからないけれどもとにかく戦って見たい場合は、 'F'コマンドが使える。
あなたは仔犬('d')、子猫('f')、ポニー('u')のいずれかとともにゲームを始める。 あなたのペットはあなたとともに洞窟をさまよい、怪物と戦う。 ペットはあなたと同様に生きのびるための食料を必要とする。 ペットは新鮮な死肉やその他の肉をえさにしている。 もしもペットのことが気がかりであったり、ペットを飼い慣らしておきたいと思うなら、 あなたが直接えさを与えることもできる。 そのためには食料をペットに向かって投げてやればよい。 きちんと訓練されたペットはある種の状況のもとで極めて利用価値が高い。
ペットも怪物を倒していくにつれて経験を積んでいく。 また時間とともに成長もし、体力や相手に与えるダメージも増加する。 初めのうちはあなたよりもペットの方が強いだろうから、 レベルの低いキャラクタにとっては役に立つだろう。
あなたが他の階へ移動するとき、隣にペットを連れていればペットもあなた について移動する。置き去りにすると野生化してしまうかもしれない。 同様に、もしあなたが自分の位置が変わるような罠にかかった場合 (例えば、トラップドアで下の階に落ちた場合)、 隣にいたペットはついていき、隣にいなかったペットは取り残される。 ペットが自分でそのような罠にかかることもある。 あなたはたとえその時にペットの隣にいても一緒に移動することはない。
ダンジョンにいるある種の生物は、あなたが正しい装備と能力を 持っていれば、乗ることができる。 野生の生物にあなたが乗ることを納得させるのは困難である。 多くの洞窟の主は協力関係をでっち上げるのに魔法の力に頼らなければならない。 しかし、一旦動物をあなたの支配下に置いたなら、 '#ride'コマンドで乗り降りすることができる。 動物に乗って洞窟を移動する方法は、自分自身が移動するのと同じである。 地図に表示されるのはあなたが乗っている動物である。
乗馬技術は'#enhance'コマンドで管理することができる。 詳しくは後述する武器の技術の章を参照すること。
冒険者の幽霊とその死体(あるいはそれは生まれ変わる前のあなた自身であ ることさえある)や、その所持品に出くわすかもしれない。 幽霊を殺すことは難しいが、 動きがのろくほとんどダメージを受けないので簡単に逃げることができる。 あなたは死んだ冒険者の所持品を奪うこともできる。 しかしそれらは呪われていることが多い。 以前の冒険者を死に到らしめたものにはすべて注意を払わねばならない。 それはあたりを徘徊し、その直前の勝利に酔いしれているからだ。
洞窟の中で何かを見つけた場合、それを拾いたいと思うのはよくあることである。 NetHack ではその物の上を通ることによって自動的に拾うことができ( autopickup オプション(後述)がオフになっているときや 'm' プレフィックス(前述)を用いて移動するときはこの限りではない)、 または ',' コマンドを使って手動で拾うことができる。 持ち物が多すぎるときには、NetHack はあなたにそのように告げ、 それ以上拾うことはできなくなる。 そうでなければ NetHack はその物をあなたの荷物に加え、何を拾ったかが表示される。 持ち物が増えるに連れて、荷物の重さが重くなる。 どれだけの重さの物を運べるかは筋力と耐久力による。 力が強いほど、荷物の重さの影響は小さくなる。 しかしそれでも、洞窟の中を持ち歩いている荷物の重さがあなたに負担になるときがくる。 反応は鈍くなり、カロリー消費が早くなってより多くの食料が必要となる。 そして最終的には荷物が重すぎて何かを捨てないと動けなくなってしまう。 NetHack では荷物の重さがどれくらい悪影響を与えるかを教えてくれる。 最下行に表示される'Burdened', 'Stressed', 'Strained', 'Overtaxed', 'Overloaded' の表示があなたの状態を示している。
物を拾ったとき、その物には目録記号が割り当てられる。 物に関する多くのコマンドはあなたがどの物を使いたいのかを尋ねてくる。 持ち物のうち特定の物を選ぶように NetHack が尋ねてきたときは、 普通目録記号の一覧が表示されてその中から選ぶ(前述のコマンドの項を参照のこと)。
いくつかの物、例えば武器類のような物は、どんなものか簡単に区別が付けられる。 この他の物、例えば巻物や水薬はその種類に応じていろいろな名前が付けられている。 1 回のゲームの間は同じ名前を持った物は同じ種類の物である。 しかし物に付けられる名前はゲームごとに違うものになる。
このような物を使った時、もしその効果が明らかな場合は NetHack がそれが 何であるかを憶えていてくれる。 その効果があまり明らかでない場合はその物の種類を何と名付けるか尋ねてくる。 このため後になってそれを思い出すことができる。 またいつでも''#name''コマンド、またはその別名の'C'コマンドを使って 同様のことができ、 ある種類の物すべてに名前を付けたり個々の物に名前を付けたりできる。 すでに名前をつけているものに''#name''を使う場合、 新しい名前としてスペースを指定することによって、 以前つけていた名前を消すことができる。
あなたが発見したいろいろな物は、たとえそれが役に立つものであったとしても 呪いがかけられているかも知れない。呪いがかけられている物を使うと それが張り付いてしまうことは最もよく見られる結果である。 呪いがかけられている武器を持つとそれは手に張り付いてしまって取れなくなる。 呪いがかけられている物を身につけると普通の方法でははずすことができない。 さらに、呪いがかけられている武器や防具には必ずと言うわけではないが たいていの場合負の魔力が与えられていて、そうでない物よりも戦闘時の効力が劣る。 その他の呪いがかけられている物は、あまり役に立たなかったり またはその他の点で害を及ぼしたりするだろう。
また祝福されている物もある。祝福されている物は 呪いがかけられていない普通の物に比べて具合良く働き役に立つ。 例えば祝福された武器は悪魔たちに一層のダメージを与えることができるだろう。
呪われてるわけでも祝福されているわけでもない物は「呪われていない(uncursed)」と 呼ばれる。 これは「祝福されていない(unblessed)」と表現することもできるが、 ゲームの中では「呪われていない」という表現が使われる。 これは「コップに半分だけ入っている/半分しか入っていない」問題である; 解釈はあなた次第である。
魔法を使うと物に呪いをかけたり呪いを解いたりすることができる。 このためたとえ物が張り付いてしまっても、 呪いを解いてはずすことができる。 僧侶は生来呪いや祝福に敏感なので、 他の職業の冒険者よりも容易に呪われているものを避けることができる。
あなたの持ち物の目録の中で呪いがかけられているかどうか分からない物は 目録のなかで特に何の説明もない。どんな状態にあるか知っている物は 目録一覧で「cursed(呪われた)」「uncursed(呪われていない)」「blessed(祝福された)」などの 言葉が物の説明に与えられる。 場合によっては、その他の情報が十分に表示されている場合は 「uncursed(呪われていない)」は省略される。 implicit_uncursed オプションはこれを制御するのに使われる; これをオフにすると、例えその他の属性から推測される場合でも 「uncursed(呪われていない)」を表示する。
恐怖の迷宮に住むほとんどすべての怪物は、チャンスと見れば見境なくあなたを 殺そうとするだろう。自分の身を守る(先に怪物を殺してしまう)ために あなたは武器を必要とする。武器なしではポイントにして 1 ~ 2 のダメージ (いくらかの加算があるかも知れないが)を与えることしかできない。 但し、モンクは例外である。モンクは武器を使って攻撃するよりも 素手で攻撃した方が遥かに大きなダメージを与えることができる。
武器には鎚矛や剣のような振り回すためのものと、矢や槍のような投げつけるためのものがある。 武器で怪物に打撃を与えるためには、武器を手にもって怪物を攻撃するか 武器を怪物に投げなければならない。投げるには、単純に槍を投げるように選択するだけでよい。 弓から矢を発射するには、まず弓を手に持ってから矢を投げればよい。クロスボウは crossbow bolt(クロスボウ用の太矢)を発射するためのものである。 投石器は岩や(宝石のような)その他の石を投げつけるために用いる。
魔力のある武器には「追加能力」(攻撃能力と言うことで正と負の両方を取り得る)が 付けられており、 攻撃が怪物に当たる可能性と与えるダメージに追加される。 武器の魔力を測定するには、なんらかの方法で魔法を使って鑑定するしかない。 多くの武器は錆のようなある種のダメージを受けやすい。このような 「腐食」ダメージは修復可能である。
攻撃がうまく怪物に命中するかと、命中した時にどれくらいのダメージを与えるかは、 多くの要素によって決定される。それらには以下のものがある: 武器の種類、武器の品質(魔力や腐食)、経験レベル、筋力、敏捷性、荷物の重さ、 技量(後述)。 怪物の防御値(一般的な防御率。防具を着ることによるとは限らない)も要素の一つである。 また、ある種の武器に対して特に耐性を持つ怪物もいる。
多くの武器は片手持ちであるが、両手が必要な武器もある。 両手持ちの武器と盾を同時に持つことはできない。 片手持ちの武器を持っている場合、 もうひとつの武器を予備として準備しておいて、 'x'コマンドで今使っている武器と交換することができる。 さらに「二刀流戦闘」技能の技量がある場合、二つの武器を同時に使うことができる。 '#twoweapon' 拡張コマンドで二刀流戦闘をするかどうかを切り替えられる。 一部のキャラクター(例えば野蛮人)だけがこの技能を持っている。 たとえこの技能を持っていても、一度に二つの武器を使うと ひとつしか使わない時に比べて敵に命中する確率にペナルティを受ける。
全く何の武器も装備したくない時もあるかもしれない。 そうするためには、装備するものを選ぶ時に'-'を選ぶか、あるいは'A'コマンドで その他の身につけているものを外すのと同時に現在使っている武器を外すことができる。
AD&D をプレイしたことのある読者はお気付きだろうが、AD&D に登場した武器は NetHack においても怪物にだいたい同じダメージを与える。 あまり良く知られていない武器( % aklys(アキリス), lucern hammer(ルッツェンハンマー), bec-de-corbin(ベッグ・デ・コルビン) など)のいくつかは AD&D の 追加ルールである Unearthed Arcana の付録で詳しく説明されている。
武器を使うコマンドは 'w'(wield: 武器を持つ)、 't'(throw: 投げる)、 'f' (fire: 武器を発射するもうひとつの方法), 'Q'(quiver: 矢筒)、 'x' (exchange: 武器を交換する)、'#twoweapon'、'#enhance'(後述) である。
't'コマンドを使うことによって、どんな物でも投げることができる。 このコマンドを指定すると、投げる物を尋ねてくる。 '?'を押すと、持ち物の中で投げるのに向いていそうな物の一覧が表示され、 '*'を押すと、全ての持ち物の一覧が表示される。 何を投げるかを指定した後、(どの目標に投げるかではなく)どの方向に投げるかを尋ねられる。 投げることができる距離は、主に物の種類と筋力による。 矢は手で投げることもできるが、弓を持って投げた方が遥かに遠くまで飛び、 目標にも当たりやすい。
'Q'コマンドで予め好みの「発射物」を選択しておき、 'f'コマンドで投げることによって、投げる操作を簡単にすることが出来る。 先程と同様に投げる方向は尋ねられるが、 'f'コマンドを使うたびに何を投げるかを指定する必要はない。 autoquiver オプションをオンにすると、 'Q'コマンドで設定した物がなくなった時に、 NetHack が自動的に矢筒(または矢筒袋または準備している物)に他の物を 入れてくれる。
一度に複数の物を投げることができるキャラクターもいる。 一度に複数の矢を装填し(あるいは一度に複数の物を持ち)、 それを目標に当てることはたやすい仕事ではない。 レンジャーはこの技能に優れているし、適切な武器の技能 (弓を持って矢を射るなら弓の技能、クロスボゥを使うならクロスボゥの技能、 スリングを持って石を投げるならスリングの技能) において高いレベルの技量があれば他の職業でも可能である。 あなたがいくつのアイテムを同時に投げることができるかは 毎ターン変化する。 't'コマンドや'f'コマンドの前に数字を指定することによって、 発射する数を明示的に制限することもできる。 例えば、''2f''( number_pad オプションがオンの時には''n2f'')と指定すると、 たとえ 3 本発射可能でも最大 2 本しか発射されない。 もし、実際に発射できる数よりも大きい数を指定した場合 (この例では ''4f'')は、 特に数字を指定しなかった場合と同様、 実際に発射可能な数(ここでは 3 本)しか発射されない。 一旦動作を開始したなら、全てのアイテムは同じ方向に飛ぶ。 もし 1 本目で怪物を倒したなら、残りはその先まで飛んでいくことになる。
利用できる武器の技能はさまざまに異なっている。 武器の技量(技能)はある種の武器をどれくらいうまく扱えるかに影響する。 技能はゲームを通じて向上させることが出来るが、 それは職業や経験レベルや武器の使用回数による。
技量を示すために、武器は daggers 、 broadswords 、 polearms といった風に いくつかのグループに分けられている。 それぞれのグループで技量レベルをどこまで高めることが出来るかは職業毎に決まっている。 例えば魔法使いは daggers や staves に対しては高いレベルに達することが出来るが、 swords や bows に対してはそうではない。
'#enhance'拡張コマンドで現在の武器(と呪文)の技量を見ることができる。 さらに、ひとつまたは複数の技能を向上させることができる状態なら、 どの技能を向上させるかを選択することができる。 技能のランクは''none'' (技能を向上させることができないという意味で ''restricted''(制限された) と呼ばれることもある)、''unskilled''(初心者), ''basic''(入門者), ''skilled''(熟練者), ''expert''(エキスパート)である。 制限された技能は単に'#enhance'コマンドで一覧に表示されない。 (神の介入によりある種の技能の制限が解除されることもある。 その時には技能は"unskilled"となり、限界は"basic"までとなる) キャラクターによっては、素手での戦闘やマーシャルアーツの技能を ''master''(マスター)や''grand master''(グランドマスター)にまで向上させる ことができる。
技能レベルが"restricted"や"unskilled"の武器を使うと、怪物への命中率や 命中した時に与えるダメージにペナルティがある。 "basic"ではペナルティもボーナスもない。 "skilled"では命中率と与えるダメージにささやかなボーナスがある。 "expert"ではボーナスは大きくなる。 攻撃が命中すると、使っている武器に関する技能を(もし最大に達していないなら) 向上させるための訓練度を増やすチャンスがある。 この訓練度が次のレベルに必要な値に達すると、 自分の技能により自信を持てるように感じたことが告げられる。 この時点で'#enhance'コマンドを使うことによってひとつまたは複数の技能を 向上させることができる。 技能は自動的には向上しない。 なぜなら全ての技能レベルの合計には制限があるので、 どの技能を向上させて、どれを無視するかを決める必要があるからである。
一部のキャラクタは二つの武器を一度に使うことができる。 そうするための準備は厄介だが、使うことで身についていく。 二つの武器を装備するには、''#twoweapon'' コマンドを使う必要がある。 しかし、まずそれぞれの手に一つの武器を手にする必要がある。 (二つの武器は完全に同じではないことに注意すること; 通常装備している手で 手にしている武器は主要武器として扱われ、もう一方は補助武器として扱われる。 もっとも注意するべき違いは、二つの武器を手にするのを止めた後-- または始める前--である。 優先武器は手にしている武器であり、補助武器は単に、 予備の武器として指定された、持ち物の一つである。)
主要武器を手にしているけれどももう片方の手が空いていたり間違った武器を 持っていたりする場合、'x', 'w', 'x' とすると、 まず主要武器をもう片方の手に持ち替え、補助武器として使いたいものを装備し、 再び意図通りの手に入れ替えられる。 補助武器が正しいけれども主要武器が間違っている場合、単に 'w' を使って主要武器を手にすることができる。 最後に、どちらの手にも正しい武器を手にしていない場合、 'w', 'x', 'w' として、最初に補助武器を手にし、 それを入れ替え、主要武器を手にする。
処理全体は pushweapon オプションを使うことで単純化できる。 これを有効にして、何かを装備するのに 'w' を使うと、 現在装備している武器を予備の武器にする。 従って 'w', 'w' と続けると、最初に予備にしたい武器を装備し、 それから優先したい武器を装備すると、最初の武器が予備の武器に押し出される。
二刀流モードのとき、''#twoweapon'' コマンドを使うと、 単一武器モードに戻る。 どちらかの武器を投げたり落としたりするか、 どちらかが盗まれたり壊されたりしても、 単一武器モードに戻る。
多くの非友好的なものが洞窟には潜んでいる。 そういったものからの攻撃から我が身を守るには防具が必要である。 防具の中には他の種類の防具よりも防御効果に優れた物がある。 Armor class(AC)(防御値)はこの防御効果の尺度である。 防御値 (AC)は AD&D での場合と同じように評価される。 10 が防具なしの状態と等しく、数値が小さいほど優れた防具であることを示す。 AD&D に存在する鎧はいずれも NetHack においても同じ防御効果を示す。 以下に(不完全ではあるが) 各種の鎧ごとに規定される防御値の一覧を示す。
dragon scale mail(ドラゴンの鱗鎧) | 1 | plate mail(鋼鉄の鎧) | 3 | |
crystal plate mail(水晶の鎧) | 3 | bronze plate mail(青銅の鎧) | 4 | |
splint mail(鉄片の鎧) | 4 | banded mail(帯金の鎧) | 4 | |
dwarvish mithril-coat(ドワーフのミスリル服) | 4 | elven mithril-coat(エルフのミスリル服) | 5 | |
chain mail(鎖かたびら) | 5 | orcish chain mail(オークの鎖かたびら) | 6 | |
scale mail(鱗の鎧) | 6 | studded leather armor(鋲付き皮鎧) | 7 | |
ring mail(鉄環の鎧) | 7 | orcish ring mail(オークの鉄環の鎧) | 8 | |
leather armor(皮鎧) | 8 | leather jacket(皮ジャケット) | 9 | |
no armor(鎧なし) | 10 |
さらに他の防具(例: 兜、靴、楯、クローク) を身につけ、 防御値の値を小さくすることもできる。 ただし同じ範疇に入る物は 1 つしか身につけることはできない (鎧は一式、クロークは 1 着、兜は 1 個、楯は 1 枚など)。
防具に魔力があればその防具の防御効果は通常の物よりも良く(もしくは悪く)なっており、 それに付いている「+記号」(あるいは-記号)の分だけ防御値の値が小さくなる。 例えば +1 鎖かたびらは、通常の鎖かたびらよりも防御効果が高く、 防御値は 1 単位分小さくなって 4 になる。 防具を身につけると直ちに防御値と「+記号」の値が分かる。 呪いがかけられた防具は通常負の魔力(-記号)を持っており、取りはずすことはできない。
多くの鎧は錆のようなある種のダメージを受けやすい。 このようなダメージは修復可能である。 魔法を唱えるのを妨げる防具もある。
鎧を使うためのコマンドは 'W'(wear: 防具を付ける) と 'T'(take off: 防具をはずす) である。 'A'(remove all: 全てをはずす)もまた他の身につけるもの同様、 防具をはずすのに使用できる。
生きのびるには食料が不可欠である.長い間食料を口にしないままでいると やがて昏倒し、徐々に餓死への道をたどることになる。 保存の処置を取ってないと傷んでしまい、食べるには不衛生になる食料もある。 アイスボックスや缶に入っている食料は通常はいつまでも傷まないが、 アイスボックスは重く、缶は開けるのに少しばかり時間が必要である。
怪物を殺すと通常はその死体が残るが、これは「食料」にもなる。 すべてと言うわけではないが多くは食べられるし、 中には食べると特別な力がつくものもある。 大ざっぱに言えば「食べたものになる」ということである。
菜食主義の職業や怪物もいる。 菜食主義の怪物は決して動物の死体を食べない。 一方菜食主義のプレイヤーは動物の死体を食べることができるが、 なんらかのありがたくない副作用がある。
fruit オプションによってあなたの好物の食料にちなんで その名前を 1 つ設定することができる。
食料を食べるためのコマンドは 'e' である。
巻物にはいろいろな表題が付けられているが、 これはおそらくいにしえの魔術師たちが暇潰しとして選んだのであろう (例:''READ ME'' とか ''THANX MAUD'' の逆さ読みとか)。 巻物は読むと消滅する(ただし魔法の呪文の書かれていない白紙は消滅しない)。
これらの中で最も利用価値の高いものはscroll of identify(識別の巻物)である。 これは他の物についてそれが何であるか、 呪いがかけられているか祝福されているか、 あと何回効力を発揮できるかを確定できる。 得体の知れない魔力を持つ物の中にはこの巻物なしでは何であるか鑑定し難いものもある。
メイルデーモンが走ってきてあなたにscroll of mail(手紙の巻物)を渡してくれることもある (この機能を有効にしてコンパイルされているバージョンの場合)。 NetHack のメール配達機能はシステムのメールボックスに電子メールが やってきた場合に起動される。 この機能を使用するには環境変数''MAIL''にあなたのメールボックスの ファイル名を設定して NetHack に新しいメールを探す場所を知らせる必要が ある。 また望むならば環境変数''MAILREADER''に使いたいメール受信プログラ ムのファイル名を設定することもできる。 このとき NetHack からそのプログラムを起動してその巻物を読むことができる。 メールがゲーム内においてランダムに生成されるバージョンの NetHack では これらの環境変数は無視される。 メイルデーモンは mail オプションでオフにできる。
巻物を読むためのコマンドは 'r' である。
水薬は小びんに入っている液体の色によって区別される。 水薬は飲むと消滅してしまう。
透明な水薬は水である。これらはしばしば祝福されていたり呪いがかけられていたりして、 聖水や不浄な水になったりする。不死の怪物にとって聖水は有害なので、 聖水を不死の怪物に投げつける('t')と有効である。 聖水に他の物を浸す(''#dip'')のもたいへん有益である。
水薬を飲むためのコマンドは 'q'(quaff: 飲む) である。
魔法の杖は通常何回も魔力を発揮する.杖の中には方向性のあるものがあり、 この場合杖を振る方向を指示しなくてはならない。 杖を自分に向けて振ることもできる(方向として '.' か 's' を入力する)が、 これはしばしば愚かな行為となる。 その他の杖には方向性がなく、杖を振る方向を尋ねてこない。 杖が効力を発揮する回数は杖ごとに不定で、杖を使う度にその回数は 1 ずつ減る。
杖の魔法の量がなくなると、通常は杖を使用しても何も起きない。 しかしながら時折、最後の一握りの魔力を使いきった杖から搾り取ることが可能である。 しかしこれをすると杖は壊れてしまう。 杖は適切な魔法によって再充填することができるが、 そうすると杖が爆発してしまう可能性がある。 爆発する可能性は最初は非常に小さく、同じ杖に何度も再充填するごとに大きくなる。
自暴自虐なな行為ではあるが、どうにもならなくなったときには杖を壊すという手もある。 これは弱気な行為ではない。それを行うことにより、 破壊的な魔法のエネルギーが解放されるからである。
ある杖を完全に鑑定した場合、持ち物の一覧では括弧の中に追加の情報が表示される。 それは再充填された回数、コロン、現在の使用可能な回数である。 杖が無効化された場合には使用可能な回数は -1 になる。
杖を使うためのコマンドは 'z'(zap: 杖を振る) である。壊すには 'a' (apply: 道具を使う)である。
指輪は大変役に立つ物である。 というのも水薬や巻物や杖のように魔力が一過性にしか働かないものと違い、 指輪の魔力は比較的恒久的であるからだ。
指輪をはめることによってその魔力は発揮される。 指輪は両手の薬指に 1 つずつ、計 2 つしかはめることはできない。
またたいていの指輪は身につけると腹の減り方が速くなる。 減り方は指輪の種類によって異なる。
指輪を使うためのコマンドは 'P'(put on: 指輪をはめる) と 'R'(remove: 指輪をはずす) である。
魔法書は強力な魔法を記した大きな本である。'r'(read: 読む) コマンドで 学ぶと呪文の知識が読み手に転送される(したがって最後には読めなくなる)か、 さもなくばその試みは不測の結果に終る。 呪いがかけられた魔法書や知識の及ばない神秘の古代文字で記された魔法書を 読むと健康状態に害が及ぶ可能性がある!
呪文を唱えたとき(学んでいる時も)にも魔力が逆流することもある。 あなたの経験レベルでは遠く及ばない高度な呪文を唱えようと試みたり、 対応する呪文タイプに関する技能が低かったり、 ひどくついてないときに呪文を唱えたりすると、 呪文を唱えるのに必要なエネルギーと時間を浪費しただけに終わってしまうこともある。
呪文を唱えることは、魔法のエネルギーを呼び起こしてそれを精神そのもの に集中させることである。 あなた自身の内部から出る魔法のエネルギーが開放され、 連続して呪文を唱えると疲れてしまう。 呪文を唱えるには練習が必要である。 練習していれば、それぞれの呪文領域の技能は向上していく。 しかしながら、時間が経つにつれてそれぞれの呪文に関する記憶は薄れ、 もう一度呪文を学ぶ必要がでてくるだろう。
指向性のある呪文の場合、呪文を唱える方向を指定する必要がある。 方向として'.'または's'を指定することで自分自身に対して呪文を唱えることもできる。 しかし、これはしばしば愚かな行為である。 指向性のない呪文の場合、方向を指定する必要はない。
武器が習熟度の面でグループ分けされているのと同様、呪文もグループ分けされている。 呪文を唱えるのに成功すると、そのグループを訓練したことになる; 十分に訓練したスキルを向上させる '#enhance' コマンドはそのグループの全ての 呪文に影響する。 スキルが向上すると呪文の性能が向上し、詠唱時の失敗のリスクが減り、 どれくらい長い間呪文が記憶に残っているかの推定の精度が向上する。 技能スロットは武器スキルと共有する。(''武器の技量''の項も参照のこと)
魔法を唱えるには自由に移動できなければならない。また、いくつかの種類の鎧を 着ていると魔法を唱えるのを妨げるだろう。
魔法書を読むためのコマンドは巻物を読むときと同じく 'r'(read: 読む) である。 '+' コマンドにより、知っている呪文毎に、レベル,スキル分野,成功率、どれくらい 強く記憶しているかが一覧表示される。 'Z'(cast: 呪文を唱える) コマンドにより呪文を唱える。
道具はいろいろな目的に使う種々雑多な物である。杖などと同じように使用 回数に制限のある物もある。例えばランプはしばらくたつと燃え尽きてしまう。 その他の道具の中には容器も含まれており、物を出し入れすることができる。
道具を使うためのコマンドは 'a'(apply: 道具を用いる) である。
冒険の途中で鞄や箱やひつに出くわすこともあるであろう。 これらは置いてある場所に立っている場合には 拡張コマンド「#loot」によって、 また持っているときには 'a'(apply: 道具を用いる) コマンドで開けることができる。 しかしながらひつにはしばしば錠がかかっており、大抵は重くて運びにくい物体である。 ひつは手に持つことはできない物なので、 錠をはずす('a'(apply: 道具を用いる) コマンドで鍵や錠をはずす道具を使ったり、 '^{D}'コマンドで蹴とばしたり、 拡張コマンド''#force''により武器を使ってこじ開けるなどの方法による)には 床に置かなくてはならない。
ひつには罠が仕掛けられているものもあり、錠をはずしたりふたを開けたり したときに不快な出来事が起きる。拡張コマンド''#untrap''によってチェックを して罠が無効になるよう試みることができる。
魔除けは指輪と大変よく似ており、しばしばもっと大きな効力を持っている。 指輪と同じように魔除けにはいろいろな魔法の特性があり、有益なものも有害 なものもあって、身につけることにより効力を発揮する。
魔除けは一つだけしか首にかけることができない。
魔除けを使うためのコマンドは指輪の場合と同じく 'P'(put on: 指輪を はめる) と 'R'(remove: 指輪をはずす) である。
宝石の中には価値のあるものもあり、高値で売れる。 宝石は財産を持ち歩く方法としてとして極めて効果的なやり方である。 価値のある宝石を脱出時に所持していれば得点に加算される。
他の小さな石も宝石に分類されるが、その価値はほとんどない。 しかし、全ての石は(もしスリングを持っているなら)弾として有効である。 窮余に陥いったら手で投げることも可能である。
彫像や巨石は特に有用ではないし、一般的に重いものである。 見かけとは異なった彫像もあるという噂である。
巨大なヒューマノイド(巨人やその仲間)は巨石を武器として用いることができる。
金は得点に加算され、また店では金で物を買うことができる。 迷宮にはあなたの持つお金に影響されるかもしれない数多くの怪物が いる(店主は別として)。
単に NetHack に勝利するだけでは満足できない一部のプレイヤーは、 プレイに制限を設けることに挑戦している。 これらの挑戦の一部はゲームによって自動的に記録され、 ゲーム中いつでも #conduct コマンドで確認できる。 またゲーム終了時にも表示される。 挑戦に反するような行動を取ると、もはやその挑戦は表示されない。l これらの挑戦に勝利することによって、プレイヤーは追加の''自慢する権利''を 得られる。 なお、これらの制限に従うことなくゲームに勝利することも 完全に有効であり、最初にゲームに勝利するときは普通これらの挑戦は関係ない。
挑戦のいくつかは食べ物に関するものである。 最も困難な挑戦は食料なしの挑戦である。 生物は食料なしでも長い間生存できるが、水は必要である。 従って、飲み物に対しては何の制限もない。例え栄養分があってもである。 神に祈って飢えをしのぐことはいかなる食べ物に関する挑戦にも違反しない。
厳密な菜食主義者は動物から作られた食べ物を食べない。 基本的な栄養源は果物と野菜である。 ブロッブ('b')、ゼリー('j')、細菌('F')も野菜とみなされる。 人間の食料にも動物を使っていないものがある。 レンバス、クラム、「食料」(丸薬)、Kレーション、Cレーションがそうである。 他の生物に変化しているときは、金属などの普通消化できない物質も 厳密な菜食主義者用の食料として扱われる。 しかし、これらの物も食料なしの挑戦には反することに注意すること。
菜食主義者は動物を食べない。 しかし、動物からの副生産物を食べることは厳密な菜食主義者ほどは厳しくない。 上記の厳密な菜食主義者が食べられるものに追加して、 ブラックプリン以外のプリン('P')、卵、卵から作られた食べ物 (占いクッキーとパンケーキ)、牛乳から造られた食べ物 (クリームパイとキャンディーバー)、ロイヤルゼリーを食べることができる。 モンクは菜食主義者とみなされる。
肉を食べることは厳密な菜食主義者、菜食主義者、食料なしの挑戦に反する。 これにはほし肉、上記以外の怪物の死体や缶詰、迷宮で見つかる その他の肉のかたまりを含む。 変化中に「飲み込んで消化」攻撃をかけるのはその怪物の死体を 食べたものとみなす。 皮、竜鱗、骨でできた物体を、これらを消化できる怪物に変化して食べたり、 マインドフレイヤーに変化して脳を食べることは動物を食べたとみなす。 ただし、蜜蝋は動物の副生成物とみなす。
挑戦に関わらず、消化不可能な物もあり、食べると危険なものもある。 怪物に対して「飲み込んで消化」攻撃をかけることは、 その怪物の死体を食べたものとみなす。 「厳格な菜食主義者(''vegan'')」という言葉は食べ物に関する文脈でのみ 用いられることに注意してほしい。 動物から作られた物(皮、竜の鱗、骨、角、さんご)を使ったり身につけたり することは制限に違反しない。 また、「ミルク色の」水薬は不透明な白色ではあるが、牛乳を含んでいるわけ ではないので、厳密な菜食主義者の制限に違反しない。 スライムモルドやプレイヤーが定義した''fruits''は、 例え「さくらんぼ」であろうが「ポークチョップ」であろうが、 厳密な菜食主義者の制限に違反しない。
無神論者は宗教を否定する。つまり、#pray(祈る), #offer (いけにえを捧げる), #turn (不死のものを戻す), 僧侶に対する #chat(話す)ことはできない。 一部の読者はモンクや僧侶でプレイするのもこの制限に反していると主張するかもしれないが、 ここではプレイヤーの選択の余地を残してある。 イェンダーの魔除けを神に捧げるのはゲームに勝利するために必要なので 制限には反しないものとする。 また、怒った神や僧侶やその他の宗教的存在が話す言葉を聞いても制限には反しない。 真の無神論者は言葉は聞くが,そこになんら特別な意味を見出さない。
ほとんどのプレイヤーは武器(あるいは武器として装備することを 考慮している道具)を手に戦う。 挑戦の一つはこのような武器を手にして使わずにゲームに勝利することである。 武器を投げたり、発射したり、蹴ったりするのは許される。 また、杖、呪文、あるいはその他のアイテムを使ったり、 素手や脚で戦うことも許される。
NetHack において、平和主義者は他の怪物を殺してはならない(言い換えると、 怪物の死によって経験値を得てはならない)。 これは特に難しい挑戦であるが、他の手段によって経験値を得ることは可能である。
文盲者は読み書きができない。これには以下の行為が含まれる。 巻き物を読む、魔法書を読む、占いクッキーのメッセージを読む、Tシャツの文字を読む、 巻き物を書く、''x''一文字(文盲者の伝統的なサイン)以外の文字を刻む。 刻んである文字を読むことと、ゲームに勝利するために絶対に必要なアイテムを 読むことは制限には反しないものとする。 ゲーム開始時に持っている巻き物と魔法書の内容を知っていることおよび 呪文の知識は、ゲーム開始以前に教師から教わったものとみなし、 制限には反しないものとする。
その他にいくつかの細かいゲームとして記録される挑戦がある。 怪物は虐殺することが可能である。これをせずにプレイするのも挑戦とみなす。 怪物を虐殺する機会が与えられたとき、 ''none'' (''なし'')と答えると、虐殺しないままにすることができる。 あなたはアイテムを同じグループの他のアイテムに変化させたり (''polypiling'')、 変化の杖・呪文・薬で自分の体を他の生物に変えたり(''polyself'')できる。 これらの効果を用いないことはそれぞれ挑戦とみなす。 最後に、あなたはときどき願いをかなえてもらうことがある。 なんのアイテムも願わずにプレイするのは一つの挑戦であり、 聖器を願わない(たとえ直ちに消滅したとしても)でプレイするのも一つの挑戦である。 アイテムを願う機会を与えられたとき、 ''nothing'' (''なし'') と答えると、願わないままにすることができる。
人にはそれぞれいろいろな好みがあり NetHack の遊び方もそれぞれ異なっているの で、NetHack の振る舞いを変更するため設定できるオプションがある。
オプションを設定する方法にはいくつかある。ゲーム中に 'O' コマンドを 使うことによって全てのオプションを見ることができ、そのほとんどを変更で きる。また、環境変数''NETHACKOPTIONS''や設定ファイルで自動的に設定する こともできる。NetHack のバージョンによってはゲーム開始前にオプションや システム管理者のためのグローバルな設定をすることができるプログラムが ついていることもある。
環境変数 NETHACKOPTIONS にはいろいろなオプションの初期値をカンマで区 切って列挙し設定する。オプションのうちのいくつかのものは単にオンかオフ の選択ができるだけである。そのオプション名をリストに入れるとオンになり、 オプション名の前に '!' か''no''をつけるとオフになる。その他のオプショ ンでは設定値として文字列が必要である。これらのオプションを設定するには オプション名、コロンまたはイコール記号、設定値の順で入力すればよい。 設定値は次のカンマもしくは文字列の最後までとなる。
例えば autoquiver をオン、autopickupをオフ、 nameが''Blue Meanie'' に、fruitが'' papaya''になるように 環境変数を設定するには csh では次のコマンドを入力すればよい。 (!は特殊文字なのでエスケープしてやる必要があることに注意)
setenv NETHACKOPTIONS "autoquiver,\!autopickup,name:Blue Meanie,fruit:papaya"
sh または ksh では
NETHACKOPTIONS="autoquiver,!autopickup,name:Blue Meanie,fruit:papaya" export NETHACKOPTIONS
とすればよい。
設定ファイルの中の'#'で始まる行はコメントとして扱われる。 設定ファイルの中の''OPTION=''で始まる行は環境変数''NETHACKOPTIONS'' と同じ文法でオプションが記述されているものと見なす。 ''SYMBOLS='' で始まる行は、違う文法で対応する シンボルを定義するために使われる; それぞれのエントリを表示するのに使われる現在のフォントの符号位置を指定する 10 進数の列です。 この列は各行の最後に''をつけることによって複数行に渡ることができる。
''AUTOPICKUP_EXCEPTION=''で始まる行によって ''pickup_types'' オプションの例外を定義できる。 これについてこのガイドブックで議論している節がある。
標準設定の設定ファイル名は OS によって異なるが、 環境変数''NETHACKOPTIONS''で (先頭に'@'を付けることで)使用したい設定ファイル名を指定することができる。
以下にいろいろなオプションの役割を説明する。 あまりに長すぎる文字列の部分は無視される。 以下のオプションのうち実装によっては無効となっているオプションもある。
一部のオプションは永続し、ゲーム中保存および再設定される。 設定ファイルで永続オプションを変更した場合、新しいゲームにのみ適用される。
以下はあなたが選択したウィンドゥタイプの特性をカスタマイズして 変更するために用いる様々なオプションの説明である。 長すぎる文字列は適当に切り詰められる。 全てのウィンドゥタイプに対してこれら全てのオプションが有効というわけではない。 これらのオプションが設定されたとき、もしウィンドゥタイプがその設定を 受け付けるなら、そうされる。もし受け付けられないなら、単に無視される。 現在のウィンドゥタイプで対応しているオプションは、オプション一覧表示 ('O')で表示される。 一部のオプションは'O'コマンドで動的に変更できる。
以下は特定のプラットフォームでカスタマイズや振る舞いの変更をするために 用いられるオプションの説明である。
正規表現は通常 POSIX 拡張正規表現である。 正規表現ライブラリがないプラットフォームでは正規表現対応なしで NetHack をコンパイルすることも可能である。 これは最近のプラットフォームでは真ではないが、この方法で NetHack が ビルドされると、パターンは代わりにグロブパターンが使われる。
''autopickup'' オプションの振る舞いを ''pickup_types'' オプションを使ってより洗練させることができる。
''autopickup_exception'' 行を設定ファイルに書くことで、 何かを拾おうとするときにチェックするべきパターンを定義できる。
以下は例である:
autopickup_exception="<*arrow" autopickup_exception=">*corpse" autopickup_exception=">* cursed*"
上記の例の最初のものは、全ての矢を自動的に拾う。 二番目の例は、死体は自動拾いの例外とする。 最後の例は、呪われているとわかっているものは自動拾いの例外とする。
メッセージがユーザー定義パターンにマッチングしたとき、メッセージを メッセージエリアに表示する方法を変更できる。
一般的に、メッセージ型を設定する設定ファイルエントリは次のようなものである:
MSGTYPE=type "pattern"
次のものは NetHack の内部パターンマッチング機能を使ったメッセージ型の 例である。
MSGTYPE=stop "You feel hungry." MSGTYPE=hide "You displaced *."
このように指定すると、''You feel hungry'' というメッセージが現れた時は常に more プロンプトが表示され、 "You displaced (何か)." にマッチングするメッセージは一切表示されない。
MSGTYPE 行の定義順は重要である; 最後にマッチングした規則が使われる。 一般的な場合を先に書き、例外をその後に書くこと。
一部のプラットフォームでは、メニュー行がユーザー定義パターンに マッチングしたとき、メニュー行に使う色を定義できる。 現在のところ tty, win32tty, win32gui がこれに対応している。
一般的にメニュー色割り当てを設定する設定ファイルエントリは次のようなものである:
MENUCOLOR="pattern"=color&attribute
パターンは正規表現である必要がある。
指定できる色は: black, red, green, brown, blue, magenta, cyan, gray, orange, lightgreen, yellow, lightblue, lightmagenta, lightcyan, white。
指定できる属性は: none, bold, dim, underline, blink, inverse。 なお、プラットフォームはこれを好きなように解釈するかも知れない。
次のものは NetHack の内部パターンマッチング機能を使ったメニュー色の 例である。
MENUCOLOR="* blessed *"=green MENUCOLOR="* cursed *"=red MENUCOLOR="* cursed *(being worn)"=red&underline
このように指定すると、 " blessed " が含まれているメニュー行は緑色に、 " cursed " の行は赤色に、" cursed " に引き続いて同じ行に "(being worn)" が ある場合は赤色かつ下線付きで表示する。 設定ファイル中に複数の MENUCOLOR エントリを書くことができ、メニュー行に マッチングした中で設定ファイル中の最後の MENUCOLOR 行がその行に使われる。
" uncursed " にマッチングするような色指定を意図しているなら、 呪われていないことが分かっている全ての持ち物について ''uncursed'' と 表示するための implicit_uncursed オプションをおそらく設定した方がよいことに注意すること。
メッセージウィンドウに表示されたメッセージが ユーザー定義のパターンと一致したときに 特定の音声ファイルを鳴らすことができるプラットフォームもある。 現在のところ、Qt, win32tty, win32gui がユーザー音声に対応している。
ユーザー音声とメッセージの関連付けに関する設定ファイル項目は 以下のとおりである。
このパターンは正規表現で指定する。
あなたの入手した NetHack は ステータスハイライト に対応して コンパイルされているかもしれない。 その場合、ステータスディスプレイのフィールドの色や見た目を 閾値を設定することでカスタマイズできる。
例えば、設定ファイルに次の行を書くと、ヒットポイントが30%の閾値以下になると ヒットポイントが赤色で表示される:
OPTION=hilite_status: hitpoints/30%/red/normal
もう一つの例として、次の行を設定ファイルに書くと、賢さが低下すると赤で 表示され、上昇すると緑で表示される。
OPTION=hilite_status: wisdom/updown/red/green
次のステータス項目を調整できる:
title | strength | dexterity |
constitution | intelligence | wisdom |
charisma | alignment | score |
carrying-capacity | gold | power |
power-max | experience-level | armor-class |
HD | time | hunger |
hitpoints | hitpoints-max | dungeon-level |
experience | condition |
指定できる色は: black, red, green, brown, blue, magenta, cyan, gray, orange, lightgreen, yellow, lightblue, lightmagenta, lightcyan, white。
指定できる属性は: bold, inverse, normal。 なお、プラットフォームはこれを好きなように解釈するかも知れない。 振る舞いは割合の閾値、上下、絶対値を基に起こる。 ゲーム内のオプションメニューは、設定ファイルでの正しい文法を決定する 助けになるだろう。
オプション statushilites をオフにすることでこの機能全体を無効にできる。
NetHack は symbol ファイルからシンボル集合全体を読み込むことができる。
symbol ファイルから特定のシンボル集合を選択するために使われるオプションは:
SYMBOLS 設定ファイルオプションを使っていくつかのシンボルを 上書きすることもできる。 シンボルは name:value の組で指定する。 NetHack は value 文字列を伝統的な C の方法でエスケープする。 つまり、'' は次の文字をリテラルにする接頭辞である。 従って、'' は '\' と表現する必要がある。 特殊エスケープ型式 'm' はシンボル値のメタビットを切り替え、 '^{}' 接頭辞は引き続く文字を制御文字として扱う。
Default | Symbol Name | Description |
S_air | (air) | |
_ | S_altar | (altar) |
" | S_amulet | (amulet) |
A | S_angel | (angelic being) |
a | S_ant | (ant or other insect) |
^ | S_anti_magic_trap | (anti-magic field) |
[ | S_armor | (suit or piece of armor) |
[ | S_armour | (suit or piece of armor) |
^ | S_arrow_trap | (arrow trap) |
0 | S_ball | (iron ball) |
# | S_bars | (iron bars) |
B | S_bat | (bat or bird) |
^ | S_bear_trap | (bear trap) |
- | S_blcorn | (bottom left corner) |
b | S_blob | (blob) |
+ | S_book | (spellbook) |
) | S_boomleft | (boomerang open left) |
( | S_boomright | (boomerang open right) |
` | S_boulder | (boulder) |
- | S_brcorn | (bottom right corner) |
C | S_centaur | (centaur) |
_ | S_chain | (iron chain) |
# | S_cloud | (cloud) |
c | S_cockatrice | (cockatrice) |
$ | S_coin | (pile of coins) |
# | S_corr | (corridor) |
- | S_crwall | (wall) |
^ | S_dart_trap | (dart trap) |
& | S_demon | (major demon) |
* | S_digbeam | (dig beam) |
> | S_dnladder | (ladder down) |
> | S_dnstair | (staircase down) |
d | S_dog | (dog or other canine) |
D | S_dragon | (dragon) |
; | S_eel | (sea monster) |
E | S_elemental | (elemental) |
/ | S_explode1 | (explosion top left) |
- | S_explode2 | (explosion top center) |
S_explode3 | (explosion top right) | |
| | S_explode4 | (explosion middle left) |
S_explode5 | (explosion middle center) | |
| | S_explode6 | (explosion middle right) |
S_explode7 | (explosion bottom left) | |
- | S_explode8 | (explosion bottom center) |
/ | S_explode9 | (explosion bottom right) |
e | S_eye | (eye or sphere) |
^ | S_falling_rock_trap | (falling rock trap) |
f | S_feline | (cat or other feline) |
^ | S_fire_trap | (fire trap) |
! | S_flashbeam | (flash beam) |
% | S_food | (piece of food) |
{ | S_fountain | (fountain) |
F | S_fungus | (fungus or mold) |
* | S_gem | (gem or rock) |
S_ghost | (ghost) | |
H | S_giant | (giant humanoid) |
G | S_gnome | (gnome) |
' | S_golem | (golem) |
| | S_grave | (grave) |
g | S_gremlin | (gremlin) |
- | S_hbeam | (wall) |
# | S_hcdbridge | (horizontal raised drawbridge) |
+ | S_hcdoor | (closed door) |
. | S_hodbridge | (horizontal lowered drawbridge) |
| | S_hodoor | (open door) |
^ | S_hole | (hole) |
@ | S_human | (human or elf) |
h | S_humanoid | (humanoid) |
- | S_hwall | (horizontal wall) |
. | S_ice | (ice) |
i | S_imp | (imp or minor demon) |
J | S_jabberwock | (jabberwock) |
j | S_jelly | (jelly) |
k | S_kobold | (kobold) |
K | S_kop | (Keystone Kop) |
^ | S_land_mine | (land mine) |
} | S_lava | (molten lava) |
l | S_leprechaun | (leprechaun) |
^ | S_level_teleporter | (level teleporter) |
L | S_lich | (lich) |
y | S_light | (light) |
# | S_litcorr | (lit corridor) |
: | S_lizard | (lizard) |
S_lslant | (wall) | |
^ | S_magic_portal | (magic portal) |
^ | S_magic_trap | (magic trap) |
m | S_mimic | (mimic) |
] | S_mimic_def | (mimic) |
M | S_mummy | (mummy) |
N | S_naga | (naga) |
. | S_ndoor | (doorway) |
n | S_nymph | (nymph) |
O | S_ogre | (ogre) |
o | S_orc | (orc) |
p | S_piercer | (piercer) |
^ | S_pit | (pit) |
# | S_poisoncloud | (poison cloud) |
^ | S_polymorph_trap | (polymorph trap) |
} | S_pool | (water) |
! | S_potion | (potion) |
P | S_pudding | (pudding or ooze) |
q | S_quadruped | (quadruped) |
Q | S_quantmech | (quantum mechanic) |
= | S_ring | (ring) |
` | S_rock | (boulder or statue) |
r | S_rodent | (rodent) |
^ | S_rolling_boulder_trap | (rolling boulder trap) |
. | S_room | (floor of a room) |
/ | S_rslant | (wall) |
^ | S_rust_trap | (rust trap) |
R | S_rustmonst | (rust monster or disenchanter) |
? | S_scroll | (scroll) |
# | S_sink | (sink) |
^ | S_sleeping_gas_trap | (sleeping gas trap) |
S | S_snake | (snake) |
s | S_spider | (arachnid or centipede) |
^ | S_spiked_pit | (spiked pit) |
^ | S_squeaky_board | (squeaky board) |
0 | S_ss1 | (magic shield 1 of 4) |
# | S_ss2 | (magic shield 2 of 4) |
@ | S_ss3 | (magic shield 3 of 4) |
* | S_ss4 | (magic shield 4 of 4) |
^ | S_statue_trap | (statue trap) |
S_stone | (dark part of a room) | |
- | S_sw_bc | (swallow bottom center) |
S_sw_bl | (swallow bottom left) | |
/ | S_sw_br | (swallow bottom right ) |
| | S_sw_ml | (swallow middle left) |
| | S_sw_mr | (swallow middle right) |
- | S_sw_tc | (swallow top center) |
/ | S_sw_tl | (swallow top left) |
S_sw_tr | (swallow top right) | |
- | S_tdwall | (wall) |
^ | S_teleportation_trap | (teleportation trap) |
S_throne | (opulent throne) | |
- | S_tlcorn | (top left corner) |
| | S_tlwall | (wall) |
( | S_tool | (useful item (pick-axe, key, lamp...)) |
^ | S_trap_door | (trap door) |
t | S_trapper | (trapper or lurker above) |
- | S_trcorn | (top right corner) |
# | S_tree | (tree) |
T | S_troll | (troll) |
| | S_trwall | (wall) |
- | S_tuwall | (wall) |
U | S_umber | (umber hulk) |
u | S_unicorn | (unicorn or horse) |
< | S_upladder | (ladder up) |
< | S_upstair | (staircase up) |
V | S_vampire | (vampire) |
| | S_vbeam | (wall) |
# | S_vcdbridge | (vertical raised drawbridge) |
+ | S_vcdoor | (closed door) |
. | S_venom | (splash of venom) |
^ | S_vibrating_square | (vibrating square) |
. | S_vodbridge | (vertical lowered drawbridge) |
- | S_vodoor | (open door) |
v | S_vortex | (vortex) |
| | S_vwall | (vertical wall) |
/ | S_wand | (wand) |
} | S_water | (water) |
) | S_weapon | (weapon) |
" | S_web | (web) |
w | S_worm | (worm) |
~ | S_worm_tail | (long worm tail) |
W | S_wraith | (wraith) |
x | S_xan | (xan or other mythical/fantastic insect) |
X | S_xorn | (xorn) |
Y | S_yeti | (apelike creature) |
Z | S_zombie | (zombie) |
z | S_zruty | (zruty) |
NetHack は洞窟の地図を作るのに標準の ASCII キャラクターだけを使うように 設定することもできる。これにより、 MS-DOS 版の NetHack は 音声合成または点字技術を用いれば目の不自由な人でも完全にプレイ可能である。 プレイヤーはこれらの画面読み取りシステムに関する十分な知識が必要で、 上下左右に一文字ずつ移動する方法を知らなければならないだろう。 画面読み取りシステムの検索能力を知ることもかなり価値がある。 プレイする前にこのガイドブックを十分に読めば、 画面のレイアウトがどんな感じかがわかるだろう。 また、 PC カーソルの位置を突き止めることができる必要がある。 これは自分のキャラクターの位置を示している。 '@'は他のヒューマノイドを表わすのにも用いられるので、 自分の位置を探すのに'@'を検索するだけでは不十分である。 さらに、あなたが見ている位置と PC カーソルの位置の物理的な行と桁を知らせる機能が 必要だろう。この機能はスクリーン全体にどのようなアイテムがあるかを判別するのに 便利である。 慣れたユーザーなら defaults.nh を修正することは難しくないだろうが、 初心者は少しひるんでしまう仕事かもしれない。 NetHack の全ての公式配布のシンボルファイルには NHAccess と呼ばれる symset が含まれている。 設定ファイルでこの symset を選択することにより、目の不自由な人が プレイできるような設定になる。 ファイルを修正することやゲームそのものに慣れたなら、好みに合うように 設定ファイルの SYMBOLS= で設定を変更するとよいだろう。 ゲームのアクセシビリティに最も影響を与える設定は以下のものである:
NetHack が SYSCF オプション付きでコンパイルされている場合、システム管理者は グローバル設定を設定するべきである; これは(前述した)伝統的なユーザー毎の 設定ファイルと同じ形式のファイルである。
このファイルは sysconf という名前で、その他の NetHack 補助ファイルと 同じディレクトリに置かれる。 このファイルで認識されるオプションは以下の通りである。 設定されてなかったオプションは(あなたのシステムでは適切ではないかもしれない) コンパイル時のデフォルトが使われる。
以下のオプションは score ファイルに影響する:
NetHack は設定によって、あなたの機械における高得点の一覧または高得点 者の一覧を作成する。後者の設定になっている場合、ゲームを最後まで終えた 場合を除きそのマシンの 1 つのアカウントにつき 1 つだけしかこの一覧には 載らない。あなたがこの一覧に載っている他の誰かより高い得点を取ったとき、 もしくはあなたの前の得点より高い得点を取ったときにのみ、その一覧のしか るべき位置にあなたの名前が載る。得点が何個まで載るかもコンパイル時に設 定できる。
得点は主に経験値、戦利品、到達した階とゲームの終わり方に基づいている。 ゲームを放棄した場合には持っている金を全額手にして脱出できる。 しかし恐怖の迷宮の中で殺された場合には、亡骸が発見されると持っている金の 90,% だけがギルドに伝えられる(冒険者は亡骸を発見した場合には手数料を取るこ とが知られている)。従って怪物にさらに一撃を加えて運あらば生き残らんと するか、放棄してその時点で持っている物で終了するかはあなたが決めること である。放棄した場合はすべての金を手にすることができる。しかし戦って生 き残ればさらに多くを得ることができるかも知れない。
単に現時点での高得点者・高得点の一覧を見たい場合にはほとんどの バージョンでは
nethack -s all
と入力すればよい。
NetHack は複雑で難しいゲームである。初心者は生き残るすべを知らないこ とに気づき、恐怖におじけづいてしまうかもしれない。しかし恐れることはな い。冒険する洞窟に「探検」もしくは「発見」モードがある場合には、高得点 の一覧に載らないというとるに足らないデメリットと引き替えに前のセーブファ イルを残しておけたり不死身となれたりするのである。
探検モードに入るには 2 通りの方法がある。1 つはゲームの開始時に -X スイッチを付けるか playmode:explore オプションを指定することである。 もう 1 つはゲームのプレイ中に '#exploremode' 拡張コマンドを 入力することである。 探検モードで新しいゲームを開始すると、初期装備として願いの杖が追加される; プレイ中に切り替えた場合は追加されない。 探検モードで得られる他の利点は大胆な読者諸君自ら確かめて欲しい。
ウィザードモードとも呼ばれるデバッグモードは、この概説の他には 文書化されていない。 これはキャラクターに神のような力を与えるためではなく、プログラムの問題を 調べることを意図したもので、デバッグを試みるプレイヤーは これをどのように使うかが分かることを想定している。 これは -D コマンドラインスイッチか playmode:debug オプションでゲームを始めることで開始される。
システムによっては、プレイヤーは、デバッグモードを使うことを許されている 特定のユーザー名でログインしなければならない; それ以外では、 キャラクターは特定のキャラクター名を使わなければならない (しかし職業はどれでもよい; ''ウィザード'' という名前と 職業の Wizard は何の関係もない)。 また、どのようなシステムでも、プログラムはデバッグモードそのものを 省略して設定されているかもしれない。 デバッグモードを許されていなかったり有効でない場合にデバッグモードを 使おうとすると、代わりに探検モードにフォールバックする。
最初の hack というゲームは、バークレイ版 UNIX のゲーム rogue をモデルとしている。 このドキュメントの大部分は Michael C. Toy と Kenneth C. R. C. Arnold の手になる A Guide to the Dungeons of Doom(運命の洞窟への招待) を図々しくも盗用したものである。 また一部は Ken Arromdee による Further Exploration of the Dungeons of Doom(運命の洞窟の深部への探検) から採っている。
NetHack は文字どおり何十人もの人々の手によって完成された。 以下はゲームの開発の過程での主な出来事である。
bigskip Jay Fenlason は Kenny Woodland, Mike Thome, Jon Payne らの助けを得て、最初の Hack を書いた。
Andries Brouwer はプログラムを大幅に書き換えて Hack を 元とはかなり異なったゲームに仕立て上げ、UNIX マシン用の(少なくとも)3 バージョン(1.0.1、1.0.2、1.0.3)を Usenet で発表した。
Don G. Kneller は Hack 1.0.3 を Microsoft C を使用して MS-DOS へ移植 し PC Hack 1.01e を作成した。バージョン 1.03g では DEC Rainbow の グラフィックをサポートし、続いて少なくともあと 4 つのバージョン(3.0、3.2、 3.51、3.6)を作成した。
R. Black は PC Hack 3.51 を Lattice C を使用して Atari 520/1040ST へ 移植し ST Hack 1.03 を作成した。
Mike Stephenson はこれらのいろいろなバージョンを再び 1 つに統合し、 多くの追加要素と合わせて NetHack バージョン 1.4 を作成した。さらに彼は 何千人もの人々に作業を分担して NetHack 1.4 の拡張とデバッグを行い、 NetHack バージョン 2.2 と 2.3 を発表した。
さらにその後、Mike は Ken Arromdee, Jean-Christophe Collet, Steve Creps, Eric Hendrickson、Izchak Miller、 Eric S. Raymond、John Rupley、 Mike Threepoint、Janet Walz を含むチームを率いてゲームの大幅な書き直しを行ない、 NetHack 3.0c を作成した。
NetHack 3.0 は Eric R. Smith によって Atari へ、 Timo Hakulinen によって OS/2 へ、 David Gentzel によって VMS へ移植された。 この 3 人と Kevin Darcy はその後主力開発チームに加わり、 3.0 のその後のいくつかの改訂版を作成した。
Olaf Seibert は NetHack 2.3 と 3.0 を Amiga へ移植した。 Norm Meluch、Stephen Spackman、Pierre Martineau は PC NetHack 3.0 のためのオーバーレイルーチンを設計した。 Johnny Lee は NetHack 3.0 を Macintosh へ移植した。 彼らは他のさまざまな洞窟の主たちとともに PC、Macintosh、Amiga の移植版の拡張を続け、 3.0 のその後のいくつかの改訂版を作成した。
Mike Stephenson をリーダーとし、 Izchak Miller と Janet Walz の助けによって Ken Arromdee, David Cohrs, Jean-Christophe Collet, Kevin Darcy, Matt Day, Timo Hakulinen, Steve Linhart, Dean Luick, Pat Rankin, Eric Raymond, Eric Smith を含む制作チームが 3.0の徹底的な見直しを行なった。 彼らはゲームデザインを再構築し、コードの大部分を書き直した。 複合ダンジョン、新しいディスプレイ、それぞれのキャラクター毎の特別のクエスト、 新しいエンドゲームとその他の多くの新しい要素を追加し、 NetHack 3.1を制作した。
Ken Lorber, Gregg Wonderly, Greg Olson は Richard Addison, Mike Passaretti, Olaf Seibert の助けを借りて Amiga 用 NetHack 3.1 を作成した。
Norm Meluch と Kevin Smolkowski は Carl Schelin, Stephen Spackman, Steve VanDevender, Paul Winner の助けを借りて NetHack 3.1 を PC に移植した。
Jon W{tte と Hao-yang Wang は Ross Brown, Mike Engber, David Hairston, Michael Hamel, Jonathan Handler, Johnny Lee, Tim Lennan, Rob Menke, Andy Swanson の助けを借りて MPW 用の Macintosh 用 NetHack 3.1 を作成した。 その作成中に、Barton House は Think C 用を加えた。
Timo Hakulinen は NetHack 3.1 を OS/2 に移植した。 Eric Smith は NetHack 3.1 を Atari に移植した。 Pat Rankin は Joshua Delahunty の助けを借りて VMS 版 NetHack 3.1 を作成した。 Michael Allison は NetHack 3.1 を Windows NT に移植した。
Dean Luick は David Cohrs の助けを借りて X11 用 NetHack3.1 を作成した。 Warwick Allison は Atari 用に NetHack のタイル版を作成した。 彼は後にタイルを開発チームに寄贈し、タイルサポートは他のプラットフォームにも 追加された。
Michael Allison, Ken Arromdee, David Cohrs, Jessie Collet, Steve Creps, Kevin Darcy, Timo Hakulinen, Steve Linhart, Dean Luick, Pat Rankin, Eric Smith, Mike Stephenson, Janet Walz, Paul Winner からなる 3.2の開発チームは バージョン 3.2 を 1996 年 4 月にリリースした。
バージョン 3.2 は開発チームが結成されてから 10 周年のものであった。 彼らのゲームへの貢献について記すと、13 人の初期の開発チーム全員は このリリースの開始時の最初の時点までチームに残っていた。 が、 3.1.3 から 3.2 の間に、開発チームの創始者の一人である Izchak Miller博士が癌と診断され、亡くなった。 このリリースは開発チームおよび移植チームから彼に捧げられた。
NetHack 3.1 と 3.2 の時代に、ゲームに熱狂した何人かが ゲームに自分自身の変更を加えた「亜種」を公に発表した。
Tom Proudfoot と Yuval Oren は NetHack++ を作成し、 これはすぐに NetHack$--$ に改名された。 これとは独立に、Stephen White は NetHack Plus を作成した。 Tom Proudfoot は後に NetHack Plus と NetHack$--$ を統合し、 SLASH を作成した。 Larry Stewart-Zerba と Warwick Allison は呪文詠唱システムを改良した Wizard Patch を作成した。 Warwick Allison は NetHack を Qt インターフェースを使うように 変更した。
Warren Cheung は SLASH と Wizard Patch を統合して Slash'em を作成し、 Kevin Hugo の力を借りて、多くの要素を追加した。 Kevin は後に開発チームに加わり、これらのアイデアを NetHack 3.3 に 統合した。
3.2 の最終バージョンはバグ修正版である 3.2.3 である。 これは 2000 年問題対策のために 3.3.0 と同時に 1999 年 12 月に発表された。
Michael Allison, Ken Arromdee, David Cohrs, Jessie Collet, Steve Creps, Kevin Darcy, Timo Hakulinen, Kevin Hugo, Steve Linhart, Ken Lorber, Dean Luick, Pat Rankin, Eric Smith, Mike Stephenson, Janet Walz, Paul Winner からなる 3.3 の開発チームは 1999 年 12 月に 3.3.0を、2000 年 8 月に 3.3.1 をリリースした。
バージョン 3.3 は多くの新要素を提供した。 まず、種族と職業を分離した最初のバージョンである。 職業としてのエルフは削除され、種族の一つとなった。 また、ドワーフ、ノーム、オークが種族として追加された。 モンクとレンジャーの二つが職業として追加された。 さらに、動物に乗ることが出来る最初のバージョンでもあり、 発見された全てのバグをウェブサイトで公表した最初のバージョンでもある。 バグリストが順調に伸びていったにも関わらず、 3.3 は 1 年半続いたことで十分安定していたことを証明した。
3.4 開発チームは Michael Allison, Ken Arromdee, David Cohrs, Jessie Collet, Kevin Hugo, Ken Lorber, Dean Luick, Pat Rankin, Mike Stephenson, Janet Walz, and Paul Winner で開始され、 NetHack 3.4.0 リリース直前の 2002 年 3 月に Warwick Allison が加わった。
バージョン 3.3 と同様に、様々な人々が NetHack の色々な プラットフォームへの移植を行なってくれた。
Pat Rankin は 3.4 の VMS への移植を担当した。
Michael Allison は MS-DOS 版の NetHack 3.4 を管理している。 Paul Winner と Yitzhak Sapir が手伝っている。
Dean Luick, Mark Modrall, Kevin Hugo は 3.4 の Macintosh への移植と拡張を担当した。
Michael Allison, David Cohrs, Alex Kompel, Dion Nicolaas, Yitzhak Sapir は 3.4 の Microsoft Windows プラットフォームへの 移植と拡張を担当した。 Alex Kompel は Windows 版への新しいグラフィックインターフェースを 提供した。 Alex Kompel はまた、3.4.1 の Windows CE 版を提供した。
Ron Van Iwaarden は過去いくつかのリリースの OS/2 版 NetHack の 唯一の管理者だった。 残念ながら Ron の最後の OS/2 マシンは 2006 年初頭に動かなくなった。 近年まで OS/2 で NetHack を生き続けさせたことにことについて Ron に 非常に感謝する。
Amiga への移植は Janne Salmijärvi が 3.3.1 で復活させた後、 Janne Salmijärvi と Teemu Suikki が 3.4 への保守と 拡張を行った。
3.3.1 で復活した Atari 版は Christian ''Marvin'' Bressler が 3.4 を保守した。
2003 年 12 月の NetHack 3.4.3 のリリースは、長いリリース中断の始まりとなった。 3.4.3 は、コミュニティによって 10 年以上楽しまれ続けられたことで 非常に安定したバージョンであることが示された。 3.4.3 の間、The devteam は水面下でゆっくりと静かにゲームに対して作業を 続けていた。 同じ頃、NetHack コミュニティにいくつかの新しいバリアントが出現した。 特に、Derek S. Ray による sporkhack、Patric Mueller による unnethack、 元々は Daniel Thaler で、それからは Alex Smith による nitrohack およびその後継、Tung Nguyen による Dynahack である。 これらのバリアントの一部は開発と保守が続けられ、今でもコミュニティで 楽しまれている。
最終的に 3.6.0 としてリリースされるものの開発の初期では、 開発チームは Warwick Allison, Michael Allison, Ken Arromdee, David Cohrs, Jessie Collet, Ken Lorber, Dean Luick, Pat Rankin, Mike Stephenson, Janet Walz, Paul Winner で構成されていた。 2015 年初頭の 3.6.0 リリースの下準備として、新しいメンバーである Sean Hunt, Pasi Kallinen, Derek S. Ray が NetHack 開発チームに加わった。
2014 年 9 月に、開発中のコードの中間的なスナップショットが他のグループによって 公にされた。 コードは作業中のもので、適切なリリースのためのデバッグプロセスを経ていない ものであったので、コードスナップショットに使われていたバージョン番号は 欠番として、公式な NetHack リリースでは使わないことに決定した。 devteam の公式 nethack.org web サイトにアナウンスが投稿され、 公式リリースバージョンとして 3.4.4, 3.5, 3.5.0 は使わないことを示した。
2014 年 11 月、NetHack 3.6 のリリースのための準備が開始された。 3.6 バージョンでは、以前のバージョンから開発チームによってなされた作業と、 いくつかの愛好者コミュニティのパッチがマージされた。 多くのバグが修正され、大量のコードが再構成された。
The development team 及び Steve VanDevender と Kevin Smolkowski は NetHack 3.6.0 が様々な Unix の亜種で 動作し続けるようにし、また X11 インターフェースを管理している。
Ken Lorber, Haoyang Wang, Pat Rankin, Dean Luick は NetHack 3.6.0 の Mac 版を管理している。
Michael Allison, Derek S. Ray, Yitzhak Sapir, Alex Kompel, Dion Nicolaas は NetHack 3.6.0 の Microsoft Windows 版を管理している。
Ken Lorber によって管理されている NetHack 公式 web サイトは: http://www.nethack.org/.
The devteam は、nethack.alt.org と devnull.net でゲームを プレイすることを可能にしている公共 NetHack サーバに関わっている親切な人々に 特別な感謝の意を伝えたい。 ほとんどどこからでも NetHack のゲームを公式にプレイする方法を 提供するだけではなく、年次 NetHack トーナメントを何年も何年もホストしている。 NetHack コミュニティに成り代わって、 M. Drew Streib, Pasi Kallinen, Robin Bandy に感謝する。
Adam Aronow | Frederick Roeber | Kevin Smolkowski | Richard Beigel |
Alex Kompel | Gil Neiger | Kevin Sweet | Richard P. Hughey |
Andreas Dorn | Greg Laskin | Lars Huttar | Rob Menke |
Andy Church | Greg Olson | Leon Arnott | Robin Bandy |
Andy Swanson | Gregg Wonderly | M. Drew Streib | Robin Johnson |
Ari Huttunen | Hao-yang Wang | Malcolm Ryan | Roderick Schertler |
Barton House | Helge Hafting | Mark Gooderum | Roland McGrath |
Benson I. Margulies | Irina Rempt-Drijfhout | Mark Modrall | Ron Van Iwaarden |
Bill Dyer | Izchak Miller | Marvin Bressler | Ronnen Miller |
Boudewijn Waijers | J. Ali Harlow | Matthew Day | Ross Brown |
Bruce Cox | Janet Walz | Merlyn LeRoy | Sascha Wostmann |
Bruce Holloway | Janne Salmij"{a}rvi | Michael Allison | Scott Bigham |
Bruce Mewborne | Jean-Christophe Collet | Michael Feir | Scott R. Turner |
Carl Schelin | Jeff Bailey | Michael Hamel | Sean Hunt |
Chris Russo | Jochen Erwied | Michael Sokolov | Stephen Spackman |
David Cohrs | John Kallen | Mike Engber | Stefan Thielscher |
David Damerell | John Rupley | Mike Gallop | Stephen White |
David Gentzel | John S. Bien | Mike Passaretti | Steve Creps |
David Hairston | Johnny Lee | Mike Stephenson | Steve Linhart |
Dean Luick | Jon W{tte | Mikko Juola | Steve VanDevender |
Del Lamb | Jonathan Handler | Nathan Eady | Teemu Suikki |
Derek S. Ray | Joshua Delahunty | Norm Meluch | Tim Lennan |
Deron Meranda | Keizo Yamamoto | Olaf Seibert | Timo Hakulinen |
Dion Nicolaas | Ken Arnold | Pasi Kallinen | Tom Almy |
Dylan O'Donnell | Ken Arromdee | Pat Rankin | Tom West |
Eric Backus | Ken Lorber | Paul Winner | Warren Cheung |
Eric Hendrickson | Ken Washikita | Pierre Martineau | Warwick Allison |
Eric R. Smith | Kevin Darcy | Ralf Brown | Yitzhak Sapir |
Eric S. Raymond | Kevin Hugo | Ray Chason | |
Erik Andersen | Kevin Sitze | Richard Addison |