[閒聊] 關於破甲的成功率公式

看板mud_sanc (Sanctuary - 聖殿)作者 (揮淚斬馬雲)時間1周前 (2024/11/05 10:54), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
airs=ppl->query("stat/air"); pp=ppl->query("pp"); tar_pp=ppl->query("pp_src"); hit=airs/100 + (pp*100)/tar_pp; if(hit>95) hit=95; // 失敗的情況 if(random(100)>hit) { show(ppl,target,HIR"\n$O"HIR"身形一閃,避開了$N"HIR"的攻擊!!\n"NOR); // 反過來就是成功的情況即 if(hit>=random(100)) // 所以只要看這個就行,hit 越大,成功率越高 上面公式首先最明顯的問題在於 hit=airs/100 + (pp*100)/tar_pp; ^^^^^^^^^^^^^^^^ 上面公式基本上恆為正,在這前提下,(pp*100)/tar_pp 的意思 就是你剩餘的 pp 佔你 pp最大值 的比例,比方你先灌滿 pp 藥 水後馬上擊出破甲,則 (pp*100)/tar_pp = 100 的意思。 在這情況下不管你的氣勁多少,hit 都是 100↑ 這應該是一開始就寫錯了正常應該是 hit=( (airs/100) * pp) / tar_pp; 破甲不可能用「不管你的氣勁多少」這樣的公式去算成功率,相 反的它一定會看你的氣勁多少、甚至你與怪物的氣勁高低差異, 來判斷成功率,這才是合理的。而且該公式實際上也沒有考量到 你的pp值多少,它只算殘餘pp的比例而已。 因此,預告破甲的成功率計算式變更 1. 會看 你的氣勁值 與 怪物的氣勁值 差異來決定基本成功率 基本成功率 = (你的氣勁值-怪物的氣勁值)/100 2. pp殘餘值的影響方式變更 最終成功率 = (基本成功率 x pp殘餘值) / pp最大值 然後最終成功率會給上下限,也就是再怎樣成功率都有幾%,以 及最大成功率 95%。 再怎樣成功率都有幾%的部份,有三種做法 1. 定值,比方 10% 定值、15% 定值 2. 參考值,比方你的拳士公會級數(但這跟定值差不多,就是 25% 定值) 3. 複雜的參考值,比方把種族進化級數參考進去、把拳士之心參考進去、.. 上述變更有兩個目的 一、合理化破甲的成功率計算公式 二、讓 wiz 能設計出不太會被破甲成功的怪物 有意見或建議可提出。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.33.120.231 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/mud_sanc/M.1730775266.A.869.html
文章代碼(AID): #1dAOZYXf (mud_sanc)
文章代碼(AID): #1dAOZYXf (mud_sanc)