2019年07月15日

JNethack TNG をコンパイル

JSlash'EM に続いて, JNethack TNG もコンパイルしました. 初 Nethack は PC-98 の TNG だったので, もう一度やってみたくなったのです. 今回は, JNethack 3.4.3-0.11 のソースに TNG 最新安定版 のパッチを当てます. 少し対象バージョンが違いますが, 大丈夫だろうと判断しました.


nethack-343-src.tgz
jnethack-3.4.3-0.11.diff.gz

を,

jnethack-3.4.3-0.10-tng-0.7.9.5.patch.bz2


nhreplace.py

をダウンロードして,

/home/ユーザー名/

に用意し, 端末で下記を入力

$ cd $HOME
$ sudo apt install build-essential flex bison libncurses-dev
$ tar zxvf nethack-343-src.tgz
$ cd nethack-3.4.3
$ zcat ../jnethack-3.4.3-0.11.diff.gz | patch -p1
$ bzcat ../jnethack-3.4.3-0.10-tng-0.7.9.5.patch.bz2 | patch -p1

テキストエディタで, dat/jrumors.tru.rej の 7 行目 の 2 文字目から行末までコピーし, dat/jrumors.tru の 76 行目に挿入する.

$ sh sys/unix/setup.sh
$ python ../nhreplace.py
$ make all
$ sudo make install

ここまで入力.

/home/ユーザー名/ に

OPTIONS=color
OPTIONS=windowtype:tty
OPTIONS=kcode:jis

を記述した .jnethackrc という名のテキストファイルを作成

端末から, jnethack で起動. mlterm から起動すると, 文字化けしませんでした. mlterm のインストール方法 mlterm の設定

posted by Takenoko at 16:34| Comment(0) | game | このブログの読者になる | 更新情報をチェックする

2019年06月21日

JSlash'EM スクリーンショット

久々だし, せっかくなのでスクリーンショット.
jslashjedi01.png
自属性の寺院はいいんだが, 杖屋が無いのが残念. 壁はドワーフにボロボロにされる. いつものこと.

jslashjedi02.png
死体を三体ほど捧げただけで, いきなりグレイスワンダー. クエストアーティファクトとの二刀流が楽しみだが, そこまで生きられるかどうか.
ラベル:slash'em
posted by Takenoko at 15:21| Comment(0) | game | このブログの読者になる | 更新情報をチェックする

JSlash'EM にジェダイパッチを適用してインストール

久々に JSlash'EM を起動しようとしたら失敗しました. 以前, OS を再インストールしたのですが, その際に HOME ディレクトリ以外のファイルは消えたようです. というわけで, もう一度インストールしました. OS は Linux Mint 18.3 Xfce です. 前回の記事は, 今読むと少しわかりづらいので, 今回はもう少し丁寧に書きました.


se007e7f3.tar.gz
jslashem-0.0.7E7F3-J0.2.1.diff.gz
jslashem_jedi_0.5.patch


nhreplace.py

をダウンロードして,

/home/ユーザー名/

に用意し, 端末で下記を入力

cd $HOME
sudo apt install build-essential flex bison libncurses-dev
tar zxvf se007e7f3.tar.gz
cd slashem-0.0.7E7F3
zcat ../jslashem-0.0.7E7F3-J0.2.1.diff.gz | nkf -e | patch -p1
patch -p1 < ../jslashem_jedi_0.5.patch | nkf -e
sh sys/unix/setup.sh
python ../nhreplace.py
make all
sudo make install

ここまで入力.

/home/ユーザー名/ に

OPTIONS=color
OPTIONS=windowtype:tty
OPTIONS=kcode:jis

を記述した .jslashemrc という名のテキストファイルを作成

起動時は,
[ターミナル > 文字エンコーディング > 日本語 > ISO-2022-JP]
を選択し,

jslashem

と入力すると起動する.
ISO-2022-JP 以外だと文字化けする. 起動時に文字化けしている場合は, あわてずにエンコーディングを変更し, インベントリでも表示すれば直る.

操作メモ. よく忘れる, というか忘れていたので.
[Shift + アイテムの記号] でその種類の全てのアイテムを選択&選択解除できる
~ で全てのアイテム

ラベル:slash'em Linux Compile
posted by Takenoko at 14:59| Comment(0) | game | このブログの読者になる | 更新情報をチェックする

2019年04月15日

kivy 一行TextInput の高さを font_size から計算して設定する

タイトルの通りです.



これで, 文字列が Left, Middle に表示されるはずです.
ラベル:Python kivy
posted by Takenoko at 15:27| Comment(0) | programming | このブログの読者になる | 更新情報をチェックする

2019年04月12日

kivy ListView のアイテムが選択された時の処理を追加 続き


listadapter2.py


main.py


main.kv


ListAdapter を継承したクラス, ListAdapter2 を別ファイルに記述し, 引数を関数にして, 使い回せるようにしました. いいクラス名が浮かばなかった. SelectableListAdapter にしようかと思ったけど, 元々選択はできるわけだし. callback という単語はよく見るけど, 意味はよくわかっていません. こういう使い方でいいんだろうか.
ラベル:Python kivy
posted by Takenoko at 14:17| Comment(0) | programming | このブログの読者になる | 更新情報をチェックする

2019年04月09日

kivy ListView のアイテムが選択された時の処理を追加

タイトルの通りです. アイテムの選択状態を Label に反映するサンプルです.

main.py


main.kv


19/04/12 追記: 続きを書きました.
ラベル:Python kivy
posted by Takenoko at 14:59| Comment(0) | programming | このブログの読者になる | 更新情報をチェックする

2019年03月27日

kivy クラスルールと継承

クラスルールは, それを継承するクラスにも適用される.



この場合, Label を継承している Button の font_size も 24 になってしまう. ルールは上から順に適用され, 競合する場合は下のルールで上書きされるため, Label と Button の順序を逆にすれば問題ない. 当たり前の事かもしれないが, このことに気づかず, しばらく悩んだので.

19/04/02 追記: タイトル変更, 文章を少し修正.
ラベル:kivy
posted by Takenoko at 14:57| Comment(0) | programming | このブログの読者になる | 更新情報をチェックする

2019年03月26日

python で迷路生成

maze256_2.png
毎回, 始点をランダムに選択した場合

0_2.png
可能な限り, 伸ばした先の点を次の始点にする

maze128_2.png
ランダム

以前に java で書いた迷路生成するコード を, 伸ばす度に始点を変更するかどうかの判定を追加し,  python に移植してみました. gui は kivy です. ソースファイル . linux と android(kivy launcher) で動作を確認しています. main.py が gui, test.py が cui です. test.py は kivy を使っておらず, python のみです.

kivy での画像生成やアニメーションの方法を覚えるために作ったので, 迷路の生成は重要ではないんですが, python2 と 3 で, 生成にかかる時間が数倍から十倍程度違うのが気になります. python2 の方が非常に遅い. 3 より 2 のが速いらしいんですが.

19/03/27 追記 : ソースファイルを差し替え. ループのネストを一つ減らしてみたり, 配列シャッフル用の配列を使いまわしたりしてみたが, 変わらず. python2 のサポート期限は 2020 年らしいので, まあいいか...
19/04/12 追記: ファイル名追加. 画像差し替え.

mazegenerator.py

xorshift128.py
ラベル:Python kivy 迷路
posted by Takenoko at 14:17| Comment(0) | programming | このブログの読者になる | 更新情報をチェックする

2018年07月14日

Cataclysm:DDA を 32bit Linux でコンパイル

前回の続き。make の引数を追加することで、日本語化できました。 ビルドとコンパイルの違いがいまいちよくわかってない。 以下、手順です。

lua がインストールされていない場合は以下の三行を実行する。 lua を使わない場合は不要。

sudo apt install lua5.2

sudo apt-get install liblua5.2-0-dev

sudo apt install luajit

clang が速いらしいので、今回はこっちを使ってみる。 使わない場合、既に入っている場合は必要のない一行。

sudo apt install clang

SDL2 をインストールする。

sudo apt-get install -y libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev

最新版をダウンロードし、コンパイルする。 CLANG=1 で clang、無い場合は gcc を使うのだと思う。 LUA=1 が無いと、lua で書かれた MOD が使えなくなる?-j オプションは、シングルコアだし古い PC だしということで使わなかった。

git clone --depth 1 https://github.com/CleverRaven/Cataclysm-DDA.git -b master --single-branch

cd Cataclysm-DDA/

make NATIVE=linux32 RELEASE=1 TILES=1 SOUND=1 LOCALIZE=1 LANGUAGES="ja" CLANG=1 LUA=1

起動。

./cataclysm-launcher

今回も、コンパイルに 50 分かかった。

CataclysmTitleJP.png

日本語化に成功。

CataclysmStart.png

タイルも表示されているし、音も鳴る。ただ、日本語入力ができない。よくある事だけど。

参考ページ

posted by Takenoko at 03:19| Comment(0) | game | このブログの読者になる | 更新情報をチェックする

2018年07月12日

Cataclysm DDA をビルドしてみた

18/07/14 追記
この記事は不完全なので、もしコンパイルの参考にされる場合、次回の記事をご覧ください。
追記終わり。

Cataclysm という Roguelike が気になっていたんですが, 規模が大きそうだったので, いままで敬遠していました. 最近になって手を出してみようと思ったのですが, 32 Bit Linux 版だけは更新されていないようです. Win 機が不調なため, 主に古い Linux 機を使用しているのです. 1 週間程度, 古いバージョンで遊んでいたんですが, 最新版をやってみたくなり, 最新版(多分)をビルドしてみました. 約 50 分もかかったので, またビルドすることがあるかどうか微妙ですが, 手順をメモしておきます.

sudo apt-get install -y libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev

git clone --depth 1 https://github.com/CleverRaven/Cataclysm-DDA.git -b master --single-branch

cd Cataclysm-DDA/

make -j2 TILES=1 RELEASE=1

SDL2 をインストールしている最初の一行は一度だけでいいはず. 引数の -j の値はコア数 *2 にするといいとあったけど, シングルコアの場合はどうなんだろう.

./cataclysm-launcher

で起動します.

CataclysmTitle.png

Language を日本語にしても日本語にならない. 開発版の日本語化方法 を見つけたけど, これでもダメだった. どこを変更すればいいんだろうか.

参考ページ

ラベル:Cataclysm:DDA
posted by Takenoko at 21:49| Comment(0) | game | このブログの読者になる | 更新情報をチェックする