クリッカー系の数値設定で失敗
先週は延々とパワーアップ関連の数値設定をしていました。以前クリッカー系の数値設定について調べていたこともあり、考えも無しに「等比数列」で数値設定したら大失敗!。ゲームによって向き不向きがあるようです。
クリッカー系の数値設定について説明しているサイト(英語)
等比数列とは前の数値に一定の値を掛けて作成する数列です。下の表は初期値1で公比1.2の等比数列のグラフですが、後半でインフレが発生します。クリッカー系では「インフレ」が魅力の1つになるわけですが(タイトルに「1兆」とか付けて売りにしたりね)、シューティングには合いませんでした。
具体的な問題としては「レベルが少しでも足りないと、敵に全く歯が立たない」状態になります。逆に自分のレベルが高いと敵を秒殺してしまいます。
ソシャゲの非課金パーティで高難易度ミッションに挑戦しているような感じです。
このような数値設定でもゲームとして成立すると思いますが、個人的には少しはプレイヤーのテクニックでレベル差を吸収できるようにしたいので「等比数列」は不採用としました。
そもそもパワーアップ制はプレイヤーテクニックを否定する仕組みなので、弾幕愛好家としてはジレンマがあるのですが…
階差数列の利用
弱いインフレが必要な場合は「階差数列」の出番です。wikipediaの説明は複雑なのでこのサイトを参考にすると良いと思います(各項目の差が数列になっている)。階差数列は種類が色々あるのですが、概ね等比数列よりもインフレを抑えることができます。
一番シンプルな階差数列は下のF列で、各項の差(増加分)が1,2,3,4,5と1の等差数列になっています。
G列はF列の値を2倍して3足した数列で、最初の機体のシールド値として利用していますLv1だと5ですが、Lv30になると875になります。
親戚には黄金比で有名なフィボナッチ数列(wikipedia)がいます。
結城浩です。いつもご愛読ありがとうございます。書籍化第一弾として『数学ガールの秘密ノート/式とグラフ』が 2013年7月に刊行されます。
敵は等差数列、自機は階差数列
結局、敵のパラメータはインフレの発生しない等差数列を利用することにしました。最初の敵は弾幕の器のパラメータの半分ですが、徐々に増加して最後の敵は弾幕の器のデータの20倍になります。
小弾に被弾しただけで20ダメージ、砲塔の体力も2000とかです。
対して、自機のパワーアップは階差数列をベースにします。1体目の自機はLevel30までパワーアップさせると、最後の敵と釣り合う20倍の強さになるようにしました。階差数列なので、その後は弱いインフレで最終レベルの50に達すると弾幕が苦手な人でもクリアできるような感じになります。
前回の動画(youtube)で紹介した2番目の機体は「体力が速度の成長率は低いが、攻撃力の成長は早く上限も高い」ようになる予定です。いろいろ大変だけど学習が楽しい今日この頃です。
twitterを本格的に初めてみた。ブログの更新記事をつぶやくのがメイン。あとCocos2dやUnity、その他アプリ開発に関連するツイッターの方をフォローして情報も集められたらなぁと思います。
— 柳澤@ゲーム作るよ (@designdrill) 2015, 12月 28