주사위 굴리기

:discourse2: 요약 Dice Roller는 포럼 기반 게임 요구 사항을 충족하기 위해 Discourse 게시물에 기능 풍부한 주사위 굴리기 도구를 추가합니다!
:hammer_and_wrench: 저장소 링크 https://github.com/discourse/discourse-dice
:open_book: Discourse 테마가 처음이신가요? Discourse 테마 사용 입문 가이드

이 테마 컴포넌트 설치

:information_source: 관리자: 설치 후 discourse narrative bot disable public replies 설정을 비활성화하는 것을 고려하십시오. 이 테마 컴포넌트는 봇의 주사위 굴리기 동작을 완전히 대체하기 때문입니다.

:game_die: 기본 사용법

테마 컴포넌트는 [wrap=dice] 형식으로 포맷된 주사위 굴리기를 해석합니다.

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

동일한 유형의 여러 주사위를 굴리고, 덧셈 수정자를 적용하며, 결과를 성공 기준과 자동으로 비교할 수 있습니다:

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

image

:woman_scientist: 고급 기능: 크리티컬, 분할 굴리기

crit= 옵션을 사용하여 특정 자연 굴리기를 "크리티컬 히트"로 처리하도록 지정할 수 있습니다. 크리티컬 히트는 덧셈 수정자가 적용되기 전에 확인됩니다.

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

image

포럼에서 특정 크리티컬 값이 주목할 만하다면, 관리자가 이를 강조하기 위해 추가 CSS를 추가할 수 있습니다. 이 예시에서는 1을 굴린 크리티컬이 빨간색으로 표시됩니다.

여러 굴리기를 동일한 기준으로 확인하도록 허용하려면, t **기준(Thresholds)**과 함께 i 개별(Individual) 수정자를 추가할 수 있습니다. 기준을 통과한 성공적인 주사위의 수는 마지막에 요약됩니다.

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

:information_source: 현재는 수정자 적용 전의 굴리기 값이 표시됩니다. 피드백에 따라 향후 변경될 수 있습니다.

:no_entry: 제한 사항

큰 게시물 본문으로 인한 문제를 방지하기 위해, 관리자가 조정할 수 있는 굴리기당 최대 주사위 수가 테마 설정에서 사용할 수 있습니다. 기본값은 80개입니다.

0면과 1면 주사위는 허용되지 않습니다. 0개의 주사위를 굴리는 것은 허용되지 않으며, 성능상의 이유로 약 6,700만 면이 넘는 주사위는 허용되지 않습니다.

:gear: 기술적 세부 사항 및 부정 행위

굴리기는 JavaScript로 계산되며, 게시물 ID와 생성 타임스탬프를 시드로 사용하여 게시물 본문 순서대로 진행됩니다. 게시물이 생성되기 전에는 굴리기 값을 볼 수 없습니다.

게시물에서 일반 텍스트와 구별하기 위해 굴리기에 여러 가지 특수 포맷 스타일이 적용됩니다. 하지만 이것이 이미지 게시를 막지는 못합니다!

굴리기 값은 게시물 본문에 자동으로 저장되지 않습니다. 이는 아카이빙 요구 사항에 문제를 일으킵니다. 이를 해결하려면 플러그인 사용이 필요합니다.

게시물에 추가적인 주사위 굴리기를 편집해야 하는 경우, 이전 모든 굴리기 결과를 보존하기 위해 반드시 하단에 추가해야 합니다. 게시물 상단에 새로운 주사위 굴리기를 추가하면 모든 굴리기 결과가 무작위로 변경됩니다. 이 때문에 게시물에 잘못된 굴리기가 하나라도 있으면 이후 모든 굴리기가 작동하지 않게 됩니다.

컴포저 미리보기에서 주사위 지정이 :game_die: 올바른지 또는 :warning: 잘못된지를 알려줍니다.

이러한 조치는 우발적인 부정 행위를 방지하는 데 도움이 될 수 있지만, 악의적인 부정 행위자는 게시물을 제출해야 할 시점을 예측하려고 시도할 수 있습니다. 가치 있는 용도로 이를 고려하고 있다면, 보상을 받을 수 없는 신뢰할 수 있는 사용자에게 게시물을 작성하게 하거나, 감사 가능한 추첨과 경품을 위한 유료 서비스를 제공하는 https://random.org 같은 독립적인 출처를 사용하십시오.

재미있게 즐기세요!

설정

이름 설명
최대 주사위 수
번역 기본값
dice.result.success_count.one (성공 %{count}개)
dice.result.success_count.other (성공 %{count}개)
dice.excessive.quantity.one 과도한 주사위 수 (최대 %{count})
dice.excessive.quantity.other 과도한 주사위 수 (최대 %{count})
dice.excessive.faces 주사위 면 수는 67,000,000을 초과할 수 없습니다
dice.missing.faces 잘못된 주사위 지정: 면 수 누락
dice.invalid.generic 잘못된 주사위 지정. 형식: 2d20+3
dice.invalid.quantity 주사위 수는 0일 수 없습니다
dice.invalid.faces 주사위 면 수는 0 또는 1일 수 없습니다
dice.invalid.modifier 수정자는 0일 수 없습니다
dice.invalid.threshold 기준은 0일 수 없습니다
dice.invalid.crits crits 속성에 잘못된 숫자가 있습니다. (crits=4,5,6이어야 합니다)
dice.invalid.halt_after_error 이전 오류로 인해 굴리기가 중단되었습니다. 결과를 보려면 오류를 수정하세요.

:discourse2: 우리가 호스팅을 하고 계신가요? 테마 컴포넌트는 Standard, Business, Enterprise 플랜에서 사용할 수 있습니다.

33개의 좋아요

If anyone is interested in implementing a more versatile dice roller in Discourse using an AI persona, I did this on a community I manage and it works excellently. I set up an AI persona and allowed it to use the Random Picker tool, set the ‘max context posts’ setting to 1, and gave it these instructions:

I connected the persona with a user (in this case @dice), so it can be invoked in any post by saying something like @dice 3d6, and the bot will reply with the result. You can see it in action in this topic of my community (if you’re interested in tabletop gaming, feel free to join the community - it’s very new still).

Of course, this uses AI, so it requires an LLM API key. I’m using GPT-4o-mini, so the cost is very low, especially for the volume I’m looking at here.

5개의 좋아요

For those who might be interested, I updated the original component for the new API. I didn’t want to use a LLM to roll a simple dice, or the bot, I liked the original component so much…

Anyway, I had to ask claude to help, so if anyone spot AI BLABLABLA, yeah, you are right, I confess. I used it.

For those that are still interested, I am hosting the fork (the original git was archived.)

Looking forward for feedback and critics (or even insults, I don’t care).

5개의 좋아요