新規イベントのラッキーナンバーの仕様や効率などに関して解説を行います。
ラッキーナンバーイベとは
ユニークな仕様の新規イベ。
1.抽選を行うと、3つのボックスのどれかの数字が選ばれる
2.1~3の数値が抽選され、選択された数字に加算される
3.抽選された数値によって、アイテムをランダムに受け取ることが出来る
4.3つのボックスの数字を全てかけた数字が一定を超えると、達成報酬アイテムを受け取れる
5.全ての報酬を受け取ったら(掛けた数字が10万を超えたら)ラウンドが終了。達成報酬の異なる次のラウンドに進む。
6.ラウンドは4まで存在し、ラウンド4をクリアした後はずっとラウンド4が続く。
1~3の数値の抽選確率は以下。
1~3の抽選結果によって受け取れるアイテムは以下
非常にユニークな点が、どのボックスが選ばれるかという点で効率が変わることである。
特定のボックスに集中して加算されてしまうと効率が悪くなり、全体にバランスよく加算されると効率が良くなる(縦横の辺の長さの合計値が同じ長方形を考えた場合に、正方形に近いほうが面積が大きいことを考えるとイメージしやすいだろう)。
試行回数を経るほど平均値に収束するため、10万ポイントに達するころにはほぼバランスしてることが多いが、そういった観点のランダム性が出るところが今までになかった面白い点だ。
ラウンドごとの達成報酬一覧
ラウンド1
ポイント | 報酬名 | 報酬数 |
20 | 橙色万能破片 | 2 |
100 | 橙色万能破片 | 2 |
400 | 橙色万能破片 | 2 |
2000 | 橙色万能破片 | 2 |
10000 | 橙色万能破片 | 2 |
30000 | 橙色万能破片 | 2 |
100000 | ハッピー破片箱【大】 | 1 |
ラウンド2
ポイント | 報酬名 | 報酬数 |
20 | 橙色万能破片 | 2 |
100 | 専用スキル万能破片 | 20 |
400 | 橙色万能破片 | 2 |
2000 | 専用スキル万能破片 | 20 |
10000 | 橙色万能破片 | 2 |
30000 | 専用スキル万能破片 | 20 |
100000 | 専用スキル万能破片BOX | 3 |
ラウンド3
ポイント | 報酬名 | 報酬数 |
20 | 橙色万能破片 | 2 |
100 | Lv1レアスキル選択箱 | 2 |
400 | 橙色万能破片 | 2 |
2000 | Lv1レアスキル選択箱 | 2 |
10000 | 橙色万能破片 | 2 |
30000 | Lv1レアスキル選択箱 | 2 |
100000 | Lv.3レアスキル選択箱 | 2 |
ラウンド4
ポイント | 報酬名 | 報酬数 |
20 | 橙色万能破片 | 2 |
100 | 選択兵種+1宝箱 | 5 |
400 | 橙色万能破片 | 2 |
2000 | 選択兵種+1宝箱 | 5 |
10000 | 橙色万能破片 | 2 |
30000 | 選択兵種+1宝箱 | 5 |
100000 | マルチ戦闘準備箱 | 3 |
1ラウンド完了までにかかるコスト
結局のところ、何回回せば10万ポイントを達成できるのだろうか?
理想値は、47×47×46になったときで、バランスよく137だけ加算されればよい。
1~3の抽選期待値が1.42であることから、最高効率でバランスした場合、平均96.48回の抽選で10万ポイントに達することが出来る。
ただし、前述したアンバランスに加算されば場合に効率が悪化するはずなので、実際の平均値はもう少しかかるはず。
このあたりは机上での計算が困難なため、例のごとくシミュレータ作って期待値求めてみました。
シミュレータのコード
Pythonコードです。触れる人は使ってもらってOKです。バグがあったら教えてください。
興味ない人はスルーしてください💦
1~3抽選確率はメンバ変数にしてるのにおまけアイテム排出率はハードコードしてたりクソコード感あるけど気にするな。求められれば良いのだ。
import numpy as np
import random
from tqdm import tqdm
import math
import statistics
class LuckyNumber:
def __init__(self):
self.probs = [0.64, 0.3]
self.numbers = [1, 1, 1]
self.SSR_hero_debris = 0
self.rare_gacha_ticket = 0
self.rare_skill_box = 0
self.hero_skill_debris = 0
def get_finish_cost(self, target_score):
self.numbers = [1, 1, 1]
self.SSR_hero_debris = 0
self.rare_gacha_ticket = 0
self.rare_skill_box = 0
self.hero_skill_debris = 0
print('目標スコア:' + str(target_score))
result = self.get_finish_count(100000, target_score)
result_mean = np.mean(result)
print('平均回数:' + str(result_mean))
result_std = statistics.stdev(result)
print('標準偏差:' + str(result_std))
print('愚直に回す:(平均)' + str(result_mean * 90) + 'ダイヤ、(幅)' + str((result_mean - result_std) * 90)
+ '~' + str((result_mean + result_std) * 90))
print('10連活用:(平均)' + str(math.floor(result_mean / 10) * 880 + (result_mean % 10) * 90) + 'ダイヤ、(幅)'
+ str(math.floor((result_mean - result_std) / 10) * 880 + ((result_mean - result_std) % 10) * 90) + '~'
+ str(math.floor((result_mean + result_std) / 10) * 880 + ((result_mean + result_std) % 10) * 90))
print('おまけ橙色万能破片:' + str(self.SSR_hero_debris))
print('おまけレアガチャチケット:' + str(self.rare_gacha_ticket))
print('おまけレアスキル箱:' + str(self.rare_skill_box))
print('おまけ専用スキル破片:' + str(self.hero_skill_debris))
def get_finish_count(self, max_loop, target_score):
play_count_list = [0] * max_loop
self.SSR_hero_debris = 0
self.rare_gacha_ticket = 0
self.rare_skill_box = 0
self.hero_skill_debris = 0
for epoch in tqdm(range(max_loop)):
play_count = 0
self.numbers = [1, 1, 1]
while(True):
self.play_one()
play_count += 1
score = self.numbers[0] * self.numbers[1] * self.numbers[2]
if score >= target_score:
break
play_count_list[epoch] = play_count
self.SSR_hero_debris /= max_loop
self.rare_gacha_ticket /= max_loop
self.rare_skill_box /= max_loop
self.hero_skill_debris /= max_loop
return play_count_list
def play_one(self):
target_number = random.randint(0,2)
plus_value = self.get_plus_value(random.random())
self.numbers[target_number] += plus_value
item_rand = random.random()
if plus_value == 1:
if item_rand < 0.1:
self.rare_gacha_ticket += 1
elif item_rand < 0.3:
self.rare_skill_box += 1
elif item_rand < 0.5:
self.hero_skill_debris += 1
elif plus_value == 2:
if item_rand < 0.5:
self.SSR_hero_debris += 1
elif item_rand < 0.6:
self.rare_gacha_ticket += 2
elif item_rand < 0.9:
self.hero_skill_debris += 2
elif plus_value == 3:
if item_rand < 0.9:
self.SSR_hero_debris += 1
else:
self.SSR_hero_debris += 2
def get_plus_value(self, prob_rand):
if prob_rand < self.probs[0]:
return 1
elif prob_rand < self.probs[0] + self.probs[1]:
return 2
else:
return 3
シミュレーションの結果
10万回シミュレートしてみた結果、以下の結果が出ました。
目標スコア:100000 平均回数:97.71066 標準偏差:4.296990459108567 愚直に回す:(平均)8793.9594ダイヤ、(幅)8407.230258680229~9180.688541319772 10連活用:(平均)8613.9594ダイヤ、(幅)8227.230258680229~8980.688541319772 おまけ橙色万能破片:21.12382 おまけレアガチャチケット:12.12782 おまけレアスキル箱:12.49439 おまけ専用スキル破片:30.03567
10万ポイント超過までの平均抽選回数は97.7回。標準偏差が4.3くらいなので、大体93回~102回くらいの間に収束することが分かった。
ヒストグラムで示すとこんな感じ。
理論値である96.48回と比べてそこまで悪化しないのが意外だった。約97回も抽選したら、偏ることはなくほぼ均等に分散するということだろう。
10連880ダイヤをちゃんと活用すれば、平均8614ダイヤ、ばらつき考えても大体8227ダイヤ~8980ダイヤの間に収まる。
また、10連を活用した場合と活用しなかった場合で200ダイヤくらいしか差が出ないので、そんなに効果は大きくない。むしろ10万ポイントを超えて余剰に回してしまうことのほうが怖いので、7万ポイントを超えたあたりから単発に切り替えたほうが良いだろう。
結局お得なのか?
橙色英雄万能破片がメインの報酬であるため、それを中心に考えて、橙色英雄万能破片が単価何ダイヤで買えることになるのかを計算してみる。
なお、他のおまけアイテム(レアガチャ券、レアスキル箱、専用スキル万能破片)は以下のレートでダイヤ換算する。それ以外は価値が薄いので無視。
アイテム名 | ダイヤ換算 |
レアガチャ券 | 75 |
レアスキル箱 | 45 |
専用スキル万能破片 | 20 |
10万ポイント達成までに入手できるアイテムをダイヤ換算すると、
12.12782 × 75 + 12.49439 × 45 + 30.03567 × 20 ≒ 2073
8614 – 2073 =6541
なので、オマケアイテムをダイヤ換算してコストから減算すると、実質6541ダイヤの負担で21.12枚の橙色英雄万能破片が手に入ることになる。
ここに各ラウンドごとの達成報酬を入れて単価を出してみる。
ラウンド1
ラウンド1完走で、橙色万能破片12枚+ハッピー破片箱が手に入る。
ハッピー破片箱は期待値9.75枚なので、合計21.75枚相当。
これを足すと、合計約43枚の橙色万能破片が手に入ることになる。
6541÷43=152 となり、橙色万能破片1枚当たり152ダイヤで購入できることとなる。なかなかお得。
ただし、オマケアイテムが想定通りの価値として捉えられる場合であり、オマケアイテム無視して橙色万能破片だけの単価を出すと、1枚当たり約200ダイヤとなり、他の入手手段(VIP商店とか)と比べて特別効率が良いわけでもない。
橙色万能破片が安く買えるというよりは、VIP商店と同等の価格で橙色万能破片を購入しつつ、レアガチャ券、レアスキル箱、専用スキル万能破片がタダでもらえますよ、という印象が正しいかもしれない。
ラウンド2
ラウンド2完走で、橙色万能破片6、専用スキル万能破片60枚、専用スキル万能破片BOX3つが手に入る。
専用スキル万能破片BOXは期待値が41枚(低確率で出る1000枚とかも計算に入っているので中央値はもっと下振れるとは思うが一応期待値で計算)なので、専用スキル万能破片は合計183枚
単価20ダイヤと仮定すると、3660ダイヤの価値になるので、ダイヤ実質負担は2881ダイヤ、入手できる橙色万能破片は約27枚。
2881÷27=107 となり、橙色万能破片1枚当たり107ダイヤで購入できることとなり、かなりお得。
ただし専用スキル万能破片BOXが下振れた場合は結構価値が下がってしまうので、運の要素も強い。
ラウンド3
ラウンド3完走で、橙色万能破片6、レベル1レアスキル選択箱6、レベル3レアスキル選択箱2が手に入る。
レアスキル選択箱はLv3レアスキル選択箱換算すると2.67個相当になる。
Lv3レアスキル選択箱を大体730ダイヤくらいの価値と仮定すると、1949ダイヤ相当で、ダイヤ実質負担は4592ダイヤ。
4592÷27=170となり、橙色万能破片1枚当たり170ダイヤかかることとなり、このラウンドはあまりお得感はない。
ラウンド4
ラウンド4完走で、橙色万能破片6、選択兵種+1宝箱15、マルチ戦闘準備箱3が手に入る。
選択兵種+1宝箱を80ダイヤ相当と仮定すると、1200ダイヤ
マルチ戦闘準備箱は緑色素材選択箱5個に変えられるので、3つあれば緑色素材選択箱15個相当。青色素材選択箱3.75相当となる。
青色素材選択箱を400ダイヤ相当と仮定すると、1500ダイヤ分の価値となる。
合計すると、2700ダイヤ分の価値のアイテムがもらえるため、ダイヤ実質負担は3841ダイヤ。
3841÷27=142となり、橙色万能破片1枚当たり142ダイヤで購入できることとなる。結構お得。
ただしここまで来るにはラウンド1~3までを完走していなければならないため、そこまでかかるコストに見合っているかと言われると微妙。
途中でやめる選択肢もある
本イベントは絶対にラウンドを最後まで回さなければいけないわけではない。途中でキリのいい所でやめてもいい。
ラウンド1を途中でやめた時の効率も求めてみた。
本計算では簡単のため、おまけアイテムを無視。ちなみに完走した場合の橙色万能破片単価が約200ダイヤ。
20ポイントでやめる
必要ダイヤ平均値:453ダイヤ
橙色万能破片期待値:3
単価:151ダイヤ
結構お得。
100ポイントでやめる
必要ダイヤ平均値:839ダイヤ
橙色万能破片期待値:6
単価:140ダイヤ
かなりお得。
400ポイントでやめる
必要ダイヤ平均値:1344ダイヤ
橙色万能破片期待値:9.28
単価:144.83ダイヤ
かなりお得。
2000ポイントでやめる
必要ダイヤ平均値:2318ダイヤ
橙色万能破片期待値:13.67
単価:169.57ダイヤ
そこそこお得だが、ちょっと単価が悪化してきた
10000ポイントでやめる
必要ダイヤ平均値:3981ダイヤ
橙色万能破片期待値:19.74
単価:201.67ダイヤ
だんだん雲行きが怪しくなってきた。完走した場合とほぼ同等の単価。
30000ポイントでやめる
必要ダイヤ平均値:5755ダイヤ
橙色万能破片期待値:26
単価:221.35ダイヤ
完走するより結構悪い。ここまで来たら完走するのが良い。
途中でやめる戦略の結論
20ポイント、100ポイント、400ポイントのいずれかでやめるのがオススメ。2000ポイントまで頑張ってみてもいい。
ちなみに20ポイントは平均抽選回数5回、100ポイントは9.3回、400ポイントは15.2回であった。
毎日無料抽選で7回回せるため、+2回回して100ポイント止め、もしくは+8回回して400ポイント止めとするのが良いだろう。
まとめ
本イベントは橙色英雄万能破片が報酬のメインであるため、橙色英雄万能破片が不要な方は、回す必要はない。100ポイントか400ポイントあたりで止めておこう。
逆に橙色英雄万能破片が必要で、かつオマケアイテム(レアガチャ券、レアスキル箱、専用スキル万能破片)に魅力を感じる方は、そこそこお得なので回してみてもよい。
その場合は、特にお得なラウンド2までにしておくか、それ以降も回し続けるかはコストと必要数次第だろう。いちおうぶん回しても損はしないため、早急に橙色万能破片を集めたいならぶん回すのもOK。
なお、回す場合には、後半でダイヤPtが来るかもしれないので、ひとまず後半になるまでは待ったほうがいいだろう。
以上、新イベントのラッキーナンバーの考察でした。ご参考になれば幸いです。
おまけ:カードめくりとの比較
橙色万能破片を安く集められるイベントとして定番化してきたカードめくりとの比較をしてみる。
カードめくりでは、SSRデッキを全めくりすることで、橙色万能破片が8枚手に入る(コインでの交換を含む)。
SSRデッキの出現確率は20%であるため、無料更新5回だと、1回だけ出現して800ダイヤでめくって8枚なので、単価100ダイヤ
100ダイヤ更新までやった場合、2回出現して更新コスト500+めくりコスト1600=2100で16枚なので、単価131.25ダイヤ
200ダイヤ更新までやった場合、3回出現して更新コスト1500+めくりコスト2400=3900で24枚なので、単価162.5ダイヤ
ラッキーナンバーイベの効率は、オマケアイテムを考慮するなら、大体カードめくりの100ダイヤ更新までやった奴よりは損、カードめくりの200ダイヤ更新までやったやつよりはお得、といった感じになる。
橙色万能破片のみを集めたい場合には、カードめくりのほうが優秀ということになるかな。
ただ、このイベントがカードめくりの代替としての存在で、カードめくりはもう開催しません、という可能性もゼロではないため、その場合にはこのイベントが橙色万能破片を集める最安の方法となるかもしれない。