Tôi đọc điều này: Làm thế nào để thiết kế một hệ thống phát lại Nhưng nó không thực sự trả lời câu hỏi của tôi.
Trò chơi của tôi được xây dựng với ứng dụng khách "xem" trò chơi dưới dạng một chương trình riêng biệt với "mô hình" và "bộ điều khiển" của máy chủ. (hơi giống với mmo, hoặc bất kỳ trò chơi nhiều người chơi nào được xây dựng theo cách này). Phía máy chủ luôn là "sự thật" của trò chơi, nó chỉ chấp nhận các yêu cầu hành động như đầu vào từ máy khách và các sự kiện đầu ra và thông báo "trạng thái hiện tại".
Mô hình và quy tắc trò chơi hoàn toàn xác định với chu kỳ cập nhật "đánh dấu" cố định, vì vậy về phía máy chủ tôi có thể ghi lại cả các sự kiện được gửi đến chế độ xem của khách hàng và các yêu cầu hành động. Cả hai đều được liên kết với số chu kỳ cụ thể.
Câu hỏi là: trong trường hợp này, để thiết lập hệ thống phát lại, tôi nên sử dụng đầu vào hoặc yêu cầu hành động của người dùng (như được đề xuất trong đó) hoặc các sự kiện?
Theo tôi, cả hai sẽ cho cùng một đầu ra. Sự khác biệt duy nhất tôi có thể thấy là:
- Sự kiện cho đầu ra thực trong khi các yêu cầu hành động phải được xử lý để đưa ra sự kiện.
- Yêu cầu hành động có thể là dữ liệu ít hơn nhiều để ghi lại.
Có những thứ khác để xem xét?