Tôi đã đọc Van article on multi-player networking đã được điều chỉnh từ giấy 2001 của Yahn Bernier có tên là Latency Compensating Methods in Client/Server In-game Protocol Design and Optimization. Tôi đang làm cho một trò chơi nhiều người chơi thời gian thực sử dụng một máy chủ Node.js kết nối với khách hàng thông qua socket.io và tôi có một số câu hỏi liên quan đến các nguyên tắc chi tiết dưới đây:Nguyên tắc trò chơi nhiều người chơi trong thời gian thực cho TCP và Node.js
[Interpolation] ngăn chặn các chuyển động jittery này sẽ thường dẫn đến bằng cách cập nhật máy chủ đệm sau đó chơi chúng trở lại với những khoảng trống thông suốt interpolated giữa. Nó cũng có thể bảo vệ chống lại sự cố xảy ra do mất gói.
Dự đoán là khái niệm của khách hàng dự đoán những ảnh hưởng của hành động máy nghe nhạc địa phương mà không cần chờ cho máy chủ để xác nhận chúng. Trạng thái dự đoán của một thực thể được kiểm tra dựa trên các lệnh máy chủ khi chúng đến cho đến khi một kết quả trùng khớp hoặc kết hợp sai được phát hiện.
Lag bồi thường là khái niệm về máy chủ sử dụng độ trễ của người chơi để tua lại thời gian khi xử lý [user input], để xem những gì các cầu thủ thấy khi lệnh được gửi . Kết hợp với dự đoán, bồi thường tụt hậu có thể giúp chống lại độ trễ mạng đến mức hầu như loại bỏ nó khỏi quan điểm của kẻ tấn công.
Do các nguyên tắc áp dụng cho TCP như họ làm gì để UDP và sẽ có bất kỳ sự khác biệt trong việc thực hiện? Tôi có thể thấy rằng nội suy thực thể sẽ không cần phải bảo vệ chống lại mất gói tin nhưng đó là về nó.
Tôi có thể giao tiếp giữa máy chủ và trình duyệt web và ngược lại bằng UDP và Node.js không?
Vì giấy đã hơn một thập kỷ nên các nguyên tắc này vẫn đang được sử dụng hoặc có công nghệ khác xuất hiện?
Mọi trợ giúp sẽ được đánh giá cao.