hbc studio › 제작기 › 1분게임

로그인 없는 랭킹을 믿을 수 있게 만들기

1분게임에는 가입이 없어요. 링크를 받은 친구가 바로 게임을 시작할 수 있어야 하니까요. 그런데 랭킹은 만들고 싶었어요. 로그인이 없으면 누가 누구인지, 점수가 진짜인지 어떻게 알까요? 첫 랭킹은 2026년 10월 7일 밤에 붙었고, 그 뒤 일주일 동안 조금씩 다듬었어요.

사람 대신 브라우저

각 브라우저는 처음 게임을 할 때 무작위 아이디를 하나 만들어 저장해요. 랭킹의 한 줄은 이 아이디 하나예요. 화면에 보이는 이름은 공유할 때 적은 이름이고, 적은 적이 없으면 ‘익명’과 아이디에서 만든 짧은 태그가 붙어요. 이름은 겹쳐도 되고 따로 검사하지도 않아요. 그 대신 아이디는 서버 밖으로 나가지 않아요.

이 방식의 한계도 분명해요. 같은 사람이 휴대폰과 PC에서 하면 두 명으로 세요. 이건 가입 없는 게임과 맞바꾼 것이라 받아들이기로 했어요.

점수는 브라우저가 계산한다

게임은 전부 브라우저에서 돌아가요. 그러니 점수도 브라우저가 계산해서 서버로 보내요. 마음먹으면 아무 숫자나 보낼 수 있다는 뜻이에요. 완벽하게 막으려면 게임을 서버에서 다시 돌려야 하는데, 서른 개가 넘는 게임에 그건 과했어요. 그래서 싸게 확인할 수 있는 것만 확인해요.

  • 서버가 시작한 판의 점수만 받아요. 게임을 시작할 때 서버에서 판 번호를 받고, 끝날 때 그 번호로 점수를 보내요. 판 번호 하나에 점수는 한 번만이에요.
  • 시간 안에 낼 수 있는 점수만 받아요. 게임마다 초당 낼 수 있는 점수의 상한을 정해 두었어요. 1분 판은 길게 잡아도 75초로 쳐요.
  • 한 기기에서 1분에 30판 넘게 시작할 수 없어요.

이걸로 모든 조작을 막을 수는 없어요. 그래도 “그럴듯하지 않은 점수”는 걸러지고, 나머지는 운영하면서 직접 지우는 걸로 정했어요.

이번 주 랭킹과 시간대

랭킹은 게임마다, 모드(1분 / 시간없이)마다 이번 주와 전체로 나뉘어요. 이번 주는 한국 시간 월요일 0시에 새로 시작해요. 한 사람은 랭킹마다 한 줄만 갖고 최고 기록만 남아요. 같은 점수라면 먼저 낸 사람이 위예요. 화면에는 상위 50명이 보이고, 그 밖이라면 바로 위 두 명과 아래 한 명이 함께 보여요. 누구를 넘어야 하고 누가 쫓아오는지 보이게요.

‘추천’을 세는 법

10월 12일에는 첫 화면에 일주일 동안 가장 많이 한 게임 다섯 개를 보여 주는 ‘추천’을 붙였어요. 처음에는 판 수로 셌어요. 두 시간 반 뒤에 바꿨어요. 한 사람이 아무도 안 하는 게임을 백 판 하면 그 게임이 1위가 되더라고요. 지금은 그 게임을 한 사람 수로 세고, 판 수는 동점일 때만 봐요.

저장하고 나가기와 시간 계산

10월 14일에는 시간 제한 없는 모드에 “저장하고 나가기”를 넣었어요. 오래 버틴 판을 중간에 저장하고 나중에 이어 할 수 있어요. 그런데 이게 위의 점수 검증과 부딪혀요. 판을 시작하고 이틀 뒤에 끝내면, 서버가 보기엔 이틀 동안 플레이한 셈이니까요. 그래서 판을 저장하고 다시 이어 할 때마다 서버에 알리고, 쉬는 시간은 플레이 시간에서 빼요. 저장한 판은 한 번 이어 하면 저장소에서 지워져서 같은 판을 되풀이할 수도 없어요.

정리하면

  • 로그인 없는 랭킹은 “사람”이 아니라 “브라우저”를 세는 것. 그 한계를 알고 쓰면 충분히 재밌어요.
  • 클라이언트가 계산한 점수는 완벽히 믿을 수 없지만, 시작·횟수·속도만 확인해도 대부분의 이상한 점수는 걸러져요.
  • 인기 순위는 무엇을 세느냐가 전부예요. 판 수가 아니라 사람 수.

1분게임 — 1분게임은 1분이면 끝나는 미니게임 33가지를 하고, 내 최고 기록을 링크로 보내 친구에게 도전장을 내미는 웹 게임 모음이에요.

1분게임 소개 보기 · 1분게임 하러 가기 ↗

다른 제작기

제작기 전체 보기