Dados com semente
Um rolador de dados com semente produz a mesma sequência sempre que a quantidade de dados, o número de faces e a semente permanecem iguais.
Executar grátis
Isso permite repetir testes, partidas, exercícios e cenários compartilhados nos quais todos precisam receber resultados idênticos. Informe quantos dados deseja rolar, quantas faces cada um possui e uma semente de texto não vazia. A resposta mostra cada rolagem na ordem e apresenta a soma total.
Torne uma rolagem de dados reproduzível
Roladores comuns foram feitos para surpreender, mas a reprodução exata é importante quando outra pessoa ou outra execução precisa obter o mesmo resultado. Este simulador converte o texto da semente em um valor inicial fixo e avança um gerador determinístico para cada resultado aceito. Ao enviar a mesma quantidade de dados, o mesmo número de faces e a mesma semente, você recebe novamente a lista ordenada e o total. Alterar qualquer uma dessas entradas cria um cenário diferente. A semente pode ser o nome de um caso de teste, o identificador de uma partida, o rótulo de uma aula ou qualquer texto não vazio que sua equipe consiga armazenar e compartilhar. Considere a semente uma parte da definição do cenário, e não um segredo. A resposta traz uma lista de rolagens para você examinar cada dado, em vez de mostrar apenas a soma. Isso ajuda em regras sobre resultados iguais, maior ou menor dado, sucessos individuais e reprodução posterior. O total também é fornecido, dispensando uma soma adicional nas verificações mais comuns.
Escolha a quantidade e as faces com cuidado
O campo de dados controla quantos resultados independentes são retornados, enquanto o campo de faces define o intervalo inclusivo de cada resultado. Um dado de seis faces, por exemplo, sempre gera inteiros de 1 a 6; um dado de vinte faces gera valores de 1 a 20. A capacidade aceita de 1 a 1,000 dados e de 2 a 1,000,000 faces por dado. Um dado com menos de duas faces é recusado porque não representa uma escolha aleatória significativa. Valores fracionários ou não numéricos também são rejeitados, sem arredondamento silencioso. A implementação associa valores de 32 bits às faces por amostragem de rejeição. Esse método evita o pequeno viés modular que ocorreria se o intervalo do gerador não fosse divisível igualmente pelo número de faces. Os resultados são determinísticos tanto no servidor quanto no navegador, pois o algoritmo usa somente operações inteiras definidas. Ele não consulta o relógio, uma fonte aleatória do sistema, a localidade nem serviços externos. Portanto, é apropriado para testes e demonstrações repetíveis, mas não para criptografia, apostas ou sorteios com requisitos de segurança.
Armazene e reproduza cenários completos
Para reproduzir um cenário com segurança, guarde as três entradas juntas: dados, faces e semente. Armazenar apenas o total não basta quando as regras precisam consultar as rolagens individuais mais tarde; guardar somente a semente também não basta se a configuração dos dados puder mudar. Uma suíte de testes pode derivar a semente do nome do caso, chamar a capacidade e manter as rolagens como evidência legível. Quem conduz uma partida pode publicar a semente do cenário antes da sessão, permitindo que os participantes reproduzam um encontro sem revelar antecipadamente os resultados. Professores podem fornecer a toda a turma os mesmos dados simulados sem perder a aparência natural de um experimento com dados. A sequência está vinculada ao algoritmo documentado desta capacidade. Como ela começa em beta, sistemas que exigem reprodução permanente para arquivo também devem guardar as rolagens retornadas. A automação via API custa US$ 0,002 por solicitação, enquanto o executor do navegador realiza localmente o mesmo cálculo puro. Ao comparar execuções, confira a lista ordenada e o total, pois sequências diferentes podem ter a mesma soma.
Casos de uso
Crie testes de jogos estáveis
Use sementes nomeadas em testes automatizados para fornecer sequências repetíveis à lógica de combate, movimento ou pontuação.
Reproduza uma sessão de mesa
Compartilhe a configuração dos dados e a semente para todos regenerarem as mesmas rolagens e o mesmo total.
Prepare atividades para a turma
Ofereça dados simulados consistentes em exercícios de probabilidade, mantendo resultados com aparência natural.
Perguntas frequentes
A mesma semente sempre produz as mesmas rolagens?
Sim, desde que a quantidade de dados, as faces, o texto da semente e o algoritmo da capacidade sejam iguais.
O que acontece quando o número de faces é menor que 2?
A solicitação falha com um erro de entrada inválida, pois um dado precisa ter pelo menos duas faces possíveis.
Posso ver cada dado em vez de apenas o total?
Sim. A lista de rolagens contém cada resultado na ordem, e o total contém a soma.
É adequado para criptografia ou apostas com dinheiro real?
Não. O gerador foi criado para ser reproduzível e não é uma fonte de aleatoriedade criptograficamente segura.
Quanto custa uma solicitação via API?
Cada solicitação via API custa US$ 0,002. O mesmo cálculo puro também pode ser executado grátis no seu navegador.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/game/dice-roll-seeded \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"dice":3,"sides":6,"seed":"campaign-round-7"}'const res = await fetch("https://api.kit.forhosting.com/game/dice-roll-seeded", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"dice": 3,
"sides": 6,
"seed": "campaign-round-7"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/game/dice-roll-seeded",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"dice": 3,
"sides": 6,
"seed": "campaign-round-7"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/game/dice-roll-seeded", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"dice":3,"sides":6,"seed":"campaign-round-7"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"dice":3,"sides":6,"seed":"campaign-round-7"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/game/dice-roll-seeded", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"dice": 3,
"sides": 6,
"seed": "campaign-round-7"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "game.dice_roll_seeded",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |