進化の10段階
10段階あることは画面から確定できます。ただし各段階の必要量は、クライアントのビルドに書かれていません。
0110段階という構造
エボリューション画面には EvolutionsTitle1 から EvolutionsTitle10 までの見出しと、LEVEL 1 から LEVEL 10 までの表示が並びます。つまり進化は10段階で、1試合のあいだに段階を上げていく形です。
段階が上がると体格(Size)と速度(Speed)が変化します。内部のデバッグ表示に Level / Size(px) / Speed / Score の4項目があるので、これらが独立した値として管理されていることが分かります。
到達した段階は試合終了時に EVOLUTIONS として表示され、保存データの evolution / levelrecord にも記録されます。自己ベストの段階は次回以降の比較対象になります。
| 段階 | 画面表示 | 必要経験値 | 備考 |
|---|---|---|---|
| 1 | LEVEL 1 | 不明 | 試合開始時の段階 |
| 2 | LEVEL 2 | 不明 | 体格と速度が変化する |
| 3 | LEVEL 3 | 不明 | — |
| 4 | LEVEL 4 | 不明 | — |
| 5 | LEVEL 5 | 不明 | 中盤の目安 |
| 6 | LEVEL 6 | 不明 | — |
| 7 | LEVEL 7 | 不明 | — |
| 8 | LEVEL 8 | 不明 | — |
| 9 | LEVEL 9 | 不明 | — |
| 10 | LEVEL 10 | 不明 | 最終段階 |
02経験値の計算式
ビルドには Construct 2 の外部プラグイン TR_Level が組み込まれています。このプラグインは、次レベルまでの必要経験値を3つのモードで切り替えます。
PROGRESSIVE モードでは「baseExp × expScale^(レベル - 1)」、CONSTANT モードでは「baseExp + expScale × (レベル - 1)」、CUSTOM モードでは配列から直接読みます。このゲームではどのモードが使われているかまで特定できませんでしたが、式の形はビルドに残っています。
問題は baseExp と expScale の実数で、これはインスタンス生成時にプロパティとして渡される設計になっており、ビルドの明文には現れません。そのため具体的な必要量は計算できません。
- PROGRESSIVE
- baseExp × expScale^(レベル-1)。段階が上がるほど急増する
- CONSTANT
- baseExp + expScale × (レベル-1)。等差で増える
- CUSTOM
- customExpScale 配列の値をそのまま使う
- 採用モード
- 不明(実行時のプロパティで決まる)
03進化すると何が変わるか
確実に変わるのはサイズと速度です。デバッグ表示の Size(px) が体格、Speed が移動速度で、どちらも段階に応じて変化します。
体格が大きくなるということは、食べられる側から食べる側に回りやすくなる一方で、相手の攻撃が当たりやすくなるということでもあります。進化は純粋な強化ではありません。
速度の変化の向きは、体格と逆になると考えるのが自然です(大きいほど遅い)。ただし実際の数値はビルドに無いため、この点は推測です。実機で段階ごとの体感を比べるのが確実です。
04段階を上げる実務
必要経験値が分からない以上、できることは「食べる量を増やす」だけです。ただし効率の良い食べ方はあります。
食料は動かないので確実ですが、1個あたりの価値は低いです。虫は動くぶん当てる技術が要りますが、価値は高い。小さいモンスターは最も価値が高いですが、リスクもあります。
序盤は食料と虫、中盤以降に小さいモンスター、という順番が、ゲーム内のヒントとも一致します。段階が上がるほど安全に狩れる相手が増えるので、無理に序盤から狩る必要はありません。
05分かっていないこと
- 各段階の必要経験値(baseExp / expScale がビルドに無い)
- 段階ごとの Size と Speed の実数
- 試合終了時に段階がリセットされるか、保存されるか(保存キーは evolution)
- 段階ごとに見た目が変わるかどうか
- 30種のチャンパーで段階の上がり方が違うかどうか