最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

MC的暴擊,并不等于跳劈

2023-02-07 13:31 作者:道家深湖  | 我要投稿

“暴擊”,或者“會心”,指的都是同一件事,用英文說就是Critical。之后我們統(tǒng)一用暴擊來稱呼。

mcwiki上的Damage詞條,里面的暴擊章節(jié)

https://minecraft.fandom.com/zh/wiki/%E8%BF%91%E6%88%98%E6%94%BB%E5%87%BB

中文的wiki不在傷害詞條里,在單獨的近戰(zhàn)攻擊詞條里。如下:

mcwiki,中文版的解釋

我們截取一下1.12.2Forge版,EntityPlayer的相關(guān)源碼:

其中,

也就是說,暴擊是僅通過以下邏輯決定的,不含隨機要素:

  1. 攻擊蓄力90%以上。tick的計數(shù)按照+0.5tick計算;

  2. 下落距離>0;

  3. 不在地面上;

  4. 并非正在爬梯子;

  5. 并不在水體里(但下雨淋濕無所謂);

  6. 沒有獲得致盲效果;

  7. 并未處在騎乘狀態(tài);

  8. 目標必須是LivingBase,即對彈射物等的攻擊不會暴擊,但對船、盔甲架可以;

  9. 不能處于沖刺狀態(tài);

  10. 傷害必須大于0(在省略的代碼部分里);

  11. Forge所發(fā)布的事件未取消暴擊。

“跳劈”是個很不精確的描述。在跳起來后,上升的過程中是不會暴擊的,下落的過程中會——但某些模組通過持續(xù)清空下落距離來實現(xiàn)免疫摔落傷害,這樣就會導(dǎo)致不會暴擊,且《原神12》的下落攻擊也無法觸發(fā)。(正確的免疫摔落傷害應(yīng)該在摔落事件里處理傷害系數(shù),不應(yīng)該處理下落高度)。

即使如此,上升過程中不暴擊,下落過程中會。但,如果在下落的過程中,因為獲得失重DEBUFF,或者因為二段跳等原因又開始上升,那么這時候它還是可以暴擊的。因為,上升的過程并不會減少或清空下落高度,觸地才會。

Forge知道玩家想改變這個邏輯,做什么暴擊率之類的東西,所以給了個事件,CriticalHitEvent。你可以在這里手動覆蓋暴擊邏輯,自行判斷決定是否需要暴擊(通過修改Result),還可以修改暴擊后的傷害系數(shù)。從前面可以看到,暴擊傷害默認為1.5倍。


但既然這玩意都寫在EntityPlayer了,各位也就明白了,怪物是不會走這套暴擊邏輯的。跳起來也一樣。

還有一件事容易忽略,那就是這個是attackTargetEntityWithCurrentItem,他只在普通近戰(zhàn)攻擊里才會調(diào)用。箭矢等彈射物暴擊不吃這套。

箭矢確實有個Critical字段,但那主要決定是否有暴擊粒子,并不會走這個事件。箭矢的那個critical數(shù)據(jù)為true的時候,傷害會如下方式進行增加:

也就是約莫會增加0~50%的傷害。這個過程不受CriticalEvent的控制,且怪物和玩家的箭矢都受到影響。

如果你想把暴擊系統(tǒng)補全的完善一點,還是相當麻煩的。你得設(shè)法抵消原版的箭矢暴擊,給玩家的非近戰(zhàn)補上暴擊,還要給怪物的全都來一遍。原神12基于CrticalEvent引入了暴擊率、暴擊傷害系統(tǒng),但那沒有正確地處理玩家箭矢的問題。

另一個尷尬的問題在于,假如你實現(xiàn)了“暴擊率”系統(tǒng),通過你的暴擊率來重新進行隨機判定是否暴擊,那你只能覆蓋原有的結(jié)果。如果其他mod也引入了一共暴擊率系統(tǒng),那你們就會各自為戰(zhàn),很可能干擾對方的“是否暴擊”,然后還把暴擊傷害倍率給搞的亂七八糟。這點沒什么特別好的辦法,只能隨緣。畢竟,你寫的再規(guī)范也架不住對方直接給覆蓋了。

MC的暴擊,并不等于跳劈的評論 (共 條)

分享到微博請遵守國家法律
陇南市| 曲靖市| 孟津县| 临西县| 正定县| 和政县| 平湖市| 正镶白旗| 新源县| 嵩明县| 芒康县| 阿合奇县| 兰州市| 安西县| 自贡市| 扎囊县| 岚皋县| 古浪县| 旌德县| 乌苏市| 太原市| 南岸区| 浏阳市| 隆化县| 宁乡县| 云林县| 山东省| 金塔县| 扶风县| 惠东县| 靖远县| 布尔津县| 于都县| 宣威市| 夹江县| 泗阳县| 庄浪县| 龙州县| 任丘市| 新蔡县| 青田县|