- 개요, 조사(BGA·한국 인기 보드게임·UI/UX), 아키텍처, 실시간 프로토콜, 안정성·보안, 계정, 로비·방, UI/UX, 데이터 모델, 게임 엔진, 테스트, 배포·운영, 로드맵(M0~M9), 사용자 결정 항목 - 게임별 규칙·엔진 설계·UI·테스트 체크리스트 26종 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
5.5 KiB
5.5 KiB
01. 조사 결과
1. Board Game Arena(BGA) 분석
1.1 가져올 점
- 테이블(방) 개념: 게임을 고르고 "테이블"을 만들면 인원·옵션을 정하고, 친구만 초대하거나 모르는 사람에게 열어 둘 수 있다. 링크로 초대할 수 있고 접근을 친구/그룹으로 제한할 수 있다.
- 방장이 옵션을 먼저 정하고 나중에 공개하는 흐름(수동 모드).
- 실시간 / 턴제(비동기) 두 가지 속도. 우리는 우선 실시간만 하고, 턴제는 로드맵 후순위로 둔다.
- 규칙은 서버가 강제: 불가능한 수는 아예 둘 수 없고 둘 수 있는 곳만 표시된다. 초보도 규칙을 몰라도 시작할 수 있다.
- 관전, 리플레이, 게임 기록, 게임별 튜토리얼.
- 시간 초과 처리: 시간이 다 된 플레이어는 강퇴되거나 자동 진행된다.
1.2 버릴 점 (사용자가 불편하다고 한 부분)
- 광고, 프리미엄 유도 배너, 뉴스 피드, 포럼, 트로피 알림 등 게임과 무관한 요소가 첫 화면과 게임 화면을 차지한다.
- 무거운 프레임워크(Dojo 기반)와 많은 외부 스크립트 → 저사양 폰에서 느림.
- 테이블 만들기 단계가 많고(수동/자동/친구 모드, 옵션 페이지, "테이블 열기" 버튼 등) 용어가 어렵다.
- 한국 게임이 거의 없고, 한국어 번역 품질이 고르지 않다.
1.3 우리 설계에 반영
| BGA | 우리 사이트 |
|---|---|
| 로비 → 게임 선택 → 테이블 생성 → 옵션 → 열기 → 초대 | 홈에서 게임 카드 누르기 → "방 만들기" → 바로 대기실(코드·링크 즉시 표시). 옵션은 대기실에서 바꿀 수 있고 기본값이 이미 들어 있음 |
| 계정 필수 | 게스트는 닉네임만 입력 |
| 초대: 친구 목록/링크 | 6자리 숫자 코드 + 링크 복사 + QR + 모바일 공유 시트 |
| 광고/배너 | 없음 |
2. 한국에서 인기 있는 보드게임
2.1 근거 자료
- 코리아보드게임즈 2025 상반기 판매 TOP 20: 1 할리갈리, 2 우노/원카드, 3 루미큐브, 4 커피 러시, 5 도블, 6 다빈치 코드, 7 우봉고, 8 루핑루이, 9 모두의 마블, 10 달무티, 11 스플렌더, 12 구십구, 13 햄버거 타이쿤, 14 할리갈리 컵스, 15 라쿠카라차, 16 뱅, 17 쿼리도, 18 김밥 요리사, 19 텔레스트레이션, 20 라스베가스.
- 히어로 보드게임 카페(전국 57개점) 2025 규칙 영상 재생 순위: 1 다빈치 코드, 2 루미큐브, 3 바퀴벌레 포커, 4 스플렌더, 5 갈팡질팡, 6 우노, 7 요트 다이스, 8 뱅, 9 캣츠 런, 10 5초 준다.
- 한국 전통·온라인 국민 게임: 바둑, 장기, 오목, 윷놀이, 고스톱/맞고, 섯다, 7포커, 바둑이, 원카드, 마피아, 캐치마인드(그림 맞히기).
2.2 선정 결과
온라인으로 옮겼을 때 재미가 유지되고, 규칙을 서버가 판정할 수 있는 게임만 고른다. 최종 목록과 단계는 games/README.md.
3. UI/UX 조사
3.1 어르신·어린이 친화 설계 원칙 (조사 요약)
- 기본 글자 16px 이상, 얇은 글꼴 금지, 줄 간격 넉넉하게. 사용자가 글자 크기를 키울 수 있게 한다(브라우저 확대 + 사이트 자체 "글자 크게" 설정).
- 터치 영역 최소 48×48px(애플/구글 권장 44px보다 크게), 버튼 사이 간격 8px 이상.
- 명암비: 본문 4.5:1 이상, 큰 글자·버튼 3:1 이상(WCAG 2.2).
- 쉬운 말, 한 화면에 할 일 하나, 중요한 버튼은 화면 가운데/아래 엄지 닿는 곳.
- 아이콘만 쓰지 않고 항상 글자를 같이 쓴다("복사" 아이콘 + "코드 복사" 글자).
- 실수해도 되돌릴 수 있게(나가기 전 확인, 무르기 요청), 지금 무엇을 해야 하는지 항상 화면 위에 문장으로 표시("내 차례예요. 놓을 곳을 눌러 주세요").
3.2 파티 게임 입장 UX 사례
- Kahoot, Jackbox, skribbl.io, Gartic Phone처럼 숫자/짧은 코드 + 닉네임 한 칸으로 바로 들어가는 방식이 어린이·어르신에게 가장 쉽다.
- 링크로 들어온 사람은 코드 입력 없이 닉네임만 정하면 바로 자리에 앉는다.
- 한국 사용자는 카카오톡으로 링크를 많이 공유하므로 모바일에서
navigator.share(공유 시트)를 쓰고, 미리보기(Open Graph) 제목에 "OO님이 오목 방에 초대했어요 · 코드 123456"을 넣는다.
4. 기술 조사 요약
- WebSocket은 모든 대상 브라우저에서 지원. Bun 내장 WebSocket 서버는 방 단위 pub/sub를 기본 제공하고 처리량이 높다.
- 숨겨진 정보가 있는 게임은 반드시 서버가 판정하고, 클라이언트에는 "그 사람이 볼 수 있는 화면"만 보낸다(카드 게임 치팅의 대부분은 클라이언트에 전체 상태를 보내서 생긴다).
- 실시간 게임에서 연결 끊김은 흔하다(모바일 화면 꺼짐, 지하철, 와이파이↔LTE 전환). 자리 유지 + 자동 재연결 + 전체 상태 재전송이 필수.
5. 출처
- https://boardgamearena.com/
- https://forum.boardgamearena.com/viewtopic.php?t=28240
- https://en.boardgamearena.com/faq
- https://www.koreaboardgames.com/magazine/menuDetail?boardCd=contents&postNo=1346
- https://www.koreaboardgames.com/magazine/menuDetail?boardCd=contents&postNo=1437
- https://boardlife.co.kr/rank
- https://www.toptal.com/designers/ui/ui-design-for-older-adults
- https://www.aufaitux.com/blog/designing-elder-friendly-ui-interfaces/
- https://arxiv.org/pdf/1703.06317 (노인 대상 터치스크린 설계 지침 리뷰)
- https://www.w3.org/TR/WCAG22/