キャラクター強化

概要

強化素材を消費してキャラクターに経験値を与えるデモです。素材は potion(経験値 300)と elixir(経験値 1000)の 2 種類で、強化のたびに 20% の確率で獲得経験値が 1.5 倍になる大成功が発生します。キャラクターを勧誘し、素材を入手してから、キャラクターの行で素材を使って強化します。

試し方

  1. Recruit a character で Recruit knight などの横にある Recruit を押し、キャラクターを 1 体入手します。
  2. Materials の Get を押すと、その素材が 1 個増えます(potion x1 のように表示されます)。
  3. Spend materials to level up のキャラクターの行で Enhance with potion を押すと、potion を 1 個消費して経験値が 300(大成功なら 450)入り、Level が 1/10 から上がります。
  4. Enhance with elixir を押すと、elixir を 1 個消費して経験値が 1000(大成功なら 1500)入ります。
  5. 素材を持っていない状態で強化ボタンを押すと、素材不足で強化は失敗します。

使用している GS2 のサービス

  • GS2-Enhance: GS2-Enhance の強化レート Basic が、素材のメタデータに書かれた経験値(potion は 300、elixir は 1000)を対象キャラクターへ加算し、確率 20% で 1.5 倍、80% で等倍になるボーナスを適用します。
  • GS2-Inventory: GS2-Inventory が 2 つのインベントリを持ちます。Character インベントリが勧誘したキャラクターを、シンプルインベントリ CharacterEnhanceMaterial が強化素材の所持数を保持します。
  • GS2-Experience: GS2-Experience がキャラクターごとの経験値・レベル・レベル上限(10)を保持し、強化で加算された経験値でレベルが上がります。
  • GS2-Exchange: GS2-Exchange の交換レートがボタンの処理を定義します。Get は素材の入手(Gs2Inventory:AcquireSimpleItemsByUserId)、Enhance with potion と Enhance with elixir は素材を指定した強化(Gs2Enhance:DirectEnhanceByUserId)を、無償のトランザクションとしてサーバー側で実行します。

GS2 Studio で使う

GS2 Studio のシンプルモードで 機能を追加 を開き、キャラクター強化 の 追加 を押すと、この機能を自分のプロジェクトに取り込めます。パッケージを直接指定する場合は GitHub から追加 を選び、次のパッケージを指定します。

https://github.com/gs2io/gs2-studio-package/tree/main/micro-economy-character-enhance/packages/micro-economy-character-enhance
  • オーナー: gs2io
  • リポジトリ: gs2-studio-package
  • サブディレクトリ: micro-economy-character-enhance/packages/micro-economy-character-enhance

ソースコード