unity ソシャゲガチャ作り方

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

unityでガチャを作ろう

ゲーム中に手に入れた、アイテムや課金のアイテムを使ってくじ引きできる仕組みを作りたい。

  • 石やアイテムの管理を作成しよう
  • unityのガチャランダム処理
  • 抽選方式と重み付け
  • ガチャの抽選内容の管理方法

石やアイテムの管理を作成しよう。

ガチャを回すためのアイテムの定義を行います。以前の記事unityでuserを作ろうなどで

課金アイテム のカラムを追加して作成し、同様にガチャチケットも追加します。

注意点としては、石の実装を行う場合、 ゲーム中で手に入った無料の石と、ユーザーが課金を行って手に入れた

石は、別々に管理することです。

インムスでは、その他のページの部分に現在所持している「くっそ汚い石の内訳」として表示しています。

メニュー側では、石の合計を表示し、石の仕様時は、ゲーム中に手に入れた石から使用するようにしました。

サーバー側の使用時の引き落とし方法(phpサンプル)

unityのガチャランダム処理

unityのとは書いたものの、実際の所unity側で抽選処理をしては行けない。不正の温床となるし

なにより、ランダム自体を極力さけるべき。

サーバー側でランダム処理を行い結果を返す

phpでは、配列のキー番号をランダムに返してくれる関数 array_randがあるので使用する。

explodeで アンダーバーで連結した ガチャの内容(0001_0002_0003とする)を渡してあげれば、いずれかのカード情報を取得することができる。あとは、 データベースに取得処理を入れる。

 

 

 

抽選方式と重み付け

上記の方法では、 ガチャの排出確率がどれも一定で当たりとかハズレなどがない状態なので重み付けを行う。

カード毎に排出設定を行うわけではなく、

抽選リストの抽選を行う方式をとる

  • 1等(0001_0002_0003)  10%
  • 2等(0011_0012_0013)    40%
  • ハズレ(0111_0112_0113)50%

 

ガチャの抽選内容の管理方法

以上でガチャの抽選方法の実装ができた。

イベントガチャや、チケットガチャなど 排出内容のバリエーションを増やす際も

sqliteにて抽選候補となる配列と その重みの設定にて作成する。

実際の演出は、是非 インムス ソシャゲと化した先輩をご覧ください。

 

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

SNSでもご購読できます。

コメントを残す

*