본문으로 건너뛰기
툴렉터

룰렛 돌리기

항목을 적고 돌리면 하나를 뽑아줍니다. 점심 메뉴 고를 때

한 줄에 하나씩, 또는 쉼표로 구분해 적으세요.

항목을 두 개 이상 적으면 룰렛이 만들어집니다.

결과를 먼저 정하고 애니메이션을 맞춥니다

이 룰렛은 결과를 먼저 뽑고, 그 결과에 바늘이 멈추도록 회전 각도를 역산해 돌립니다. 화면에서 도는 것은 이미 정해진 답을 보여주는 연출입니다.

반대로 만들면 곤란해집니다. 회전 물리를 흉내 내서 "멈춘 위치"로 결과를 정하면, 감속 계산의 미세한 특성이 그대로 결과의 편향이 됩니다. 특정 조각이 조금 더 자주 나오는 식입니다. 눈에는 안 보이지만 수천 번 돌리면 드러납니다.

공정한 뽑기를 위해 한 일

브라우저의 암호학적 난수 생성기를 씁니다. 웹에서 흔히 쓰는Math.random()은 구현체마다 품질이 다르고 예측 가능한 수열이 나올 수 있습니다.

그리고 모듈로 편향을 없앴습니다. 난수를 항목 수로 나눈 나머지를 그대로 쓰면 나누어떨어지지 않는 만큼 앞쪽 항목이 한 번 더 포함되어 미세하게 더 자주 나옵니다. 이 도구는 그 구간에 걸린 난수를 버리고 다시 뽑습니다. 6개 항목을 6000번 뽑아 어느 항목도 죽거나 몰리지 않는지 확인하는 검사도 들어 있습니다.

확률을 다르게 주고 싶다면

같은 항목을 여러 줄 적으면 됩니다. "치킨"을 세 줄, "피자"를 한 줄 적으면 치킨이 나올 확률이 3배가 됩니다. 별도의 가중치 입력란을 두지 않은 것은 화면을 단순하게 유지하기 위해서입니다. 대부분의 경우 이 방법으로 충분합니다.

겹치지 않게 뽑을 때

"뽑힌 항목 빼기"를 켜면 한 번 나온 항목이 다음 판에서 제외됩니다. 발표 순서를 정하거나, 여러 사람에게 겹치지 않게 배정할 때 씁니다. 항목이 다 떨어지면 목록이 비었다고 알려드립니다.

끄고 쓰면 매번 전체에서 다시 뽑습니다. 연달아 같은 것이 나올 수 있는데 그게 정상입니다. 4개 중에서 뽑을 때 두 번 연속 같은 것이 나올 확률은 4분의 1입니다.

이 도구에 대해

항목과 결과는 이 브라우저 화면에만 있습니다. 아무것도 서버로 전송되거나 저장되지 않으며, 페이지를 새로고침하면 사라집니다. 항목은 최대 24개까지 받습니다. 그보다 많으면 조각이 얇아져 글자를 읽을 수 없습니다. 여러 명을 팀으로 묶어야 한다면팀 나누기가, 이름과 결과를 짝지어야 한다면사다리타기가 맞습니다.

자주 묻는 질문

Q돌아가는 애니메이션이 결과에 영향을 주나요?

주지 않습니다. 결과를 먼저 정하고, 그 결과에 바늘이 멈추도록 회전 각도를 역산해 돌립니다. 애니메이션은 보여주기 위한 것이고 실제 뽑기는 이미 끝나 있습니다.

반대로 하면 곤란합니다. 회전 물리를 흉내 내서 멈추는 위치로 결과를 정하면, 애니메이션 구현의 미세한 편향이 그대로 결과의 편향이 됩니다. 어느 조각이 조금 더 자주 나오는 식입니다.

Q같은 항목이 계속 나옵니다

무작위이므로 연달아 같은 것이 나올 수 있습니다. 4개 중에서 뽑을 때 두 번 연속 같은 것이 나올 확률은 4분의 1이라, 몇 번 돌리다 보면 자연스럽게 겪게 됩니다.

한 번 나온 것을 빼고 싶다면 "뽑힌 항목 빼기"를 켜세요. 나온 항목이 다음 판에서 제외되므로 순서를 정하거나 겹치지 않게 배정할 때 유용합니다.

Q항목마다 확률을 다르게 줄 수 있나요?

같은 항목을 여러 줄 적으면 됩니다. "치킨"을 세 줄, "피자"를 한 줄 적으면 치킨이 나올 확률이 3배가 됩니다. 별도의 가중치 입력란을 두지 않은 것은 화면을 단순하게 유지하기 위해서입니다.

다만 항목이 24개를 넘으면 조각이 너무 얇아져 글자를 읽을 수 없습니다. 확률 차이를 크게 두려면 항목을 줄이거나 다른 방식을 쓰세요.

Q결과가 공정한가요?

브라우저의 암호학적 난수 생성기를 씁니다. 그리고 흔한 실수 하나를 피했습니다. 난수를 항목 수로 나눈 나머지를 그대로 쓰면 앞쪽 항목이 미세하게 더 자주 나오는데, 이 도구는 편향이 생기는 구간을 버리고 다시 뽑습니다.

실제로 그렇게 동작하는지 확인하는 검사도 들어 있습니다. 6개 항목을 6000번 뽑아 어느 항목도 죽거나 몰리지 않는지 봅니다.

Q기록이 남나요?

지난 결과 목록은 이 화면에만 있고 페이지를 새로고침하면 사라집니다. 항목 이름을 포함해 아무것도 서버로 전송되거나 저장되지 않습니다.

기록을 지우고 싶으면 "기록 지우기"를 누르세요. 남겨야 할 결과라면 화면을 캡처해 두시는 편이 안전합니다.