unityでキャラクターデータを作ろう

  • このエントリーをはてなブックマークに追加
  • LINEで送る

unityでソシャゲ用キャラクターデータを作ろう。

キャラクターデータのクラスを作成して、unity側で表示します。

キャラのデフォルトパラメーターリストと、実際のユーザーが所持しているキャラクターのリストをわけて実装していきます。

こうしておくとデフォルトパラメーターリストを使用して、敵のデッキ情報からのキャラクター生成や、他のユーザーが所持するデータから

最小限の情報でデッキの作成が出来ます。

  • キャラクターのパラメーターを決めよう
  • キャラクターのパラメーターをcsvにしよう
  • キャラクターのパラメーター読み込みを作成しよう
  • 手持ちキャラクターの生成をデータベースに入れる
  • 手持ちキャラクターをunityでリスト化する

 

キャラクターのパラメーターを決めよう

どんなゲームにするか、ゲーム部分の実装をある程度勧めておく。

インムスでは、

  • 攻撃力
  • 体力
  • 回復力
  • スキル内容
  • スキル解除パズル数
  • 属性
  • 名前
  • 管理連番

などを設定。(細かくは、レアリティ、ステータス上昇率タイプ、ステースの上限値、紹介文など多くを設定。)

管理連番は、sqlite側でrowidを使用すると後日連番はずれた場合にわけがわからなくなるので、必ず手動で設定する。

管理連番.pngなどで、サンプルの画像を作成する。 インムスでは   ゲーム中の立ち絵を 管理連番_t.png   デッキ内容表示時の小アイコンを 管理連番_s.pngとして

管理することにした。

 

キャラクターのパラメーターをcsvにしよう

これらのパラメーターを記入したcsvを作成して、sqliteに流し込む。

 

キャラクターのパラメーター読み込みを作成しよう

基本的には、ログインの処理と同様。 csvを読み込み、パラメーターの設定を行い、

サーバー側には、パラメーターをカラムとしたカンマ区切りを表示させる。

 

unityからは、ログイン画面でログイン終了後に

データーの呼び出しを行う。

ここまでで、kyara_mapperクラスのインスタンス kyradataにアプリ内で出現するキャラクターのパラメーターリストが作成できる。

アクセスする場合は、kyradata.all[i].atkなどとしてしゅとくする。配列iの部分で繰り返し処理が行える。

なお、キャラクター連番で検索できるように

find_kyara_data関数を作成しておく

これで、カードの連番が分かれば、デフォルトのパラメーター単位で情報を取得することができる

 

次は、いよいよ手持ちのキャラクターを生成していきます。

手持ちキャラクターデータをデータベースに入れる。

キャラデータの時同様、手持ちキャラにも固有のパラメータを定義する。

ここでは、キャラ名は必要なくて、キャラクター連番のみ設定し、内容は先程作成したキャラデータから検索する仕組みとする。

なお、レベルや経験値を設定し、キャラクターデータと掛け合わせて、現在のパラメーターを作成している。

あと、持ち主であるユーザーのIDと

その他、取得時間

採用デッキ番号

デッキ隊列の順番もココで定義している。

同様にキャラデータを作成後、

サーバーからのダウンロード処理をおこなう。

インムスでは、メニュー画面にて、採用しているデッキの先頭キャラクターを表示しているため、

手持ちキャラクターの生成後、デッキの生成を行っている。

 

 

手持ちキャラクターをunityでリスト化する

ゲームの楽しみ方の一つに、キャラのコンプリートがあるので、キャラクターリストを作成。

user_idテーブルに取得済みの連番を保存するカラムを作成して、unityで該当があればキャラ表示、なければ影絵で表示するようにした。

メニュー画面→その他→図鑑で表示

 

 

  • このエントリーをはてなブックマークに追加
  • LINEで送る

SNSでもご購読できます。

コメントを残す

*