作者:luowenyu82
來源:饑荒遊戲吧
一直覺得戰車(rook)傷害很高,經常可以輕鬆撞死賈斯特,與其攻擊力(45),並不相符於是我開此貼,做一個測試,探究一下戰車的真實傷害是怎樣判定的
測試相關mod:
上戰車,這裡可以看到它的攻擊力確實是45
撞一下玩家,無論是遠處沖過來還是近處撞,傷害都是45
其他生物呢? 也是45
上圖可以看到,當有很多生物比較聚集時,戰車甚至打出了200(圖二199實為200,mod顯示問題)傷害!
打開rook.lua
這個200顯而易見吧,不過這裡代碼具體意思是:生成一個掉到地上消失的武器,攻擊200,攻擊距離0,放到戰車的物品欄裡
這是當戰車碰到其他生物的處理代碼
當碰到的是玩家,則停止這這條函數所有命令(即不對玩家生效)
如果 Vector3(inst.Physics:GetVelocity()):LengthSq() < 42 ,也停止生效,其實我也不知道這條代碼是啥意思
Velocity 是速度, Length 是長度,Sq 是什麼鬼?反正應該是距離範圍速度之內的要大於等於42才生效吧,然後振動螢幕
如果碰到的生物有 smashable 標籤,則直接秒殺,如果是可以破壞的,就直接破壞,如碰到的生物血大於0則…
執行這個函數,具體意思是:
如果沒有inst.recentlycharged ,就創建一個空的集,如果撞到的生物已經在這個集合裡,就停止該函數
You’ve already done damage to this by charging it recently. 你已經造成了傷害,通過最近的充能(充能?
估計是戰車攻擊前蓄力的動作吧)
將撞到的生物加入inst.recentlycharged 集合裡,在3s後將這個生物從inst.recentlycharged 裡刪去,用剛開始那武器造成的傷害200
也就是說,戰車對生物200的衝撞傷害後有3s的冷卻時間,戰車在遊戲裡攻擊到一個生物後就直接停下來了,並沒有直接的軀體碰撞,也許就是單個生物傷害正常的原因吧。。。
遠古犀牛也有類似的設定,不過更直接,滿足條件後直接再造成一次傷害(200),而沒有冷卻時間,沒有攻擊距離限制(戰車要為0),所以也就有了石蝦被秒的情況了
令:遠古犀牛即使被發條生物打了也不會吸引其仇恨,並且會有發條生物的集體仇恨