Experimentos

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Experimentos permitem que você realize testes A/B no jogo e em matchmaking para medir o impacto causal das mudanças em sua experiência. Por exemplo, você pode mostrar diferentes experiências de onboarding para diferentes jogadores e medir a diferença em tempo de jogo, retenção e outros indicadores-chave de desempenho.

Experimentos são excelentes para medir o seguinte:

  • Engajamento - Fluxos de onboarding, sistemas de progressão, esquemas de controle, matchmaking personalizado
  • Monetização - Visibilidade da loja e experiência do usuário, tipos de pacotes iniciais, preços
Visão geral da página de Experimentos no Creator Hub

Criar experimentos

Experimentos vêm em dois tipos:

  1. Se você ainda não tiver uma configuração, crie uma para sua experiência.

  2. Na página de Experimentos do Creator Hub para sua experiência, clique em Criar experimento.

  3. Para Tipo, escolha Experiência.

  4. Especifique um nome, métrica de objetivo e duração planejada para o experimento. Os experimentos duram entre 14-60 dias.

    Independentemente de qual você escolher como métrica de objetivo, os experimentos rastreiam todas as métricas na lista.

  5. Escolha uma porcentagem de implementação. Esse número é a porcentagem de jogadores que você deseja incluir no experimento.

    Em geral, quanto mais pessoas você incluir em um experimento, melhores serão os dados, mas use seu julgamento sobre o que é melhor para sua experiência.

  6. Especifique variantes e porcentagens.

    Variantes são valores alternativos para sua configuração. Para uma chave de configuração numérica bossHealth com um valor de controle de 500, você pode especificar uma variante de 300. Você pode ter até duas variantes e um controle em um experimento.

    Porcentagens ditam como atribuir variantes dentro da implementação do experimento. Considere o seguinte exemplo:

    • Você escolhe uma implementação geral de 40%.
    • Você especifica duas variantes e uma divisão de 50/50 entre elas e o controle.

    Neste exemplo, 60% de seus usuários estão excluídos do experimento; esses usuários recebem o controle e não têm impacto nos resultados do experimento. Aproximadamente 20% dos seus usuários recebem o controle como parte do experimento. Outros 20% recebem a variante. Dependendo da contagem de jogadores, essa distribuição pode não ser grande o suficiente para gerar resultados acionáveis.

    Página de variantes

  7. O passo final é o agendamento. Você pode iniciar experimentos imediatamente ou agendá-los para uma data e hora futuras. Depois de agendar um experimento, você não pode mudar sua configuração (duração, porcentagem de implementação, variantes, etc.), mas pode reagendá-lo.

Métricas

Experimentos rastreiam todas as seguintes métricas durante a duração do experimento.

MétricaDescrição
Retenção D1Porcentagem de jogadores que retornaram à sua experiência após um dia.
Retenção D7Porcentagem de jogadores que retornaram à sua experiência após uma semana.
Tempo de jogoMédia do tempo que os jogadores passaram em sua experiência. Acumulado durante a duração do experimento.
ARPUReceita média por usuário. Receita dividida pelo número de jogadores. Acumulado durante a duração do experimento.
ARPPUReceita média por usuário pagante. Receita dividida pelo número de jogadores que compraram um item relacionado à experiência. Acumulado durante a duração do experimento.
Taxa de conversão de pagadoresPorcentagem de jogadores que compraram um item relacionado à experiência.
Tempo de sessãoTempo de jogo dividido pelo número de sessões. Acumulado durante a duração do experimento.

Status do experimento

A página de Experimentos exibe os seguintes status para os experimentos.

StatusDescrição
ConcluídoO experimento acabou, o que acontece quando você o para manualmente, quando chega a uma decisão ou automaticamente logo após a data de decisão (14 dias depois para experiências, imediatamente para matchmaking). Você ainda pode revisar os detalhes e resultados.
Decisão necessáriaO experimento atingiu sua data de decisão. Agora é um bom momento para revisar os resultados.
ExecutandoO experimento está em execução, mas ainda não alcançou sua data de decisão.
AgendadoO experimento está agendado para começar em uma data futura.
RascunhoO experimento não foi iniciado ou agendado. Você pode terminar de configurá-lo.

Adicionar experimentos ao seu código

Aplicar experimentos em experiência é semelhante a aplicar configurações. A principal diferença é o uso de ConfigService:GetConfigForPlayerAsync() em vez de ConfigService:GetConfigAsync().

GetConfigForPlayerAsync() recupera uma captura específica do jogador. Quando você chama GetValue(), a captura verifica se há um experimento ativo e inscreve (ou não inscreve) o usuário com base na porcentagem de implementação.


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)
  • Você deve chamar GetConfigForPlayerAsync() separadamente para cada jogador; GetConfigAsync() não aplica experimentos.

  • Depois de chamar GetValue() em uma captura específica do jogador, o jogador associado à captura é inscrito no experimento para aquela chave e apenas aquela chave. Todas as chamadas subsequentes ao método retornam o mesmo controle ou variante durante a duração do experimento. Apenas a primeira chamada é aleatória.

  • A inscrição em experimentos não é limitada a novos usuários. Mesmo que um usuário tenha recebido anteriormente um valor de GetConfigAsync(), você ainda pode inscrevê-lo em um experimento usando uma captura específica do jogador de GetConfigForPlayerAsync().

  • Se uma chave em uma captura específica do jogador não tiver um experimento ativo, GetValue() retorna o valor padrão da configuração (ou nil se não tiver valor).

Inscrição direcionada

Se você deseja direcionar uma parte de seus jogadores que atendem a critérios específicos, deverá escrever código adicional para verificar esses critérios e somente então chamar GetValue() para inscrevê-los no experimento. Considere o seguinte exemplo:

  • Você quer testar um novo esquema de controle em sua experiência.
  • Você não quer incluir jogadores existentes (que presumivelmente estão acostumados ao esquema existente), apenas novos jogadores.

Seu código pode se parecer com isso:


local function getControlScheme(player, racesCompleted)
if racesCompleted > 0 then
return "standardScheme"
else
-- O jogador é novo, inscreva no experimento
local playerConfigSnapshot = ConfigService:GetConfigForPlayerAsync(player)
if playerConfigSnapshot:GetValue("useNewControlScheme") then
return "newScheme"
else
return "standardScheme"
end
end
end

Se você quiser que o esquema de controle persista em sessões subsequentes, precisará adicionar um valor à entrada do jogador em um armazenamento de dados.

Visualizar e interpretar resultados

Depois que um experimento tiver sido executado por pelo menos 24 horas, clique em Visualizar para ver detalhes e resultados.

A página de detalhes de um experimento

Você pode ver o número total de jogadores inscritos, bem como o número de jogadores que receberam o valor do controle e cada variante. Visualizar esta página no início do experimento é útil estritamente para garantir que o experimento está funcionando corretamente, não para tomar ações. Antes de tomar uma ação, veja Melhores práticas.

Depois que o experimento for concluído, verifique a aba Resultados. Procure mudanças estatisticamente significativas nas métricas de objetivo, que o painel destaca em verde ou vermelho. Essas mudanças têm mais chances de mostrar o impacto de sua variante e são menos propensas a ser falsos positivos ou negativos.

A página de resultados de um experimento

Passe o mouse sobre qualquer métrica para ver o botão Visualizar confiabilidade, que mostra o intervalo de confiança.

Uma métrica é estatisticamente significativa quando o intervalo de confiança para sua mudança percentual não se sobrepõe a 0%. No exemplo a seguir, a retenção D1 aumentou 17,4%, com limites inferior e superior de 8,02% e 22,03%, o que torna a mudança estatisticamente significativa.

Intervalo de confiança para uma métrica

Para conveniência, a página de resultados permite que você substitua o valor padrão da configuração por uma das variantes do experimento. Clique em Tomar decisão para escolher uma variante ou Mudar vencedor se mudar de ideia. Se você então retornar à página de Configurações, deverá ver o novo valor.

Melhores práticas para experimentos


  • Use o efeito detectável mínimo (MDE) para decidir se seu experimento vale a pena ser executado.

    O Roblox calcula MDE usando sua métrica de objetivo e número de jogadores por variante, que é baseado em usuários ativos diários, porcentagem de implementação, duração do experimento e divisões de variantes. Se o MDE for muito alto para sua métrica de objetivo (por exemplo, mais de 100%), é improvável que você consiga atingir a significância estatística. Experiências com menos de 1.000 usuários ativos diários podem ter dificuldades para obter dados úteis de experimentos.

    Tela de MDE insuficiente durante a criação.

  • Comece com uma hipótese. Em vez de apenas mudar uma variável e verificar os resultados, escreva uma declaração de causa e efeito sobre o que você mudou, o que espera que aconteça e por quê. À medida que você experimenta mais e mais, ter um conjunto de hipóteses escritas para acompanhar seus resultados pode ajudar a esclarecer seu pensamento e provocar novas ideias para experimentos.

  • Deixe os experimentos rodarem durante toda a sua duração. O efeito de novidade (interesse temporário em uma mudança não porque seja melhor, mas porque é nova) pode distorcer fortemente os resultados iniciais, às vezes fazendo com que eles oscilem dentro e fora da significância estatística. Encerrar experimentos mais cedo aumenta as chances de você agir prematuramente com base em picos anômalos que mais dados teriam suavizado ou até mesmo contradito.

  • Não aja sem significância estatística. Mesmo mudanças aparentemente grandes no comportamento do jogador podem não ser estatisticamente significativas, geralmente devido ao pequeno tamanho da amostra. Se uma mudança não é estatisticamente significativa, ignore-a.

  • Evite mudanças durante experimentos. Bugs maiores, é claro, precisam de correções, mas mudanças no conteúdo da experiência podem impactar o comportamento do jogador e invalidar seus resultados, mesmo que as mudanças pareçam não estar relacionadas ao seu experimento. Da mesma forma, execute apenas experimentos simultaneamente se tiver certeza de que eles não interagirão uns com os outros.

  • Use intervalos de confiança para investigações profundas nas métricas e para verificar casos limite de significância estatística. Se o intervalo de confiança for muito amplo, a métrica pode nunca atingir a significância estatística.

  • Se uma métrica estiver significativamente alta e outra significativamente baixa, você deve decidir se a troca compensa, possivelmente em conjunto com outros movimentos estatisticamente significativos.

  • Experimentos fornecem um forte sinal, mas a significância estatística trata de probabilidades, não certezas—daí o intervalo de confiança. A variabilidade dos dados, tamanho da amostra e magnitude da mudança impactam a probabilidade de detectar se uma variante afetou o comportamento do jogador. Qualquer ação que você tome com base nos resultados de um experimento deve ser equilibrada com dados qualitativos, como feedback dos jogadores e sua visão geral para a experiência.

  • Documente suas descobertas e decisões. Mesmo que você não as use para executar experimentos adicionais, ter um corpo de conhecimento e evidências pode informar como você projeta suas experiências.

©2026 Roblox Corporation, Roblox, o logotipo Roblox e Powering Imagination estão entre nossas marcas registradas e não registradas nos EUA e em outros países.