Tôi đang phát triển một trò chơi bài đơn giản, nơi sẽ có một hệ thống mai mối sẽ đưa bạn chống lại một người chơi khác. Đây sẽ là chế độ trò chơi duy nhất có sẵn, 1vs1 chống lại một người khác, không có AI.
Tôi muốn ngăn chặn gian lận càng nhiều càng tốt. Tôi đã đọc rất nhiều câu hỏi tương tự ở đây và tôi đã biết rằng tôi không thể tin tưởng khách hàng và tôi phải thực hiện tất cả các máy chủ xác minh. Tôi dự định có một máy chủ (dù sao cũng cần một máy chủ để mai mối) và tôi dự định sẽ thực hiện một số máy chủ xác minh nhưng nếu tôi muốn kiểm tra mọi thứ phía máy chủ thì điều này giúp máy chủ của tôi có thể theo dõi trạng thái của tất cả các trò chơi hiện tại và kiểm tra mọi hành động và tôi không có tiền / cơ sở hạ tầng để hỗ trợ máy chủ đó.
Ý tưởng của tôi là làm cho khách hàng kiểm tra và xác minh một số hành động được thực hiện bởi đối thủ của họ * và nếu họ tìm thấy một số hành động bất hợp pháp thông báo việc gian lận có thể xảy ra với máy chủ và khiến máy chủ xác minh. Điều này vẫn sẽ yêu cầu máy chủ của tôi theo dõi tất cả các trò chơi hiện tại, nhưng nó sẽ tiết kiệm tài nguyên chỉ kiểm tra một số thứ không thể kiểm tra ở phía máy khách (như thứ tự thẻ trong bộ bài) và chỉ kiểm tra những thứ khác khi chúng thực sự sai.
* (chỉ những người họ có thể kiểm tra mà không cho phép bản thân gian lận! ví dụ: họ không thể kiểm tra xem thẻ đã chơi có trong tay không, họ sẽ cần họ biết tất cả các thẻ trong tay)
Tóm tắt, câu hỏi của tôi là : đây có phải là một cách tiếp cận khả thi? Tôi thực sự sẽ tiết kiệm tài nguyên làm điều này hay sự phức tạp thêm trong máy chủ và máy khách để trao đổi tin nhắn này không đáng? Bạn có biết trò chơi nào đã thử thành công hoặc không thành công một cách tiếp cận tương tự không?
Cảm ơn tất cả đã đọc và trả lời