2014年9月7日日曜日

連魂 ~ Soul Incarnated

SUZUKI PLANの新作弾幕STG「連魂」について、色々と説明します。
ゲームの大まかな内容は、動画で概ね把握できると思います。

概要

連魂は「連射すること」を重視した弾幕STGです。スマートフォンはタッチパネルで操作する関係で、この点に満足がいくSTGがありませんでした(※当社比)。もちろん、連射がなくても面白いSTGであれば沢山あります。しかし、満足に連射できるSTGがスマホでもやりたい・・・連魂は、そんな作者の想いから誕生したスマートフォンのための連射重視型弾幕STGです。

叩いてください!

これ見よがしに叩いてください!

熱く、切なく、時に優しく叩いてください!

【操作方法】
・画面をタッチした地点を目指して自機が左右に移動します(上下移動はできません)
・画面から指を離すとショットを発射します
・画面を2点マルチタッチするとショットを連射します(※iPhone版のみ)
・戻るボタンを押すか画面を3点マルチタッチするとポーズします(※Android版のみ)

【遊び方】
・自機が敵や敵弾に衝突するとゲームオーバーです
・全2周の道中(ボスなし)を突破すればオールクリアです
・オールクリアに要する所要時間は2~3分ぐらいです
・このゲームには自機の残機やコンティニューはありません
・このゲームではショットで敵だけでなく敵弾も破壊することができます
・敵機は若干固めで敵弾は柔らかめです
・敵機や敵弾は爆風で誘爆することができます
・敵弾を狙って撃破すれば誘爆で一掃することができます
・2周目にはレンコンみたいな形状の打ち返し弾があります
・レンコン弾は破壊することができません
・スコアには倍率が掛ります

【スコアの倍率】
・倍率 = 連爆倍率 + 打込倍率 (最大32.00倍)
・連爆倍率 = 連爆コンボ数 ÷ 10 ※小数点以下切り捨て (最大16倍)
・打込倍率 = 打ち込み1回につき上昇 (最大16.00倍)
・打込倍率の上昇値 = 0.01 × 連爆倍率
・連爆倍率はミスショットをすると1/2に減少します
・打込倍率は減少しません

今回のテーマは、ズバリ「連射」です

今回のテーマとか言いつつ、SHOT03ぐらいの頃からそれとなく意識しているテーマですが。
超連射68kへのリスペクトみたいな...
果たして通じる人がどれ程居るのかはさておき

当初のタイトルは「連射魂」でした。
ただ、「けいおん!」ではないですが、マーケティング的な方面の都合もあり、どうしても(日本語で)4文字に収めたかったので、短縮して「連魂」になりました。

やっぱり、連射って大事だと思います

疲れるけど。
疲れるのは嫌だけど。
でも連射はしたい。
ゲームをプレイしている気分になるので。

スマホは(縦スクロールの)STGと相性が良いゲーム機ですが、この「連射欲」を満たしてくれる作品はほぼ皆無に等しいです。ショットについては垂れ流すのが普通ではないでしょうか。これは、スマホのインタフェース的な事情も当然ありますが、弾幕STGの場合、「撃つこと」よりも「避けること」にフォーカスしているので、ショットは垂れ流し状態でもゲームとしては成立してしまうことが要因だと思っています。

だから、Battle Marineのような形のゲームを作ってみたのですが、Battle Marineはどちらかといえばスナイプ(狙い撃ち)に重きを置いてしまったため、連射欲を満たせるか?と問われると、そうでもない感じでした。

そこで、今回は連射欲を満たすことに重点をおきました。

連射をすると何故疲れるのか?

普通に考えれば、手を動かす運動行為そのものが疲れを引き起こす最大の要因だろうと思いがちですが、実のところ、運動行為よりも精神的な疲労が大きいのではないかと仮定しました。なぜ、そのように仮定したのかというと、このブログの初期の頃(Invader Block 2のAndroid版を作っていた頃)の記事にヒントがあります。

2012年2月の記事より抜粋
http://suzukiplan.blogspot.jp/2012/02/blog-post_22.html
小一時間ぐらい、Android版のInvaderBlockを遊んでいて気付いた問題・・・
スライドしまくっていると指が疲れる。
ん~・・・仕様です。
タッチペン推奨ということで。
こればっかりは、どうしようもない。(仕様だけに)

この問題に対して、後日の記事で現状のインタフェース(スライドではなくタッチした位置を目指してバーを動かすインタフェース)にすることで自己解決しました。

そういった経緯から、SUZUKI PLANブランドのゲームの標準インタフェースがスライド式ではなくポイント式になった訳ですが、この時、指が疲れた原因は「精神的なもの」だったから、連射も同様に精神的に疲れるのだろうと仮定した訳です。

どうすれば疲れなくなるのか?

連射が(精神的に)疲れる原因は、「連射しなければ敵を倒せないため」です。だから、その原因を解消してあげれば、「連射しても疲れない形」になります。私はそれについての解決策を、Battle Marineの時に採用した誘爆システムから見出しました。これにより、「必ずしも連射をしなくても敵を撃破できる形」になったと思います。

もちろん、それだけでは不十分です。

何故なら、連射をする必要が無くなってしまったので。
そこで、これを解決する手段を講じる必要があります。

連射インセンティブ

一番良い解決策は、スコアによるインセンティブ供与だろうと考えました。しかし、バカみたいに連射し続けていればスコアが上がるというのは当然ダメです。それではゲーム性が無いので。ゲームである以上、「何かしらの成功報酬」としてスコアをアップさせる必要があります。

そこで、敵機に命中した時にスコアを引き上げる形にしました。その上で、敵弾は柔らかく(狙い撃つ)、敵機は固くする(連射で撃破)という感じにしてみました。

下図のブロック(※かなり固い)が登場するエリアがありますが、そこ(ブロックへの打ち込み)が連射欲を満たせるパラダイス地帯です。インカム待ち画面(デモプレイ)で、ブロック地帯で連射を楽しんでる感じでプレイしているので、(右下の倍率の上がり方を含めて)チェックしてみてください。
ブロックエリア
(連射パラダイス)
打ち込み倍率(0.00~16.00倍)と連爆倍率(1~16倍)を組み合わせることで、程好く連射欲を満たせつつ疲れない仕様になったのではないかと思います。

より快適なゲームプレイ方法

たぶん、以下のような感じで持てば、より快適にプレイできるんじゃないかなと思います。
精神的な意味ではなく、運動行為的な意味で。
快適なプレイ方法(物理)
もちろん、片手でも快適にプレイできるようにしたつもりではありますが・・・

iPhone版について

今回、ロケテ的な意味合いも込めてAndroid版を無料(広告付き)で先行リリースしましたが、iPhone版もリリースします。ただ、iPhoneアプリに広告を入れるのは若干面倒くさいということが分かった(Invader Block 3の時にそれで2回ぐらいリジェクトを喰らって結局広告を外してリリースした)ので、今回iPhone版は有料版のみ販売することにします。

・Android(Google) = 無料モデル(広告)
・iPhone(Apple) = 有料モデル
というのが、ある意味それぞれのプラットフォームの生態系に適したスタイルではないかなと思い始めている今日この頃です。

【Android版「連魂」を入手】(無料)

https://play.google.com/store/apps/details?id=com.suzukiplan.RENCON

2014年7月26日土曜日

異なるデータを並べて見ること

Android開発者向けサイトのダッシュボードにバージョン別シェアの情報が載ってます。
https://developer.android.com/about/dashboards/index.html

現時点の記載内容によると、以下のような感じらしいです。
・2.2 = 0.7%
・2.3.x = 13.5%
・4.0 = 11.4%
・4.1 = 27.8%
・4.2 = 19.7%
・4.3 = 9.0%
・4.4 = 17.9%

注釈によると、「Data collected during a 7-day period ending on July 7, 2014.」とのこと。
割と新しいですね。

なお、2.2よりも古いバージョンは入っていないようです。
(収集できないらしいので)

確か、こんな感じの情報は、Developer Consoleでも確認できたんじゃないか?
と、思い確認してみたところ、若干ニュアンスが違っていました。
Developer Consoleで確認できるのは、カテゴリ別のトップ10。

アーケードカテゴリのトップ10
音楽&オーディオカテゴリのトップ10

つまり、Androidバージョンの全体的な分散傾向(Dashboardの情報)と、アプリ・カテゴリ別ダウンロードの分散傾向(Consoleの情報)という「異なる情報」です。

データ分析の基本は、「異なる情報を並べてみること」だと言われています。これが一般論なのかは定かではないですが、私が色々な分析をする時はそういう風にやっています。異なる情報を並べてみることで、新しいものが見えてくる事が稀にあるので。(「稀に」であっても新しい情報が得られることこそが重要)

という訳で並べてみました。
versiondashboardconsole(arcade)console(music)
2.2
0.7%
2.36%
1.56%
2.3.x
13.5%
14.27%
11.77%
4.0
11.4%
19.41%
12.39%
4.1
27.8%
26.44%
25.93%
4.2
19.7%
17.06%
15.82%
4.3
9.0%
6.55%
10.05%
4.4
17.9%
11.54%
21.56%

どうでしょうか。
何か見えてきたでしょうか。
だいたい似たような感じに分散する筈です。
しかし、突出した違いがある部分には「何か」があるはずです。

一番目につくのは、4.0(ICS)と4.4(KitKat)。

ICSは、DashboardとMusicは似たような傾向(10%ぐらい)なのに、ゲーム(アーケード)では突出して高い(20%ぐらい)です。
つまり、ゲームをやる層の人々は、4.0(ICS)に固まっているようです。
# 差異は小さいですが、2.3.x(Gingerbread)でも同様にゲーム(アーケード)だけが高い。

逆に4.4(KitKat)だとゲーム(アーケード)が突出して低い。
Android使いの新しい者好きはゲームが嫌い?
実はそうでもなく、4.1~4.3の頃にOSが重くなり過ぎて、ゲームをやる&新しい物好きな方がかなり、iOSの方へ流れてしまったのではないかと推測しています。

実際、私が身をもってそう感じたので。

ICSの頃まではAndroidでもゲームが普通に遊べたのですが、4.1以降では、ゲームが遊べたものではなかったので、ゲーム=iPod touch、ガジェット=Androidという具合に綺麗に使い分けるようになりました。(ソーシャルゲームをやるときは、いちいちテザリングしないといけないから面倒ですが)
KitKatでOSのダイエットが図られましたが、それでも4.1~4.3の3レビジョンもの間、「重い問題」が放置されたことで、「Android=ゲーム向きではない」という認識が定着してしまったのではないかと推測しています。(いや、実際放置されていた訳ではないでしょうけど)

特に新しいものは見えてこなかったな。
まぁ、そんなもんです。

2014年5月6日火曜日

Android版 東方BGM on VGS(1周年)

2013年のGWに東方BGM on VGS(Android版)をリリースしてから1年経ったようです。
「1周年特別企画」めいたものをやるつもりはありませんが、データで振り返ってみようと思います。

■ランキング
日本のMusic & Audioカテゴリにのみランクインしてます。
東方BGM on VGS(Android)のランキング遷移
(GooglePlay - Music & Audio category)
自然流入のみだと、100位あたりが壁みたいですね。
一日のDL数は、平日が100前後、休日が200前後といったところです。

■インストール数
インストール数: 15,837
ダウンロード数: 31,268
インストール維持率は、50.65%。
このインストール維持率は、エンターテイメント系のアプリとしては高めかな。

■評価
星5: 780件
星4: 54件
星3: 23件
星2: 5件
星1: 12件
平均: 4.81点

公開当初から星100件ぐらいまでの間は、平均評価5.0だったのですが、途中からチラホラと星1~3の評価も付くようになったため、大分低くなりました。Android版は、iPhone版と比べて悪い評価(星1~3)が多く付き易い傾向があります。

しかし、星1~3にはコメント付きの評価が1件も無いため、何故、低評価が付けられたのか、具体的な原因は不明です。ただし、星4以上でも機種依存と思われる情報のコメントも幾らかあるので、その辺りが原因かなと推測しています。

■国別分布
国別のダウンロード数
東方VGS以外の私のアプリは、海外8割(主に欧米)、日本2割という感じですが、東方VGSに限って見てみれば、日本8割、海外2割(主にアジア)という感じで逆転してます。

実のところ、東方VGSは日本が9割ぐらいじゃないかと予想していましたが、意外と海外でも沢山ダウンロードされています。日本ではAndroidよりもiPhoneの方が普及していることも一因かもしれませんが、東方の海外(特にアジア)での人気も根強いようです。欧米方面での東方の知名度は、アジア圏と比べれば今一つ(※この点は東方のローカライズのし難さが一因しているものと想定)ですが、その分、エリートユーザにアプローチし易いというメリットがあるかも。

■今後の予定
水面下では、花映塚の後半の曲(製品版のみの収録曲)の耳コピをボチボチ始めていますが、いつ出来るのやら。今のペースでは、そもそも完成に至らない可能性の方が濃厚です。ついでに4月以降、ちょっと色々あって、アプリ開発の活動自体がままならない状態だったりします。連休も殆ど手付かずでした(あわよくば、6月ごろには落ち着くと思いますが)。

先日、GitHubでGameDaddyのオープンソース化をしましたが、もしかするとそこに波形メモリ音源部分のソースコードも追加して、「後は有志にお任せ」という感じ(○投げとも言う)になるかも。その点の判断は、落ち着いてからすることになると思います。

期待せず、気長にお待ちください。

2014年3月22日土曜日

SHOT08 making #1 (22-Mar-2014)



SUZUKI PLANの新作スマートフォン用ゲーム「SHOT08」(仮称)のメイキング動画です。
元画面にはインタレースが入っているのですが、動画にするとちょっと粗い^^;
とりあえず、自機の攻撃(ショット&レーザー)と背景の表示ができただけの状態です。

直近のTODO:
・背景作画(色々と足りない)
・敵作画(ノータッチ)
・敵アルゴリズムの実装(ノータッチ)
・BGM(作曲中)
・システム周り(ゲームのメイン処理以外はノータッチ)

リリース予定:
1面が完成したら、Lite版(無料)を配布予定です。
Lite版の完成は、多分GW中ぐらい。
製品版は、今夏 or 今秋ぐらい。
時期感は、NOKOGI Riderを作った時の実績を参考。
ただし、NOKOGI Riderの時は、音楽データが揃っている状態で開発スタートしたのに対して、今回は音楽がほぼ無い状態からスタートしているので、ちょっとズレ込むかも。(1面分は概ね出来上がっているので、Lite版は多分予定通りで、製品版が遅れる感じで)

価格:
・Lite版は無料(Android版は広告付きになるかも)
・フル版は300円ぐらいを予定(※リリースから1ヶ月間は、100円ぐらいで販売予定)



2014年3月9日日曜日

始まりはいつも、Invader Block

昨日(8-Mar-2014)、GameDaddy(Android)版Invader Block 3をリリースしました。
GooglePlayでダウンロード(無料)
iPhone版についても、近日中に公開予定です。

SUZUKI PLANのゲーム開発の歴史を振り返ってみると、
・大人になってからゲーム開発を再開した時 → Invader Block
・VGS(Android版)を作った時 → Invader Block 2
・GameDaddy(Android版)を作った今 → Invader Block 3
という具合に、始まりはいつも、Invader Blockです。

SUZUKI PLANの代表作といっても過言ではないでしょう。
SUZUKI PLANの一番人気は東方VGS売上げトップはNOKOGI Riderですが、Invader Blockには、人気でも売上げでも、これらを抜き去る潜在能力があると思っています。

難易度を調整

しかし、Invader Blockの評価はそれほどではありません。
そこで、GameDaddy版を作るに当たって、評価を阻害し得る要因を取り除くことにしました。

Invader Block 2をリリースしてから2年。
「爆発的なヒット」こそしませんでしたが、2年も経てば、結構色々な方々からご意見を頂く機会がありました。
ポジティブな意見としては、(本業の)取引先の会社の課長さんに半ば強引に買って貰ったのですが、その課長さんの息子さんが至極気に入ったみたいで、延々とゲームをプレイし続けていたようです。また、マレーシア辺りでは非常に反応が良く、ただ一言「Very good!」と書かれたメールを送って頂いたりしました。
Android版Invader Block 2(Free)の国別分布
(マレーシアが3位!)
ネガティブな意見としては、「難易度が高すぎる」という感じのものが多かった印象です。(私自身、サクッとプレイできるInvader Block 2ぐらいの難易度がほど良いと思っていますが)

以前、会社の同僚やそのご家族にプレイしていただき、その様子を観察したところ、どうも、アクションゲームが苦手な人は、ボールの軌道などを「先読みして行動」していない事に気付きました。例えば、ボールが一定の低さまで落ちて来るのを視認してから初めて回収行動に入ったりとか。それでは、反射神経or運に頼ってプレイすることになるため、自然とミス率が高くなり、「難しい」と感じてしまうのではないかと分析しました。(逆に、ゲームが上手い人は、先読みするポイントを適確に早く理解できるから、すぐに上手くなる)

Invader Block 3では、その辺りのことを考慮して、ゲーム性が無くならない程度に、難易度を引き下げるバランス調整を施しました。具体的には、玉の速度を遅くしたり、雷撃をしないようにしてみたりしています。これらの調整は、「Invader Block 2との差別化」という意味でも良い感じになったかも。

広告とモノクロ+インタレースの相性

Invader Block 3は、GameDaddyのゲーム第一弾ということで、GameDaddyの一番の特徴である、モノクロ+インタレースのグラフィックを全面的にプッシュしてみました。例えば、アイコンにもソレ(モノクロ+インタレース)がにじみ出てます。
Invader Block 3のアイコン
実は、このモノクロ+インタレースの描画には、単なる雰囲気的なものだけでなく、重要なポイントがあります。それは、「広告が浮く」ということです。
広告が「浮く」様子
インタレースの画像の上に、非インタレースの画像を載せると、後者が浮き立つ視覚効果があります。シューティングゲームなどではこの「浮き立つ」効果を利用して、背景BGはインタレース、プレイヤや空中の敵キャラ等のスプライトを非インタレースで描画するCG作成技術があります。(PC-98のBurning Dragon Plusというシューティングゲームで、その表現方法が採用されていました)

同じ理屈で、ゲーム画面(インタレース)の上に広告(非インタレース)を乗せれば、広告が浮き立ち目立つから、広告が単なる背景の一部として認識されてしまうことを防ぐことができます。(こうすることで多分、CTRが高くなります)

ただし、「浮いている」だけに、ゲームプレイ中に表示されていると視覚的に(かなり)邪魔な存在になってしまうから、広告を表示するのはタイトル画面のみで、また、誤タッチが発生しないようにするため、画面上部への表示にしています。(3.5インチのiPhoneだと、画面下部へ表示せざるを得ないですが)

私自身、少額ですが幾らか広告出稿の経験があるので、広告主サイドの視点から見て、Invader Block 3は、理想的な媒体になるようにしてみました。GoogleのAdMobチームあたりから、「理想的な広告掲載アプリの例」みたいな感じで取り上げて貰えたりしないかな?w

2014年3月6日木曜日

VGS mk-IIのスペックやマネタイズ等

SUZUKI PLAN - Video Game System mk-II (VGS mk-II)の開発が着々と進み、ゲーム本体(エミュレータ)が完成しました。

グラフィックスのスペックは、160×200ピクセルのモノクロ8段調です。
音楽は、将来的にPSG音源を搭載するかもしれませんが、今のところ、効果音のみです。

【モノクロ】

最初、モノクロ8段調 or 3ビットカラー(8色)のどちらにしようか迷いましたが、「初代VGSのプレミアム感を上げたい」という内部的な事情で、とりあえずモノクロにしてみたところ、思っていた以上に味わい深い印象になりました。



最近、横井軍平さん関連の本を読んでインスパイアを受けた感もあります。確かに、色が付いているよりも単色の方が、作るサイドとしても楽だし、モノクロでも、リンゴの形をしていれば赤いと想像できます。

モノクロのベースカラーは、プログラムを作る際にAPI関数を用いて7色から好きな色を選ぶことができます。例えば、海や空を題材にしたゲームなら、cyanベースのモノクロにすれば、そういう雰囲気が出ますし、コンフィグレーションなどで作り込めば、ユーザが好きな色を選ぶこともできます。
(1) blue ()
(2) red ()
(3) magenta ()
(4) green ()
(5) cyan (水色)
(6) yellow (黄色)
(7) white (白)
※PC-8801やPC-9801世代のプログラマが空でも分かるように、例の並びにしておきました。

ぶっちゃけてしまえば、今回のSDKは、オープンソースで公開するつもりなので、やろうと思えば256色のフルカラーで表示する改造も簡単にできます。(VRAMは1ピクセル8bitで管理するのが最もCPU演算効率が良いので)

【160x200】

横幅の160ピクセルというのは、「等倍表示」でiPhoneの横幅ピッタリに収まるピクセル数にしたかったので、非Retinaモデルの横幅は320ピクセルだから、その半分の160ピクセルを採用しました。

これを基準にして、画面比率から幾つかの候補をピックアップ。
(1) 2:3 = 160 x 240
(2) 1:1 = 160 x 160
(3) 3:4 = 割り切れないからボツ
(4) 4:5 = 160 x 200

そして、考察。
(1) → 3.5インチのiPhoneやiPod touchで操作用の空きスペースが無くなるからボツ
(2) → 空きスペースがちょっと広すぎるからボツ
(4) → バランス的にも良さげなので採用

最後に、ステータスバー(縦=10×2)と広告(縦=25×2)を入れた状態の設計図を書いてバランスチェック。
3.5インチ端末でのレイアウト
4インチ端末でのレイアウト
【広告】

サラリと「広告」と書きましたが、mk-IIはどちらかといえば「広告モデル」でマネタイズするタイプのプラットフォームにします。mk-IIではアイディアベースの小作品をなるべく短い期間で沢山リリースして、ヒットの予兆を探ろうと考えています。

そして、初代VGSはこれまでと同様、有料販売のみ(広告でのマネタイズをしない)プラットフォームにすることを考えています。つまり、mk-IIで作ってみて反応が良ければ、本格的なプレミアム・バージョンを初代VGSで作るという感じです。

私が今までVGSでは頑なに広告で収益化しなかった(実験的なことはチラホラやりましたが、本格参入は避けていた)のは、それをやってしまうと、「そういうブランド」だと思われてしまうこと(つまり、有料アプリが売れなくなること)を避ける為です。

よく、「有料アプリは売れない」と言われていますが、それは、マーケティング戦略(主にブランディング)がマズイからだと思います。SUZUKI PLANの戦略は、単体のアプリではなく「VGS」という独自に開発したゲーム機自体を市場へプッシュしていく方法です。果たして上手くいっているのか、まだ定かではないですが、確実に数字は伸びてきているので、上手くいきつつあるのではないかと思います。
SUZUKI PLANのAndroid有料アプリの売上げ推移
2012/2/29~2014/3/5
(密度=継続性、高さ=売上高)
それ故に、安易な広告モデルの導入は良くないと考えました。

mk-II限定で広告によるマネタイズをするのであれば、初代VGSのブランド価値を落とさないというより、寧ろ引き上げるのではないかと思った訳です。

【呼称】

VGSとは別路線だということを明確にするため、呼称はVGS mk-IIではなく、変えるかも。

2014年2月27日木曜日

VGS mk-II

SUZUKI PLAN - Video Game Systemの次世代機(mk-II)の開発が着々と進んでいます。

一般的に、ゲーム機の世代が進化すると性能が向上したりしますが、VGSの場合、「無駄をそぎ落とした形」に進化する点が若干特殊かもしれません。

[解像度]
初代: 240×320 or 320x240
mk-II: 160×200 (インタレース)

[同時発色数]
初代: 8bitカラー(256色)
mk-II: モノクロ8段調
※3bitカラー(8色)にするかも

[音源]
初代: 波形メモリ音源(6ch)
mk-II: PSG音源(3ch)

[処理系]
変更なし(C言語+専用API)

[対応機種]
変更なし(Windows, Android, iOS)

[公開SDK]
初代:
- Windows+Android版は無償提供
- iOS版は非公開
mk-II:
- 全て無償提供
- オープンソース

今のところ、こんな感じを予定してます。まだ、色々変わると思いますが、方向性は概ね定まっています。
方向性は、「よりゲームを創りやすいゲーム機への進化」です。
この進化を特殊と捉えるか、普通と捉えるか・・・「ゲームを面白いものに進化させたい」という視点で見れば、案外後者なのかもしれません。
「創りやすい」=「作り手の視点」ではありますが、創り難ければ生まれ難いのもまた事実なので、割と正当な進化だと思っています。

合理的ではないものを作りたい

ここ最近、実機版の東方VGSの開発が忙しくて、東方VGSの曲追加が滞っています。 東方VGS(実機版)のデザインを作りながら検討中。基本レトロUIベースですがシークバーはモダンに倣おうかな…とか pic.twitter.com/YOYprlDsYD — SUZUKI PLAN (...