iOS, Android 向けに「魚偏漢字神経衰弱」というアプリを作ってリリースしました。
apps.apple.comどんなアプリか
タイトルから予想がつくと思いますが、魚偏の漢字のカードで神経衰弱ができるミニゲームアプリです。
現在、1人用プレイのみで2つのモードが遊べます。
のーまるモード
フィールドの30枚のカードを全て揃えられたターン数を競うモード3分間耐久モード
3分間に揃えられたペア数を競うモード
フィールドの30枚のカードを取りきると再度カードが配られます
なぜ作ったか
普段は Web開発が本業ですが、ゲームが好きなのでゲーム開発にチャレンジしてみようという軽い感じです。
元々物作りが好きで以前は個人開発をちょくちょくしていましたが、最近あまりできていませんでした。
新しい技術を学ぶ自由研究として GW に触ったのがきっかけで少しずつ開発をしていました。
神経衰弱を題材にしたのはゲーム開発はプログラミングだけでなく、画面デザインや SE など作らなければならないものが盛り沢山なので、ゲーム内容が単純なものが良いと思ったからです。
ただ一般的なトランプの神経衰弱だとありきたりなので、魚偏の漢字を題材にすることでよく似た漢字ばかりになり難易度も上がり、面白い要素になるかと少しひねってみました。
1人で神経衰弱ができるだけの単純なミニゲームアプリなのですが、開発期間はリリースまで約2ヶ月かかりました。
魚偏漢字神経衰弱を支えている技術
支えている技術というと大袈裟ですが...せっかくなので利用した技術 (ツール) などをざっくり紹介したいと思います。
僕はプログラミング以外は素人ですが、プログラミング以外も極力自分で作りながら各工程を学びたいと思ったので以下の技術 (ツール) を利用しました。
プログラミング
GameEngine は過去に少し触ったことがある Unity を使いました。
ググれば tips がたくさん出てきて、自分の場合無償で利用できたので負担なく開発を進められました。
ライブラリなど細かいところは、アニメーション周りで DoTween を使っていたり、イベント処理周りで UniRx を使っています。
ほとんどゲーム開発をしたことがないので、改善点はたくさんあるかもしれませんが快適に進められました。
フォント
フォントはフリーフォントを利用しました。
漢字がテーマなので和テイストにしてみました。
衡山毛筆フォント opentype.jp
源流明朝 github.com
画像素材
カードの絵柄もフリー素材を利用して、SeaShore を使って加工しました。
apps.apple.comゲームは画面 (見た目) が大切ですが、画面デザインが苦手でハリボテな素人感丸出しから抜け出せませんでした。
今後勉強しながらブラッシュアップしていきたいです。
SE
魚偏なので、波の音のような BGM にしてみました。
ゲーム内音楽 (SE) は趣味で DTM をしていたこともあり、Splice からイメージにあったネタを落として Logic Pro でサンプリングしました。
Splice はカードをシャッフルする音などゲーム音楽で利用できそうなネタもたくさんあって便利でした。
サブスクで利用したい時だけ 9.99$/month で使えるのも個人開発者には優しいです。
今後の展開
開発を進めているとやるべきことが多すぎて先が見えなくなってきたので、一先リリースを目標にしていました。
実装したい機能を全て実装してリリースすることができなかったので今後は以下のような機能を開発予定です。
- ランキング機能 元々ランキング用の API を Golang で作って GAE で動かしていたのですが、サーバーのコードを極力書きたくなかったり (本当は書きたいけど工数的に無理) 運用が面倒なので Firebase で作り直す予定
- プレイ結果の Tweet 機能 プレイ結果の画像をサーバーで作成して Tweet できるようにしたい
- 様々な解像度対応 UI の実装が悪く端末によっては上手く表示できなかったりするので対応していきたい
- オンライン対戦機能 オンラインで2人対戦できるようにしたい
感想
ゲーム開発は総合格闘技
ゲーム開発は時間がかかり多様なスキルが必要なことは知っていましたが、実際作業すると想像以上に大変でした
ここまで単純な2Dゲームですら2ヶ月かかったので、3Dでオンラインプレイができるゲームは流石に難しいだろうなと思いました
今回は特にプログラミング以外の部分で思うようにいかないこともあり作業が進まなかったです開発時間の確保が一苦労
今年の初めに第一子が誕生したということもあり、仕事・育児の時間がある中開発時間を確保するのに苦労しました
主に平日は子を寝かしつけたあと 1 ~ 2時間、休日も隙間時間を使ってちょこちょこ進めていました
細かくタスクを分解して消化していくことで開発の進捗を感じれるのでモチベーションを保つことができましたネイティブアプリの開発が楽しい
最近は Web開発ばかりしていたのでネイティブアプリの開発が新鮮に感じました
開発体験として、クロスプラットフォームで開発できたのも良かったです
思うようにできないことや様々な壁にぶち当たりましたが、ゲーム開発は楽しかったです。
これからは我が子のようにアプリも育てていきたいなと思いました。
もし、興味を持っていただけましたらぜひ遊んでみてください!