ゲームプランナーは知っておこう!マスターデータとは?

どうもハジメです。今回は、開発現場で使えるDBとマスター教養です。企画職としては実際に触ることになるのはこのマスターというものでしょう。

そこで今回はマスターと似ていて意外と違いがわからないDBについても合わせて紹介したいと思います。また、毎度のことではありますが、企画者としての観点で必要なことがわを紹介したいと思います。

DBとは

DBは、DataBaseの略で、データを保存する機能の総称ですね。データを保存するにもプログラムを構築する上で様々な種類があるのですが、今回はこのDBの簡単な特徴から説明できればと思います。

 DBとは、ゲームでよくあるセーブのようなデータの保存の仕方に近いといえば近い機能です。しかし、開発になるとゲームに関わる全てのデータをどのように保存するかを定義するところから始まります。RPGに例えるとわかりやすいので、ソシャゲのRPGを例にあげて考えてみましょう。

 ソシャゲには、まずユーザー(みなさん)がいて、ガチャやドロップなどで様々なキャラクターを手に入れられますよね。そのキャラクターにはレベルがあって、技もあって、ステータスに当たる能力値なども持っています。

 一方で、クエストという名前のステージがいくつか用意されていて、敵キャラも豊富にいます。ユーザーはゲーム内のAPのようなものを消費して、そのクエストを実行して、アイテムを手に入れたり、ユーザーのランクが上がったりします。

という一般的な作りのソシャゲRPGに置いて、このようなグループ(テーブル)を作ってデータを保存して、ゲームを実行させいてます。

 ・ユーザー

名前、ランク、ゴールド(ゲーム内通貨)、AP、ステージ進行度(クエスト1章5話)

 ・キャラクター

  所有者、所持キャラ、キャラレベルLv.10

 ※ゲームのデータ設計は仕様に依存するため、全て同じじゃないのでご注意ください。

こんな形で、DBに保存されています。実際はエクセルのシートのような形で保存されているとわかりやすいかもしれません。

ユーザー数の分だけデータがサーバーに山のように保存されています。

具体的に見てみる。

サーバー上にDBが配置されていて、プレイヤーがゲームをする度にデータが上書きされたり、追加されたりしています。

例えばAさんがもう少しプレイを進めて、rankが上昇すれば、15→16に保存される。goldを30ゲット出来れば198→228に保存される。といったぐらいです。

このように、プレイヤーそれぞれに行が追加されてその行の中にプレイによって変化があるごとにデータが書き換えられていく作りになっています。

仕事で考えると!

ある程度慣れているエンジニアさんであれば、企画がやりたいことを伝えるとある程度意図をくんで実装してくれます。しかし、こちらが伝える仕様の詳細が伝わりきっていないとあとあと、企画がやりたかったデータの仕組みになっておらず、予期せぬ時間がかかったり、やりたい仕様が叶わないこともあります。

例えばどういうことか?

 先に書いたユーザーのDBに関して。この設計のママだと例えば、クエストの進行を一つの場所にしか持たせていません。これが何を意味するかというと、複数の分岐を持たせたメインストリーのような作りにすることができないということです。なので、企画は自分がやってみたいゲーム仕様は慎重に考えた上で開発してもらう方がいいですね。

マスターとは

一方マスターとはどういったものかと言うと、こちらもデータの一種です。よくマスターデータとも呼ばれることがあります。もしかすると会社によって呼び名が違うかもしれません、、、。

こちらのデータの方が企画の人間が入力する機会が多いデータになると思います。

では、どんなデータかと言うと。ゲームを実行する際に、データの変更がない決まったデータ群をさします。

具体的に説明しましょう。

先ほどのDBであげたデータはプレイヤーの操作に応じて、数値が変化したり、持ち物が増えたりする部分を記憶させておく類のデータでした。

マスターデータはソシャゲRPGでいった時の、キャラクターの強さのデータだったり、ステージに登場させる敵の出現するパターンなどを管理するものです。

 キャラクターのHPとかATKはどのプレイヤーも一緒で差がないですよね。レベルごとであっても、みな同じ値になると思います。そもそものキャラクター名前もそうですね。また、クエストに出現する敵のパターンもプレイヤーによって違うことはないと思います。

 ・キャラクター

  名前、HP、ATK(レベルごとに定義)、コスト、技

 ・クエスト

  クエスト名、出現する敵(ゴブリン*3)、消費AP

などをまとめて管理するようなデータになります。

具体的に表を見て見ましょう。

マスターの場合、AさんもBさんもCさんもクエストの1ー2をプレイすると同様のデータとして、クエスト名が表示されたり、消費するポイントが同じように表示されることになります。

プレイヤーによってデータの中身が変わることなく、同じデータだからこそ、「マスターデータ」と呼ばれている所以ですね。

仕事で考えてみると!

こちらも同じように、ゲームでの仕様によってこのマスターデータの設計も変える必要があります。例えば、プレイヤーの育て方によってレベルとは別のHP、ATKの成長があるとか。キャラクターの名前をユーザーが変えられるなどもそうですね。

その場合はそのデータに当たるものは、DBとして管理し方が適切だと言うことになります。

企画が詳細なところまで理解する必要はないと思いますが、多少構造を理解していると、エンジニアさんとの会話するのはスムーズに行くことがあります。

さらに、企画はこのようなデータをとにかく入れまくることも仕事の一つです。クエストの名前から消費するポイント、キャラクターの強さ、世界観用のテキスト、台詞などもマスターとして管理されています。

まとめ

今回は基本的なデータに関することをまとめて見ました。エンジニアさんからするとかなり当たり前なことだと思いますが、企画は知っておいても損はないかなと思います。

チームで仕事をする以上、自分の作りたいものをより正確に他の人に伝えたり実現するために知っておいて損はないことかなと思います。

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です