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 | このブログの読者になる | 更新情報をチェックする

2018年02月18日

java でコンポーネントを使わずにテキスト折り返し

タイトルの通りです。半角と全角を区別して、指定した幅で改行します。

WordWrapper.java


WordWrapCreater.java(json で設定するためのクラス)


wordwrap.json(WordWrapper のコンストラクタを使う場合は不要)


WordWrapTester.java(テスト用)


ソースコードとjarファイルのダウンロード

javadoc も頑張って書きました。
wordWrapToString で String が、wordWrapToArray で String の配列が得られます。引数については、getter/setter の javadoc で多分わかると思います。

インスタンス化の手段は二種類あります。json で設定を書く必要がなければ WordWrapper.java だけでいいです。json を使う場合は、jackson を使用しているため、Group: com.fasterxml.jackson.coreにある jackson-annotations-(バージョン).jar, jackson-core-(バージョン).jar, jackson-databind-(バージョン).jar をダウンロードし、外部ライブラリのインストールに書いてある方法などで参照できるようにする必要があります。WordWrapTester.java はテスト用とコンストラクタの設定例なので、実際に使う場合には必要ありません。

18/02/20 追記
trim部分を修正。ダウンロードを追加。

ラベル:java
posted by Takenoko at 22:37| Comment(0) | programming | このブログの読者になる | 更新情報をチェックする

2018年02月05日

Processing 解像度を変更してフルスクリーンにする

タイトルの通りです。3.0 以降ではFullScreen API が使えないらしいので、なんとかしてみました。fullScreen() だと、解像度がそのままなので。バージョンは 3.3.6 です。



ESC キーで終了し、解像度が元に戻ります。レンダラがデフォルトの JAVA2D の場合のみですが、これで解像度を変更してフルスクリーンにすることができると思います。それ以外のレンダラだと、エラーが出るはずです。試してませんが。

参考ページ

ラベル:Processing
posted by Takenoko at 20:42| Comment(0) | programming | このブログの読者になる | 更新情報をチェックする

2018年01月29日

Processing 起動時のFocus



レンダラがデフォルトの JAVA2D の時のみ確認できた現象なんですが、起動時にウィンドウがフォーカスを持っていたり失ったりと、安定しません。環境によるかもしれませんが、このコードを何度も実行すると、私の環境ではそうなりました。そこで、確実にフォーカスを持たせることにしました。



こうすると、(多分)確実にフォーカスを持ってくれると思います。

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

2018年01月06日

Processing で CTRLを押しながらキーを押したかどうか判別する

最近、Processing を始めました。これ、いいです。Java の経験があればスムーズに書けると思います。

で、タイトルの方法について、試行錯誤していたら解決できたので、書いておきます。バージョンは 3.3.6 です。



引数なしの keyPressed() ではなく、これを使います。
CTRL を押しながら z を押すと true が、それ以外の場合は false が出力されます。KeyEvent のメソッドで、Shift, Alt などでも取得できそうです。そっちは試していませんが。

18/01/07 追記 : スーパークラスのメソッドを呼ぶ必要があると思っていたが、呼ばなくても動いたので一行削除。

ラベル:Processing
posted by Takenoko at 20:27| Comment(0) | programming | このブログの読者になる | 更新情報をチェックする

2017年12月07日

また、Java でダンジョン自動生成

dg171124_1.png

また、ダンジョン自動生成です。 以前 よりは自然な感じになったかなあと思ってます。GUI の英語は適当です。ラベルにマウスオーバーすると、値の最小と最大、場合によっては簡単な説明が表示されます。

dg171124_2.png dg171124_3.png

dg171124_4.png dg171124_5.png

生成方法ですが、簡単に言うと、

  • 1. 最初の部屋を作る
  • 2. 今まで作った部屋をランダムに選択する
  • 3. その部屋の周囲に部屋を作れそうであればドアと部屋を作る
  • 4. すでに部屋があった場合、設定した確率でドアを追加する
  • 5. 作成した面積が設定した値を超えたら終わり
  • 6. 2 へ

説明が下手ですがこんな感じです。考え方は 以前 と同じです。

ソースと実行jarのダウンロード
実行には java8 が必要です。

将来的には Swing が廃止されるらしい。いつの事かはわからないけど、FX に移行したほうがいいんだろうか。でも、まだ情報が少ないだろうし。

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

2017年11月07日

簡単にロゴを作れるソフト、LogoMaker を作りました

scr_lm2.png

このスクリーンショットのような、簡単なロゴを作成できるツールを作りました。自分で使うために作ったのでマニュアルは書いてませんが、そんなに複雑な機能はないので、大丈夫だと思います。疑問やバグなどがあればコメントして下さい。

scr_lm1.png

こういった、複数行の文字列画像も作れます。

ダウンロード

実行には Java8 が必要です。ソースファイルも同梱してあります。

17/11/08 19:56 追記 zipファイルにマニュアルを追加して、差し替えました。lm.jar を実行することで起動します。manual.txt が簡単な説明書きです。

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

2017年04月01日

大航海時代III いろいろ

どこかに書いてあるかもしれないが、気づいたことなど。

  • 海戦、陸戦の勝利時、プレイヤーと副官の武力が上がることがある。+2 まで確認。都市占領時は +3 まで確認した。
  • 結婚した酒場女によって、高くなりやすい子供の能力が違うようだ。カルロータは武力、アルダは運、ユリアは体力、など。デルフォイで教えてもらえる。何十回か試してみて、確かに、対象の値は高くなることが多かった。たまに下回ることもあったが。
  • イスパニアの征服者で開始すると、アルジェの海賊を退治するイベントが発生するはずなのだが、このイベントが起こらず、1511年位になって、その次のイベント二つが立て続けに発生した。ゲーム開始早々にチュニスを占領してしまい、結果的にアルジェがイスパニア領になってしまったのがまずかったのかもしれない。
  • ユニコーンの願いの効果は、
    • 神の祝福 信仰+7
    • 皆の幸せ 運+3
    • うまい物 疲労回復
    だと思われる。信仰も運も、どう影響するのかよくわからない値だが。公式ガイドブックでも、気にしなくていいなんて書かれているし。
  • 大航海時代III 世界探求編(初版) に載っている航海者データは、能力値が -1 されている。例えばロッコの実際の能力は 92, 59, 88, 65 だが、この本では 1 づつ低くなっている。二版以後で直っているかは不明。

ラベル:大航海時代III
posted by Takenoko at 20:52| Comment(0) | game | このブログの読者になる | 更新情報をチェックする

2017年03月29日

大航海時代III 航海について

海上での航行速度には、旗艦以外の船の性能や水夫数は全く、あるいはほとんど影響しないと思われます。推進力が一桁の船や、水夫が一人、あるいは全くいない船を同行させても、速度が下がったようには感じられなかったので。ただ、無人の船があると日が替わるごとにダイアログが出るので、一人は載せておいたほうがいいです。大型キャラベルや大型キャラックも役に立ちそう。

海戦時も、水夫の数は移動力に関係しないようです。無人でも動かせるし、砲撃の威力も変わらないです。射撃もできますが、一回で拿捕されます。勝てば取り戻せるので、無人の船を敵艦にぶつけるのも有効です。推進力は、低いと移動力も下がるので、海戦をする場合、旗艦以外にも必要だと思います。

17/04/01 追記
これを書いた後、いろいろ試してみましたが、旗艦以外の船の速度への影響は、推進力はほとんど関係ないが、水夫が必要人数に満たない場合はある程度遅くなる、というように感じました。数字が出ないので、正直、自信があまりなくなってきました。旗艦の状態は、明らかに影響します。まあ、ヘルプにもそう書いてあるんですが。

ラベル:大航海時代III
posted by Takenoko at 21:54| Comment(0) | game | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

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