2013年5月19日日曜日

RPG作成中・キャラクタ外見設定

キャラクタメイキングで外見を設定できるようにしました。複数キャラクタを作って入れ替えられるようにするか(Wizardry方式)検討中です。

探索処理も引き続き開発中で、魔法も正しく処理できるようになりました。ただ、ジャイアントバットに二回殴られると死ぬとか、ヒーラーがいないと高確率で全滅するとか、バランスが滅茶苦茶です。引き続き機能追加、バグ取りを進めます。

とりあえずゲームとして成り立っているか確認するため、前作の「魔術師の塔」までのダンジョンを作ってみて、いったん公開することを考えています。

2013年5月13日月曜日

壁紙ぴったん更新(1.6.7/1.6.8)

多言語対応関連で更新いたしました。立て続けのアップデートで大変申し訳ありません。公開後に翻訳の訂正を受け取り、連続での更新となってしまいました。

今後はある程度まとまってから更新いたします。また、最低でも一週間は空けたいと思います。お手数をお掛けしますが、よろしくお願いいたします。

レビュー等で多言語対応のご要望をときどきいただいていたため、今回対応に踏み切ったのですが、一番多く使ってくださっている日本の方にご迷惑をお掛けすることになってしまいました。もう少し慎重に(先に翻訳を募集するなど)すればよかったと思います。

2013年5月6日月曜日

RPG作成中・探索処理など

探索処理中のスキル・魔法の処理を一部作成しました。とりあえず治療系のみで、探索支援系はまだまだです(探索速度向上や遭遇率低下、罠感知などを予定しています)。ただ、いまのところ処理は作ってあってもぜんぜん魔法を使わないので、評価関数にバグがありそうです……。

また、探索処理をすこし作り込んでいます。今回はログだけでなく、現在の状態を表示するようにしてみました。また、探索が終わったら帰ってくる(帰路も時間がかかる)ようにすることを検討中です。

壁紙ぴったん、英語表示設定を追加(1.6.6)

機械翻訳が不評のようでしたので、強制的に英語を表示する設定を追加しました。日本語ユーザーの方には関係のないアップデートで、引き続き申し訳ありません。

英語表示オプションを追加するのには、以下の2つのStack Overflowの質問が役に立ちました。


Configuration.localeは、一度設定するとアプリを再起動してもそのままなので(プロセスが完全にkillされると元に戻るようです)、元の言語に戻すには、システム全体のConfigurationを参照してそのlocaleを設定する必要がありました。

最終的なコードの概要は以下のようになりました。


boolean useEnglish = prefs.getBoolean(PREFS_USE_ENGLISH, false);

Context baseContext = activity.getBaseContext();
Configuration config = baseContext.getResources().getConfiguration();

Locale deviceLocale = Resources.getSystem().getConfiguration().locale;
Locale currentLocale = config.locale;

Locale newLocale = useEnglish ? Locale.ENGLISH : deviceLocale;
if (newLocale.getLanguage().equals(currentLocale.getLanguage())) {
return;
}

Locale.setDefault(newLocale);
config.locale = newLocale;
baseContext.getResources().updateConfiguration(config, baseContext.getResources().getDisplayMetrics());

2013年5月3日金曜日

壁紙ぴったん多言語対応(1.6.5)

レビュー等でご要望いただいていたため、機械翻訳ですが、ドイツ語、スペイン語、フランス語、イタリア語、韓国語、ポルトガル語、ロシア語、トルコ語、中国語に対応しました。日本語ユーザーの方には関係のないアップデートで申し訳ありません。

機械翻訳にはGoogleのTranslator Toolkitを使いました。Androidのリソースファイル(XML形式)にも対応していますので、手元の文字列リソースをアップロードすれば翻訳できます。画面上で翻訳文字列を編集して保存すると、翻訳後のXMLファイルが、そのままダウンロードできます。なお、翻訳後のファイルには余分なダブルクォーテーションが付いているので、置換する必要がありました。

翻訳には共有の辞書が使われるようなので、典型的な文章は高品質で翻訳されるようです。ただ、壁紙ぴったんでは、ほぼ辞書は使われませんでした。ですので翻訳の品質は微妙な感じです……。

連休前半は多忙で何もできませんでしたが、後半は少し時間が取れそうなので、RPGの開発を進めたいと思います。