見出し画像

クラロワデータ分析_No.2_基礎集計

 お久しぶりです。takeshi です。
 前回投稿してからしばらく経ちましたがいまだにリアクションなしで、仕事も思うようにうまくいかず少々気落ちしていますが、今後も趣味程度に続けていきます。

 さて、今回は前回収集したデータをもとに行った基礎集計の結果をお伝えしたいと思います。

 「基礎集計って何?」と思っている方のために説明すると、簡単に言うとグラフを使ってデータを可視化することです。これをすることで、データを眺めるだけではわからない傾向や特徴を把握することができます。

 それでは続きをご覧ください!


1. 結果

 今回行った作業は下記の内容となっています。

  • 前回収集したデータの修正

  • 前処理(欠損値補完)

  • 基礎集計(データの可視化)

 まず「前回収集したデータの修正」についてですが、こちらは前回公開したデータに、誤入力をしてしまっていた箇所が見つかったため修正しました。

 続いて前処理についてですが、収集したデータは、私だけではなくいろんな人に汎用的に活用してほしいとの思いから、入力方法がいくつも考えられる箇所を入力しない状態としていました。そのため、その欠損値を私なりの考え方で補完をしました。

 最後に基礎集計(データの可視化)についてですが、今回は下の4つのグラフを作成しました。(他にも作成しましたが、量が多くなりすぎるため4つに絞りました。)

画像1:体力の合計
画像2:1コストあたりの合計ヒットポイント
画像3:ユニットへの毎秒ダメージ
画像4:1コストあたりのユニットへの毎秒ダメージ
画像5:1コストあたりの1回のダメージ量
画像6:ヒットポイントを加味した1コストあたりの1回のダメージ量

 詳細については後述しますが、可視化により得られた情報を簡単にまとめると下記のようになっています。

  • ジャイアントの体力は異常に高く設定されている

  • ファイアスピリットの攻撃力が1コストにしては高すぎる

  • 今「ぶっ壊れカード」として有名なフェニックスの復活した時、大型ユニットと同レベルの体力でユニット処理をすることができることになる

  • トルネードは瞬間火力も優れている

 それでは上記の結果を得るまでの作業内容と考察について、記載しましたので是非ご覧ください。


2. データの修正

 今回基礎集計を行うにあたり、前回公開したデータに入力ミスがいくつか見つかりましたので、下記の点を修正しました。

  • エリクサーゴーレムのユニットへのダメージをタワーダメージに変更

  • エリクサーゴーレムのデータを下記のように変更

    • 'death_damage':1 → -1

    • 'sub_death_damage':0.5 → -0.5

    • 'sub_2_death_damage':0.5 → -0.5

  • 列の追加

    • 'flight':飛行ユニットか否か

    • 'sub_flight':サブユニットが飛行ユニットか否か

    • 'sub_2_flight':サブ2ユニットが飛行ユニットか否か

    • 'skillunit_flight':スキルで召喚したユニットが飛行ユニットか否か

    • 'sub_2_tower_damage':サブユニットのタワーへのダメージ

  • 毎秒ダメージの欠損値を0で補完

 こちらが修正したファイルです。

  • 集計データ

  • データ説明


 やはり手入力でデータ収集をするとミスが多くなるものですね。ただ、今後もしデータを集計するときのためのいい経験になったと思います。
 データそのものについては興味がある人がいるのかわからないので、これ以上の詳細を知りたい人がいれば twitter でも何でもいいので連絡していただければいつでもお答えします。


3. 前処理

 今回集計したデータには欠損値が多く含まれているため。下記の方法で補完をしました。こちらも詳細を知りたい人がいるのかわからないため、twitter でも何でもいいので連絡していただければと思います。

  • 特定の数値で補完

  • 中央値を用いて補完

  • 他の列の値を参照して補完

 あまりにも列の数が多すぎるため、どの列に対してどの補完方法をとったのかについては省略します。

 こちらが前処理をしたデータです。



4. 基礎集計

 さて、いよいよ本題に入ります。今回行った基礎集計は大きく分けると4種類です。もっとやりたいことはありましたが、きりがないのでひとまず4種類に絞りました。

ヒットポイント

 まずはヒットポイントについてです。これをみた熟練のクラロワプレイヤーは「そんなのわざわざ調べなくても大体わかる」と思うかもしれません。
 確かに「ジャイアント」や「ゴーレム」、「巨大スケルトン」が明らかにヒットポイントが大きいのは調べるまでもありません。
 しかし、そのヒットポイントが消費するエリクサーに見合う体力なのかどうか考えたことはありますか?そのカードは1コストあたりで見ると、どれほどのヒットポイントが盤面に出現していることになるのか推測できますか?
 おそらく「なんとなくはわかる」程度でしょう。そこで役立つのが基礎集計です。

 それでは早速結果を見てみましょう!

画像1:体力の合計

 文字が小さいのは目をつぶってください。すべての結果を見たい人の為、上位のみに絞ったりせずに表示しています。画面を拡大して確認してみてください。(投げやりな形となってしまい申し訳ございません)
 ちなみに上位10位はこちらのようになっています。

  1. ゴーレム

  2. ラヴァハウンド

  3. 見習い親衛隊

  4. ジャイアント

  5. メガナイト

  6. エレクトロジャイアント

  7. エリクサーゴーレム

  8. P.E.K.K.A

  9. 巨大スケルトン

  10. ゴブジャイアント

 想定内の結果ではありますが、やはり高いコストのカードが上位にランクインしていました。では1コスト当たりの合計ヒットポイントでみるとどうでしょう。

画像2:1コストあたりの合計ヒットポイント

※上記のグラフはわかりやすく説明すると、1コストのカードにした時のHPを表しています。コストで割ることで高コストのカードが上位にきて低コストのカードが下位に来るという偏りをなくすことができます。

上位10位はこちらのようになっています。

  1. ジャイアント

  2. ラヴァハウンド

  3. ロイヤルホグ

  4. バーバリアン

  5. 見習い親衛隊

  6. ゴーレム

  7. エリクサーゴーレム

  8. フェニックス

  9. アイスゴーレム

  10. スケルトンキング

 太字の箇所が『体力の合計』のみでみたときのTOP10にランクインしていなかったカードになります。フェニックスは復活した時の体力を含めているため、上位にランクインしました。他の上位にランクインしているカードを見ると、体力が高いことが主な特徴となっているカード(タンク系)と複数ユニットからなるカードとなっています。
 つまり、フェニックスは復活させると単体で火力高い空ユニットでありながら、タンク系や複数ユニットと並ぶコスパで体力を召喚できたこととなるといえるのです。
 フェニックス恐るべし、、、

ユニットへの毎秒ダメージ

 つづいてはユニットへの毎秒ダメージです。なぜ「ダメージ」ではなく「毎秒ダメージなのかというと」、上手な人はユニットを延命してできるだけ何度も攻撃をさせるようにプレイをしているためです。(実際にプロの方の動画を視聴していただくと、そのような発言を皆さんよくしています。)
 ダメージ量だけ比較すると、1回の攻撃の大小は比較できますが、2回以上攻撃した場合は攻撃速度によって順位関係が変わります。
 そのため、今回は「毎秒ダメージ」で比較することとしました。

 こちらが実際に可視化した結果となります。

画像3:ユニットへの毎秒ダメージ

上位10位がこちらとなります。

  1. スケルトン部隊

  2. バーバリアン

  3. 三銃士

  4. 見習い親衛隊

  5. ガーゴイルの群れ

  6. エリートバーバリアン

  7. P.E.K.K.A

  8. ミニP.E.K.K.A

  9. ゴブリン

  10. トルネード

 値が0のカードがありますが、それは、「そもそもユニットを攻撃しない」、「一度しか攻撃しない」、「火力が一定ではない」といった理由があります。今回はきちんとすべてのカードを調べられていることを示すために、省略せず表示しています。

 さて、結果についてですが、やはり複数ユニットがトップ10にランクインしています。その中でもP.E.K.K.A、ミニP.E.K.K.Aは高火力が売りということもあって上位に入っています。
 しかし、そんな中なんとトルネードが10位にランクインしていました。正直驚きました。ユニットを引き付ける能力に加えて毎秒ダメージも実は上位に入っているとは思いませんでした。(しっかり確認したため入力ミスではありません。)
 これはおそらくユニットとは異なり、一度カードを切ってから攻撃する回数が有限であるために、その分攻撃力も高く設定されているためと思われます。
 また、スケルトン部隊はずば抜けた瞬間火力を持っていることが一目瞭然ですね!ここまで高いとは思いませんでした。

 では1コストあたりのユニットへの毎秒ダメージで比較するとどうなるでしょうか。その結果がこちらです。

画像4:1コストあたりのユニットへの毎秒ダメージ

※上記のグラフはわかりやすく説明すると、1コストのカードにした時の毎秒ダメージを表しています。コストで割ることで高コストのカードが上位にきて低コストのカードが下位に来るという偏りをなくすことができます。

こちらが上位10位です。

  1. スケルトン部隊

  2. スケルトン

  3. ゴブリン

  4. コウモリの群れ

  5. バーバリアン

  6. ガーゴイルの群れ

  7. トルネード

  8. ミニP.E.K.K.A

  9. ゴブリンギャング

  10. ガーゴイル

 太字の箇所は『ユニットへの毎秒ダメージ』ではTOP10にランクインしていなかったカードになります。
 新たにランクインしたのはコストが低い複数ユニットとなりました。

 ただし、ユニットには死んだ後に別のユニットが出現する場合や、召喚と同時に数種類のユニットが出現する場合などいくつかパターンがあり、毎秒ダメージの定義の仕方を統一することが困難であったため、初めに召喚したユニットのみの毎秒ダメージで集計しました。
 そのため、倒された後に新たに出現するフェニックスは復活すると高火力を出しますが、そのユニットについては集計していないため順位は下がっています。

 トルネードがここまで毎秒ダメージをコスパよく与えており、ユニットを引き付ける能力も持ち合わせているとなると明らかに強すぎるように感じますね。今はフェニックスに注目が集まっていますが、トルネードも十分に強いということがグラフや数字を見てもよくわかります。

 また、ミニP.E.K.K.Aも複数ユニットばかりがランクインする中で唯一の単体ユニットでのランクインしているところを見ると、実は火力設定がやや高いのではないかということがわかります。

1コストあたりのダメージ量

 先ほどは1度カードを切ったら、召喚されてからユニットや呪文の効果が消えるまでが長い場合を想定していたため、毎秒ダメージで集計しました。そこで今度は短い生存時間の中でどのカードが一番多くのダメージを与えることができるのかを比較するため、ダメージ量を比較したいと思います。
 ただし今までは、毎秒ダメージや召喚したユニットの体力の合計は一般的なイメージと異なる部分もあるかと思われましたので掲載しましたが、ダメージ量はプレイをしている人にとっては常識化してきているため省略します。

 そこで、いきなりですが1コストあたりの1回のダメージ量をお見せします。
 もしそれでもダメージ量を見たいという方がいれば連絡ください。
 いつでもお見せします!

画像5:1コストあたりの1回のダメージ量

※上記のグラフはわかりやすく説明すると、1コストのカードにした時の1回あたりのダメージを表しています。コストで割ることで高コストのカードが上位にきて低コストのカードが下位に来るという偏りをなくすことができます。

こちらがTOP10になります。

  1. ライトニング

  2. スケルトン部隊

  3. ウォールブレイカー

  4. ロケット

  5. スケルトン

  6. ゴブリン

  7. スパーキー

  8. ファイアスピリット

  9. コウモリの群れ

  10. バーバリアン

 なんと、スケルトンとファイアスピリットの1コストのカードが上位にランクインしました。ファイアスピリットに関しては火力が高いとは思っていましたが、ここまでとは思いませんでした。
 1コストで受けもできてダメージ量のコスパもいいスケルトンとファイアスピリットは実際に数値・グラフで表しても優秀であるといえます。

 しかし、コスパよくダメージを与えることができても、ヒットポイントが低すぎると、ダメージを与えることなくユニットが消えることがあります。それに、呪文の場合は、攻撃回数が限られている代わりにダメージ量が多くなっている傾向があります。

 そこで、最後に、ヒットポイントを加味したダメージ量を調べていきました。

ヒットポイントを加味した1コスト当たりのダメージ量

 先述の理由からヒットポイントを加味したダメージ量を調べてみました。
計算式は下記のように設定しました。


 (HP + ユニットへのダメージ)× 同時出撃数
 +(サブユニットのHP + サブユニットのユニットへのダメージ)
  × サブユニットの同時出撃数
 + (サブユニット2のHP + サブユニット2のユニットへのダメージ)
  × サブユニット2の同時出撃数
)/ (
 エリクサーコスト
 - 死亡時に得るエリクサー
 - サブユニットが死亡時に得るエリクサー
 - サブユニット2が死亡時に得るエリクサー

 なんのこっちゃわからないですよね笑
 簡単に説明すると1コストあたりの召喚したユニットのHPと1回のダメージ量の合計を意味しています。これにより、HPとユニットへのダメージ量の総合的評価を行うことができます。
 
 では実際に集計した結果をお見せします

画像6:ヒットポイントを加味した1コストあたりの1回のダメージ量

※コストで割ることで高コストのカードが上位にきて低コストのカードが下位に来るという偏りをなくすことができます。

  1. ジャイアント

  2. P.E.K.K.A

  3. アイスゴーレム

  4. ゴーレム

  5. ナイト

  6. スケルトンキング

  7. 巨大スケルトン

  8. メガナイト

  9. ウォールブレイカー

  10. エレクトロジャイアント

 今回はタワーダメージを考慮していないにもかかわらず、なんと、ジャイアントが1位となりました。これを考えると、ジャイアントの体力は「ぶっ壊れ」ですね笑
 思い返してみると、私の記憶上ではアーチャークイーンの登場によりジャイアントが誰からも使われなくなり。それを見た運営の方がまさかのジャイアントの体力を上方するということがありました。それが大きく影響してこの結果となっているようです。しかし、その後もマイティディガーの流行やフェニックスの流行など不運に見舞われ活躍の時を失っているようです。

 この、使われなくなったカードに大きな上方修正をし、強いカードを少し下方修正するというこれまでのバランス調整が、逆の関係になればジャイアントが活躍するときも近いかもしれません。


5. まとめ

 改めて最終的な結果をまとめると下記のようになっています。

  • ジャイアントの体力は異常に高く設定されている

  • ファイアスピリットの攻撃力が1コストにしては高すぎる

  • 今「ぶっ壊れカード」として有名なフェニックスの復活した時、大型ユニットと同レベルの体力でユニット処理をすることができることになる

  • トルネードは瞬間火力も優れている

また、作業を行うにあたり感じた課題点は下記の通りとなっています。

  • ユニットによっては、死亡時に新たにユニットを生成するカードもあれば、召喚時に複数の種類のユニットが同時に出現するカードもあるため、その際の攻撃力や体力をどのようにして比較すればよいかが難しかった

  • 調べたいことが多すぎてHPと攻撃力だけでしかまとめることができなかった

  •  数少ないカードにしかない、特有の能力がある場合が多く、集計できるデータの範囲がある程度絞られてしまった。


 いかがでしたか?
 私は想定していた結果と同じものもあれば、全く想定していない結果を得ることもありました。また、可視化したことで伝えたいことが多すぎて、本当はもっと言いたい点があるのに長くなりすぎて書ききれない内容があり、少しもやもやした思いも抱いています。

 読んでくださったらぜひコメント・リアクションをください。

 twitterもしているのでフォロー・いいねなどしていただけるととても嬉しいです。
 
よろしくお願いします。

また次回もお楽しみください。


  • 集計データ

  • データ説明

  • 前処理済みデータ

この記事が気に入ったらサポートをしてみませんか?