Cách Hologryph tạo ra SAND: Chiến dịch Raiders of Sophie hướng đến nhịp độ vận hành trực tiếp bền vững.

Aug 26, 2026|0:00 Phút
CÁT: Raiders của Sophie | Hình ba chiều | xây dựng nhỏ

Trang web này đã được dịch bằng máy để thuận tiện cho bạn. Chúng tôi không thể đảm bảo tính chính xác hoặc độ tin cậy của nội dung được dịch. Nếu bạn có thắc mắc về tính chính xác của nội dung được dịch, vui lòng tham khảo phiên bản tiếng Anh chính thức của trang web.

Đối với Hologryph, việc phát triển CÁT: Kẻ cướp Sophie Điều đó có nghĩa là biến một vùng đất hoang mạc giả tưởng năm 1910 thành một trò chơi khai thác tài nguyên có thể tiếp tục phát triển lâu dài sau khi ra mắt. Người chơi sẽ điều khiển và lái những cỗ máy khổng lồ Tramplers – những cỗ máy biết đi đóng vai trò là căn cứ, kho chứa đồ và vũ khí cùng một lúc – sau đó cưỡi chúng băng qua một thế giới mở được tạo ngẫu nhiên để tìm kiếm vật phẩm phế liệu và đồng đội.

Để mang lại trải nghiệm đó, cần phải có sự phân tách máy chủ và máy khách nghiêm ngặt, tạo thế giới theo quy trình hoạt động giống hệt nhau ở cả hai phía, đồng bộ hóa hàng trăm thực thể tạo nên một con Trampler duy nhất, và truyền tải thế giới đủ mượt mà để tạo cảm giác như đang cưỡi trên lưng nó. Nhóm cũng cần một quy trình xử lý nội dung đủ nhanh để phát hành các khu vực, vũ khí, hiệu ứng và môi trường theo mùa mới một cách đều đặn mà không làm ảnh hưởng đến hiệu suất.

Chúng tôi đã có cuộc trò chuyện với Serhiy Grinets, Giám đốc công nghệ kiêm giám đốc trò chơi tại Hologryph, về việc xây dựng kiến ​​trúc trò chơi cho dài hạn, duy trì nguồn cung cấp nội dung và những gì cần thiết để vận hành trực tuyến một trò chơi đầy tham vọng về mặt kỹ thuật như thế này.

Mô hình vận hành trực tuyến của bạn trông như thế nào, và một bản cập nhật điển hình bao gồm những gì?

Serhiy Grinets: Mô hình vận hành trực tiếp của chúng tôi cho SAND tập trung vào việc giúp trò chơi phát triển cùng với cộng đồng người chơi đầy nhiệt huyết. Ưu tiên hàng đầu của chúng tôi là duy trì tần suất cập nhật thường xuyên, kết hợp nội dung mới, cải tiến lối chơi, cân bằng game, sửa lỗi và những thay đổi giúp người chơi trải nghiệm tốt hơn. Mục tiêu cuối cùng của chúng tôi là xây dựng một mô hình vận hành trực tuyến bền vững, hỗ trợ tựa game này về lâu dài.

CÁT: Kẻ cướp Sophie

Những mục tiêu kỹ thuật cốt lõi của bạn khi bắt đầu là gì, và chúng đã định hình cách tiếp cận của bạn như thế nào trong việc xây dựng một trò chơi được thiết kế để tồn tại và phát triển lâu dài?

Chúng tôi có ba mục tiêu lớn:

  • Phân tách rõ ràng giữa máy chủ điều khiển và máy khách, với quá trình tạo thế giới tự động diễn ra giống hệt nhau ở cả hai phía.
  • Đồng bộ hóa một số lượng lớn các thực thể – một Trampler duy nhất được tạo thành từ hàng trăm thực thể như vậy.
  • Truyền phát trực tuyến mượt mà khắp thế giới – thế giới thực sự rất rộng lớn, và để truyền tải cảm giác khi cưỡi chiếc Trampler, bạn cần một nơi để cưỡi.
CÁT: Raiders của Sophie | Hình ba chiều | xây dựng nhỏ

CÁT: Raiders của Sophie | Hình ba chiều | xây dựng nhỏ

Những kẻ giẫm đạp đóng vai trò trung tâm trong bản sắc của trò chơi. Bạn đã xây dựng hệ thống tùy chỉnh như thế nào để có thể phát hành các bộ phận, phụ kiện và biến thể mới như nội dung vận hành trực tiếp liên tục?

Toàn bộ hệ thống được xây dựng dựa trên các ngăn. Một khoang là một phần của chiếc Trampler – có thể là sàn, cabin, khung đỡ, phòng chứa thiết bị – và mỗi khoang được thiết kế để khớp với các khoang khác.

Người chơi lắp ráp cỗ máy Trampler của mình từ các khối này: Họ lựa chọn bố cục, xếp các quân bài, đặt thiết bị, và cuối cùng tạo ra một cỗ máy thực sự thuộc về họ – căn cứ, kho chứa và vũ khí của họ cùng một lúc.

Đối với chúng tôi, những nhà phát triển, đây cũng chính là quy trình tạo nội dung. Để thêm một ngăn mới, chúng ta mô hình hóa và cấu hình nó mà không cần lập trình. Nó được tích hợp vào hệ thống xây dựng giống như bất kỳ khối nào khác, và người chơi có thể sử dụng nó ngay lập tức trong các thiết kế của mình. Lập trình viên chỉ can thiệp khi một bộ phận cần cơ chế hoạt động mới, và ngay cả khi đó, đó cũng chỉ là một phần công việc nhỏ, độc lập.

Đó là lý do tại sao các ngăn chứa lại là nội dung hoạt động trực tiếp hoàn hảo: Mỗi một phiên bản mới sẽ nhân lên số lượng các cấu hình Trampler có thể có, và chúng lại có chi phí sản xuất thấp đối với chúng tôi.

Cấu trúc bên dưới hệ thống khoang chứa trông như thế nào, và làm thế nào nó cho phép bạn nhanh chóng tạo mẫu thử nghiệm các cơ cấu mới?

Chúng tôi sử dụng phương pháp tiếp cận theo mô-đun, cho phép chúng tôi nhanh chóng thử nghiệm và phát triển các nguyên mẫu. Về mặt kỹ thuật, chúng tôi có một bộ chứa đảo ngược quyền điều khiển tùy chỉnh để tích hợp các chức năng mới, và nó rất phù hợp với Hệ thống Thành phần Thực thể (ECS) của chúng tôi. Hơn nữa, công cụ mạng tùy chỉnh của chúng tôi có nghĩa là chúng tôi hầu như không bao giờ phải nghĩ đến vấn đề mạng khi xây dựng các cơ chế mới. Việc sao chép dữ liệu được xử lý ở lớp bên dưới mã lập trình trò chơi.

CÁT: Raiders của Sophie | Hình ba chiều | xây dựng nhỏ

CÁT: Raiders của Sophie | Hình ba chiều | xây dựng nhỏ

Hệ thống Job System và trình biên dịch Burst của Unity đã mang lại cho bạn khả năng hiệu năng dư thừa như thế nào để tiếp tục bổ sung nội dung vận hành trực tiếp mà không gây ra hiện tượng suy giảm hiệu suất?

Mô phỏng của chúng tôi chạy trên phiên bản Entitas đã được chúng tôi sửa đổi, một khung ECS ​​mã nguồn mở, thay vì Unity Entities, nhưng hệ thống Job System C# và trình biên dịch Burst rất quan trọng đối với các luồng xử lý chính của chúng tôi. Quá trình tạo địa hình tự động, bao gồm các tác vụ lấy mẫu bản đồ độ cao và quần xã sinh vật, thuật toán di chuyển của Trampler và thuật toán loại bỏ đối tượng bị che khuất tùy chỉnh của chúng tôi, đều được chạy dưới dạng chuỗi tác vụ được biên dịch bằng Burst. Công việc đó không ảnh hưởng đến luồng chính, vì vậy một thế giới phức tạp hơn sẽ không làm tốn khung hình của chúng ta.

VFX Graph đã đóng vai trò gì trong việc giúp nhóm của bạn nhanh chóng thử nghiệm và cải tiến hiệu ứng cho các sự kiện trực tiếp, các dịp lễ hội hoặc các cột mốc thành tựu?

Tất cả các hiệu ứng của chúng tôi – bụi cát, khói, khiên chắn, hiệu ứng vũ khí – đều được xây dựng trên VFX Graph, nhưng điểm mấu chốt là cách chúng tôi sử dụng nó. Thêm vào đó, chúng tôi xây dựng các hệ thống hiệu ứng có thể cấu hình, như tia lửa đầu nòng súng hoặc vết đạn bắn trúng, tồn tại dưới dạng một đồ thị linh hoạt với một tập hợp lớn các thông số được hiển thị, bao gồm kích thước, màu sắc, thời gian, mảnh vỡ và khói.

Vì vậy, khi một loại vũ khí mới xuất hiện, người nghệ sĩ chỉ cần điều chỉnh các thông số đó và tạo ra hiệu ứng độc đáo – không có sự tham gia của nghệ sĩ kỹ thuật hay việc xây dựng đồ họa mới từ đầu. Thời gian của các nghệ sĩ công nghệ được dành để làm cho các hệ thống này trở nên phong phú hơn thay vì tạo ra thủ công từng hiệu ứng riêng lẻ cho từng loại vũ khí.

Đó là điều giúp duy trì tốc độ sản xuất đủ nhanh để đảm bảo lượng nội dung được đăng tải đều đặn. Vũ khí và sự kiện mới có được hiệu ứng chất lượng cao hơn nhờ vào việc cấu hình lại, chứ không phải nhờ vào quá trình phát triển.

CÁT: Raiders của Sophie | Hình ba chiều | xây dựng nhỏ

CÁT: Raiders của Sophie | Hình ba chiều | xây dựng nhỏ

Unity Profiler đã định hình quy trình tối ưu hóa của bạn như thế nào khi quy trình xử lý nội dung vận hành trực tiếp của bạn mở rộng quy mô?

Chúng tôi thường xuyên đo lường hiệu năng trên cả máy khách và máy chủ để tìm ra và tối ưu hóa các điểm yếu. Phân tích chi tiết theo từng hệ thống trong Unity Profiler cho thấy chính xác thời gian được sử dụng ở đâu, điều này giúp việc phân tích hiệu năng hệ thống ECS ​​của chúng tôi trở nên rất thuận tiện.

Chúng tôi cũng có các bài kiểm tra tự động đo lường hiệu suất trong các kịch bản cố định, nhờ đó chúng tôi có thể thấy xu hướng mỗi ngày và phản ứng ngay lập tức với những thay đổi.

Bạn đang sử dụng Addressables như thế nào để cập nhật nội dung trực tiếp, vá lỗi khẩn cấp và các bản phát hành theo mùa mà không cần cập nhật toàn bộ ứng dụng khách?

Addressables là xương sống của việc quản lý bộ nhớ của chúng ta. Thế giới đang được phát trực tuyến: Khi người chơi cưỡi ngựa băng qua sa mạc, nội dung sẽ liên tục được tải vào và tải ra phía sau họ. Tất cả dữ liệu đó đều được xử lý thông qua Addressables, vì vậy bộ nhớ luôn được giữ nguyên dù người chơi di chuyển xa đến đâu.

Một vai trò thứ hai, ít rõ ràng hơn, là chúng tôi có hai dự án riêng biệt, dự án khách hàng chính và dự án máy chủ, và chúng tôi đã xây dựng một giải pháp tùy chỉnh để chuyển giao tài sản từ dự án này sang dự án kia. Điều đó giúp duy trì sự nhất quán giữa hai môi trường: Máy chủ nhìn thấy cùng một dữ liệu như máy khách, được xây dựng thông qua cùng một quy trình, vì vậy các lỗi nội dung "hoạt động trên máy khách, lỗi trên máy chủ" là không thể xảy ra về mặt cấu trúc mà chỉ là điều chúng ta cần phải kiểm tra.

CÁT: Raiders của Sophie | Hình ba chiều | xây dựng nhỏ

CÁT: Raiders của Sophie | Hình ba chiều | xây dựng nhỏ

Có công cụ nào trong Asset Store giúp bạn xây dựng hoặc duy trì quy trình vận hành trực tiếp nhanh hơn không?

Từ Unity Asset Store, GPU Instancer Pro sẽ render tất cả các đối tượng rải rác trong sa mạc, điều cần thiết cho thế giới mở, và Amplify Impostors sẽ xử lý các đối tượng ở xa. Odin Inspector cung cấp sức mạnh cho các công cụ dành cho nhà thiết kế, vốn rất quan trọng đối với quy trình tạo nội dung dựa trên dữ liệu, và Rewired xử lý dữ liệu đầu vào trên cả PC và máy chơi game. Easy Save , DOTween và I2 Localization đều giúp chúng tôi tiết kiệm được rất nhiều thời gian.

Cinemachine đã đóng vai trò như thế nào trong việc ghi lại những khoảnh khắc đáng chia sẻ, nổi bật – những trận chiến robot, những pha bóng hay – góp phần thúc đẩy chiến lược nội dung của bạn?

Cách chúng tôi sử dụng Cinemachine được cố ý đơn giản hóa. Nó quản lý các camera của chúng ta và chuyển đổi giữa chúng – camera ghi hình trò chơi, camera nhà chứa máy bay và camera quan sát. Chúng tôi không dàn dựng thêm bất kỳ cảnh quay hay kỹ xảo điện ảnh nào, và đó là một lựa chọn có chủ ý. CÁT: Kẻ cướp Sophie Đây là một trò chơi góc nhìn thứ nhất, có tính cạnh tranh cao, và nhiệm vụ của camera là phải đáng tin cậy, chứ không phải mang tính nghệ thuật.

Chất lượng điện ảnh đến từ chính trò chơi. Khi hai pháo đài di động khổng lồ đang bắn phá nhau bằng đại bác, và bạn đang đứng trên boong của một trong hai để nạp đạn, thì không có kịch bản quay phim nào có thể sánh được với khoảnh khắc đó. Điều làm nên sự hoành tráng của mô phỏng chính là kỹ thuật quay phim. Cinemachine đảm bảo máy quay không bao giờ gây cản trở.

CÁT: Raiders của Sophie | Hình ba chiều | xây dựng nhỏ

CÁT: Raiders của Sophie | Hình ba chiều | xây dựng nhỏ

Bạn đã thiết lập hệ thống Vivox hai kênh – trò chuyện nhóm và trò chuyện dựa trên khoảng cách gần. Quá trình thiết kế và triển khai đó bao gồm những gì?

Mỗi người chơi tham gia đồng thời hai kênh Vivox : kênh phi hành đoàn thông thường, đóng vai trò là "bộ đàm" nơi phi hành đoàn của bạn luôn nghe thấy bạn, và một kênh định vị thông qua giọng nói khoảng cách 3D , cho phép bạn nghe thấy những người chơi ở gần từ các phi hành đoàn khác trên bản đồ.

Kênh định vị sử dụng các thuộc tính Vivox 3D – phạm vi, độ suy giảm, mô hình mờ dần – được tinh chỉnh trong tệp cấu hình. Hệ thống ECS ​​của chúng tôi gửi thông tin vị trí người nói và người nghe đến Vivox với tốc độ giới hạn, chỉ khoảng 20 lần mỗi giây và chỉ khi người chơi di chuyển. Quá trình xác thực được thực hiện thông qua dịch vụ mã thông báo phụ trợ của chúng tôi.

Ngoài vai trò về thoại, Vivox đã góp phần như thế nào vào chiến lược vận hành trực tuyến tổng thể của bạn, và nó đã giúp thúc đẩy tương tác trên mạng xã hội và giữ chân người dùng ra sao?

Tính năng nhận diện giọng nói theo khoảng cách là một tính năng trong trò chơi, chứ không chỉ đơn thuần là để giao tiếp. Các trò chơi giải cứu sống nhờ vào những khoảnh khắc tương tác xã hội bất ngờ, nơi các đội gặp nhau trong sa mạc có thể trò chuyện, đàm phán, hợp tác hoặc phản bội lẫn nhau, và việc nghe thấy giọng nói thật của người lạ ở gần đó tạo ra sự căng thẳng mà không hệ thống kịch bản nào có thể tạo ra. Hệ thống liên lạc vô tuyến giữa các thành viên trong nhóm giúp phối hợp nhịp nhàng.

CÁT: Raiders của Sophie | Hình ba chiều | xây dựng nhỏ

CÁT: Raiders của Sophie | Hình ba chiều | xây dựng nhỏ

Lời khuyên hàng đầu của bạn dành cho các nhà phát triển muốn xây dựng một trò chơi vận hành trực tuyến là gì?

Phát triển một trò chơi vận hành trực tiếp là một hành trình đầy thách thức, vì vậy hãy đảm bảo rằng nhóm của bạn có đủ khả năng để hoàn thành nó và bạn có những đối tác và công cụ đáng tin cậy bên cạnh. Hãy luôn gắn bó với cộng đồng của bạn – lắng nghe người chơi, học hỏi từ phản hồi của họ và để điều đó giúp định hình sự phát triển của trò chơi theo thời gian.

Để tìm hiểu thêm về các dự án được thực hiện bằng Unity, hãy truy cập trang Tài nguyên .