カッパでも分かるiOSアプリゲーム開発

カッパがひたすらゲーム制作に関することを書くブログです。Railsに関するTipsもたまにまとめてます。

【かっぱクエスト】グラフィック関係は後回し。まずはゲームとして遊べるようにせねば

スポンサードリンク

f:id:InvokeTwoA:20151023183618p:plain「フゥ カッパクエストの開発開発」
f:id:InvokeTwoA:20151215172640p:plain「しかし残念。今日はもう時間切れなのです」
f:id:InvokeTwoA:20151023183618p:plain「……うあー、明日の8時間MTGなんてサボってずっと開発してたいー!」

攻撃のアニメーションでプチスランプに陥る

  • カッパと剣の距離感に悩む
  • なんか手から離れすぎてたり体にめり込みすぎてたり
  • 攻撃の瞬間だけ剣を出すようにする、などで誤魔化すよう試みるが時間がかかるかかる
  • とりあえずグラフィックの優先度は低いので後回しに。まずはテストプレイをしてもらえる段階に持っていくのが最優先だ。グラフィックはしょぼくてもテストプレイはしてもらえる
  • そもそもカッパのゲームにグラフィックは……

画像追加

  • 開発に詰まると脳死でできる縁取り作業が始まる
  • キャラが増えると自然とステージ構成が頭に浮かんでくる良い循環がある
ヒヨコ

f:id:InvokeTwoA:20170720214020p:plain

  • 最弱キャラクター
  • 私的にはRPGの最弱といえばスライムの認識がユーザーにも根付いてるのでスライムにしたかった
  • ↑兄貴から「スライムはドラクエのパクリだからダメだ」と謎の猛反対を受けたのでスライムはボツになった
騎士

f:id:InvokeTwoA:20170720230740p:plain

  • 敵としても味方としても使える便利キャラ(色的には若干敵っぽいけど)
  • 職業で騎士といえば防御バカのイメージ
  • でも一般的にプレイヤーは脳筋か純魔、次点でスピード特化のプレイスタイルを選ぶ人が多いと思う
  • 俺は防御重視だ!という人はドMだと思う
踊り子

f:id:InvokeTwoA:20170720235435p:plain

  • カッパはRPGに置いて踊り子というジョブが好きだ
  • 基本的に支援キャラは苦手で脳筋で殴りたいのだが、ゲームによっては「つるぎの舞」的な連続攻撃が非常に格好いい
  • 普通にプレイしていれば弱いが、条件次第で強くなるピーキーなキャラに惹かれるのだ
  • 踊り子といえば赤い靴だろう、という事で靴を赤くしてある(絵本「あかいくつ」)
  • 無理やり目と口をつけるとバランスが悪くなる事があるので、目だけで良いんじゃ無い? という悟りを与えてくれたキャラ
魔王

f:id:InvokeTwoA:20170720214521p:plain

  • カッパシリーズでお馴染みのラスボス
  • 「顔が見えてると底が知れる」という友人のアドバイスを受けて、真の強敵は顔が見えないべきだというコンセプトで設計した
  • フードの下にある恐ろしい素顔をユーザーに想像してもらうスタイル
  • ラスボスのパラメーター設定は本当に迷う
  • ラスボスまでたどり着いた時点でハードユーザーなのだしやりこみ一歩手前あたりの強さに設定しても良いとは思う
  • 一方で、やり込んだら容易く撃破できるバランスでなければ爽快感が無い。難しいねぇ
  • ラスボス戦を一撃で終わらせられたら悲しい=メタル属性をつけて1ずつしかダメージを与えられないようにしよう! → 大不評だったのでNGになった

多言語対応

  • あまり新しい事に挑戦してリリースが遅れるという事はしたく無いんだが、今回は多言語対応をする事にした
  • 俺はカッパクエストをベトナムで流行らせて見せる!
  • 技術的にはそんなに難しく無い。Rails の I18n とやってる事は一緒
  • 問題は画面だ。英語だと文字数が多くなるので、色々と窮屈になりそうで怖い
  • 「多言語対応したからゲーム内にあまり文字を入れたくなくなった」という本末転倒な気もするゲームデザインになった
  • 文字で説明をするとユーザーも疲れるだろうし、全て直感的に分かるくらいがちょうど良いはずだ
  • また、多言語対応をしたが故に画像にテキストを入れにくくなったのも問題だ

(もちろん画像を二つ用意し、画像パスをそれぞれ言語ごとに読み込むという方法もあるが)

ボタン

  • spriteKit ではボタン要素が標準で用意されてない
  • これは困った。困ったンゴねぇ
  • せっかく sks を用いて storyboard 的にゲーム作りができると喜んでいたのに、ここに来てまいったねぇ
  • ボタン画像にして SKSpriteNode でやり切るしか無いんだろうか
  • しかしそれだと前述したように言語ごとに画像を用意しないといけないとでダルい
  • うーん

ゲージ

  • 自分や敵のHPをライフバーで可視化したい
  • しかし標準だとゲージバー的なものは無さそうだ
  • 自作してもなんかしょぼいゲージになってしまう
  • うーん

敵の動き

  • なんかコンポーネント思考にspritekitはなったらしい
  • 敵の動きは GKEntity とかいうのを使って書くと良いっぽいけど、GKEntity の情報が少なすぎてしんどい
  • サンプルを探してもなかなか見つからないし、本家ドキュメントを熟読した方がいいんだろうか
  • 必要な事なのだがいまいちモチベーションが上がらない作業だ

音楽

  • そもそもスマホゲームでは音楽が全く聞かれないパターンも少なく無い
  • ゲーム内音楽よりも自分の好きな音楽を勝手にかけてBGMにしてもらえばそれで良いのでは?
  • しかしフリー素材の魅力的なピコピコ音を発見すると実装してみたくなってしまう
  • 「名作の影に名曲あり」は的をえた意見だと思うが、うーん どうしようかねぇ
  • うーん

総括

  • まだまだやる事が山の如しだ
  • あーー、K2よ俺に時間をくれぇぇーーーー!
  • いや、むしろK2はカッパをアウトオブ眼中にする事でカッパに時間を与えてくれているのか?
  • K2……愛が重すぎるぜ