2014年1月31日金曜日

枯れた技術の水平思考

枯れた技術の水平思考という言葉があります。
最先端のものではなく、すでに広く使われて枯れてきた技術の今まで無かった使い道を考えるということ。
例としては「電卓」の技術を使って「ゲームウォッチ」を生み出したという事例が挙げられます。
この言葉は「ゲームウォッチ」「ゲームボーイ」などの開発に携わった横井軍平氏のものです。

私も含めて技術者はつい最新の技術に目が行きがちになります。
新しい技術は事例や文献が少なく習得にコストがかかったり、適用例が少なく思っても見なかった不具合に悩まされたりすることがあります。
その点、枯れた技術は最適な習得方法が確立されていたり、様々なトラブルとその回避法も出尽くしていて少ないコストで安全に使用することができます。
だからといって新しい技術を否定してばかりでは時代に取り残されてしまいます。
この辺りはバランスなのだと思います。

私たち個人開発者は色々なコストをあまりかけることができません。
その技術を使うことにどれだけのコストがかかるのか、それだけのコストをかける必要性があるのか、他の技術を使うことによってコストを下げられないかと常に考える必要がありますね。

ユーザーからすれば最新の技術のモノが欲しいのではなく、使って便利なモノ、遊んで楽しいモノが欲しいわけですから。

2014年1月30日木曜日

ゲームの難易度を分析すべし

ゲームを作っていて、一番悩ましいと感じるのが難易度調整です。
簡単すぎたらゲームにならないし、難しすぎたら途中でやめてしまいます。
その辺りを上手く調整するためにテストプレイをして試行錯誤するのですが、それでも「これでいい」という確信はなかなか持てません。
テストプレイを重ねる内にそのゲームに慣れてしまい一般の感覚とは違ってきてしまうので、自分では簡単だと思っても実は難しかったということになりがちです。

そういったことはアプリをリリースしてから判明するのですが、なかなかユーザーからの意見をもらうことは難しいので、最初からそれを分析できる手段を入れておくことをオススメします。

私の場合はGoogleアナリティクスでそれができるようにしています。
ステージをプレイした回数とステージをクリアーした回数のデータを取得しているので、「この面はプレイした回数の割にクリアーした回数が少ないので要調整」といった具合に分析できるので、それを基にアップデートで改善するといったやり方ができます。

そのようにして改善していくためにも、データの収集をできるようにしておくことをオススメします。

2014年1月29日水曜日

一発ネタのアプリは儲からない

パッと見で面白そうだったけど、一回やってみたらもう十分。
そんなアプリをダウンロードしたことありますか?
そういうアプリは結構ダウンロードが稼げると思いますが、実はあまり儲からないのです。

私は今のところ2本のアプリをリリースしました。
1本目はとりあえず出したネタ系のカジュアルゲーム。
2本目はちゃんと作った知育系パズルゲーム。
今のところダウンロード数では1本目のネタ系アプリの方が若干上回っています。
でも、広告の収益では4倍位以上2本目の知育系アプリの方が儲かってます。

それはダウンロード数では少ない2本目の方が広告の表示回数が圧倒的に多いからです。
ダウンロードが少ないのに広告を見る回数が多いということは何度もアプリで遊んでくれているということ。
つまり、ダウンロードが稼げそうなアプリを作るよりは面白いアプリを作った方が儲かるという訳です。

当たり前といえば当たり前の結論なのですが、アプリを開発しているとどうしてもダウンロード数を稼ぐことに目が行きがちになってしまいます。
基本に立ち返って何度も遊んでもらえる、使ってもらえるアプリを目指すことがやはり大事でそれが後々に収益に繋がる物だと思います。

2014年1月28日火曜日

iOSゲームはフレームワークを使おう

私は現在、iOSアプリでゲームを数本開発していますが、今のところcocos2dというゲームフレームワークを使用しています。

iOS標準でもゲームは作れるのですが、アニメーション機能に次のような特性があったのでゲームには不向きと判断しました。

iOSのアニメーションは画像を「5秒かけて100px右に移動」という命令をするのですが、命令を受けたのと同時に画像の座標は直ぐに100px右の物に書き変わってしまい、アニメーションの見た目だけが5秒かけて後追いするというものでした。
また、アニメーション中にポーズをかけても、再開後は必ずアニメーション終了時のポジションになってしまうなどの問題もあります。

以上のような問題はcocos2dでは無かったので使用することにしたのですが、そちらも標準のUIを簡単には使えないし使いづらいという別の問題があるのですが。
そのデメリットを踏まえてもゲーム自体はフレームワークを使用した方が断然作りやすいのでオススメします。

iOS標準でゲームを作るには色々と問題があると覚えておいた方が良いですね。
iOS7からSprite KitというApple純正のゲームフレームワークが出たので、Appleもゲームにはフレームワークが必要だと認めているみたいですので。

2014年1月27日月曜日

スマホは断片プレイが基本

RPGを久しぶりにプレイしようとセーブデータをロードしたら、ここはどこで何をしたら良いのか分からずに真っ白になった経験はありませんか?
なんとか思い出そうとしてその街の人に片っ端から話しかけて何となく状況が理解しかけたらもうゲームする時間が無くなったりして。
壮大なストーリーを売りにするゲームでもそれを常に覚えてなければ楽しめないゲームは今の忙しい人たちにはちょっと厳しいですよね。
反対にストーリーの無いパズドラが流行るのも至極当然なことなのかも知れません。

私も数ヶ月だけパズドラをプレイしたのですが、最初はストーリーが無くひたすら戦うだけのシステムに戸惑いを覚えました。
でも、モンスターを育てて段々強くなると何となく戦っているだけで楽しくなってきたのです。
さらに強いモンスターを求めてまた戦うといった感じで気がつくとハマっていました。
ストーリーが無くても楽しめる、ふとこの感じは昔のウィザードリィと似ているなと思い中毒性に納得しました。

ストーリーが無いことでいつでも直にプレイを再開できて、戦闘だけなので一回のプレイ時間は短く済み、それでいてまたやりたくなるというループ。
なるほどスマホで売れるゲームというのは上手くスマホで楽しめるように最適化されているので皆が長く遊んでくれるのでしょう。

ゲームにはクリアがありエンディングがあってほしいと思ってしまう私の個人的な思いはもう時代遅れなのかも知れませんね。

2014年1月24日金曜日

スマホで十字キー操作は無理

みなさん、ドラクエの無料配布GETしましたか?
私も無料につられてダウンロードしたのですが、やってすぐに「これは駄目だ」と思いました。
それは仮想十字キーでは操作が苦痛で仕方が無いからです。
あまりの操作性の悪さに最初の王様のいる部屋を出るだけでもイライラして一苦労、すっかりやる気がなくなってしまいました。

私もスマホでゲームを作ろうと考えたときに一番気にしたのはどのように操作するかという点でした。
ゲームというとファミコン的な十字キー+いくつかのボタンというのが当たり前すぎてそれを前提に考えがちですが、ドラクエの例にもあるようにスマホではそれが通用しません。
次に考えつくのがキャラをドラッグして操作するという方法ですが、これも自分の指で画面が見えなくなるという大きな欠点があります。
このことからゲームの定番ともいえるシューティングやアクションゲームが従来の方法論が通用しません。

スマホでゲームを作るのならば、まずは操作方法を最初に考えるべきであると個人的には思います。

2014年1月23日木曜日

絵が描けなくともツールは使いこなせ

ゲームの開発をしているとどうしても絵が必要となります。
人は見た目が9割などという本がありますが、ゲームにおける絵もそれと同じです。
しかし、私も含めてプログラマーという人種はこれが苦手です。

直近、パズルゲームを作っていたのですが、そのままでは見た目が非常に地味になってしまうので、キャッチーな要素を加えるべくマスコットキャラを作ろうと考えました。
漫画などを参考にデフォルメな絵ならば私でも描けると思ったのですが・・・全然だめでした。
そこで、フリーの素材を使用することにしたのですが簡単にはいきませんでした。

一番の問題はそのまま使える素材が少ないということです。
もう少しサイズが大きければ…、もうちょっと色が明るければ…というモノが多く、探すのに工数がかかってしまいます。
それらの素材を加工しようにもPhotoshopやIllustratorは色々な意味で敷居が高いしなあと思っていたところ、それらの代わりとなるフリーソフトがあることが分かりました。
それが「Gimp」と「Inkscape」です。

使ってみると、その手のソフトになじみの無いプログラマーは色々と大変ですが、所詮はツールなので使っているうちに慣れてきます。
少なくとも絵が上手くなるのよりは断然早く使いこなすことができるはずです。

絵のセンスを磨くよりもツールを使いこなす技術を磨く方が楽ですよね。
プログラマーは技術者ですから。