Vào ngày 13 tháng 6 năm 2022, Riot đã công bố quan hệ đối tác mới với Microsoft để đưa các trò chơi lớn nhất của mình lên Xbox Game Pass. Sự hợp tác này đã kết nối hai trong số các công ty trò chơi lớn nhất trên thế giới, có chung tình yêu đối với các trò chơi mang tính cạnh tranh và tập trung vào người chơi. 6 tháng sau, chúng tôi đã thực hiện cam kết hoành tráng này và ra mắt thành công các tựa game lớn nhất của mình trên Game Pass.

Giờ đây chúng tôi muốn nhìn lại những việc cả đội đã thực hiện đằng sau hậu trường và nói về một nhóm mà bạn có thể chưa từng nghe đến trước đây — Nền Tảng Người Chơi.

Nhóm Nền Tảng Người Chơi là gì?

Nhóm Nền Tảng Người Chơi tạo ra mối liên kết giữa người chơi và các trò chơi của Riot để xây dựng một hệ sinh thái và cộng đồng liên trò chơi. Nhóm tạo ra một trải nghiệm người chơi thống nhất, kết nối người chơi và các nội dung xuyên suốt từ các trò chơi khác nhau lại làm một. Nói cách khác, nhóm Nền Tảng Người Chơi chịu trách nhiệm về hầu hết mọi thứ liên quan đến các trò chơi của Riot mà không phải màn chơi trực tiếp. Ví dụ như khả năng liên thông tài khoản giữa các trò chơi, đăng nhập trò chơi, mạng xã hội, mua hàng, v.v., được phân phối qua các cổng thông tin, tích hợp SDK và API trực tiếp.

Vì nhóm Nền Tảng Người Chơi chịu trách nhiệm về mọi thứ xung quanh trải nghiệm chơi game của bạn, phần lớn các công việc này có liên quan đến tích hợp Xbox Game Pass được xây dựng bởi nhóm Nền Tảng Người Chơi. Điều này đòi hỏi một tinh thần hợp tác, một tư duy cởi mở và thật nhiều quyết tâm, chăm chỉ để có thể hoàn thành nhiệm vụ trong khi vẫn phải tiếp tục hỗ trợ các trò chơi hiện tại và sắp phát hành của Riot.

Bắt đầu... thật nhanh!

Vì Riot Games là đối tác đầu tiên kết hợp cùng Xbox Game Pass để cung cấp các trò chơi miễn phí trên PC cũng như di động, do đó đã có rất nhiều ẩn số đi kèm. Trên hết, chúng tôi cũng muốn nâng cao trải nghiệm của người chơi bằng cách cấp phần thưởng trong trò chơi cho tất cả những người đã liên kết tài khoản của họ. Khi xem xét một dự án với quy mô ở mức độ này, chúng tôi cố gắng đơn giản hóa nó thành các luồng có tính năng độc lập riêng biệt để tối đa hóa quyền sở hữu và sự tập trung, đồng thời hạn chế các cuộc họp khi chưa có mục tiêu thống nhất.

Để đạt được tất cả những điều này, bộ phận quản lý chương trình đã hợp tác với Microsoft trong việc lập kế hoạch cho các sản phẩm chính. Vai trò quan trọng này đảm bảo các ưu tiên cấp thiết nhất luôn được tập trung vào từng thời điểm. Nhóm Quản Lý Chương Trình thuộc Nền Tảng Người Chơi đã thiết lập các buổi trò chuyện giữa nhóm Nền Tảng Người Chơi và các nhóm trò chơi, xuất bản, hỗ trợ người chơi và các nhóm liên quan chủ chốt khác trên toàn Riot. Họ đã lập chiến lược và mở rộng các vấn đề phức tạp trong nhiều nhóm trò chơi và hàng trăm người trong nhóm Nền Tảng Người Chơi.

Thiết kế cho Game Pass

Trước khi xây dựng các hệ thống mới hoặc loại bỏ các hệ thống hiện có thì các nhóm phải có sự hiểu biết chúng về vấn đề, cũng như nắm rõ như thế nào là thành công đối với người chơi. Thiết kế Trải Nghiệm Người Dùng trong Nền Tảng Người Chơi là rất quan trọng để tạo ra trải nghiệm người chơi tích cực và đóng một vai trò quan trọng trong quan hệ đối tác Xbox Game Pass. Mặc dù thiết kế thường gắn liền với các giao diện đầu cuối, nhưng nó lại đóng một vai trò thậm chí còn quan trọng hơn trong việc lập kế hoạch tương tác giữa người chơi với các sản phẩm và hệ thống phức tạp, giúp họ sử dụng sản phẩm một cách mượt mà hơn. Có lẽ bạn đang thắc mắc rằng việc cho phép người chơi liên kết tài khoản Xbox Game Pass của họ sẽ khó đến mức nào? Thật ra thì nó khá phức tạp đấy!

Ban đầu trong mối quan hệ đối tác giữa Riot và Microsoft, các lãnh đạo mảng UX đã thảo luận cùng các trưởng nhóm để thúc đẩy việc tạo ra những kịch bản người chơi "đáng yêu tối giản", hoàn chỉnh với các thông tin trên nhiều lĩnh vực và bộ phận về thời gian, đối tác và nguồn lực cần có để biến những kịch bản này thành hiện thực. Chúng tôi tập trung đặc biệt vào những rủi ro lớn nhất lên trải nghiệm người chơi - vì càng sớm thống nhất về sự cần thiết của một mục tiêu chung khó khăn, chúng tôi sẽ càng sớm có thể kết hợp chuyên môn của mình để biến những điều dường như không thể thành có thể. (Tìm hiểu thêm về quy trình ban đầu để xác định các kịch bản đáng yêu tối giản này trong bài viết Medium của Riot Games UX.)
 

"Sự hợp tác giữa hai công ty luôn là một thách thức lớn. Thuật ngữ khác nhau, vai trò khác nhau, giả định khác nhau. Chúng tôi đã phải đào sâu để tìm hiểu cách thức vận hành của các hệ thống xác thực và trải nghiệm cài đặt Game Pass từ Microsoft để có thể cân nhắc đến phần trải nghiệm đó khi tính toán chi phí phát triển trải nghiệm đầu cuối - và đánh giá chính xác những gì cần thiết cho trải nghiệm người chơi 'đáng yêu tối giản'." 

- Cheryl Platz
 

Riot Games Xbox Game Pass UX

 

Sau khi hoàn thành các quy trình ban đầu, nhóm UX đã làm việc để xác định chi tiết giao diện đầu cuối phía người chơi sẽ cần những gì để có thể hỗ trợ một trải nghiệm khởi đầu mượt mà, bất kể người chơi là ai và họ đến từ đâu. Nhóm đảm bảo rằng dù là một người chơi Riot kỳ cựu hay một người chơi mới đến từ ứng dụng Game Pass lần đầu tiên, việc liên kết tài khoản Game Pass trực tiếp từ trong trò chơi hoặc thông qua Client Riot đều sẽ cho trải nghiệm khởi đầu mượt mà như nhau.

Lần đầu tiên kết hợp nền tảng từ hai công ty khác nhau thường tạo ra các tình huống mới mà cả nhóm Client Riot và Xbox đều chưa từng giải quyết trước đây, nhằm mang lại trải nghiệm tuyệt vời cho người chơi. Ví dụ, mô hình bảo mật khác biệt của Microsoft đã mang đến cho nhóm Nền Tảng Người Chơi một cơ hội thú vị để khám phá sâu thêm về tiêu chuẩn hóa các nền tảng cấp phép và nhận dạng. Giao tiếp cởi mở và cộng tác tích cực với Microsoft đã giúp định hướng các mục tiêu và đảm bảo tiến độ được thực hiện đúng hướng.
 

"Chúng tôi không phải là sự tích hợp đầu tiên mà họ từng thực hiện, nhưng tôi nghĩ rằng phương pháp sử dụng lần này đủ khác biệt để họ quyết định làm việc và hợp tác với chúng tôi nếu muốn thành công.  Hợp tác là vậy, chúng tôi đã phát triển cả hai mặt của cơ sở mã để có thể hỗ trợ những gì họ cần. Tính năng 'mở ra dùng liền' của Microsoft sẽ không khả thi trong trường hợp này và cũng không khả thi nếu tính theo quan điểm về thời gian. "

- Luther Baker 
 

Bắt đầu với các tài liệu khám phá ban đầu (đôi khi còn được gọi là tiền khám phá), các nhà thiết kế cần xác định được những gì đang xảy ra và tìm ra các yêu cầu cần thiết trước bằng cách tự hỏi, "Làm thế nào để đạt được những kết quả mà chúng ta mong muốn?". Thông qua nhiều phương pháp khác nhau như lập bản đồ kịch bản và quy trình người dùng, Microsoft và các chuyên viên thiết kế Nền Tảng Người Chơi đã làm việc cùng nhau để tạo ra nhiều tài nguyên phụ trợ được chia sẻ với các kỹ sư, nhóm sản phẩm và QA để đảm bảo quy trình phù hợp với mong đợi và một vòng phản hồi liên tục được thiết lập để đánh giá những dịch vụ và khả năng nào có sẵn để hỗ trợ trải nghiệm tốt nhất.


"Trong trường hợp này, tốt hơn là sai với tư cách UX còn hơn là đúng bởi vì sẽ có nhiều người đưa ra phản hồi nếu họ nhận thấy điều gì đó như, "Này, đó không hoàn toàn như là những gì mà tôi hiểu." Tốt hơn là làm điều gì đó sai một cách nhanh chóng để chúng ta có thể nói về nó thay vì dành thời gian đó để cố gắng tìm ra câu trả lời đúng là gì, sau đó mới bắt tay vào làm."

- Melody Seng
 

Các tài nguyên phụ trợ vẫn liên tục được phát triển, ngay cả sau khi đã ký duyệt. Các trường hợp hiếm gặp đã được phát hiện đòi hỏi phải điều tra và lặp lại nhiều lần hơn để giải quyết. Làm việc trực tiếp với các kỹ sư và nhóm công nghệ là chìa khóa để có được sự hiểu biết thống nhất. 
 

Riot Games Xbox Game Pass User Flows


Tạo ra các dịch vụ gần như theo thời gian thực

Để cung cấp trải nghiệm người dùng tốt nhất với Riot và Xbox Game Pass, chúng tôi muốn người chơi có thể  lập tức mở khóa các nội dung mới trong trò chơi ngay sau khi liên kết tài khoản đang kích hoạt Xbox Game Pass của họ, việc này đòi hỏi rất nhiều sự khéo léo trong đó. Nhóm Trải Nghiệm Nội Dung đã hợp tác với nhóm Tài Khoản (thuộc Nền Tảng Người Chơi) và thống nhất với họ về việc gửi tin nhắn đến Trạm Trung Chuyển Sự Kiện Riot (Riot Event Bus) (phương pháp tiếp cận mới nhất của Riot theo giao thức tin nhắn) mỗi khi người chơi liên kết hoặc hủy liên kết tài khoản Xbox. Sau khi nhận được tin nhắn, dịch vụ lắng nghe chủ đề trung chuyển tin nhắn sau đó sẽ phản ứng và xử lý sự kiện. Vì người chơi có thể liên kết tài khoản Xbox của họ với Riot mà không cần kích hoạt Game Pass, nhóm cũng sẽ cần rà soát Xbox API để lấy thông tin này bằng cách sử dụng mã thông báo được cung cấp từ liên kết tài khoản, với nhóm Tài Khoản lưu trữ mã thông báo trong một dịch vụ mới.  Tuy nhiên, điều này vẫn chỉ giải quyết được một phần của vấn đề, vì chúng tôi vẫn cần kiểm tra xem người chơi có tài khoản Xbox Game Pass đang hoạt động hay không.

Nhóm Trải Nghiệm Nội Dung (một phần của nhóm Nền Tảng Người Chơi) đã xây dựng Dịch Vụ Đăng Ký Cổng (Gateway Subscription Service - GSS) hoạt động như một tin cậy thật duy nhất cho nội bộ Riot,về trạng thái Game Pass của người chơi, đối với bất kỳ đối tượng gọi tới nào. Điều này có nghĩa là mỗi khi một dịch vụ cần kiểm tra những nội dung dựa trên đăng ký, họ có thể gọi GSS và nhận được câu trả lời có độ trễ thấp, độ trung thực cao về những lợi ích mà người chơi nên có. GSS lấy dữ liệu bằng cách sử dụng các sự kiện liên kết tài khoản từ nhóm Tài Khoản và sử dụng API của Microsoft để kiểm tra xem người chơi có Game Pass đang hoạt động hay không. Nó sẽ tiết lộ dữ liệu đó cho các dịch vụ khác của Riot thông qua điểm cuối HTTP API để các nhóm khác có thể sử dụng thông tin cho những trường hợp khác nhau, bao gồm:

  • Nền Tảng Truy Cập Nội Dung: Thêm nội dung dựa trên đăng ký vào kho đồ của người chơi
  • Martech: Hiển thị quảng cáo dựa trên trạng thái Game Pass hiện tại của người chơi
  • Hỗ Trợ Khách Hàng: Các nhân viên sẽ sử dụng thông tin để xử lý yêu cầu từ người chơi liên quan đến gói đăng ký Xbox
  • Trải Nghiệm Web (WebEx): Hiển thị trạng thái đăng ký của người chơi trên trang web quản lý tài khoản người chơi

Khi người chơi liên kết tài khoản Riot với tài khoản Xbox Game Pass của họ, GSS sẽ rà soát Microsoft Xbox API để lấy trạng thái Game Pass của người chơi bằng cách sử dụng mã thông báo từ liên kết tài khoản, lưu thông tin trong cơ sở dữ liệu liên tục, và thường xuyên cập nhật cũng như cung cấp thông tin này để rà soát bằng cách cung cấp quyền truy cập cho máy khách thông qua API. Nghe khá đơn giản mà, phải không?

Người chơi có thể kích hoạt Game Pass bất cứ lúc nào sau khi họ liên kết tài khoản Riot với tài khoản Xbox của mình. Dịch vụ sẽ chỉ có thể thường xuyên rà soát Xbox API để kiểm tra xem người chơi có trạng thái kích hoạt hay không. Để cung cấp trải nghiệm người chơi tốt nhất, chúng tôi muốn người chơi có thể truy cập vào nội dung đăng ký ngay sau khi liên kết và kích hoạt Game Pass của họ, vì vậy việc rà soát thường xuyên là cần thiết. Nhưng tần suất bao nhiêu là đủ? Rà soát theo từng phút sẽ rất tuyệt, nhưng thực hiện hàng triệu yêu cầu mỗi phút trên API chỉ để kiểm tra trạng thái là điều không nên, đặc biệt là khi 99% thời gian sẽ không có sự thay đổi gì.

Nhóm tập trung vào các trường hợp khi họ có thể phản ứng với các tương tác từ người chơi bên phía Riot, chẳng hạn như khi một người chơi khởi chạy Client trò chơi, đó sẽ là thời điểm thích hợp để rà soát trạng thái Game Pass. Tuy nhiên, làm mới là một lệnh gọi HTTP ngoại vi mất ~1 giây và client GSS chính, Nền Tảng Truy Cập Nội Dung (Content Access Platform - CAP), cần các phản hồi được trả về trong vòng chưa đầy 50 mili giây vì nó là một phần của yếu tố thời gian để đưa các nội dung vào kho đồ của người chơi. Không có cách nào để nhét một cuộc gọi ngoại vi một giây vào 50 mili giây cả, vì vậy nhóm đã phải suy nghĩ sáng tạo hơn. Họ quyết định trả lại giá trị thu được và hiện được lưu trữ từ lần làm mới trước đó, hoặc ban đầu sau khi liên kết tài khoản và kích hoạt làm mới không đồng bộ trên hệ thống nếu giá trị lưu trữ được thu nhận hơn hai phút trước. Nếu dịch vụ thấy sự thay đổi về trạng thái Game Pass sau lần làm mới không đồng bộ đó, nó sẽ gửi tin nhắn qua Dịch Vụ Tin Nhắn Riot (Riot Messaging Service) đến client để trò chơi có thể lấy các quyền lợi từ CAP, đảm bảo rằng người chơi sẽ nhận được nội dung đăng ký của họ mà không cần tải lại Client một cách thủ công.
 

"Vì vậy, mục tiêu chính của chúng tôi là giảm độ trễ càng nhiều càng tốt vì chúng tôi có yêu cầu về thời gian khá nghiêm ngặt. Về cơ bản, mất 50ms để CAP gọi tới chúng tôi và nhận được câu trả lời về trạng thái kích hoạt Game Pass của người chơi, điều này khiến chúng tôi gần như là một dịch vụ thời gian thực. Nếu chúng tôi không trả lời trong khung thời gian này, thời gian chờ cuộc gọi của CAP sẽ bị trễ và điều đó có thể dẫn đến việc người chơi không nhận được nội dung mà họ nên nhận được."

- Vasily Katraev
 

Tốc Chiến không sử dụng hệ thống CAP cho kho đồ người chơi, vì vậy họ sẽ cần hỏi trực tiếp dịch vụ đăng ký về trạng thái kích hoạt Game Pass. Để đáp ứng yêu cầu về độ trễ 50ms, nhóm Trải Nghiệm Nội Dung đã kết hợp các dịch vụ của họ cùng các dịch vụ CAP và Quản Lý Tài Khoản tại bốn trung tâm dữ liệu trên toàn thế giới để tới gần người chơi nhất có thể.  

Phát hành ẩn & giải pháp thay thế giới hạn cơ sở dữ liệu cho việc phát hành

Chỉ vài ngày trước khi triển khai tới người chơi, nhóm đã thực hiện phát hành ẩn để kiểm tra mối liên hệ giữa tài khoản Riot và Xbox Game Pass. Họ đã tìm ra rất nhiều lỗi nghiêm trọng và sửa chúng trước ngày ra mắt.

Một mối lo ngại lớn đó là t lượng người dùng tải trên dịch vụ Quyền Lợi, chúng chịu trách nhiệm cấp cho người chơi quyền truy cập vào các vật phẩm trong tất cả các trò chơi của Riot. Dịch vụ Quyền Lợi nhận được rất nhiều yêu cầu đọc – lên đến 800.000 yêu cầu mỗi phút tại một số địa điểm! Để mở khóa quyền lợi cho người chơi, mỗi cuộc gọi Quyền Lợi giờ sẽ kích hoạt một cuộc gọi tiếp theo đến một hệ thống khác để kiểm tra xem người chơi có Game Pass hay không, trước khi lắp ráp và trả về quyền lợi Game Pass. Sự căng thẳng và phức tạp gia tăng mà quy trình này đem tới đã tạo ra rủi ro về sự không đáng tin cậy và phản ứng chậm với nhiều tác động hạ nguồn.

Nhóm nghiên cứu đã thử nghiệm lượng tải theo nhiều kịch bản nhưng nhận ra rằng việc phát hành ẩn sẽ giúp họ tự tin nhất trong việc xác định xem liệu hệ thống có đủ mạnh mẽ không. Phát hành ẩn cho phép họ "bật hệ thống" với toàn bộ quy trình đầy đủ, chỉ chặn lại nội dung Xbox Game Pass xuất hiện cho người chơi mà thôi. Họ đã thấy được toàn bộ lượng tải mà hệ thống phải trải qua và hành vi chính xác được mong đợi trước khi ra mắt chính thức. Thông qua việc phát hành ẩn, họ đã phát hiện ra một cấu hình sai lệch trong nhóm kết nối, nó có thể dẫn đến việc khởi chạy thất bại và người chơi sẽ không thể nhận được quyền lợi của họ.

Nhóm cũng gặp phải vấn đề với lượng tải ghi trên cơ sở dữ liệu - kiến trúc hiện tại* đã ngăn họ mở rộng quy mô để đáp ứng lượng người chơi tăng đột biến vào thời điểm ra mắt quan hệ đối tác. Một cách phổ biến để quản lý lượng tải trên một dịch vụ như thế này đó là triển khai quyền truy cập theo từng đợt. Nhóm quyết định cố gắng kiểm soát lượng người chơi bằng cách làm chậm quá trình tiếp thị thành nhiều nhịp. Việc này sẽ giúp dàn đều làn sóng người chơi ra một khoảng thời gian dài hơn, và nhóm có thể đảm bảo họ có đủ năng lực phục vụ cho mỗi làn sóng mới khi các nội dung tiếp thị tiếp theo được phát hành. Bằng cách hợp tác chặt chẽ với nhóm tiếp thị, họ đã có thể giữ nó dưới mức 50% lượng tải được ghi. 

*Sau đó chúng tôi đã thay đổi cơ cấu kỹ thuật cho cơ sở dữ liệu của mình để có thể mở rộng theo chiều ngang nhiều hơn khi có các thay đổi về tài khoản trong tương lai.
 

Biểu đồ: Số lượng tài khoản được tạo và liên kết Xbox trong mỗi giờ sau khi phát hành.
Biểu đồ: Số lượng tài khoản được tạo và liên kết Xbox trong mỗi giờ sau khi phát hành.


Tư duy đôi khi vẫn hơn kỹ năng

Bên cạnh các kỹ năng kỹ thuật đa dạng cần thiết để tích hợp với Xbox Game Pass thì các kỹ năng mềm cũng đóng một vai trò rất quan trọng. Luôn khiêm tốn, ham học hỏi, kèm theo khả năng cộng tác và giao tiếp cởi mở trong nội bộ và bên ngoài với Microsoft chính là chìa khóa. Dù dự án này chỉ kéo dài sáu tháng thì nó vẫn liên quan đến hàng trăm người, làm biến đổi giờ làm việc và ép họ phải tìm hiểu về các hệ thống mới. Điều quan trọng là phải biết lùi lại và để những người có chuyên môn tiếp quản và định hướng theo những cách khác nhau, đảm bảo không có một người hoặc một nhóm chỉ đạo mọi thứ một cách không cần thiết.


"Cách mọi người tiếp cận dự án và tập hợp xung quanh đã thực sự đã tạo ra sự khác biệt." 

- Nate Portner
 

Sự hợp tác này đã làm nổi bật nhiều giá trị cốt lõi của Riot Game. Trong suốt toàn bộ quá trình, nhóm liên tục tự hỏi, "Trải nghiệm này sẽ ảnh hưởng đến người chơi của chúng tôi như thế nào?" Họ đặt mình vào tiêu chuẩn cao nhất "Trải nghiệm người chơi là trên hết" và toàn bộ Riot đã cùng nhau làm việc để tạo ra một thứ có tác động đến tất cả các trò chơi của Riot.
 

"Tất cả các bộ phận đều làm rất tốt trong việc tập trung vào những tác động có thể ảnh hưởng đến người chơi trước khi từng quyết định được đưa ra.  Chúng tôi không muốn người chơi phải thất vọng vào bất kỳ thời điểm nào".

- Matt Hawkins

Tổng kết

Mặc dù có thể nhồi nhét thêm nhiều thông tin vào bài viết về kỹ thuật này, chúng tôi hy vọng bạn sẽ hiểu thêm đôi chút về nhóm Nền Tảng Người Chơi và các dịch vụ mà họ đã xây dựng và cung cấp cho quan hệ đối tác Riot/Xbox Game Pass. Sự cống hiến cũng như chăm chỉ của hàng trăm con người đã được bỏ ra để có thể thiết lập và tiếp tục xây dựng một trải nghiệm người chơi tuyệt vời.