エラーも楽しむ!学生時代に考えた個人ゲーム制作過程をインタビュー
こんにちは!
TechCommit運営メンバーのmochiです。
個人アプリ開発者インタビューということで、
今回は大学時代に考案した『Set Parameter Battle』をゲーム化したみんまるさんにお話を伺いました。
未経験から始め、自分の想いをプログラミングで形にし、エラーが出た際に楽しみながら開発されたみんまるさん。
・アプリ開発などで挫折したことがあり、モチベーションを保ち続けたい方
・アプリ開発を楽しく、継続させて行いたいと考えている方
・自分のやりたいことをプログラミングで形にされようとしている方
などに当てはまる方は特に参考にして学習や開発にお役立てください!
大学時代に考案したゲームをアプリ化
ーみんまるさん本日はよろしくお願いします。
はい。
よろしくお願いします!
ー『Set Parameter Battle』ってどのようなアプリなんでしょうか?
簡単に説明すると、最初に能力値を割り振り、能力の差で相手を倒していくバトルゲームとなっています。
割り振れる初期ポイントはモンスターごとに決まっており、
攻撃力・防御力・HPに割り振れます。
相手によって様々な能力を使ってくるので、その辺も考慮しつつ楽しんでもらえたらなと思います!
ーアプリ開発を始めようと思ったきっかけは何ですか?
元々『Set Parameter Battle』は、大学時代に作った紙に印刷しただけのアナログのゲームでした。
大量のメモが必要で、プレイしづらい欠点があったのでデジタル化したいと思いました。
また、コンテストに応募したきっかけは、アプリ開発をしているときにTwitterでTechCommitのことを知り、入会した際に「コンテストに参加してみない?」と誘われたのがきっかけです!
ーなるほど!元々ITエンジニアとして働かれていたのですか?
いえ、プログラミング学び始めて半年後くらいにアプリ開発を始めました。
当時は未経験からITエンジニア目指していた系の1人だったので、まだITエンジニアとして働いてませんでした。
おかげさまで、今年の6月からITエンジニアとして働くことになりました!
ーおめでとうございます!!
ありがとうございます笑
ー半年間の勉強で『Set Parameter Battle』作られたの凄いですね!
自分で言うのも何ですが、
ゲームに特化した土台が自分にはあったと思います。
絵画を自分で作っていたり、レトロゲームやドラクエなどもよくプレイしていました。
また、大学時代に『Set Parameter Battle』の原案を作っていたので、決して難しいことをプログラミングしていたわけではないです。
意識していたことは世界観の統一で、簡単だけどしっかりまとまったものを作りたいという想いがありました。
ー素敵ですね。ゲームを作るためにプログラミングを学び始めたのですか?
いえ、最初はゲームを作ろうと始めたわけではないです。
と言うのも、元々アルバイト時代に先輩から何の説明もなしにサイトの更新をお願いされ、分からないままホームページ・ビルダーを触りました。
仕事なので、本来なら聞く場面だったと思うのですが、意外と触ってみたら簡単にできて、気づいたらアルバイト先で一番出来るようになってました。
勉強してきた今だからこそ思うのですが、変なものアップロードしなくて良かったです笑
そこからPCを使って仕事をするのが向いてるのかな?と感じ、本格的にプログラミングを学ぼうとスクールに通いました。
単純にITエンジニア目指そうといったものだったのですが、学んでる途中からプログラミングをするのが楽しくなってきて、大学時代に作った『Set Parameter Battle』の原案はお気に入りのアプリだったので、いつかゲームをデジタル化したいなという想いもあり、『Set Parameter Battle』を開発しました。
制作にはHUNTER×HUNTERの影響を受けた
ー『Set Parameter Battle』コンセプトって何ですか?
短時間で頭を使って楽しむ、レトロ風ゲームです。
また、RPG等はレベルアップして、攻撃力とか防御力が上がると思います。
『Set Parameter Battle』では最初に能力値を割り振って、能力値の上下によってモンスターを倒せたり倒せなかったりします。
基本的にゲームとかパズルって解答が1つだと思うのですが、『Set Parameter Battle』では解答をいくつか作っており、能力が多少前後していても、致命的なミスさえしていなければ大丈夫となっています。
これは「HUNTER×HUNTER」という漫画の影響を受けています。
漫画の中で攻撃に80%割り振って、防御に20%など能力値(漫画内ではオーラ)のバランスで勝負する場面があるのですが、その能力値の割り振りかたを参考にしています。
ここのオーラを0にして、こっちにオーラを移した!!
など極端な能力値の割り振りも『Set Parameter Battle』には搭載してるので、是非遊んでみてください!
ーありがとうございます!『Set Parameter Battle』の原案はどういったものですか?
元々Wordを使用して作成しました。
能力の割り振り内容は、攻撃を上げるためには4ポイント、HPには1ポイント、防御には7ポイント必要で、ステージ毎に初期所持ポイントを持っています。
1ページ目にはルールブックが記載されており、
2ページ目にはスライムの画像とスキルなど、ちょっとしたストーリーが載っています。
3ページ目以降はスライムと同じようにそれぞれのモンスターの詳細が載っています。
デジタル化しようと考えたきっかけの1つなのですが、スライムがこの攻撃力だからこれくらいHPが減ったなど、プレイヤーはめんどくさいけど自分で計算する必要がありました。
苦労を感じるゲームかも知れないのですが、大学の数学科の先輩に見せたら面白くて最後までやってくれたり、私の母にも見せたら高評価で最後の方までやってくれました。
一見するとめんどくさそうなのですが、最後までやってくれることに驚きました。
大学時代からの色々な想いが詰まったゲームで、10年近く紙ベースの『Set Parameter Battle』の原案を保存しています。
ー素敵です。元々ゲームなど考えられるのが得意だったのですか?
そうですね。
昔からゲームを作るのが好きで、クリエイティブなことが得意です。
例えば、遊戯王とポケモンで弟と戦ったりしたのですが、ルールを変えて攻撃力を変更させたり、能力のバランスをとったりしていました。
逆にデザインが苦手で、HTML/CSSで綺麗なページを作るのが不得意です。
綺麗なサイトとか見ると凄いなぁと感心しています笑
また、古風な独自の世界観を作ることが多いので、濃くなってしまいネタ受けしづらいかも?とも思っています笑
テストプレイヤーからのフィードバックが役立った
ー今回のアプリを作って良かったと思うことはありますか?
はい。
まず、人に見てもらうための、クオリティを意識した開発ができました。
締切の効果もあり、メリハリつけて開発できたのが良かったです。
また、皆さんからいただいた感想は宝物です。
もちろんTechCommitのメンバーからの感想もそうですし、Twitterで募集したテストプレーヤーが3人いるのですが、その方達からの感想は貴重なものでした。
初めての作品で意気込んだのものあり、テストプレーヤーを雇ったんですが、結果的には正解でした。
皆さんすごく面白いと言ってくださって、
「案内は先にこっちにしたほうがいいんじゃない?」や「これ良かったです!このキャラクターが好きです!ただ、ここちょっと見にくかったから改善すると良さそうかな?」と改善ポイントを教えていただいたのはより良いアプリに繋がりました。
学習って自分でプログラムを書いて、画面で表示されて、自分で見て、確認しておしまいだったのですが、プレイヤーと触れ合う開発するのってすごくいいなと感じた瞬間でした。
人に見てもらって楽しいと言ってもらえ、製作物の目的が達成できている。
さらにレスポンスが帰ってきたので、改善できる喜びを感じることができました。
ー0からの状態から作られたとお伺いしました。
はい。
ゲームの解体をしたわけではないですし、シナリオ通りにゲームが動くためのボタンが動くロジックを知らない状況から始まりました。
どういう関数使ったらボタンって動くのかなぁと最初は戸惑いながらも、作りたい思いが強かったのでとにかく頑張り、最終的には作り上げられたので良かったです。
実際、アプリ自体は簡単に作ることが出来ます。
主に2つの構成で成り立っており、
1つ目は、ボタンを押したらカウンターが一個進んで次のシナリオに行くロジックです。
2つ目は、初めに与えられたポイントの数値を、能力を選んで割り振るロジックです。
後は計算式通りに足したり引いたりしたら勝ったり負けたりとフラグが立ちます。
すごくシンプルで面白いと思ってくださっているのは「世界観の統一」がうまく出来ているのかなというのと「素材の力」です。
魔王魂さんの戦闘用BGMによって「これから戦いが始まるぞ!」と感じたり、スライム見た瞬間にあんまり強そうじゃないな、とわかるようになっています。
勝てなかった時、こういうやつなの?と驚きを与えることによって、ゲームの演出はだいたい成功しています。
エラーが起きたらワクワクする
ーアプリ自体は難しいことは行ってないとのことだったのですが、綿密に設計されていたのですか?
いえ、設計はほとんどしておらず、行き当たりばったりで行っていました笑
エラーが起きた時にこうすればいいのかなぁと無限に繰り返してました笑
ーなるほど。エラーの対処法はどのようなことを行いましたか?
動かない系のエラーが多く、コンソールログを挟みまくっていました。
test1,test2,test3と分けて、test2までは動くけどtest3が動かないからtest2とtest3の間でエラーが起きてるなと確認したり、変数の値をコンソールの値で出力して、計算ミスがないか逐一チェックしていました。
他の人には頼らず、自分で検索するなどして解決していました。
よくわからないけど、楽しみながらできました!
ーエラーが起きた時楽しみながら行っていたのですね!
そうですね!
エラーって自分の予想していない結果にぶち当たってるから「あ、意外!」と面白さに溢れていると思っています。
「これどうやって解決するのかな?」や「ここが問題点なのかな?」とパズルをやっている感覚になり、解決したら「よし!」と嬉しくなります!
正直人に言われるときついかも知れないのですが、CPに言われると、何行目にエラーが出てますよと静かに教えてくれるので、「ありがとう」という気持ちになります。
CPと会話するのが好きで、人だと声高に指摘してきたり、失望している声で何か言われたり影響を受けるのに対し、CPは感情がこもってなく話しかけてくれるだけなので影響を受けにくいと感じています。
色々含めて可愛いと思っています笑
アプリ開発が究極のアウトプット
ー『みんまるのおうち』で色々ゲーム遊びました!
ありがとうございます笑
ギャルゲーが好きなら『ロッティのせどり日記』
シューティングゲームが好きなら『other planet』などあります。
ゲームは気が向いたらやるていう感じでいいと思うんです。
やらなきゃいけないと思ってやるものではなく、ユーザーがちょっとやりたい、これどういうのなんだろうと思った時から少しずつハマっていくものだと思います。
ーなるほど!ランキングも作っていきたいと伺いました。
そうですね、ランキング形式だと楽しいかなと思い、『other planet』などに入れていきたいと思います。
現在『Push 9 Cookies(クッキーを揃えるパズルゲーム)』には導入しており、その時使用したのがPHPとMySQLです。
また、サーバーにはLinuxを利用し、色々初めてだったのですが、アプリ開発を通してアウトプットを行い、学ぶことが出来ました。
ーアプリ開発がアウトプットになるというのは興味深いです。
先にアウトプットしてからインプットすることが大切だと私は考えています。
先にやってみて足りないものがわかる。見える化される。
↓
課題が終わったらその課題を学習する。
↓
またチャレンジする(アウトプットする)
↓
課題や次に作りたいところが見えてくる
この繰り返しでアプリ開発を行っています。
エディターを開く前に色々考えて、布団の中で本を読むなどのインプットばかりしても、あんまり意味ないのかなと個人的には思っています。
ー私自身、結構インプットに偏っていると感じてて勉強になります!
アプリ開発でおすすめなのは、最初の段階でデプロイしてしまうことです。
最初に、データさえ送ればアップロードされて皆んなに見せられる状態にしておくことが良いのかなと思います。
とっつきやすいのとサーバー関係は先にやってしまった方が後々やりやすいなと思っているからです。
今やってみたいことを大切にする
ー今後挑戦したいことなどはありますか?
はい。
アプリ開発に関しては不思議なダンジョンのような「ステージ」を自動生成するゲームの開発に興味があります。
セーブしなくても何回もコンティニュー出来て、毎回新鮮な気持ちで遊べるゲームを作りたいと思っています。
例えば、パズルの自動生成で、解けて終わりではなく、何回でも新しいパズルができるというものです!
これは先の夢というよりも、今早速取り掛かりたいことです。
先の夢は自分が開発したアプリの合計ダウンロード数が100万ダウンロードされることです!
「またみんまるさん今月もアプリ出してくれてる!やってみよう!」
というふうになってくれたら良いなと思っています。
夢は膨らむのですが、実際についてくるものは小さい、まだできるかどうかわからない。実益半分・趣味半分でうまくバランスとりながらやっていきたいと思います。
ーぜひ楽しみにしています!他に何か今後作りたいアプリなどってありますか?
人を助けられるサービスを作りたいと思っています。
私自身、感覚過敏なので、自分と似たような境遇の方に向けて情報共有できるポータブルサイトみたいなものを作りたいです。
「こういうものを使ったら生活が楽になるよ」
「耳栓でもこういうのがおすすめだよ」
と優しい言葉で信頼度の高いサイトを作れたら良いなと思っています。
記事の執筆はお医者さんなどプロにお願いするのが良いのかなぁなど漠然と考えている最中です。
ー素敵です!これからアプリ開発を行う方や初学者の方に向けて何かアドバイスいただけますか?
はい!
「あなたが今やってみたいことを大切にしなさい」です。
これはアプリ開発だけに限らず言えると思うのですが、好きなことでないと続かないですし、目的がないまま挑戦しても結局挫折してしまうと思います。
まずはゲームが作りたいと思ったら難しいことではなく、簡単なことから始めることが大切だと思います。
例えば、いきなりモンスターハンターのようなゲームを作ろうとしてもかなり厳しいので、最初はボタンをタイミングよく押したらモンスターが捕まえられるなど、このくらいなら作れるかもと思えるレベルから始めるのが良いのかなと思います。
まとめ
みんまるさんのお話を聴いて特に印象深かった点は、自分の想いをプログラミングによって形にされており、エラーが起きたらワクワクするという点です。
私自身プログラミングが目的になってしまっている部分であったり、エラーが起きたら考え込んでしまって頭を悩ませることが多いのでぜひ参考にしていきたいと思いました!
みんまるさん、ありがとうございました!
TechCommitでは個人アプリ開発・学習仲間を募集中です。
今後も個人アプリを開発したメンバーのお話を『個人アプリ開発インタビューマガジン』にまとめていきますので、よろしければフォローもぜひお願いします!
もし少しでも役に立った、面白いなと思ってくださったら、「スキ」や「フォロー」、「SNSシェア」で応援していただければ嬉しいです!