NetHackの2000年問題について

JNetHack-1.1.0以前のバージョンおよびNetHack-3.2.2以前のバージョンは西暦2000年になった瞬間スコアファイルが読めなくなるという問題をかかえています。

これを解決する一番簡単な方法はJNetHackならバージョンアップ、NetHackならGTKのパッチを当ててコンパイルしなおすことです。

どうしてもオリジナルにしておきたいという人は src/hacklib.cの yymmddという 関数を以下のように修正してください。

        Sprintf(datestr, "%02d%02d%02d",
                lt->tm_year % 100, lt->tm_mon + 1, lt->tm_mday);
この関数はログやスコアを書き出すときのみに使われるだけですので、これで問題なく動作すると思います。