キノコの自省録

日々適当クリエイト

自分の声で魔法を詠唱するゲームをリリースしました。

Witch Cried


自分で魔法を作って、自分で詠唱するゲームです。
ファイアーでもアイスストームでもドラグスレイブ全文でもシンフォギアの聖詠でも(たぶん)入力できます。

魔法契約

予め自分の声を吹き込むことで、魔法を契約します。例えば「ファイヤー」とか、「闇よ、来たれ!」などです。自分の声を吹き込むということなので、マイクでiPhoneに向かって叫びます。なんでもいいです。

魔法がなかなか思いつかないという人は、このあたりの作品から拝借すると良いと思います。

データ/FFTの詠唱文 - ファイナルファンタジー用語辞典 Wiki*

鬼道 (BLEACH) - Wikipedia

ヴァルキリープロファイル大魔法まとめ - NAVER まとめ

スレイヤーズの呪文詠唱一覧

伝説の勇者の伝説 @ ウィキ - 登場魔法一覧

戦闘

ゲームはステージ制で、クリア条件を満たすとクリアです。大半は敵を全滅させるのがクリア条件です。プレイヤーは魔法使いなので、魔法を使って戦います。魔法の行使は、先ほど契約した詠唱文をマイク入力でして行います。そう、自分で詠唱するんです。どの魔法を使うか、自分で詠唱して決めるということです。

なお、プレイヤーキャラクターの横にいるガードが全滅するとゲームオーバーになるので、早目に片を付けましょう。

f:id:kinokorori:20170408193631j:plain

iPhone6sでシャウトアラームが鳴らない!という方へ

叫んで止める!目覚まし時計シャウトアラーム


iPhone6sに機種変更したら、シャウトアラームが設定時刻になっても鳴らなくなった!バグだ!という方へ。
iPhone6sのiOSバージョンをアップデートしてください。
デフォルトでインストールされているバージョン(たぶん9.0.0)は、
シャウトアラームを含め、アラーム系統がまともに動きません。
最新リリースのiOS9.0.1では、ピンポイントでこの問題が解決されています。


iPhone6sだけでなく、他の機種でも、iOS9.0.0だと当然動かないと思います。
とりあえずOSアップデートをお願いします。

イラストを描くようになったきっかけと、自分の絵の描き方

近況。最近ゲームを作っています。
ゲームってイラストを調達しなければならないので結構大変です。
ということで、最近は良く絵を描いています。


そもそも絵を描くようになったのは、
アプリやゲーム作るのに絵を用意しなければならないことが多いので、
こりゃ描けるようになる必要があるなあと思って、2,3年前に描き始めました。
そこからそれなりの絵が描ける様になるまで、という目標で練習をはじめました。
それなりになったかどうかはわからないですが、少なくとも最初よりは上達してます。
2011〜2012年まではかなり集中的に練習していました。
最近は他のことをやっていることが多いですが、たまに練習してます。
↓昨日描いた絵。

大きめのイラストはこちら(Pixiv)
閲覧数伸びてなくて寂しいです。ええ。
ちなみにiOSで出したリアルタイムに映像を反転するデッサン用ミラーカメラは、
絵の練習中に自分がほしくなって作ったものです。


自分の絵は、
1. 鉛筆で下書き(アナログ)
2. スキャナで取り込んでレベル補正
3. パスで線画を作成
4. ブラシやパスで色を重ねたり削ったり
という描き方をしてます。
下書きでは、3Dモデルのようなのっぺらぼう物体を描いてからパーツを組み立てています。
この辺を手なりで描けるといいんですけどね。
鉛筆は軽めに当たりをつけるときはH、はっきり線を引くときはBを使っています。


塗りに関してはパス8割ブラシ2割です。バケツ塗りは滅多に使いません。
ペンタブは使ってません(てか持ってない)。
なので、マウスとキーボードのカーソルで色塗りしてます。
パスとぼかしと乗算がほとんどの要素を占めています。
なんというか、計算と計測で絵を描いている感じです。
さすが理系。

デッサン用ミラーカメラ ver1.2.0をリリース

デッサン用ミラーカメラ ver1.2.0をリリースしました。



このアプリは基本的にカメラに映った画を反転させるだけのアプリです。
アナログお絵かき中に、パース等々の狂いをチェックするために使用します。
手で持ってると、iPhone自体の傾きが気になることがあったため、
どれくらい傾いてるかを示す水平器を表示するようにしました。
まあ、あんまり気にすると逆に使いづらくなるので参考程度に。
画面の上と右に出ている白いバーが水平器です。
モデルはにこにーです。


カメラロールの画像が反転できないとか、写真が撮れないとかいうレビューがありますが、
残念ながらそういうアプリではありません。
たぶん、アナログで絵を描かない人には用のないアプリです。
逆に、アナログで絵を描く人には、結構お役立ちアプリだと思うので、
是非使ってみてください。

全国バス経路マップを更新

全国バス経路マップをiOS版、Android版ともに更新しました。
少なくとも、2010年までの路線情報に対応しています。
iOS
https://itunes.apple.com/jp/app/id646411569
Android
https://play.google.com/store/apps/details?id=jp.kinokorori.android.busrouteviewer2


Android版は、前バージョンをインストールしていれば、
拡張obbファイルをダウンロードする必要はありません。


それにしてもバス路線は、本当に変更多いです。
千葉埼玉あたりの新興住宅地域は、
バス路線も確立されていなかったり、実情に合わなかったりするのか、
特に変更が多い印象です。
バス王国と言われる九州は、逆に変更が少ないです。
インフラとして完成されているせいでしょうかね。


そういえば、先日の台風26号はなかなか影響が大きかったですね。
直撃後の朝、電車からバスの振り替え輸送を行っている路線がありました。
ただ、普段乗りなれていないせいか、
どのバスに乗ればいいかわからず右往左往している人をチラホラみかけました。
まあわかりにくいですよね。
私もこのアプリ作ってなければ右往左往していたと思います。

大声出してスヌーズを止めるアプリをリリース

マイクに向かって大声を出すことで、
スヌーズ機能を停止させる目覚まし時計アプリ(for iOS)をリリースしました。

叫んで止める!目覚まし時計シャウトアラーム


ポイントを箇条書きにするなど。
・大体10秒〜20秒あれば止まると思います
・停止までにかかった時間を計測して、ベストタイムが記録されます
・寝起きで声を出すのって結構しんどいです
・ということで、声出すと、寝覚めがちょっとよくなる感じが
スヌーズを止める練習ができます(タイムは記録されません)
・曜日繰り返しアラームと、4本の単発アラームが設定できます


技術的な話。
音声処理に関しては、Seraph Flightのモジュールを、ほぼそのまま流用しています。
Seraph Flightでは声の高さを使いましたが、こちらは特定帯域の振幅を見ています。


あと、App Storeの説明文の英語を、Gengoに出してみました。
原文を出したら、3時間程度で第1稿があがってきました。
めちゃくちゃ早い。
しかもかかった料金は750円ほど。
自分で英訳する手間と出来を考えると、発注した方が圧倒的にお得です。

Expansion Filesについて(4) - トラブルシューティング編

Google Playの拡張ファイルを利用するにあたってのトラブルシューティング編。
今までの内容と被るところがあります。


・obbって何?
通常、obbファイル形式といえば、ディスクイメージ形式の一種になります。
Google Playに拡張ファイルをアップロードすると、必ず.obbという拡張子にリネームされますが、
obbファイル形式である必要はなく、zipでもmp4でも構いません。


Google Playの拡張ファイルアップロード場所がわからない
apkをアップロードした後に出現するResult画面でアップロードできます。
一度閉じるとアップロードできなくなります。
また、初回apkアップロード時には出現しません。


・STATE_FAILED_FETCHING_URLが返って来る
1.アップロード完了からあまり時間が経っていない場合
 ゆっくり待ちましょう。

2.アプリケーションの書誌項目が埋まっていない
 ドラフト状態でも拡張ファイルはダウンロード可能なものの、
 スクリーンショットや解説文、価格帯など、必要な項目を全て埋めておく必要があります。


・Download Libraryからの状態変更通知が来ない
DownloaderServiceMarshaller.CreateProxy(Messenger m)で作成される、
IDownloaderServiceのonClientUpdated(Messenger m)を呼び出しているか要確認。

@Override
public void onServiceConnected(Messenger m) {
	mDownloadProxy = DownloaderServiceMarshaller.CreateProxy(m);
	mDownloadProxy.onClientUpdated(m);
}


・ERROR_COULD_NOT_MOUNTが返ってきてobbがマウントできない
同じパッケージの同じバージョンで、
以前マウントしたものと異なる拡張ファイルをマウントしようとすると発生することがあります。
これが発生すると、2度とそのパッケージの拡張ファイルがマウントできなくなります。
実は、解決方法がわかりません。
リブートしても、再インストールしても、再ダウンロードしても直りませんでした。
パッケージ名を変更すれば、一応動くようにはなりますが、当然別アプリ扱いです。


・obbマウント時のパスワードってソースコードにベタ書きして良いもの?
これは拡張ファイルがどうのこうのというよりAndroidセキュリティの問題ですが、
apkをzip解凍し、jarファイルをリバースコンパイルすると一発でわかります。
できればNDKからパスコードを取得するライブラリを書いた方がいいでしょう。
ただし、いくらNDKだからといって、
static const char* const password = "foobar";
などと書いた場合、foobarが文字列として抽出可能になっていまうので、
例えばUNIX系コマンドのstringsを使えば、一発でバレます。
この事態を回避するには、「耐タンパー性」について調べると良いでしょう。