一、玩法介紹
這期我們模擬並分析一下三國殺OL最經典的抽卡活動——武將包和皮膚包。這兩個是遊戲內獲取渠道非常廣泛且價值相對較低的資源,首充 6 元的玩家每天都可以免費開啟一次武將包,而且通過排位獎勵,軍典獎勵及消費充值返利等方式都能白嫖一些,可以說
是三國殺中少數的平民活動之一了。目前遊戲內的已經是升級後的版本,完善了卡池分級機制,優化了抽獎道具,取消了複合包改為了單抽和五連抽選項,同時武將包新增五連抽,五十連抽以及五百抽 UP池分級保底機制,皮膚包新增五連抽,三十連抽分級保底。
看上去似乎變得越來越良心了?但筆者在《打破定勢的黑市買馬問題》一文中提到過,有時直觀的數值是會欺騙玩家的直覺的,事實是否真的如我們所見,只有調查過後才有發言權,本文筆者依舊只借助 Excel 來模擬實現抽獎過程,帶各位逐步分析其抽獎原理和預期產出。
按照慣例還是在此展實一下官方玩法介紹:
武將包: 五連保底規則:點擊五連時,必定獲得一個稀有及以上武將。 50抽史詩保底規則:若前49次均未獲得史詩及以上武將,則第50次必定獲得史詩及以上武將。 500抽UP池保底規則:若前499次均未獲得UP池武將,則第500次必定獲得UP池武將。UP池內為隨機2個史詩或傳說武將,UP池將定期更換。 武將包單抽概率普通武將68.53%、稀有武將28.65%、史詩武將2.76%、傳說武將0.06%;保底綜合概率普通武將62.00%、稀有武將34.49%、史詩武將3.29%、傳說武將0.22%。
遊戲內武將包抽獎界面截圖
皮膚包: 皮膚包單抽概率:普通皮膚70.7%、稀有皮膚23.57%、史詩皮膚4.24%、傳說皮膚1.02%、限定皮膚0.47% 五連保底規則:點擊五連時,必定獲得一個稀有及以上皮膚 30抽史詩保底規則:若前29次均未獲得史詩及以上皮膚,則第30次必定獲得史詩及以上皮膚
遊戲內皮膚包抽獎界面截圖
只看規則武將包和皮膚包的玩法別無二致,甚至 UI 界面都是一個模板,官方還貼心的附上了各品質武將,皮膚概率,最珍貴的傳說品質武將綜合概率高達 0.22%,傳說皮膚與限定皮膚的爆率更是達到了驚人的 1.49%!比我們之前模擬過的翻翻樂和祈願臺活動的終極大獎概率不知道高了多少倍,那麼官方公佈的概率是否符合實際情況呢?雖然該活動很多玩家參與,但想必也少有玩家會考慮此事,更鮮有玩家會一次抽個五百抽以上來檢驗官方公佈數據的真實性,何況五百抽也只是一個很小的數據量,得到的結果仍有較大的波動性。既然如此,我們就藉助 Excel 按照官方公佈的概率模擬多次五百抽來反推,以驗證其真實性。
二、分析與模擬步驟
Step1:概率分佈
通過官方公佈的數據可知,武將包將池共有 289 個武將(20級將池),每個武將都被賦予了一定權重,直觀來看品質越高的武將權重越小,最廉價的普通武將最高佔到 3089 份權重,而最極品的傳說武將有些甚至只有 1 權重,經計算總權重為 200141,那麼想一發入魂最珍貴的司馬徽或者士燮的概率等於 1/200141 ≈ 0.000005,比“翻翻哭”直接翻出當期主武將的概率還低。
模擬開始之初筆者便遇到了此次模擬工作的第一個難題,如何將這張龐大的武將概率表導入到 Excel 中?以往筆者都是手動錄入獎品及其概率,但這次共 289 個數據再一個個手敲顯然不現實,幸好夸克推出了圖片轉 Excel 的功能,直接將表格圖片導入便可轉換成 Excel 文檔,十分方便快捷,且經過對比發現數據都是正確的,只可惜該功能後續需要開通會員。
龐大的武將權重表,官方設計該表時應該也是花了不少功夫
而皮膚池中的皮膚數量就更多了,目測有上千個,估計官方也懶得再像武將池一樣設計一個權重表,所以就只羅列了皮膚名稱,與按各品質皮膚的出貨概率,筆者個人猜測除了皮膚冊中的皮膚,其它同品質皮膚權重都是一樣的,品質越高權重越小,皮膚冊皮膚較其它同品質皮膚更小,本次我們就不再對皮膚包抽取進行具體的模擬。
Step2:武將抽取函數
緊接著又迎來下一個難題,如何將這些獎品按權重加入到 Excel 函數中?看過筆者往期模擬文章的朋友應該知道,之前獎品數量少時我們都是將數據直接錄入到 IF/IFS 函數中,這樣很直觀也方便修改,但是獎品數量一旦多起來再用這種方法就不現實了,函數也不支持這麼多參數。於是,本次我們改變策略採用索引法,及利用 OFFSET+MATCH 函數對原表直接索引判定。制定好策略後,本次大方向上仍採用“圓盤法”用隨機數判定抽中的獎品,在原表格基礎上單獨列出兩列,一列存儲 [ 1,200141] 的隨機數,一列存儲武將權重的累加和,單次抽獎只需比較當前隨機值在哪個武將的權重區間即可判定掉落。
但此時又有一個問題,我們希望隨機數小於等於某一武將對應的權重累加和,大於上一武將的累加和時掉落該武將,但 MATCH 函數在匹配小於等於條件時要求索引域序列倒敘排列,而權重累加和顯然是正序的,這時我們就需要運用逆向思維,將 MATCH 函數中的索引項與索引域取負值後再進行匹配,便可得到我們想要的結果。函數公式如下:
=OFFSET($A$1,MATCH(-$D$294,-$F$1:$F$289,-1),0)
Step3:加入分級保底
到此為止單抽武將包的模擬已經完成,玩家的每日一抽也就是這個過程,但是版本升級後,官方加入了分級保底機制,不同於上期我們講到的概率疊加“偽保底”,該保底是玩家一定次數不出貨後必定會在下一次得到對應品質武將,而在此之前的各項概率不變。為此,我們需要在原表基礎上再列一列來存儲武將的品質,然後將稀有武將與史詩武將單獨做成兩個表格,用於保底武將的索引。
對於五次稀有保底,我們只需從第五個單元格開始之後每個單元格都用 COUNTIF 函數計算前四次掉落的是否都為普通武將,若是則從稀有武將庫中按權重掉落一個稀有武將作為保底。對於五十次史詩保底,在五次保底基礎上我們從第五十個單元格及之後檢測前 49 個單元格是否沒有史詩品質與傳說品質武將,若是則從史詩武將庫中按權重掉落一個史詩武將作為保底。最後對於五百抽 UP 池保底,由於每期保底武將不一樣,且官方並沒有公佈 UP 池武將抽取規則,在此就不專門設計,只展示五十格之後的掉落函數公式:
Step4:重複返還靈寶計算
武將包和皮膚包還有一項重複返還機制,即玩家抽到重複的武將或皮膚後會分別返還名為靈寶,硃砂的兩類消耗道具,可用與直兌某些武將和皮膚,現在還會不定期上新一些限時兌換武將或皮膚,週年慶的黃承彥不知道各位是否已經換到,如果還沒有又想通過開武將包的方式獲取,不妨繼續看下去。幸好官方在每一個武將後面都標上了該武將的重複返還靈寶數,這樣我們就可以在已經索引到的武將上用單抽武將包的索引方法找到該武將對應的靈寶數和品質,最後用 COUNTIF 函數統計靈寶總數,及稀有品質和史詩品質武將數。靈寶返還函數公式如下:
=OFFSET($D$1,MATCH(A282,$A$2:$A$289,0),0)
Step5:運行結果展示
在此我們先展示13次五百抽的模擬實況:
可以看到我們的運氣還是不錯的,中間連續三次抽出了傳說品質武將,最後 13 次模擬,累計 6500 抽,共抽到 6 個傳說品質武將,重複返還靈寶數在 3400 左右,那麼模型是否準確呢,我們再用 VBA 模擬 100 次並求一下各項平均值:
100次模擬結果及 VBA 代碼
反推得到的模擬的結果分別為 32.49% 與 3.79% 與官方公佈的 34.49%與 3.29% 誤差均在 ±2% 之內, 證明官方給出的綜合獲獎概率還是可信的,而模型也是正確的,此處由於沒有模擬 UP 池,故未計算傳說武將的綜合爆率,但可以合理推斷該概率應該也是遊戲官方自己模擬大量次數後得到的結果。
三、結果分析
這一結果是否在各位的意料之中呢,在開通 20 級將池,且所有武將都已擁有的前提下 500 抽平均返還靈寶 3344.73 個,平均每五連抽返 33.45 個,但是為了減少個別極值對模擬結果的影響,我們又計算了中位數作為實際五連抽中最真實的結果,即玩家一次五連抽返還的靈寶大概在 29 個左右,結合筆者自身經歷與一些網絡調查,該結果還是很可信的。當然,模擬中我們沒有加入 500 抽的 UP 池保底,實際情況會比我們的模擬結果更好一些,但不會差別太大。關於皮膚包的分析在此就不多說明,按照官方概率大家可自行計算各品質出貨期望,但是開皮膚包時對皮膚冊皮膚不要抱太大期望,官方也沒有公佈概率,但肯定是一個相當小的數,結合筆者自身經歷與網絡調查,限定冊子皮的概率應該與傳說武將概率相近。
最後,通過模擬結果我們容易注意到張繡作為傳說品質武將出貨率較高,這是因為在一眾權重僅個位數的傳說武將中,張繡的權重達到了異乎尋常的 70,這也是為什麼我們經常能在論壇或評論區看到苟託張繡的玩家,但鮮有苟託其它武將的,特別是司馬徽和士燮這種權重為 1 的武將,真能抽到的玩家絕對是萬裡挑一的佼佼者。
雄長一州*士燮
四、結尾
還是感謝各位能耐心看完本文,希望本文能讓你對三國殺OL的武將包&皮膚包抽獎機制有了更深入的瞭解,如果對於本次分析的主題你有更多想法或建議歡迎在評論區分享討論。另外對模擬抽獎或者各類抽獎機制感興趣的朋友也歡迎關注筆者的機核網賬號,後續會持續更新抽獎機制,遊戲設計及遊戲分享等方面的內容,那麼我們下期再見。