さーたはうす 2024/04/14 19:40

クイーンズ:システム設計紹介 「お題」編

クイーンズ: システム設計紹介 お題編

今回は作成中のゲーム:クイーンズの「お題」システムの紹介記事です!
ゲームシステム紹介の観点もありますが、どちらかというとコーディング・設計寄りの内容になります。

今回もかわいさ補充のためにコノハちゃんにコメントをお願いしています。よろしくね

まっかせてー!

お題システム


8コンボ達成を繰り返すステージ

クイーンズではキャラごとに大まかなテーマを決めつつ、各キャラ8つあるステージを順番に攻略していきます。

それぞれのステージはテーマに沿いつつも、各々ちょっと違ったクリア条件となる「お題」が提示されます。


ローシェはロジックがシンプルで顔がいいので例えによく出てきます

例えばワイルドカードの◇をテーマにしたローシェは「◇を規定枚数出す」や「規定コンボ数を達成する」などがお題になっています。
◇を使う、という一貫したテーマをもたせつつ、各ステージ少しずつ違う目標でゲームをプレイすることになりますね。


メアさんです

また、数値そのものを使ったロジックがテーマのメアは「現在のコンボ数」や「前に出したカードとの数値差」を参照して、合計カウントを0にするお題もあります。

出すカード1枚ずつお題達成するかを考えなきゃいけないの?

「これを出すとお題が進行するカード」は少し明るい色で表示されるよ

へー便利!

今回はこれの実装方針を詳しく見てみましょう。

実装方針


スキル編の記事に出てきたスプレッドシート入稿システムです

データ構造を見てしまうのが最も早いですね。
各ステージどんなお題を出すか、をこれまたスプレッドシートで管理し入稿しています。

  • どのステージで
  • どの種類のお題が
  • どの順番で出てきて
  • 何カウント達成したらクリアなのか

を入力し、ゲーム内で読み込んでいます。

quest_idってなーに?

ステージ一個一個についてるIDだよ

typeのcountとかdiffとかは?

これがお題タイプで、countだったら「出したカードの数値分カウント減少」、diffだったら「前のカードとの数値差だけカウント減少」だよ

「type区分」の数値を決めて、それを入力でもよくない?

私がわかりやすいからね...

param1ってなに?わたしこういうなんでもカラムきらーい

固有パラメータだよ、お題ごとの詳細設定をここに書いてるんだ

例えばcomboお題でここが5だったら5コンボ、10なら10コンボ

うーん じゃあ要るのかな......

ロジック実装


モロに内部実装である

お題タイプごとにそれぞれモジュールを切って、「このカードを場に出したときにいくらカウントが減るか」を返す関数を個別に実装しています。
この関数が1以上を返して来るようなカードが有効打ですね! そういうカードはハイライト表示するようにし、出したときにはそのカウント分お題を進行させます。


量産体制

この関数の設計次第でどんなお題も作れちゃうね!

そうなるね

なんでこんなことしてんの?

ロジック自由なのは便利そうだけど、スプレッドシートはいらなくない?

理由はふたつあって、データとロジックを分離することができるのと、スプレッドシートによる入力サポートを受けられるのが強みだね

どういうこと?

前者はバランス調整中にゲームロジックが変わっていないことが保証されているので安心!てことだね、後者は入力ミスとかをスプレッドシートの関数で検知できるからしょうもない入力ミスのエラーを減らせるのが強みってこと

なるほどね~

おたのしみに!

という感じで、フルスクラッチしつつも自分が作りやすい環境でゲームを作っていっています。

クイーンズは4月末にWeb体験版を出す目標で作業を進めていますので、ぜひフォローしてお楽しみにお待ち下さいね。

今回のシステム設計紹介記事が気に入った方には、前回のスキル設計解説もきっと楽しんでいただけるはず!こちらもぜひ!

次回更新は 4/21 に進捗報告記事を予定しています。

あとちょっとだから待っててー!

記事のタグから探す

月別アーカイブ

限定特典から探す

記事を検索