[轉貼] 關於防畢業機制如果存在,我簡單科普一下程序流程
來源: https://bbs.nga.cn/read.php?&tid=16476019
首先,明確幾點:
1.防畢業機制很多遊戲都存在,甚至有的遊戲設計者都自爆過自己遊戲存在防畢業機制。
2.SSR掉落概率絕對不是平均分配的,是有基礎掉落概率的。
3.如果你覺得紫龍沒有搞防畢業機制那麼請點擊右上角,不要進來張嘴就噴。
一個接近寫代碼的,幾乎完整的系統運作邏輯流程。不需要編程知識,只需要你邏輯上能弄明白應該就能看懂。
我雖然不是紫龍員工,但是我個人感覺如果紫龍搞了防畢業機制,應該接近紫龍的程序算法。
數據準備:
所有裝備分配基礎掉落概率,(注意這裡是在系統已經判定獲得SSR之後的裝備掉落概率,概率總和為100%,關聯random(3))
如:白嫖弓,近戰弓5% ,碎星10%,三弦琴10%
我這裡只隨便舉例這個概率。
每個玩家的數據裡圖鑑開了和沒開都標記好。
流程:
玩家打完暗龍
先取隨機判斷是否抽到SSR(random(1))
2%抽到概率。
抽到後進入防畢業函數random(2)再進行隨機取值:
分支1:給予開過圖鑑裝備(設定概率80%,紫龍隨便調) return 1
分支2:給與未開過圖鑑裝備(設定20%,紫龍隨便調) return 0
根據返回值
再在基礎掉落概率裡進行隨機random(3),
如果return 1,隨機到未開過圖鑑的裝備,則重新隨機random(3),直到隨機到已經開過圖鑑的裝備。
如果return 0,隨機到已到已經開過圖鑑的裝備,則重新隨機random(3),直到隨機到未開過圖鑑的裝備。
最後把這件裝備給玩家。
另外在random(2)這裡的概率完全可以通過根據圖鑑收集率動態調整,只要根據圖鑑收集率做個係數計算就可以。比如某玩家SSR圖鑑收集5/50的時候,分支1比分支2是10%比90%,到49/50的時候是10%比90%。這很容易做到。
最後這也會解釋為什麼旱的旱死澇旳澇死~
所以,為什麼偶爾就會有人發帖說:為什麼別人爛大街的骨灰盒,精靈腰帶,我圖鑑快滿了都仍然沒點亮。
反正程序上很容易實現。
有人還需要C#代碼嗎?