Você pode analisar os números com bastante facilidade usando anydice.com. Aqui está um programa de exemplo:
function: fuzion ATT:n SKL:n DICE:s {
if [email protected]=6 { result: ATT + SKL + DICE + 2d6}
if [email protected]=1 { result: ATT + SKL + DICE - 2d6}
result: ATT + SKL + DICE
}
output [fuzion 10 10 3d6] >= 50
A maneira como isso funciona é que definimos uma função chamada fuzion
que espera receber seu atributo, habilidade e uma rolagem de dados 3d6. O atributo / habilidade são apenas números simples, indicados com :n
na definição da função. O rolo é convertido em uma sequência por :s
, que por padrão classifica os dados no rolo em ordem decrescente. Depois, inspecionamos os dados:
- Se o dado 3rd é um 6, isso significa que todos os dados do 3 eram 6s, então adicionamos um 2d6 ao resultado
- Se o dado 1st é um 1, todos os dados devem ser 1s, então subtraímos 2d6 do resultado
- Caso contrário, o resultado é apenas adicionar tudo junto
Então podemos usar essa função fuzion
para simular um rolo e compará-lo com um número alvo. Nesse caso, usei seu exemplo de um atributo de 10, uma habilidade de 10 e um destino de 50. O resultado ao executar o programa anydice mostra que você tem cerca de uma chance de 0.01286 ...% de ter sucesso nesse teste.
Você também pode usar a instrução de saída sem a comparação:
saída [fuzion 10 10 3d6]
Que produzirá gráficos e tabelas mostrando a distribuição dos possíveis valores que você pode obter, em vez de suas chances de obter êxito em uma tarefa específica.
Intuitivamente, neste exemplo específico, podemos observar que o sucesso exige que você jogue o máximo em todos os dados - o que para 5d6 tem chances de 1 / (6 * 6 * 6 * 6 * 6) ou 1 no 7776, que sai para um probabilidade de 0.0001286 ... ou 0.01286 ...%, que concorda com o valor que qualquer dado calculado.
Obviamente, você pode alterar os valores no exemplo se quiser comparar diferentes cenários, e é possível escrever um programa funcionalmente idêntico que faça essa simulação com mais eficiência, mas, neste caso, é um cálculo tão simples que não é necessário otimizar.