Rolador de Dados

:discourse2: Resumo Dice Roller adiciona um rolagem de dados bem equipado às suas postagens no Discourse, para suas necessidades de jogos baseados em fórum!
:hammer_and_wrench: Link do Repositório https://github.com/discourse/discourse-dice
:open_book: Novo em Temas do Discourse? Guia para iniciantes sobre o uso de Temas do Discourse

Instale este componente de tema

:information_source: Administradores: Considere desativar a configuração discourse narrative bot disable public replies após a instalação, pois este componente de tema substitui completamente o comportamento de rolagem de dados do bot.

:game_die: Uso Básico

O componente de tema interpreta rolagens formatadas como [wrap=dice].

[wrap=dice]d20[/wrap]
[wrap=dice]d100[/wrap]
[wrap=dice]2d6[/wrap]

Você pode rolar múltiplos dados do mesmo tipo, aplicar modificadores aditivos e verificar automaticamente o resultado contra um limite de sucesso:

[wrap=dice]2d6+3t12[/wrap]

image

:woman_scientist: Funcionalidades Avançadas: Críticos, Rolagens Divididas

Você pode especificar rolagens naturais específicas para serem tratadas como “críticos” com a opção crit=. Os críticos são verificados antes do modificador aditivo.

[wrap=dice crit=1,100]1d100[/wrap]
[wrap=dice crit=1,20]d20+3[/wrap]

image

Se certos valores críticos forem notáveis em seu fórum, um administrador pode adicionar CSS extra para destacá-los. Neste exemplo, críticos que rolam um 1 são coloridos em vermelho.

Se você permitir que múltiplas rolagens sejam verificadas contra o mesmo limite, pode adicionar o modificador i Individual em conjunto com t Limites. O número de dados bem-sucedidos que passaram pelo limite será resumido no final.

[wrap=dice]5d100t60i[/wrap]
[wrap=dice]3d20-5t0i[/wrap]

:information_source: Atualmente, as rolagens pré-modificador são exibidas. Isso pode mudar no futuro, dependendo do feedback.

:no_entry: Restrições

Para evitar abusos com corpos de postagem grandes, um número máximo de dados por rolagem está disponível nas configurações do tema para ajuste pelo administrador. O padrão é 80 dados.

Dados de 0 lados e 1 lado não são permitidos. Rolagem de 0 dados não é permitida, e dados com mais de ~67 milhões de faces não são permitidos por motivos de desempenho.

:gear: Detalhes Técnicos e Trapaça

As rolagens são calculadas em JavaScript usando um RNG semeado pelo ID da postagem e o timestamp de criação, processando o corpo da postagem em ordem. Os valores das rolagens não são visíveis antes que a postagem seja criada.

Vários estilos de formatação especiais são aplicados às rolagens para distingui-las do texto normal nas postagens. Isso não impede que pessoas publiquem imagens!

Os valores das rolagens não são salvos automaticamente no corpo da postagem. Isso apresenta um problema para necessidades de arquivamento. Soluções para isso exigirão o uso de um plugin.

Se você precisar editar rolagens de dados adicionais em sua postagem, elas devem ser adicionadas no final para preservar os resultados de todas as rolagens anteriores. Adicionar novas rolagens de dados no topo de uma postagem randomizará os resultados de todas as rolagens. Por esse motivo, ter qualquer rolagem errônea em uma postagem impedirá que todas as rolagens subsequentes funcionem. A pré-visualização do compositor informará se sua especificação de dados está :game_die: correta ou :warning: errônea.

Embora essas medidas possam ajudar a prevenir trapaças acidentais, um trapaceiro determinado pode tentar prever quando deve enviar sua postagem. Se você estiver considerando isso para algo valioso, tenha um usuário confiável que não pode receber a recompensa como autor da postagem, ou use uma fonte independente como https://random.org, que oferece serviços pagos para sorteios e rifas auditáveis.

Lembre-se de se divertir!

Configurações

Nome Descrição
max dice
Tradução Padrão
dice.result.success_count.one (%{count} Sucesso)
dice.result.success_count.other (%{count} Sucessos)
dice.excessive.quantity.one Quantidade excessiva de dados (máx %{count})
dice.excessive.quantity.other Quantidade excessiva de dados (máx %{count})
dice.excessive.faces O número de faces do dado não pode exceder 67.000.000
dice.missing.faces Especificação de dado inválida: número de faces ausente
dice.invalid.generic Especificação de dado inválida. Formato: 2d20+3
dice.invalid.quantity O número de dados não pode ser 0
dice.invalid.faces O número de faces do dado não pode ser 0 ou 1
dice.invalid.modifier O modificador não pode ser 0
dice.invalid.threshold O limite não pode ser 0
dice.invalid.crits Números inválidos no atributo crits. (Deve ser crits=4,5,6)
dice.invalid.halt_after_error Rolagem interrompida devido a erro anterior. Corrija os erros para visualizar os resultados.

:discourse2: Hospedado por nós? Componentes de tema estão disponíveis para uso em nossos planos Standard, Business e Enterprise.

33 curtidas

Se alguém estiver interessado em implementar um rolo de dados mais versátil no Discourse usando uma persona de IA, eu fiz isso em uma comunidade que gerencio e funciona excelentemente. Configurei uma persona de IA e permiti que ela usasse a ferramenta Random Picker, defini a configuração ‘max context posts’ para 1 e dei a ela estas instruções:

Conectei a persona a um usuário (neste caso, @dice), para que ela possa ser invocada em qualquer post dizendo algo como @dice 3d6, e o bot responderá com o resultado. Você pode vê-lo em ação neste tópico da minha comunidade (se você estiver interessado em jogos de tabuleiro, sinta-se à vontade para participar da comunidade - ainda é muito nova).

Claro, isso usa IA, então requer uma chave de API LLM. Estou usando GPT-4o-mini, então o custo é muito baixo, especialmente para o volume que estou olhando aqui.

5 curtidas

Para quem possa se interessar, atualizei o componente original para a nova API. Eu não queria usar um LLM para rolar um dado simples, ou o bot, eu gostei tanto do componente original…

De qualquer forma, tive que pedir ajuda ao Claude, então se alguém notar AI BLABLABLA, sim, você está certo, eu confesso. Eu usei.

Para aqueles que ainda estão interessados, estou hospedando o fork (o git original foi arquivado.)

Aguardo feedback e críticas (ou até insultos, não me importo).

4 curtidas