国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于游戲移動邏輯客戶端與服務(wù)端同步的延遲計算方法

      文檔序號:7855230閱讀:649來源:國知局
      專利名稱:一種基于游戲移動邏輯客戶端與服務(wù)端同步的延遲計算方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及一種基于游戲移動邏輯客戶端與服務(wù)端同步的延遲計算方法。
      背景技術(shù)
      近年來,隨著寬帶的普及,網(wǎng)絡(luò)游戲得到了極大的發(fā)展,現(xiàn)在網(wǎng)游已經(jīng)成為了ー個舉足輕重的產(chǎn)業(yè),創(chuàng)造了可觀的 經(jīng)濟(jì)效益。在網(wǎng)游中,用戶需要控制對象移動以實(shí)現(xiàn)某些目的,比如到達(dá)某些特定位置或者做出某些動作,這些移動需要系統(tǒng)進(jìn)行移動邏輯運(yùn)算。此類移動邏輯運(yùn)算可在客戶端或者服務(wù)器端上進(jìn)行,并在客戶端與服務(wù)器端之間同步數(shù)據(jù)?,F(xiàn)階段,移動邏輯運(yùn)算更多的選擇在客戶端運(yùn)算,在提供更好的用戶體驗(yàn)的同時避免加重服務(wù)器端的負(fù)載,目前市面上許多游戲都采用了客戶端運(yùn)算這種方法。但是事實(shí)證明這種方法存在嚴(yán)重的安全隱患,容易被一些游戲外掛惡意篡改數(shù)據(jù)。而在服務(wù)端運(yùn)算,又存在太過依賴網(wǎng)絡(luò)延遲,移動容易被扯動的問題。在客戶端進(jìn)行運(yùn)算可靠性較低的原因在干由于客戶端運(yùn)算容易被外掛等工具篡改數(shù)值,所以移動邏輯在玩家客戶端進(jìn)行計算,并需要在服務(wù)端進(jìn)行相同的計算與之校驗(yàn);由于游戲服務(wù)器與玩家客戶端之間不可避免地存在延時,所以導(dǎo)致玩家的操作在傳送到服務(wù)器后,有一定的滯后性(服務(wù)器計算的結(jié)果在傳送到客戶端的時候也有相似的問題),造成兩邊的運(yùn)算結(jié)果不一致而嚴(yán)重影響玩家體驗(yàn)。

      發(fā)明內(nèi)容
      為解決以上問題,本發(fā)明在客戶端(或者服務(wù)端)將所有操作指令添加一個基于服務(wù)端延遲的參數(shù),然后發(fā)送,發(fā)送端與接收端同時在接收到操作后在指定時間點(diǎn)執(zhí)行該操作。本發(fā)明的目的在于防止移動運(yùn)算在客戶端上被外掛等工具篡改數(shù)值,將移動邏輯的運(yùn)算放到服務(wù)器上。本發(fā)明的目的還在于避免游戲服務(wù)器與玩家客戶端之間因?yàn)椴豢杀苊獾难訒r,導(dǎo)致玩家的操作在傳送到服務(wù)器計算后,得到的結(jié)果與客戶端運(yùn)算得到的結(jié)果不一樣,導(dǎo)致服務(wù)器不斷扯動客戶端,嚴(yán)重影響玩家體驗(yàn)。本發(fā)明的技術(shù)方案為
      一種基于游戲移動邏輯客戶端與服務(wù)端同步的延遲計算方法,包括游戲的客戶端與服務(wù)器端,包括以下步驟
      1.玩家在客戶端上發(fā)出移動請求;
      2.客戶端計算出時間點(diǎn)K,其中時間點(diǎn)K為當(dāng)前時間和預(yù)設(shè)的延遲期望值的和;
      3.客戶端將移動請求和時間點(diǎn)K發(fā)送給服務(wù)器端,并要求服務(wù)器端在時間點(diǎn)K開始移動邏輯運(yùn)算;4.客戶端和服務(wù)器端同時在時間點(diǎn)K開始移動邏輯計算,并將計算結(jié)果保存;
      5.服務(wù)器端將計算結(jié)果發(fā)送給客戶端;
      6.客戶端獲取到服務(wù)器端發(fā)送過來的計算結(jié)果,并對客戶端的計算結(jié)果和服務(wù)器端的計算結(jié)果進(jìn)行校驗(yàn),如果一致,則不修改,如果不一致,認(rèn)為數(shù)據(jù)被篡改過,使用服務(wù)器端的計算結(jié)果覆蓋客戶端的計算結(jié)果;
      其中,賦予游戲中受玩家控制的角色一不受玩家控制的慣性動作,所述慣性動作的時長覆蓋所述延遲期望值。作為以上技術(shù)方案的一種改進(jìn),玩家通過鼠標(biāo)鍵盤等方式在客戶端上發(fā)出移動請求。 作為以上技術(shù)方案的一種改進(jìn),服務(wù)器端的計算結(jié)果中含有幀數(shù)標(biāo)志,客戶端根據(jù)所述幀數(shù)標(biāo)記在其保存的歷史計算結(jié)果中尋找相應(yīng)的計算結(jié)果,并進(jìn)行驗(yàn)證。由于添加了延遲同步,所以包括急停,快速啟動這些動作玩家會感覺到角色的動作并不會在按鍵按下的那一瞬間響應(yīng),但是不會影響用戶體驗(yàn)(如果網(wǎng)絡(luò)流暢,一般可以控制在0.1 0.2 S以內(nèi),低于人的正常反應(yīng)速度,其實(shí)可以忽略不計)。另外,在這部分動作中可以添加ー些慣性的動作(例如急停的時候添加“剎車滑步”動作)也可以降低延遲造成的對用戶造成的影響。另外,通過客戶端與服務(wù)端同步計算移動邏輯,有效避免了外掛等工具篡改游戲數(shù)據(jù)的現(xiàn)象;延遲計算有效地避免了客戶端與服務(wù)端同步計算移動邏輯過程中網(wǎng)絡(luò)延遲帶來的負(fù)面效果。
      以下結(jié)合附圖
      對本發(fā)明進(jìn)行進(jìn)ー步的說明,其中
      圖I為現(xiàn)有技術(shù)中移動邏輯計算的示意 圖2為本發(fā)明中移動邏輯計算的示意圖。
      具體實(shí)施例方式為了解決延遲問題,本發(fā)明使用了ー套延遲計算的模式,當(dāng)客戶端獲取移動操作的時候,并不直接開始計算移動結(jié)果,而是先發(fā)送該操作至服務(wù)器端,告訴服務(wù)器在某ー個時間點(diǎn)進(jìn)行這個操作,然后當(dāng)這個時間到了以后,客戶端與服務(wù)器端同步進(jìn)行計算(即干脆兩邊同時將這個操作延遲到時間點(diǎn)K),然后服務(wù)器端會將計算結(jié)果發(fā)送回客戶端,與客戶端進(jìn)行數(shù)據(jù)校驗(yàn)。其中留意到,客戶端獲得的、由服務(wù)器端計算出來的結(jié)果也會受到延遲的影響,所以會帶上幀數(shù)的標(biāo)志,客戶端會將之前一段時間的計算結(jié)果保存下來,這樣當(dāng)獲取服務(wù)器端發(fā)送下來的計算結(jié)果的時候,可以在歷史計算結(jié)果中找到并進(jìn)行驗(yàn)證。本發(fā)明的運(yùn)算步驟詳細(xì)如下
      1.玩家通過鼠標(biāo)鍵盤等方式,在網(wǎng)游的客戶端上發(fā)出移動請求;
      2.客戶端計算出時間點(diǎn)K,其中時間點(diǎn)K為當(dāng)前時間和預(yù)設(shè)的延遲期望值的和,其中所述延遲期望值一般大于或者等于網(wǎng)絡(luò)的延遲時間;
      3.客戶端將移動請求和時間點(diǎn)K發(fā)送給服務(wù)器端,并告訴服務(wù)器端在時間點(diǎn)K開始運(yùn)算;
      4.客戶端在時間點(diǎn)K開始運(yùn)算玩家的移動請求,并將計算結(jié)果保存;服務(wù)器端在時間點(diǎn)K也開始運(yùn)算玩家的移動請求;
      5.服務(wù)器端將計算結(jié)果發(fā)送給客戶端;
      6.客戶端獲取到服務(wù)器端發(fā)送過來的計算結(jié)果,與客戶端保存的K時間點(diǎn)的數(shù)據(jù)進(jìn)行校驗(yàn),如果數(shù)據(jù)一致,則對移動進(jìn)行操作;如果數(shù)據(jù)不一致,認(rèn)為數(shù)據(jù)被篡改過,則進(jìn)行修復(fù)動作,即使用服務(wù)器端的數(shù)據(jù)覆蓋客戶端的數(shù)據(jù)。在現(xiàn)有技術(shù)中,如圖I所示,假設(shè)玩家正在向右移動,然后在S點(diǎn)發(fā)出停止指令,但是由于延遲的原因,在服務(wù)器端接收到命令的時候,人物的位置可能已經(jīng)運(yùn)行SI的位置,這個時候,服務(wù)器端會把人物校驗(yàn)到Si的位置,就會發(fā)生扯動, 從而影響用戶體驗(yàn)。然而,在本發(fā)明中,如圖2所示,假設(shè)玩家正在向右移動,然后在S點(diǎn)發(fā)出停止指令,這個時候,客戶端就會服務(wù)器端發(fā)出一條在時間點(diǎn)K停止的指令(即上文所說的在時間點(diǎn)K進(jìn)行移動邏輯運(yùn)算),并在時間點(diǎn)K停止在SI處,此時服務(wù)器端和客戶端將同時停止,避免了扯動的出現(xiàn),保證了用戶的體驗(yàn)。其中,為解決處理客戶端與服務(wù)端之間同步的時候存在的延時問題,本發(fā)明主要是引入一個延遲操作的思想,將延遲轉(zhuǎn)嫁到玩家操作上,用一部分類似慣性的動作去填補(bǔ)延遲帶來的體驗(yàn)問題。在網(wǎng)游中,延遲的主要影響主要是玩家按下按鈕可能需要一定的反應(yīng)時間,但是實(shí)際操作中這個很短的時間一般很難察覺出來。本發(fā)明的延遲參數(shù)(即預(yù)設(shè)的延遲期望值)一般設(shè)置在ー個玩家無法察覺的值,比如0. ro. 2秒一般玩家體驗(yàn)不出來,但是對于網(wǎng)絡(luò)延時來說已經(jīng)足夠了。舉例來說,本發(fā)明在角色切換移動狀態(tài)的時候,引入慣性的概念,這樣當(dāng)你在運(yùn)動中突然停止,因?yàn)檠舆t的緣故,需要一定的時間服務(wù)器才能響應(yīng)停止操作(從位置S到位置SI的過程)這個時候,給角色一個表現(xiàn),例如剎車的動作,這個時候玩家的角色會短暫地不受控制,平滑地度過這個延時過程。本發(fā)明通過客戶端與服務(wù)端同步計算移動邏輯,有效避免了外掛等工具篡改游戲數(shù)據(jù)的現(xiàn)象,在目前運(yùn)營的游戲中,還沒有出現(xiàn)過這方面的現(xiàn)象。本發(fā)明的延遲計算有效地避免了客戶端與服務(wù)端同步計算移動邏輯過程中網(wǎng)絡(luò)延遲帶來的負(fù)面效果。當(dāng)然,本發(fā)明除了上述實(shí)施方式之外,其它等同技術(shù)方案也應(yīng)當(dāng)在其保護(hù)范圍之內(nèi)。
      權(quán)利要求
      1.一種基于游戲移動邏輯客戶端與服務(wù)端同步的延遲計算方法,包括游戲的客戶端與服務(wù)器端,其特征在于包括以下步驟 玩家在客戶端上發(fā)出移動請求; 客戶端計算出時間點(diǎn)K,其中時間點(diǎn)K為當(dāng)前時間和預(yù)設(shè)的延遲期望值的和; 客戶端將移動請求和時間點(diǎn)K發(fā)送給服務(wù)器端,并要求服務(wù)器端在時間點(diǎn)K開始移動邏輯運(yùn)算; 客戶端和服務(wù)器端同時在時間點(diǎn)K開始移動邏輯計算,并將計算結(jié)果保存; 服務(wù)器端將計算結(jié)果發(fā)送給客戶端; 客戶端獲取到服務(wù)器端發(fā)送過來的計算結(jié)果,并對客戶端的計算結(jié)果和服務(wù)器端的計算結(jié)果進(jìn)行校驗(yàn),如果一致,則不修改,如果不一致,則認(rèn)為數(shù)據(jù)被篡改過,并使用服務(wù)器端的計算結(jié)果覆蓋客戶端的計算結(jié)果; 其中,賦予游戲中受玩家控制的角色一不受玩家控制的慣性動作,所述慣性動作的時長覆蓋所述延遲期望值。
      2.根據(jù)權(quán)利要求I所述的基于游戲移動邏輯客戶端與服務(wù)端同步的延遲計算方法,其特征在于玩家通過鼠標(biāo)、鍵盤等方式在客戶端上發(fā)出移動請求。
      3.根據(jù)權(quán)利要求I所述的基于游戲移動邏輯客戶端與服務(wù)端同步的延遲計算方法,其特征在于服務(wù)器端的計算結(jié)果中含有幀數(shù)標(biāo)志,客戶端根據(jù)所述幀數(shù)標(biāo)記在其保存的歷史計算結(jié)果中尋找相應(yīng)的計算結(jié)果,并進(jìn)行驗(yàn)證。
      全文摘要
      本發(fā)明提出了一種基于游戲移動邏輯客戶端與服務(wù)端同步的延遲計算方法,包括以下步驟玩家在客戶端上發(fā)出移動請求;客戶端計算出時間點(diǎn)K;要求服務(wù)器端在時間點(diǎn)K開始移動邏輯運(yùn)算;客戶端和服務(wù)器端同時在時間點(diǎn)K開始移動邏輯計算;服務(wù)器端將計算結(jié)果發(fā)送給客戶端;客戶端獲取到服務(wù)器端發(fā)送過來的計算結(jié)果,并對客戶端的計算結(jié)果和服務(wù)器端的計算結(jié)果進(jìn)行校驗(yàn);其中,賦予游戲中受玩家控制的角色一不受玩家控制的慣性動作值。本發(fā)明不僅有效避免了外掛等工具篡改游戲數(shù)據(jù)的現(xiàn)象,而且有效地避免了客戶端與服務(wù)端同步計算移動邏輯過程中網(wǎng)絡(luò)延遲帶來的負(fù)面效果。
      文檔編號H04L29/08GK102769616SQ20121022911
      公開日2012年11月7日 申請日期2012年7月4日 優(yōu)先權(quán)日2012年7月4日
      發(fā)明者彭鵬, 懷賓, 陳杰 申請人:珠海金山網(wǎng)絡(luò)游戲科技有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1