光速:3×10^8m/s,300000km/s
中國東西約5200公里,南北約5500公里(玩家最大相距按5000km計算)
16 ms 只夠光信號在 2500 km 的距離上跑一個來回
狀態同步(Server同步)
服務器負責計算全部的游戲邏輯,並且廣播這些計算的結果,客戶端僅僅負責發送玩家的操作,以及表現收到的游戲結果。一般來說,玩家發送一個操作到服務器上,服務器根據玩家操作去修改內存中的游戲世界模型,同時運算游戲世界對這個操作的反應,然后把這些反應都廣播給相關的多個客戶端,每個客戶端負責把這些數據表現出來給玩家看。
當然這種模式只適合一些若交互的游戲,比如rpg,卡牌,slg類型的游戲,這些游戲共有的特點就是和服務器交互的頻率不高,服務器手機所有玩家的操作信息,進行演算之后把演算結果轉發給其他玩家,其他玩家做相應的模擬和顯示。
幀同步
鎖定步進算法(lockstep )
就是讓網絡上所有的機器都同時執行一樣的操作,得到一樣的結果。執行 lockstep 同步時,其實和時間是無關的,只和動作一致性有關。
lockstep 的核心其實是按回合鎖定游戲進程,逐步推演。時鍾周期對游戲規則其實並不重要,超時機制的存在是客戶端用來解決如何確定當前回合要提交的多少操作而設定的;而模擬層的心跳周期則影響了表現層如何把離散狀態擬合成連續狀態。
War3/星際等采用,基於指令驅動各個客戶端自計算邏輯。服務端只管分發指令,每個客戶端根據完整的規則運算整個戰場。
每個客戶端播放效果就像是看視頻。
對視覺同步要求較高。
優點
因為只需要同步指令,所以流量消耗非常小
缺點
斷線需要補幀,即一旦你的戰場狀態沒有了,必須從頭開始,從第一個指令運算到連回去的戰場狀態。
適用於一般moba,rts等大型多人在線游戲。
