슬롯플레이
오락용 소셜 카지노 게임입니다. 실제 현금 도박 및 현실 가치 보상을 제공하지 않습니다. 카지노 스타일 게임은 미성년자가 이용할 수 없으며, 코인 차감이 없는 보드게임·두뇌게임은 연령 제한 없이 이용할 수 있습니다.
← 블로그
보드게임 실력 랭킹은 어떻게 매겨질까 — Elo 쉽게 이해하기

보드게임 실력 랭킹은 어떻게 매겨질까 — Elo 쉽게 이해하기

확률·데이터 데스크 상징 그림
확률·데이터 데스크·슬롯플레이 편집팀
6
#랭킹#Elo#보드게임#데이터해설

핵심 요약 — 보드게임 랭킹은 체스에서 유래한 Elo(엘로) 방식으로 매겨집니다. 모두 같은 점수에서 출발해, 이기면 오르고 지면 내려갑니다. 핵심은 누구를 이겼는가 — 나보다 강한 상대를 이기면 더 많이 오르고, 약한 상대에게 지면 더 많이 내려갑니다. 이 랭킹은 코인과 무관한 명예형으로 현실 가치 보상은 없습니다.

온라인 2인 대전을 하다 보면 "내 실력이 어느 정도일까"가 궁금해집니다. 그 답을 숫자로 보여 주는 것이 실력 랭킹입니다. 여기서는 랭킹이 매겨지는 원리를 어렵지 않게 정리했습니다.

모두 같은 자리에서 출발

처음 온라인 대전을 시작하면 게임별로 동일한 시작 점수가 주어집니다. 여기서부터 대국 결과에 따라 점수가 오르내립니다. 출발선이 같기 때문에, 점수는 "얼마나 많이 이겼나"보다 "어떤 상대와 어떻게 겨뤘나" 를 반영합니다.

핵심은 "누구를 이겼는가"

Elo의 아이디어는 단순합니다. 대국 전, 두 사람의 점수 차이로 예상 승률을 계산합니다.

  • 점수가 비슷한 상대를 이기면 → 예상했던 결과라 점수가 조금 오릅니다.
  • 나보다 훨씬 강한(점수 높은) 상대를 이기면 → 이변이라 점수가 많이 오릅니다.
  • 반대로 약한 상대에게 지면 → 점수가 많이 내려갑니다.

즉, 강한 상대와 겨뤄 이길수록 랭킹이 빠르게 오릅니다. 무승부는 두 사람의 점수를 서로 가깝게 조금씩 조정합니다.

변동 폭은 일정하게

한 판으로 점수가 요동치지 않도록, 한 대국에서 움직일 수 있는 점수에는 상한이 있습니다. 덕분에 한두 판의 운보다 꾸준한 성적이 랭킹에 더 크게 반영됩니다. 여러 판을 두다 보면 자기 실력에 맞는 점수대로 자연스럽게 수렴합니다.

연승 배지와 게임별 랭킹

  • 연승 배지 — 연달아 이기면 🔥 연승 표시가 붙습니다. 한 번 지면 초기화됩니다.
  • 게임별 분리 — 오목·체스·체커·장기·바둑의 랭킹은 각각 따로 매겨집니다. 체스를 잘한다고 장기 점수가 오르지는 않습니다.

전체 순위와 이번 주 최다 승, 최근 대국은 랭킹 페이지에서 볼 수 있습니다.

랭킹은 명예형입니다

이 랭킹은 실력을 겨루는 재미를 위한 것으로, 코인과 무관한 명예형입니다. 순위가 높다고 코인을 더 받거나 현실 가치 보상이 생기지 않습니다. 부담 없이 자기 기록을 쌓아 가는 지표로 즐기시면 됩니다. 아직 대전을 안 해 보셨다면 온라인 2인 보드게임 즐기는 법을 참고하세요.

숫자로 한 번 더 보기

위의 설명을 코드에 적힌 숫자로 옮기면 이렇습니다.

  • 시작 점수는 1200점입니다. 게임마다 따로 1200점에서 출발합니다.
  • 예상 승률 = 1 ÷ (1 + 10^((상대 점수 − 내 점수) ÷ 400)). 400점 차이면 강한 쪽의 예상 승률이 약 91%입니다.
  • 새 점수 = 지금 점수 + 32 × (결과 − 예상 승률). 결과는 이기면 1, 비기면 0.5, 지면 0이고, 계산한 뒤 정수로 반올림합니다.
  • 결과와 예상 승률의 차이는 1을 넘지 않으므로 한 판에 움직이는 폭은 최대 32점입니다. 앞에서 말한 "상한"이 이것입니다.

1200점인 내가 상대를 바꿔 가며 한 판씩 두면

상대 점수 내 예상 승률 이기면 비기면 지면
1200 50.0% +16 0 −16
1300 36.0% +20 +4 −12
1400 24.0% +24 +8 −8
1600 9.1% +29 +13 −3

같은 점수끼리는 이기면 16점 오르고 지면 16점 내려갑니다. 400점 높은 상대에게 지면 3점만 내려가지만, 이기면 29점이 오릅니다. 비겨도 점수가 낮은 쪽은 오르고 높은 쪽은 내려갑니다. 한 판에서 내가 얻은 만큼 상대가 잃으므로 두 사람 점수의 합은 그대로입니다(반올림 때문에 드물게 1점이 어긋날 수는 있습니다).

5승 5패는 제자리가 아닙니다

1200점에서 출발해 매번 1200점인 상대만 만난다고 해 봅시다.

  • 5번 이기고 5번 지면 — 1216 → 1231 → 1246 → 1260 → 1273까지 올랐다가 1254 → 1236 → 1218 → 1201 → 1185
  • 5번 지고 5번 이기면 — 1184 → 1169 → 1154 → 1140 → 1127까지 내려갔다가 1146 → 1164 → 1182 → 1199 → 1215

승패 수가 같은데 순서에 따라 30점이 갈립니다. 점수가 오른 상태에서 지는 것은 "예상 밖의 패배"라 크게 깎이고, 내려간 상태에서 이기는 것은 "예상 밖의 승리"라 크게 오르기 때문입니다. 연승이 길어질수록 한 판의 값이 줄어드는 것도 같은 이유입니다 — 위의 첫 승은 16점인데 다섯 번째 승은 13점입니다.

점수는 실력대에서 멈춥니다

1200점 상대들에게 네 판 중 세 판을 이기는 사람을 생각해 봅시다. 예상 승률이 75%가 되는 점수 차는 약 191점이라, 이 사람의 점수는 1391점 언저리에서 오르내리게 됩니다. 그보다 높아지면 기대만큼 못 이기는 셈이라 평균적으로 깎이고, 낮아지면 평균적으로 오릅니다. 앞에서 "자기 실력에 맞는 점수대로 수렴한다"고 한 것이 이 뜻입니다.

연승 배지와 집계 규칙

  • 🔥 배지는 3연승부터 붙습니다.
  • 지면 연승이 끊기는 것은 물론이고, 비겨도 0으로 돌아갑니다.
  • 점수와 함께 지금까지의 최고 점수와 승·패·무 횟수가 게임별로 따로 쌓입니다.
  • 온라인 대전과 랭킹이 있는 게임은 오목·체스·체커·장기·바둑·오델로·사목·틱택토·윷놀이·다이아몬드 게임·만칼라·선 잇기·구슬 삼목·헥스, 14종입니다.
  • 수를 두어 끝난 대국뿐 아니라 기권이나 시간 초과로 끝난 대국도 똑같이 반영되고, 한 대국은 정확히 한 번만 집계됩니다.

게임마다 선공이 얼마나 유리한지는 보드게임 열 종 98,097판에서 따로 셌습니다. 대전 방법은 온라인 대전 가이드에, 규칙은 오목 · 체스 같은 게임 소개 페이지에 있습니다.

재현 방법

점수 계산은 lib/board/rating.tsSTART_RATING(1200), K(32), expected(), nextRating()입니다. 이 파일은 데이터베이스 연결을 함께 불러오므로, 표의 숫자는 같은 식을 그대로 옮긴 한 줄로 확인했습니다.

node -e 'const E=(a,b)=>1/(1+Math.pow(10,(b-a)/400)); const N=(a,b,s)=>Math.round(a+32*(s-E(a,b))); console.log(N(1200,1600,1)-1200, N(1200,1600,0)-1200)'

결과는 29 -3입니다. 5승 5패 순서는 같은 N을 1200점 상대로 열 번 이어 부른 값입니다. 연승 기록은 같은 파일의 nextStreak(), 배지 기준(3연승)은 components/game/board/BoardRanking.tsx, 게임 목록은 lib/board/games.ts에 있습니다.

자주 묻는 질문

시작 점수는 몇 점인가요?

모두 동일한 시작 점수에서 출발합니다. 게임별로 따로 관리되며, 대국 결과에 따라 오르내립니다.

강한 상대에게 지면 점수가 많이 깎이나요?

아니요. 나보다 강한 상대에게 지는 것은 어느 정도 예상된 결과라 하락 폭이 작습니다. 반대로 약한 상대에게 지면 더 많이 내려갑니다.

AI 대전도 랭킹에 반영되나요?

아니요. 랭킹은 온라인 2인 대전 결과만 집계합니다. AI 대전은 연습용입니다.

랭킹이 높으면 보상이 있나요?

없습니다. 랭킹은 코인과 무관한 명예형이며 현실 가치 보상은 제공하지 않습니다.