2025年12月21日

NetHack 3.7 ビルド手順及びダウンロード(Windows)

25/12/21 21:47 追記: "nethack-370-win-x86.zip"と記事を更新しました。この時刻以前にダウンロードされた方は、更新をお勧めします。

この記事は、Roguelike Advent Calendar 2025 12/21 の記事です。

目次

ダウンロード

下記リンクからダウンロードしてください。

25/12/21 21:47 追記: "TTY_PERM_INVENT"を有効にしたファイルに差し替えました。

https://www.mediafire.com/file/5yrp9e9284j8qyw/nethack-370-win-x86.zip/file

以下はビルドに使用したソースファイルです。最新版をビルドしたい場合、Github からダウンロードしてください。

https://www.mediafire.com/file/0iijgevtw80gyj2/NetHack-NetHack-3.7.zip/file

起動する前に

"nethack-370-win-x86.zip"を展開してください。 同一ディレクトリに設定ファイルやセーブデータを置きたい場合、 以下の手順を実行してください。

1."sysconf.template"を、同一ディレクトリに拡張子を消してコピーする
2."sysconf"をテキストエディタで開き、
  #PORTABLE_DEVICE_PATHS=0
  を
  PORTABLE_DEVICE_PATHS=1
  に書き換え、上書き保存する。

起動方法

tty

nh37-tty.png

"NetHack.exe"を実行してください。

mswin

2025-12-21 00_32_18-NetHack for Windows - Graphical Interface.png

"NetHackW.exe"を実行してください。

curses

2025-12-21 20_49_20-NetHack 3.7.0-132.png

".nethackrc"をテキストエディタで開き、
#OPTIONS=windowtype:curses
の先頭のシャープを消して上書き保存し、
"NetHack.exe"または"NetHackW.exe"を実行してください。

".nethackrc"は、"sysconf"がゲームと同一ディレクトリに無い場合、
一度"NetHack(W).exe"を起動すると
C:\Users\ユーザー名\NetHack
に作成されます。

オプション

".nethackrc"で変更できます。https://nethackwiki.com/wiki/Options に、
英語ですが各項目の解説があります。
Curses Interfaceの場合、瀕死になるとバーが点滅して目に悪いので、
OPTIONS=hitpointbar
を
OPTIONS=!hitpointbar
に書き換えた方がいいかもしれません。

ゲーム開始時のチュートリアルが不要な場合、
OPTIONS=!tutorial
を追加する事で飛ばす事ができます。

Curses Interface使用時、右側にインベントリを常時表示したい場合、
"TTY_PERM_INVENT"が有効になっていれば、
OPTIONS=term_cols:138
OPTIONS=term_rows:32
OPTIONS=perm_invent
のように追加すると表示できます。"term_cols"は横の文字数、
"term_rows"は縦の文字数なので、コンソールに合わせて適当な値を
入力してください。小さすぎると表示に問題が出ます。

Windows 11 におけるビルド手順

1.https://github.com/NetHack/NetHack からzipをダウンロードし、展開する

2.展開したファイル、"sys/windows/fetch.cmd"をこのファイルに差し替え

差し替える理由は、バッチファイルのif文の中で変数をsetして使うことはできないため

3.msvcが無ければ用意する。例として、Visual Studio Community 2026を使用する場合、 ここからダウンロードし、"C++によるデスクトップ開発"にチェックを入れインストールし、念のため再起動することで準備が完了です。NetHack のビルドだけが目的であれば、それ以外はチェックを外して大丈夫なはずです。

4.スタートメニューから、"Visual Studio" > "Developer PowerShell for VS 2026"を起動。 以下はこのプロンプトに入力する

5.zipを展開したディレクトリに移動する

6.以下のコマンドを入力し、Luaをダウンロード

  sys\windows\fetch.cmd lua

7.Curses Interfaceを使う場合、以下のコマンドを入力し、PDCursesをダウンロード

  sys\windows\fetch.cmd pdcursesmod
  
  さらに、インベントリを常に右側に表示したい場合、"include/config.ini"をテキストエディタで開き、
  /* #define TTY_PERM_INVENT */
  を
  #define TTY_PERM_INVENT
  に書き換えて上書き保存する

8.Dump Logを保存したい場合、"include/config.ini"をテキストエディタで開き、

  /* #define DUMPLOG */  /* End-of-game dump logs */
  を
  #define DUMPLOG  /* End-of-game dump logs */
  に書き換えて上書き保存する

9.以下のコマンドを順に入力

  cd sys\windows
  .\nhsetup.bat
  cd ..\..\src

A.Curses Interfaceを使わない場合、"Makefile"をテキストエディタで開き、

  CURSES_CONSOLE = Y
  CURSES_GRAPHICAL = Y
  の末尾を"N"に書き換え、上書き保存する

B.以下のコマンドを入力

  nmake package

C.ビルド完了

binary\ には実行ファイル一式が、 package\ にはそれを圧縮したファイルが作成される。


3.7 をダウンロードできるページが見当たらなかったのでビルドしました。もっと探せばあるのかもしれませんが、自力でビルドするのもいいものです。

fetch.cmdが上手く動かない理由がわからず混乱しましたが、 理由を説明している記事を発見できたので直せました。 私が英語でのやり取りができれば、コミットするのですが。

posted by Takenoko at 00:53| Comment(0) | game | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

×

この広告は90日以上新しい記事の投稿がないブログに表示されております。