0
我目前正在與客戶端和服務器的遊戲,並試圖找出一種方式來告訴從客戶端發送數據包和服務器接收它的時間量所以我可以檢查那個時候敵人的位置)。服務器上的時間,因爲客戶端發送數據包
我試圖發送
DateTime.Now.Subtract(DateTime.MinValue.AddYears(1969)).TotalMilliseconds
與當時的客戶端,然後只需檢查服務器上相同的值時,臨危包,然後減去他們,但這樣做的問題是,時區可以完全打破這一點,如果客戶端和服務器在不同的時區。而且它似乎不是最準確的。
有沒有「適當」的方式來做到這一點?
感謝您的鏈接,但是,只要我有一個從客戶端發送數據包到服務器接收的時候,會爲我做。我的遊戲是PvE,客戶端處理衝突。 (因此,當客戶端檢測到衝突時,它會向服務器發送衝突,然後服務器查看該敵人,查看發生衝突時的位置,並查看衝突是否有效)。由於我的比賽不是PvP,我不必處理任何與其他球員有關的事情。 – user183106
@ user183106在這種情況下,您可以在客戶端和服務器上都使用'DateTime.UtcNow'。那個時間是協調的,並且不需要基於某一年。 –