Dota2自走棋的釣魚(yú)和孵蛋概率
菜雞騎士,經(jīng)常釣魚(yú)孵蛋把自己搞崩,所以研究了一下相關(guān)機(jī)制,分享給感興趣的同學(xué)
一、說(shuō)明
因?yàn)镈ota2游廊的機(jī)制,實(shí)際上所有游廊內(nèi)的游戲都是開(kāi)源的,感興趣可以去拆包看代碼。拆包所需工具 gcfscape,主規(guī)則文件位置 /scripts/vscripts/addon_game_mode.lua
自走棋代碼的一個(gè)主文件37000行,不太好讀,而且我的編程能力是純業(yè)余水平,難免有錯(cuò)誤,如果有大佬看出來(lái)哪里有問(wèn)題請(qǐng)指正
二、釣魚(yú)的概率
單貓釣同種族,和雙貓釣同名貓,是兩個(gè)獨(dú)立的事件,同時(shí)生效
單貓的基礎(chǔ)成功率7%,受幸運(yùn)吊墜影響,每一個(gè)幸運(yùn)吊墜增加50%概率(7%*150%=10.5%的意思,不是加50個(gè)百分點(diǎn),后文的計(jì)算都類(lèi)似)。多個(gè)幸運(yùn)吊墜可以額外疊加。另外有連續(xù)釣不到魚(yú)的“防非”機(jī)制補(bǔ)償(后文詳述)
雙貓的基礎(chǔ)成功率10%,不受幸運(yùn)吊墜影響,不受防非機(jī)制影響
防非機(jī)制說(shuō)明:
每回合釣魚(yú)成功率會(huì)乘上一個(gè)系數(shù),默認(rèn)值是 1.1 ^ -4?= 0.68,所以釣魚(yú)的第一回合的成功率只有4%( 7%*0.68?= 4.8%,因?yàn)閷?shí)際隨機(jī)生成的是整數(shù),成功率要取整)
之后連續(xù)多一個(gè)回合釣不到魚(yú),成功率加10%。(4.8%、5.3%、5.8%、6.4%、7%……)
所以如果你是天命非洲人,連續(xù)釣32回合不成,第33回合的成功率(7%*1.1^(-4+32)=100.9%)已經(jīng)突破100%,必成(不考慮幸運(yùn)吊墜的額外buff)
一旦釣魚(yú)成功,防非系數(shù)恢復(fù)初始值
根據(jù)模擬結(jié)果,平均需要10.4回合釣上一只魚(yú),大部分需要10-15回合釣到



三、孵蛋的概率
蛋越大越好孵,1級(jí)-8級(jí),孵化成功率分別為49%, 51%, 53%, 55%, 57%, 59%, 61%, 63%
孵蛋成功需要卡池里有足夠的棋子,孵蛋的過(guò)程中,會(huì)占用卡池,開(kāi)蛋會(huì)返還卡池(比如你孵到8/9,就是在卡池里拿走了8張,開(kāi)了蛋拿兩星卡,就會(huì)還給卡池5張)
把棋子放進(jìn)蛋的瞬間,會(huì)孵一次;假設(shè)是第10波的圣物,第11回合不孵,后續(xù)12-20回合開(kāi)始時(shí)孵1次。所以一共10次孵蛋的機(jī)會(huì),如果放1星追3星,只有兩次臭蛋的機(jī)會(huì)
一次圣物追夢(mèng)成功的期望:數(shù)學(xué)不好不會(huì)算,所以寫(xiě)代碼模擬的,孵了一億次的結(jié)果
放1星,追3星:成功率10.7%,大部分情況下,會(huì)停在6-7
放2星,追3星:成功率57.3%
