絕地求生大逃殺這種帶有一定的槍戰(zhàn)題材游戲,經(jīng)常會(huì)有遇到絲血打不死的狀況,打中了很多槍,槍槍冒血光,可是對(duì)面就是不死,然后對(duì)方回頭幾槍就把自己干掉了。今天小編就為大家?guī)?lái)玩家“__LeGenDary_”分享的本地計(jì)算和云計(jì)算介紹,有這樣疑問(wèn)的玩家還不點(diǎn)擊進(jìn)來(lái)看看。
絕地求生大逃殺下載地址:http://www.innovatechautomation.com/soft/458641.html
絕地求生大逃殺打不死人怎么回事
先解釋一波什么叫做本地計(jì)算和云計(jì)算:我在我上一個(gè)講解宏和掛的區(qū)別的帖子里面已經(jīng)解釋過(guò)了,現(xiàn)在復(fù)制出來(lái):本地計(jì)算和云計(jì)算的區(qū)別:1、本地計(jì)算:舉例,你打出一發(fā)子彈,命中敵人后,由客戶端計(jì)算出傷害,然后發(fā)送到服務(wù)端,服務(wù)端再發(fā)送給被打的人,這樣什么高倍射速,意念秒車,秒人都是通過(guò)這樣的法式來(lái)做出來(lái)。2、云計(jì)算:舉例,你打出一發(fā)子彈,命中敵人后,客戶端將這個(gè)事件發(fā)送給服務(wù)端,由服務(wù)端計(jì)算傷害后,發(fā)送給被打的人。所以說(shuō),你有延遲的時(shí)候,你打中敵人,看到他掉血了,其實(shí)只是你本地計(jì)算的結(jié)果,并不能說(shuō)明你對(duì)他造成了傷害,具體有沒(méi)有打到,只有對(duì)面知道!
疑惑一:為什么我跟人對(duì)槍打了他6槍他都不死?反而是我死了?解惑:A和B兩個(gè)人對(duì)槍,假設(shè)所有子彈傷害一樣,雙方都是被打5槍后必死,為什么我打了他5槍也冒血了,為什么是我死了呢?結(jié)合上面的本地計(jì)算,可以知道,你在顯示出打中他5槍,其實(shí)只是你本地計(jì)算的結(jié)果,他身上冒血,也是你本地計(jì)算的結(jié)果,并不能說(shuō)明你打中了他,說(shuō)到這里可能還沒(méi)講清楚,我來(lái)舉一個(gè)例子吧,A看到自己打到了B了5槍,結(jié)果A自己死了B卻沒(méi)有死的原因是因?yàn),A看到自己打中B第5槍的時(shí)候,B已經(jīng)搶先打中了A了5槍,由于數(shù)據(jù)傳輸需要時(shí)間(畢竟我們用的是vpn),A的客戶端并不能及時(shí)發(fā)現(xiàn)自己已經(jīng)中了第5槍,在A的眼里他確實(shí)是打中了5槍,但是他其實(shí)在打中第5槍之前,自己已經(jīng)死了,已經(jīng)死了的人,不管他槍是打出去了,還是沒(méi)打出去,都不會(huì)計(jì)算他對(duì)別人造成的傷害(游戲設(shè)定)。
疑惑二:為什么我滿血一套三級(jí)能量全滿,卻被一槍(除awm)就打死了?解惑:這個(gè)我跟我們?nèi)旱拇罄薪裉煊懻撨^(guò),各有各的道理,下來(lái)分享給大家我們的說(shuō)法1、依然結(jié)合上面的本地計(jì)算,例如你的身體還能承受2槍的傷害(這里不論爆頭等等,就是任意部位的2槍),一個(gè)人在被子彈打中的時(shí)候,客戶端的反應(yīng)是:掉血,身體被打中的部位冒血,身體傷痕、槍聲等等,在你被打中第一個(gè)槍的時(shí)候,客戶端一切正常,掉血、冒血、傷痕、槍聲。在你被打中第二槍的時(shí)候,問(wèn)題就來(lái)了,一個(gè)子彈的數(shù)據(jù)包里面包括了(雙方id,傷害,位置,槍聲大小等等),我根據(jù)游戲過(guò)程認(rèn)為是:你在被第二槍打中的時(shí)候,客戶端處理數(shù)據(jù)是有順序的,不可能瞬間將子彈的全部信息處理完畢,可能是由于客戶端優(yōu)先判斷傷害,在判斷完傷害后,客戶端認(rèn)為你死了,你就會(huì)出現(xiàn)死亡動(dòng)畫,后續(xù)的冒血,槍聲,傷痕等等的都沒(méi)計(jì)算,所以你只聽(tīng)到了一聲槍聲。2、另一種可能是,游戲在死亡判定并不像1那么簡(jiǎn)單,應(yīng)該是由客戶端計(jì)算出血量為0,然后發(fā)送給服務(wù)器,服務(wù)器判定你死了,在返回給客戶端,客戶端再出現(xiàn)死亡動(dòng)畫,但是大家肯定有疑惑了,那這樣為什么我依然只聽(tīng)到一聲槍聲,解釋是:多發(fā)子彈被統(tǒng)一計(jì)算了,可能是由于2發(fā)子彈的傷害,位置,等等信息被統(tǒng)一計(jì)算到一發(fā)子彈了。