jnethack -X でなくても不死身になる

nethackが普通の?RPGと何が違うかと言えば、 「一度死んだら最初からやり直さなくちゃいけない」 ことでしょう。これはたまらん。 わしはよくjnethack -w(魔法使い)でやるのですが、 最初に貰えるアイテムによってその後の展開に雲泥の差がある。 たとえば、「魔法の矢の魔法書」とか「魔法のマーカー」とか 「争いの指輪」とか「変化の杖」 (ペットを強力にして店主を殺す) が最初からあったら、随分便利なわけです。 でも、これが出てくる確率は低いので(詳しくは スポイラーに)、
alias j 'jnethack -w'
とかしておいて、
% j
をまず、連打して、、などという初歩的な努力を何度もすることに なります。 ということで、これが嫌なら
% jnethack -X
とか、-D をすれば不死身の探索モードで始めることが出来ますが、 こいつはつまらん。やっぱり、人間死の恐怖があってはじめて気合いが入る。 まぁ、わしが一番初歩的に面白いのは、店でものを盗んで、店主におっかけられて、 何度も死ぬんだけど、生き返って、店主を攻撃し続けて、その上で店主にむかって # chat することですが。。 こういうことをしていても上達しない。

ということで、みんな知ってるかもしれませんが、わしは今まで 気がつかなかった方法です。

要するに、userごとのsaveファイルがどこにあるかということで わしの場合( plamo linux 1.3のJGから拾ってきた)は
/usr/local/games/lib/jnethackdir/save/
以下に
102USERNAME.gz
みたいなファイル名で保存されてるわけです(102はuserID)。 こいつを、こまめにsaveしてやればよい。

具体的にセーブファイルをためておくディレクトリを $HOME/.jnethack としておくと、jnsave とか適当な名前で

#!/bin/sh
cp /usr/local/games/lib/jnethackdir/save/*USERNAME* /home/USERNAME/.jnethack/

こんなスクリプトを作ってやって、さらに jnrecov とか適当な名前で

#!/bin/sh
cp /home/USERNAME/.jnethack/*USERNAME*/usr/local/games/lib/jnethackdir/save/
chown games /usr/local/games/lib/jnethackdir/save/*USERNAME*
chgrp bin /usr/local/games/lib/jnethackdir/save/*USERNAME*

こんなスクリプトを作ってやると、
1. 普段からこまめにjnsaveでセーブしてやり
2. 死んでしまったら、
% su
root% jnrecov
でセーブファイルを戻してやれば良いということになります。

なんだ、。こんなことだったのか。
rootにならないと使えない方法だけど。
でも、これって卑怯臭いけど、うーむ、わしの友達で随分jnethackやりこんで いる人でも
nethackは一度死んだらおしまいだから難しいのだ
と言っていたので、それを真に受けて今まで暮らしてきました。 (どうでもいいけど、計算機とのつき合いというのは、この 「師匠が言うことを真に受ける」あるいは誤解することで 随分無駄な努力をすることが多いですね。。) でも、こうやって不死身になったところで、基本的な技術がないと クリアー出来ないと思うんだけど、、このゲーム。 卑怯者と呼ばれても、もうちょっとだけ楽にやりたいのさ。