Thí nghiệm

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

Thí nghiệm cho phép bạn thực hiện các bài kiểm tra A/B trong trò chơi và ghép nhóm để đo lường tác động nguyên nhân của các thay đổi đối với trò chơi của bạn. Ví dụ, bạn có thể hiển thị các trải nghiệm hướng dẫn khác nhau cho các người chơi khác nhau và đo lường sự khác biệt về thời gian chơi, giữ chân và các chỉ số hiệu suất chính khác.

Các thí nghiệm rất tuyệt để đo lường những điều sau:

  • Sự tham gia - Quy trình hướng dẫn, hệ thống tiến trình, các cách điều khiển, ghép nhóm tùy chỉnh
  • Doanh thu - Tính khả thấy của cửa hàng và trải nghiệm người dùng, loại gói khởi đầu, định giá
Tổng quan về trang Thí nghiệm trên Creator Hub

Tạo thí nghiệm

Thí nghiệm có hai loại:

  • Thí nghiệm Trong trò chơi cho phép bạn đo lường tác động của các giá trị cấu hình khác nhau.
  • Thí nghiệm Ghép nhóm cho phép bạn đo lường tác động của các cấu hình ghép nhóm tùy chỉnh khác nhau. Khác với thí nghiệm trong trò chơi, bạn chỉ có thể thực hiện một thí nghiệm ghép nhóm tại một thời điểm.
  1. Nếu bạn chưa có cấu hình, hãy tạo một cái cho trò chơi của bạn.

  2. Trên trang Thí nghiệm của Creator Hub cho trò chơi của bạn, nhấp vào Tạo thí nghiệm.

  3. Đối với Loại, chọn Trong trải nghiệm.

  4. Xác định một tên, chỉ số mục tiêu và thời gian dự kiến cho thí nghiệm. Các thí nghiệm chạy từ 14-60 ngày.

    Bất kể bạn chọn chỉ số mục tiêu nào, các thí nghiệm sẽ theo dõi tất cả các chỉ số trong danh sách.

  5. Chọn tỷ lệ triển khai phần trăm. Con số này là tỷ lệ phần trăm người chơi mà bạn muốn bao gồm trong thí nghiệm.

    Nói chung, càng nhiều người bạn bao gồm trong một thí nghiệm, dữ liệu càng tốt, nhưng hãy sử dụng phán đoán của bạn về điều gì là tốt nhất cho trò chơi của bạn.

  6. Xác định các biến thể và tỷ lệ phần trăm.

    Biến thể là các giá trị thay thế cho cấu hình của bạn. Đối với một khóa cấu hình số bossHealth với giá trị điều khiển là 500, bạn có thể xác định một biến thể là 300. Bạn có thể có tối đa hai biến thể và một điều khiển trong một thí nghiệm.

    Các tỷ lệ phần trăm xác định cách phân bổ biến thể trong việc triển khai thí nghiệm. Hãy xem xét ví dụ sau:

    • Bạn chọn một tỷ lệ triển khai tổng thể là 40%.
    • Bạn xác định hai biến thể và chia 50/50 giữa chúng và điều khiển.

    Trong ví dụ này, 60% người dùng của bạn bị loại trừ khỏi thí nghiệm; những người dùng này nhận được điều khiển và không ảnh hưởng đến kết quả thí nghiệm. Khoảng 20% người dùng của bạn nhận được điều khiển như một phần của thí nghiệm. Một 20% khác nhận được biến thể. Tùy thuộc vào số lượng người chơi của bạn, phân phối này có thể không đủ lớn để thu được kết quả có thể hành động.

    Trang biến thể

  7. Bước cuối cùng là lập lịch. Bạn có thể bắt đầu thí nghiệm ngay lập tức hoặc lên lịch cho chúng vào một ngày và giờ sau. Sau khi bạn lập lịch cho một thí nghiệm, bạn không thể thay đổi cấu hình của nó (thời gian, tỷ lệ triển khai, biến thể, v.v.) nhưng bạn có thể thay đổi lịch của nó.

Chỉ số

Các thí nghiệm theo dõi tất cả các chỉ số sau trong suốt thời gian thí nghiệm.

Chỉ sốMô tả
D1 retentionTỷ lệ phần trăm người chơi quay lại trò chơi của bạn sau một ngày.
D7 retentionTỷ lệ phần trăm người chơi quay lại trò chơi của bạn sau một tuần.
Thời gian chơiThời gian trung bình mà người chơi dành trong trò chơi của bạn. Tổng cộng cho toàn bộ thời gian của thí nghiệm.
ARPUDoanh thu trung bình trên mỗi người dùng. Doanh thu chia cho số lượng người chơi. Tổng cộng cho toàn bộ thời gian của thí nghiệm.
ARPPUDoanh thu trung bình trên mỗi người dùng trả tiền. Doanh thu chia cho số lượng người chơi đã mua một mặt hàng liên quan đến trò chơi. Tổng cộng cho toàn bộ thời gian của thí nghiệm.
Tỷ lệ chuyển đổi người trả tiềnTỷ lệ phần trăm người chơi đã mua một mặt hàng liên quan đến trò chơi.
Thời gian phiênThời gian chơi chia cho số lượng phiên. Tổng cộng cho toàn bộ thời gian của thí nghiệm.

Trạng thái thí nghiệm

Trang Thí nghiệm hiển thị các trạng thái sau cho các thí nghiệm.

Trạng tháiMô tả
Đã hoàn thànhThí nghiệm đã kết thúc, điều này xảy ra khi bạn dừng nó thủ công, khi bạn đạt được quyết định, hoặc tự động ngay sau ngày quyết định (14 ngày sau đối với thí nghiệm trong trò chơi, ngay lập tức đối với thí nghiệm ghép nhóm). Bạn vẫn có thể xem lại chi tiết và kết quả.
Quyết định cần thiếtThí nghiệm đã đến ngày quyết định. Bây giờ là thời điểm tốt để xem xét kết quả.
Đang chạyThí nghiệm đang chạy nhưng chưa đạt đến ngày quyết định.
Đã lên lịchThí nghiệm được lên lịch bắt đầu trong một ngày tương lai.
NhápThí nghiệm chưa được bắt đầu hoặc chưa được lên lịch. Bạn có thể hoàn tất việc thiết lập.

Thêm thí nghiệm vào mã của bạn

Áp dụng các thí nghiệm trong trò chơi tương tự như áp dụng cấu hình. Sự khác biệt chính là việc sử dụng ConfigService:GetConfigForPlayerAsync() thay vì ConfigService:GetConfigAsync().

GetConfigForPlayerAsync() lấy một bản chụp cụ thể cho người chơi. Khi bạn gọi GetValue(), bản chụp kiểm tra một thí nghiệm đang hoạt động và ghi danh (hoặc không ghi danh) người dùng dựa trên tỷ lệ triển khai.


local ConfigService = game:GetService("ConfigService")
local Players = game:GetService("Players")
local function onPlayerAdded(player)
local playerConfig = ConfigService:GetConfigForPlayerAsync(player)
local leaderboardColor = playerConfig:GetValue("leaderboardColor")
end
Players.PlayerAdded:Connect(onPlayerAdded)
  • Bạn phải gọi GetConfigForPlayerAsync() riêng biệt cho mỗi người chơi; GetConfigAsync() không áp dụng cho các thí nghiệm.

  • Sau khi bạn gọi GetValue() trên một bản chụp cụ thể cho người chơi, người chơi liên kết với bản chụp sẽ được ghi danh vào thí nghiệm cho khóa đó và khóa đó mà thôi. Tất cả các cuộc gọi tiếp theo đến phương thức này đều trả về cùng một điều khiển hoặc biến thể trong suốt thời gian của thí nghiệm. Chỉ cuộc gọi đầu tiên là ngẫu nhiên.

  • Ghi danh vào các thí nghiệm không chỉ giới hạn cho người dùng mới. Ngay cả khi một người dùng trước đó đã nhận được một giá trị từ GetConfigAsync(), bạn vẫn có thể ghi danh họ vào một thí nghiệm sử dụng một bản chụp cụ thể cho người chơi từ GetConfigForPlayerAsync().

  • Nếu một khóa trong một bản chụp cụ thể cho người chơi không có một thí nghiệm đang hoạt động, GetValue() sẽ trả về giá trị cấu hình tiêu chuẩn (hoặc nil nếu nó không có giá trị).

Ghi danh có mục tiêu

Nếu bạn muốn nhắm đến một phần nào đó của người chơi của bạn đáp ứng các tiêu chí cụ thể, bạn phải viết mã bổ sung để kiểm tra các tiêu chí đó và chỉ sau đó gọi GetValue() để ghi danh họ vào thí nghiệm. Hãy xem xét ví dụ sau:

  • Bạn muốn thử nghiệm một cách điều khiển mới trong trò chơi của bạn.
  • Bạn không muốn bao gồm những người chơi hiện tại (những người có lẽ đã quen với cách điều khiển hiện tại), chỉ muốn những người chơi mới.

Mã của bạn có thể trông giống như sau:


local function getControlScheme(player, racesCompleted)
if racesCompleted > 0 then
return "standardScheme"
else
-- Người chơi là mới, ghi danh vào thí nghiệm
local playerConfigSnapshot = ConfigService:GetConfigForPlayerAsync(player)
if playerConfigSnapshot:GetValue("useNewControlScheme") then
return "newScheme"
else
return "standardScheme"
end
end
end

Nếu bạn muốn cách điều khiển duy trì trong các phiên tiếp theo, bạn có thể cần thêm một giá trị vào mục của người chơi trong một kho dữ liệu.

Xem và giải thích kết quả

Sau khi một thí nghiệm đã chạy ít nhất 24 giờ, nhấp vào Xem để xem các chi tiết và kết quả.

Trang chi tiết của một thí nghiệm

Bạn có thể thấy tổng số người chơi đã ghi danh, cũng như số lượng người chơi đã nhận được giá trị điều khiển và mỗi biến thể. Việc xem trang này sớm trong thí nghiệm là hữu ích chỉ với mục đích đảm bảo rằng thí nghiệm đang chạy đúng cách, không để thực hiện hành động. Trước khi thực hiện hành động, hãy xem Các thực tiễn tốt nhất.

Sau khi thí nghiệm hoàn thành, hãy kiểm tra tab Kết quả. Tìm kiếm những thay đổi có ý nghĩa thống kê trong các chỉ số mục tiêu, mà bảng điều khiển làm nổi bật bằng màu xanh lá cây hoặc đỏ. Những thay đổi này có nhiều khả năng cho thấy tác động của biến thể của bạn và ít khả năng là những dương tính hoặc âm tính giả.

Trang kết quả của một thí nghiệm

Di chuột qua bất kỳ chỉ số nào để thấy nút Xem độ tin cậy, cho thấy khoảng tin cậy.

Một chỉ số là có ý nghĩa thống kê khi khoảng tin cậy cho sự thay đổi phần trăm của nó không chồng chéo với 0%. Trong ví dụ sau, D1 retention tăng 17.4%, với giới hạn dưới và trên là 8.02% và 22.03%, điều này làm cho sự thay đổi có ý nghĩa thống kê.

Khoảng tin cậy cho một chỉ số

Để thuận tiện, trang kết quả cho phép bạn thay thế giá trị cấu hình mặc định bằng một trong các biến thể từ thí nghiệm. Nhấp vào Quyết định để chọn một biến thể hoặc Thay đổi người thắng nếu bạn đổi ý. Nếu bạn sau đó quay lại trang Cấu hình, bạn sẽ thấy giá trị mới.

Các thực tiễn tốt nhất cho thí nghiệm


  • Sử dụng tác động có thể phát hiện tối thiểu (MDE) để quyết định xem thí nghiệm của bạn có đáng chạy hay không.

    Roblox tính toán MDE dựa trên chỉ số mục tiêu và số lượng người chơi mỗi biến thể, điều này dựa trên số người dùng hàng ngày hoạt động, tỷ lệ triển khai, thời gian thí nghiệm và các phân chia biến thể. Nếu MDE quá cao cho chỉ số mục tiêu của bạn (ví dụ: hơn 100%), có khả năng bạn không thể đạt được ý nghĩa thống kê. Các trò chơi có dưới 1.000 người dùng hàng ngày có thể gặp khó khăn trong việc thu thập dữ liệu hữu ích từ các thí nghiệm.

    Màn hình MDE không đủ trong quá trình tạo.

  • Bắt đầu với một giả thuyết. Thay vì chỉ thay đổi một biến và kiểm tra kết quả, hãy viết một tuyên bố nguyên nhân-kết quả về những gì bạn đã thay đổi, những gì bạn mong đợi sẽ xảy ra và tại sao. Khi bạn thử nghiệm nhiều hơn, việc có một tập hợp giả thuyết viết ra để đi kèm với kết quả của bạn có thể giúp làm rõ suy nghĩ của bạn và kích thích những ý tưởng mới cho các thí nghiệm.

  • Để các thí nghiệm chạy trong toàn bộ thời gian của chúng. Hiệu ứng mới lạ (sự quan tâm tạm thời đến một thay đổi không phải vì nó tốt hơn, mà vì nó mới) có thể làm lệch số liệu sớm, đôi khi khiến chúng dao động vào và ra khỏi ý nghĩa thống kê. Kết thúc các thí nghiệm sớm làm tăng khả năng bạn sẽ thực hiện hành động quá sớm dựa trên các đột biến bất thường mà nhiều dữ liệu hơn sẽ làm mịn hoặc thậm chí trái ngược.

  • Đừng hành động mà không có ý nghĩa thống kê. Ngay cả những thay đổi có vẻ lớn trong hành vi người chơi cũng có thể không có ý nghĩa thống kê, thường là do kích thước mẫu nhỏ. Nếu một thay đổi không có ý nghĩa thống kê, hãy bỏ qua nó.

  • Tránh các thay đổi trong suốt các thí nghiệm. Các lỗi lớn dĩ nhiên cần được sửa chữa, nhưng những thay đổi trong nội dung trò chơi có thể ảnh hưởng đến hành vi của người chơi và làm vô hiệu kết quả của bạn, ngay cả khi những thay đổi đó có vẻ không liên quan đến thí nghiệm của bạn. Tương tự, chỉ nên chạy các thí nghiệm đồng thời nếu bạn tự tin rằng chúng sẽ không tương tác với nhau.

  • Sử dụng khoảng tin cậy để phân tích sâu vào các chỉ số và kiểm tra các trường hợp biên của ý nghĩa thống kê. Nếu khoảng tin cậy quá rộng, chỉ số có thể không bao giờ đạt được ý nghĩa thống kê.

  • Nếu một chỉ số tăng đáng kể và một chỉ số khác giảm đáng kể, bạn phải quyết định xem sự đánh đổi có xứng đáng hay không, có thể cùng với các biến động thống kê có ý nghĩa khác.

  • Các thí nghiệm cung cấp tín hiệu mạnh mẽ, nhưng ý nghĩa thống kê liên quan đến xác suất, không phải sự chắc chắn—do đó là khoảng tin cậy. Biến động dữ liệu, kích thước mẫu và độ lớn của thay đổi đều ảnh hưởng đến xác suất phát hiện xem một biến thể có tác động đến hành vi người chơi hay không. Bất kỳ hành động nào bạn thực hiện dựa trên kết quả của một thí nghiệm nên được cân nhắc với dữ liệu định tính như phản hồi của người chơi và tầm nhìn tổng thể của bạn cho trò chơi.

  • Ghi chép lại phát hiện và quyết định của bạn. Ngay cả khi bạn không sử dụng chúng để thực hiện các thí nghiệm bổ sung, việc có một kho kiến thức và bằng chứng có thể thông báo cách bạn thiết kế các trò chơi của mình.

©2026 Roblox Corporation. Roblox, logo Roblox và Powering Imagination là các nhãn hiệu đã đăng ký và chưa đăng ký của chúng tôi tại Hoa Kỳ và các quốc gia khác.