Tôi hiện đang làm một game MMORPG, dựa trên lượt. Máy khách được cho là chạy trên Android. Bây giờ, bạn tôi đang làm đồ họa, và tôi đã làm các lớp trò chơi (người chơi, vũ khí, v.v.). Bây giờ, nếu cuộc chiến bắt đầu, các lớp có thể bị thao túng bởi các giao diện (thực ra đối với đối tác của tôi, nó giống như làm việc với các giao diện thuần túy, anh ta không cần bất kỳ quyền truy cập nào vào các lớp execaton).
Bây giờ chúng tôi cần giới thiệu một máy chủ trò chơi để cho phép nhiều người chơi. Và một vài câu hỏi rất quan trọng nảy sinh:
1) Tôi có sao chép hoàn toàn mô hình trò chơi vào máy chủ không, không để lại lớp nào trên máy khách hay tốt hơn là có 2 bản sao của mô hình - 1 trên máy chủ và 1 trên thiết bị và hoàn thành đồng bộ hóa định kỳ giữa các lớp đó?
2) Lựa chọn phương thức kết nối nào giữa máy khách và máy chủ (máy khách trong tầm nhìn là điện thoại Android)? Đối với máy chủ - Tôi đang chuyển sang java vì tôi có một số kinh nghiệm với nó. Nhưng bây giờ câu hỏi là - tốt hơn là sử dụng các socket cho tác vụ này hay tôi có thể sử dụng các dịch vụ REST hoặc thậm chí có thể kết nối nó với máy chủ Java EE, điều này tuyệt vời theo quan điểm của tôi vì nó loại bỏ rất nhiều lập trình sự phức tạp? Mặc dù trò chơi là nhiều người chơi, nhưng nó được chơi theo lượt, do đó không cần phải đổi mới thường xuyên.
3) Điều gì về luồng? Mỗi khách hàng nên có chủ đề riêng của mình (trong trường hợp ổ cắm)?
4) Có cuốn sách nào về lập trình trò chơi máy chủ REAL MMORPG không ???