마음만은 새내기

항상 초심을 잃지 않고 생활하겠습니다~!

자작 앱 소개/스도쿠 16 퍼즐

16x16 스도쿠 게임 배포 안내

동동매니저 2021. 8. 25. 21:28

제가 이번에 졸업 작품을 준비하면서 직접 만든 프로그램을 공유하고자 합니다.

졸업 작품 주제는 '16x16 스도쿠 게임'이며, Android 버전 (링크)Windows Desktop 버전 (링크)을 지원합니다.

(iOS는 지원하지 않습니다 ㅠ.ㅠ)

 

스도쿠란, 가로세로 9칸으로 이루어진 표에 1부터 9까지의 숫자를 규칙에 맞게 채우는 퍼즐 게임으로, 9개의 3x3 칸과 9개의 가로줄과 세로줄에 중복된 숫자가 들어갈 수 없습니다.

스도쿠를 해결하는 알고리즘도 다양한데, 본 프로그램에서는 9칸이 아닌 16칸 스도쿠를 사용하기에 GitHubSudoku16x16 Explainer를 사용했습니다.

 

[게임 방법]

  • Email ID 또는 Google 계정 로그인을 진행합니다. Email ID 등록 시 Email 주소 인증을 진행합니다.
    (플레이 기록을 저장하는 용도로만 사용되며, Guest 로그인 또한 가능합니다. 단, Guest 모드에서는 기록이 저장되지 않고 일부 기능이 제한됩니다.)
  • 스도쿠의 종류를 선택합니다. 현재 기본 스도쿠홀짝 스도쿠, 숫자 묶음 스도쿠만 지원합니다.
    (기회가 된다면 변형 스도쿠도 추가하려고 합니다.)
  • (선택 사항) 스도쿠 제약 비율과 표의 크기 등을 설정합니다. '메뉴 ▶ 설정'에서 조절할 수 있으며, 초기값과 설정 가능 범위는 아래와 같습니다.
    항목 설정 가능 범위 초기값 비고
    표 크기 70%~95% 85% 세로 화면, 짧은 변 기준
    스도쿠 빈칸 비율 10%~55% 40% 전체 256칸 기준
    홀짝 스도쿠 제약 비율 10%~50% 25% 설정한 빈칸 비율 기준
    (홀짝 합산)
    스도쿠 표시 유형 16진수 코드 (0~9 + A~F)
    숫자 (1~16)
    영문자 (A~P)
    숫자 (1~16)  
  • 원하는 게임 모드를 선택합니다. 모드별 설명은 아래와 같습니다.
    게임 모드 인원 설명
    무작위 스도쿠 1명 새로운 무작위 스도쿠를 생성합니다.
    제약 비율 및 표시 유형 등은 '메뉴 ▶ 설정'에서 설정한 값을 따릅니다.
    스도쿠를 해결하면 풀이 기록과 난이도 등을 종합하여 점수가 계산됩니다.
    최대 난이도는 풀이에 필요한 알고리즘 중 난이도가 가장 높은 값을 의미하며, 총합 난이도는 단계별 알고리즘의 난이도 총합을 의미합니다.
    단계별 스도쿠
    (Guest 미지원)
    1명 스도쿠의 크기에 따라 분류하였고, 이를 직접 풀어볼 수 있습니다.
    4칸부터 16칸까지 7종류의 크기가 있으며, 풀이 기록에 따른 등급이 주어집니다.
    저장된 스도쿠
    (Guest 미지원)
    1명 '무작위 스도쿠' 모드에서 사용자가 저장한 스도쿠를 불러오는 기능입니다.
    휴식 시간에 따른 풀이 시간의 감점이 주어지므로 유의해 주세요.
    AI 대전 1명 기본적으로는 '무작위 스도쿠' 모드와 유사합니다.
    1단계~3단계 3가지의 난이도를 선택할 수 있으며, 이는 AI의 풀이 속도(공격 대기 시간)를 결정합니다.
    AI의 풀이 속도는 각 칸의 난이도 가중치에 따라 달라집니다.
    사용자가 정답을 입력하면 AI가 다른 칸을 선택하여 입력을 대기하고 공격 대기 시간이 초기화됩니다.
    사용자가 오답을 입력하면 공격 대기 시간이 줄어들고 오답이 연속될수록 더 많이 줄어들게 됩니다. 오답 횟수는 점수에 영향이 있으므로 주의해 주세요.
    공격 대기 시간이 모두 흐르면 AI가 선택한 칸을 자동으로 입력하며, 방어율이 줄어들게 됩니다.
    스도쿠가 해결되면 난이도, 방어율 등을 종합하여 점수가 계산됩니다.
    멀티플레이
    (Guest 미지원)
    2~4명 다른 사용자와 스도쿠를 풀어볼 수 있는 모드입니다.
    빈칸 비율은 50%로 설정되며, 16x16 기본 스도쿠만 지원합니다.
    사용자가 정답을 입력하면 난이도 가중치에 따른 점수가 추가되며, 오답을 입력하면 감점이 주어집니다.
    스도쿠가 해결되거나 제한시간 20분이 모두 흐르면 게임이 종료되며, 득점 순위와 함께 Rating이 계산됩니다.
    Rating 계산은 Elo Rating 방식을 적용하였고, 초기값은 0입니다.
    Rating 등급별 색상은 첨부파일을 참고해 주세요.

[추가 정보]

  • 게임 기록을 바탕으로 레벨등급이 계산됩니다. 순위 메뉴에서 사용자의 레벨등급 등과 같은 공개 정보를 조회할 수 있으며, 중요 정보(Email 주소, 사용자 UID 등)는 공개되지 않습니다.
    (조회 방법 : 목록에 있는 사용자를 길게 누르시면 됩니다.)
  • 레벨누적 경험치를 바탕으로 계산되며, 최대 256 레벨로 구성되어 있습니다. 레벨이 높아질수록 요구 경험치가 많아집니다.
  • 등급일정량의 경험치 획득으로 올라가지만, 일정 주기마다 하락합니다. 따라서 높은 등급 유지를 위해서는 주기적인 경험치 획득이 중요합니다. 16급~1급, 1단~9단으로 구성되어 있습니다.
  • 레벨과 등급별 상세 수치는 첨부파일을 참고해 주세요.
    (첨부파일에는 점수 계산 방법 등도 공개되어 있습니다.)

스도쿠 16 퍼즐 첨부파일 (v1.3).pdf
0.18MB

[Android 버전 내려받기]

[Windows Desktop 버전 내려받기]

Sudoku16.msi
8.70MB


[TODO]

  • 주간 스도쿠 기능
  • 다양한 게임 아이템 추가
  • 스도쿠 풀이 전략 연습 기능
  • 기타 등등

 

버그나 오류, 개선할 점이 있다면 알려주세요~!