Kết nối mạng trong các game chiến thuật thời gian thực


10

Các trò chơi chiến lược thời gian thực hiện nay là gì?

Tôi dường như nhớ lại rằng một vài năm trước, một số tựa game AAA chỉ truyền các đầu vào của người chơi (Starcraft 1, Age of Empires). Vì điều này đòi hỏi bạn phải giữ mọi thứ hoàn toàn xác định, đây có còn là một lựa chọn khả thi không? Đồng bộ hóa các trình tạo số ngẫu nhiên có vẻ khả thi, nhưng còn sự khác biệt tinh tế trong việc triển khai FPU, v.v.?

Hoặc là các trò chơi chiến lược sử dụng một cái gì đó gần gũi hơn với mạng trò chơi hành động, nơi các thực thể riêng lẻ được truyền đi thay thế (với một số hình thức dự đoán và nén (delta))?

Nếu vậy, các vật phẩm dễ bay hơi như đạn được xử lý như thế nào?

Điều gì về máy khách / máy chủ so với ngang hàng? Tôi đoán rằng tất cả điều này có liên quan chặt chẽ với nhau.

Cảm ơn bạn đã dành thời gian!


Bản sao của Giao thức trò chơi RTS - vâng, đây vẫn là cách nó được thực hiện. Đối với việc triển khai FPU khác nhau, xem tại đâyđây .
BlueRaja - Daniel Pflughoeft

Câu trả lời:


5

http://www.gamasutra.com/view/feature/3094/1500_archftimeon_a_288_network_.php Đây vẫn là cách kết nối mạng được thực hiện trong các trò chơi RTS. P2P cũng là cách xử lý kết nối thông thường. Tuy nhiên, việc sử dụng mô hình dấu thời gian khóa dẫn đến trường hợp khó chịu của việc đồng bộ hóa và xử lý gian lận. Có một cách tốt để phục hồi khi một sự không đồng bộ xảy ra và tất cả các trò chơi RTS chỉ đơn giản nói "Thoát khỏi trận đấu". Lỗi truy tìm lỗi desync cũng là một cơn ác mộng.


1
Một bài viết hay khác về các trò chơi mạng timestep bị khóa: altdevblogaday.com/2011/07/09/ trên
tenpn


1

Đây là một bài đọc tuyệt vời, và sẽ trả lời rất nhiều câu hỏi của bạn:

http://udn.epicgames.com/Three/NetworkingOverview.html

Trong trò chơi phòng thủ chiến lược / tháp của tôi, tôi đang sử dụng mô hình máy khách / máy chủ và có thể giữ mọi thứ mang tính quyết định cho đến nay. Máy khách chỉ gửi yêu cầu máy chủ thực hiện công cụ (nhưng thực tế không bao giờ làm gì cả) và máy chủ sẽ gửi các bản cập nhật, sáng tạo và xóa xuống cho khách hàng khi mọi thứ thay đổi. Mặc dù trò chơi của tôi hiện tại mang tính quyết định, tôi không bao giờ tin tưởng khách hàng của mình làm bất cứ điều gì đúng, máy chủ là ông chủ và có toàn quyền kiểm soát trò chơi. Khách hàng chỉ là một thiết bị đầu cuối câm.

Để làm cho mọi thứ thực sự đơn giản, tôi đang sử dụng kết hợp Reflection và Eventing để giữ cho các thực thể của tôi hoàn toàn chìm trong bóng tối về mặt kết nối của mọi thứ. Tôi cũng sử dụng khái niệm Diễn viên và "Lực lượng" (trái ngược với Diễn viên và Cầm đồ trong FPS như Unreal). Điều này cho phép đóng gói thực sự tốt đẹp và là nơi lưu trữ tiền và công cụ của Lực lượng.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.