遊戲攻略

飢荒 (Don’t Starve) 戰車傷害圖文分享

撰文:luowenyu82

一直覺得戰車(rook)傷害很高,經常可以輕鬆撞死賈斯特,與其攻擊力(45),並不相符於是我開此貼,做一個測試,探究一下戰車的真實傷害是怎樣判定的

測試相關mod:

飢荒 (Don't Starve) 戰車傷害圖文分享
飢荒 (Don't Starve) 戰車傷害圖文分享
飢荒 (Don't Starve) 戰車傷害圖文分享
飢荒 (Don't Starve) 戰車傷害圖文分享

上戰車,這裡可以看到它的攻擊力確實是45

飢荒 (Don't Starve) 戰車傷害圖文分享

撞一下玩家,無論是遠處沖過來還是近處撞,傷害都是45

飢荒 (Don't Starve) 戰車傷害圖文分享

其他生物呢? 也是45

飢荒 (Don't Starve) 戰車傷害圖文分享
飢荒 (Don't Starve) 戰車傷害圖文分享

上圖可以看到,當有很多生物比較聚集時,戰車甚至打出了200(圖二199實為200,mod顯示問題)傷害!

打開rook.lua

飢荒 (Don't Starve) 戰車傷害圖文分享

這個200顯而易見吧,不過這裡代碼具體意思是:生成一個掉到地上消失的武器,攻擊200,攻擊距離0,放到戰車的物品欄裡

飢荒 (Don't Starve) 戰車傷害圖文分享

這是當戰車碰到其他生物的處理代碼

當碰到的是玩家,則停止這這條函數所有命令(即不對玩家生效)

如果 Vector3(inst.Physics:GetVelocity()):LengthSq() < 42 ,也停止生效,其實我也不知道這條代碼是啥意思

Velocity 是速度, Length 是長度,Sq 是什麼鬼?反正應該是距離範圍速度之內的要大於等於42才生效吧,然後振動螢幕

如果碰到的生物有 smashable 標籤,則直接秒殺,如果是可以破壞的,就直接破壞,如碰到的生物血大於0則…

飢荒 (Don't Starve) 戰車傷害圖文分享

執行這個函數,具體意思是:

如果沒有inst.recentlycharged ,就創建一個空的集,如果撞到的生物已經在這個集合裡,就停止該函數

You’ve already done damage to this by charging it recently. 你已經造成了傷害,通過最近的充能(充能?

估計是戰車攻擊前蓄力的動作吧)

將撞到的生物加入inst.recentlycharged 集合裡,在3s後將這個生物從inst.recentlycharged 裡刪去,用剛開始那武器造成的傷害200

也就是說,戰車對生物200的衝撞傷害後有3s的冷卻時間,戰車在遊戲裡攻擊到一個生物後就直接停下來了,並沒有直接的軀體碰撞,也許就是單個生物傷害正常的原因吧。。。

遠古犀牛也有類似的設定,不過更直接,滿足條件後直接再造成一次傷害(200),而沒有冷卻時間,沒有攻擊距離限制(戰車要為0),所以也就有了石蝦被秒的情況了

飢荒 (Don't Starve) 戰車傷害圖文分享
飢荒 (Don't Starve) 戰車傷害圖文分享

令:遠古犀牛即使被發條生物打了也不會吸引其仇恨,並且會有發條生物的集體仇恨

飢荒 (Don’t Starve) 攻略彙整目錄

Back to top button