-
Notifications
You must be signed in to change notification settings - Fork 0
기획 '시나리오 작성'
jiyun edited this page May 31, 2022
·
2 revisions
탁구를 좋아하는 nheo는 탁구 랭크 게임을 치려고 한다.
랭크 게임을 진행하기 위해서는 탁구 포인트가 필요해서 3시부터 4시 사이에 심판 슬롯을 열어둔다.
3시 15분에 cgim과 hakim의 탁구 랭크 신청이 들어온다.
nheo는 심판 일정이 잡혔다는 메시지를 받고 둘의 심판을 보게 되었다.
3시 15분까지 탁구장에 도착한 nheo는 랭크 게임을 참관하며 게임을 기록한다.
기록한 게임은 cgim, hakim의 승인 후에 서버에 저장된다.
저장된 게임 기록은 전적 검색으로 확인할 수 있다.
심판을 본 nheo는 탁구 포인트를 얻어 랭크 게임을 하려고 한다.
- 매치 버튼을 누르면 탁구 포인트가 1 차감되며 심판이 열어둔 슬롯들이 표시된다
- 4시부터 4시 15분까지의 빈 슬롯을 눌러 신청한다.
jekim 또한 랭크 게임을 즐기기 위해 4시부터 4시 15분까지 빈 슬롯에 신청한다.
nheo의 점수는 450점, jekim의 점수는 800점으로 200점 차이가 넘어서 둘이 매칭되는 일은 일어나지 않는다.
점수가 500점인 donghyuk이 4시부터 4시 15분의 빈 슬롯에 신청해 nheo와의 매치가 성사된다.
nheo와 donghyuk은 매치에 성사되었다는 메시지를 받고, 대전 상대를 확인할 수 있다.
대전 상대의 이름을 눌러 상대의 정보를 확인할 수 있다.
jekim은 매칭이 실패되었다는 메시지와 함께 탁구 포인트를 돌려받는다.
nheo는 donghyuk과의 게임에서 승리한다.
심판으로 왔던 hakim이 대전 결과를 입력한다.
대전 결과가 잘못되어 donghyuk이 hakim에게 정정을 요청한다.
hakim은 수정 버튼을 눌러 대전 기록을 수정한다.
nheo가 확인 버튼을 누른다.
donghyuk이 확인 버튼을 누른다.
nheo는 승리하여 랭크 포인트가 증가한다.
donghyuk은 패배의 영향으로 랭크 포인트가 하락한다.
nheo는 승리했기 때문에 탁구 포인트를 돌려받는다.
nheo는 자기 전에 자신의 전적을 확인하며 아까 쳤던 탁구 게임의 짜릿함을 되새긴다.
그리고 랭크표를 보며 자신보다 점수가 높은 사람이 얼마나 있는지 확인한 뒤 탁구를 더 열심히 칠 것을 다짐한다.
매칭 게임이 가능 시간: 오후 3:00 오후 6:00
게임 소요 시간: 15분, 5분은 모든 것이 준비될 시간, 게임은 나머지 10분동안 진행
페르소나: 적어도 전날에는 다음날 스케줄을 대략적으로 알아야하는 사람
전날 밤 11시에 풀에 모인다 (카트 라이더)
-> 일정 수의 매칭이 이루어지면 닫힘
같은 티어 사람들끼리 매칭 된다
같은 티어가 없다면 비슷한 티어와의 게임을 제안한다
ex) 실버와의 매칭을 진행하시겠습니까? 여기서 이기면 더 큰 점수를 얻을 수 있다
싫으면 기다린다 (그 전에 풀이 닫힐 수 있다
일정이 오후 4:00로 정해진다
3:50에 미리 가서 경기 진행에 도움을 준다. (점수 기록
4:05부터 게임에 참여한다.
지윤은 10시 59분에 핑퐁 사이트/앱을 연다.
11시가 되자마자 메뉴의 ‘매칭 게임’을 클릭한다.
입장해서 ’대기하기’를 클릭한다.
매칭 되길 기다리는 사람들이 보이고, 대기 인원이 24명에 도달하자 특정 티어와 매칭을 진행하겠느냐는 팝업창이 뜬다.
팝업창에 떠있는 ‘도전’을 클릭한다.
대기 인원이 두명 줄고 스케줄표에 나와 상대방의 매칭 상황이 표시된다.
[[ 티어가 너무 차이나서 ‘다시 대기하기’를 클릭한다. 대기 인원이 25명이 되고 또 매칭 진행 여부를 묻는 팝업창이 뜬다. 이번에는 나랑 비슷해서 ‘도전’을 누른다. 근데 그 사이에 이미 12팀이 매칭 완료되어버렸다. 내일 신청을 노리기로 한다. ]]
게임 시간과 상대 플레이어를 확인한다. 4시에 배정되었구나!
그 때 nheo와 donghyuk이 매칭됨을 발견한다. ‘재밌겠다. 구경 가야지’ 생각한다.
다음 날 3시 49분에 탁구대에 도착한다. 내 상대방과 인사하고, 3:45에 배정받은 플레이어들과 인사한다.
나와 내 상대가 점수 입력을 진행한다.
핑퐁 앱을 연다. ‘
매칭 게임’을 클릭하고 스케줄표에서 3:45 게임을 클릭한다.
1세트, 2세트, 3세트 순으로 점수를 입력하는 [[ 점수를 증가시키는 ]] 화면이 나온다.
증가시킬 때마다 점수를 획득한 시간이 쌓인다.
한세트가 끝나면 밑에 있는 ‘확인’을 클릭한다.
탁구를 좋아하는 daekim은 코딩을 하다가 1층에 탁구를 치러 갔다.
1층에 있던 jiyokim과 눈이 마주쳤고, 마침 비어있던 탁구대와 심판을 해줄 seoyepar가 있어서 탁구를 쳤다.
결과는 daekim의 패배로 jiyokim과 seoyepar에게 아아 한잔씩 사주게 된다.
이렇게 종종 탁구를 치던 daekim은 탁구 랭킹 시스템을 만들면 좋겠다는 생각을 했다.
그래서 42pingpong을 만들기로 마음을 먹는다.
42pingpong에는 전적, 서열 데이터 뿐만 아니라
선수 매칭 시스템, 심판 서칭 시스템, 프로필 열람 시스템 등의 다양한 기능들을 가지고 있다.
탁구가 치고 싶은데 함께 탁구칠 사람이 없거나
매번 치던 사람들이 아닌 다른 사람들과 치고 싶거나
탁구 서열을 올리기 위해 탁구를 쳐야할 때
선수 매칭 시스템을 사용할 수 있다.
선수 매칭 시스템은
탁구 경기를 원하는 시간대에 슬롯을 열어두고 상대방이 해당 슬롯을 잡게 되면 매칭이 진행되는 시스템이다.
슬롯 하나의 시간은 10분이다.
슬롯을 열 때에 단식 혹은 복식인지 선택하여 슬롯을 열 수 있다.
매칭이 되는 순간 해당 시간의 다른 매칭 슬롯들은 모두 취소된다.
그리고 두 선수 모두에게 알림이 울리게 된다.
터치패드 메인화면에서 일정 버튼을 누르고 선수와 심판 중 선수 버튼을 눌러 슬롯을 열거나 닫을 수 있다.
슬롯을 열거나 잡을 때 원하는 조건에 맞는 슬롯을 찾을 수도 있다.
매칭 슬롯은 복식과 단식, 세트 횟수 등의 조건을 지정할 수 있어서 서로 원하는 상태의 매칭을 할 수 있게 된다.
매칭 슬롯을 열 때와 잡을 때 각각 핑퐁포인트가 1씩 소모된다.
슬롯을 열어 두었지만 매칭되지 않으면 되돌려받는다.
선수 매칭 없이 갑자기 탁구가 치고 싶어질 때도 있다.
이 경우 탁구대가 비어있을 때 사용할 수 있다.
탁구를 치다보면, 점수 계산과 서브 순서 등이 헷갈릴 수 있다.
그래서 42pingpong에는 이를 해결하기 위해 심판을 구할 수 있는 심판 서칭 시스템이 있다.
심판 서칭 시스템은 심판이 되기를 원하는 사람이 원하는 시간대에 슬롯을 열어두고, 해당 시간의 선수들이 결정되면 심판도 매칭되는 시스템이다.
매칭이 되는 순간 해당 시간의 다른 심판 슬롯들은 모두 취소된다.
심판이 매칭되면 알람이 울리게 된다.
터치패드 메인화면에서 일정 버튼을 누르고 선수와 심판 중 심판 버튼을 눌러 슬롯을 열거나 닫을 수 있다.
심판을 수행하게 되면 핑퐁포인트를 2포인트 얻을 수 있다.
심판은 경기 시작부터 끝까지 함께하며 심판을 보고, 결과를 42pingpong시스템에 입력하는 역할을 한다.
여러 경기를 하게 되면 본인의 현재 상태가 궁금하게 된다.
이 상황에 프로필 열람시스템을 통해 본인 또는 타인의 프로필을 통해 전적 등을 확인할 수 있다.
프로필 열람 시스템은
선수 개인의 전체 승률 및 전적, 게임 횟수 등 탁구 결과들을 열람할 수 있다.
각 게임의 상대선수와 결과를 확인할 수 있는 기능도 있어서
나와 비슷한 수준의 상대인지도 어림짐작 해볼 수 있다.
메인화면에서 프로필 검색 버튼을 누른다.
intraID를 검색창에 입력하고 검색 버튼을 누르면
해당 목록이 뜨고 원하는 목록을 눌러 프로필 정보를 확인할 수 있다.
메인화면
메인화면에는 게임시작이라는 가장 큰 버튼이 가운데 존재한다.
그 버튼 왼쪽 아래에는 일정, 오른쪽 아래에는 프로필 검색이라는 작은 버튼들이 존재한다.
오른쪽 상단에는 다음 경기까지 남은 시간이 표시된다.
그 아래 작은 버튼으로 일정 버튼이 있고 그 버튼을 누르면 앞으로 예정되어 있는 경기들을 확인할 수 있다.
경기 시작
경기 시작 전 메인화면에서 경기시작 버튼을 누른다.
두 선수의 id와 심판의 id를 입력하고 시작 버튼을 누르면 시작된다.
심판이 없다면 비워둔 상태로 시작할 수 있다.
경기가 종료되면 심판은(혹은 두 선수가 함께) 화면의 입력창에
서로의 결과를 입력하고 두 선수의 확인과 동의가 이루어지면 저장 버튼을 눌러 저장할 수 있다.
저장이 완료된 후 경기 종료버튼을 눌러 종료한다.
핑퐁 포인트
5연승, 또는 5연패를 하게 되면 핑퐁포인트를 1점 얻을 수 있다.
핑퐁포인트를 통해 경기가 진행되기 때문에 심판 활동도 열심히하여 핑퐁포인트를 얻을 수 있게 된다.
키팍과 지배는 탁구가 하고 싶다
1. 키박과 지배는 경쟁전을 하고 싶다.
a. 매칭해서 재미있게 탁구를 즐긴다
i. 매칭 방법
1. 같이 하고 싶은 사람들을 미리 선택한 후 같이 슬롯을 열고 게임하기
a. 플레이어 리스트를 확인하고 같이 게임하고 싶은 사람을 선택한뒤 같 이 게임 하자고 요청을 보낸다.
// 적으로 할 건지 팀으로 할 건지를 정한다
b. 모두 요청을 받아들이면 경쟁전 한 게임의 인원이 정해지고 게임 매칭 시간을 정한다
i. 원하는 시간의 슬롯이 열려있지 않다면 아쉬운 마음으로 팀 와해 버튼을 눌러서 터트린다.
ii. 원하는 시간이 슬롯이 열려있다면 슬롯을 잡고 매칭 시간을 메일 및 사이트에서 확인할 수 있다.
c. 게임 매칭 시간이 되면 정해진 인원들과 재미있게 탁구를 한다.
2. 빠른 경쟁전을 선택하여 열려있는 슬롯을 확인하고 들어가기
a. 열려있는 슬롯을 확인하고 게임을 잡는다
b. 게임모드 (단식, 복식)을 확인하고 게임을 들어간다.
i. 단식
1. 게임을 만든 상대방에게 매칭이 되었다고 메일이 간다.
2. 게임 매칭 시간을 확인하고 재미있게 즐긴다.
ii. 복식
1. 게임의 방에 모두가 들어왔다면 슬롯에 4명이 들어왔다면 모두에게 매칭이 되었다고 메일이 간다.
2. 게임 매칭 시간을 확인하고 재미있게 즐긴다.
3. 슬롯을 열고 기다리기
a. 슬롯을 열어서 원하는 시간에 게임을 하고 싶다.
b. 게임 모드(복식, 단식)를 선택하고 슬롯의 시간을 확인한다.
i. 원하는 시간이 없다면 아쉽지만 다음에 하자
ii. 원하는 시간을 선택하고 아는 카뎃한태 들어오라고 하거나 매칭을 기다린다.
iii. 매칭이 되었다면 메일 알람이 가고 그 시간에 맞춰 재미있게 즐기자
ii. 매칭 관계
1. 점수제(mmr)를 도입 하나 일단 매칭 자체는 낮은 점수부터 높은 점수 까지 골고루 잡히도록 매칭한다.
2. 매칭은 슬롯을 열어서 게임을 진행한다.
iii. 탁구 룰
1. 하루의 경쟁전 최대 게임 횟수는 1판으로 정한다.
a. 너무 많은 게임은 모두를 아쉽게한다
2. 3판 2선승제로 진행 한다
3. 한 게임당 11점을 먼저 내면 이긴다. 듀스 없다.
4. 경쟁전 게임 당 총 30분으로 총 게임 시간 25분 정리 시간 5분으로 정한다
5. 만약 25분이 넘어가도 게임이 안 끝났다면 그 시점에서 점수가 더 높은 사람이 이긴다
6. 점수가 같다면 골든볼 단판으로 정한다
2. 키박은 자신의 경쟁전 점수 및 전적을 보고 싶다.
a. 랭킹 페이지를 확인해서 모든 사람의 랭킹과 점수를 확인한다.
i. 내 순위를 확인하고 더 정진해야 겠다는 마음가짐을 가진다.
b. 자신의 인트라 닉네임을 검색해서 전적을 확인한다.
i. 전적 페이지에서 확인할 수 있는 정보들을 확인한다.
1. 누구와 어떤 게임을 진행 하였는가
a. 내 이름, 상대 이름, 몇 대 몇 (사진 있으면 좋을 것 같다)
2. 게임의 승률이 어떤가
a. 승률을 확인해서 어떤지 보면 재미있을 것 같다
3. 키박과 지배는 바로 게임을 하고 싶다.
a. 자리가 있나 어슬렁거리다가 자리가 나면 탁구대로 가서 게임을 한다.
b. 경쟁전 탁구대를 안 쓰고 있다면 쓰다가 경쟁전 하러 오시면 바로 비켜드린다.
기본적으로 자유 탁구대 하나 경쟁 탁구대 하나 기준으로 만들었습니다.
[회원가입 및 로그인]
스플래시 화면이 뜬다 ( 로그인 버튼 )
[로그인]
인트라에 권한을 받아 계정을 생성한다.
홈 화면으로 접속
화면에는 밑에 네이게이션과 메인 바탕화면에는 대결방식을 제시한다.
빠른대전 / 랭크전 버튼이 두 개 존재한다.
[빠른대전]
대기와 방 만들기가 있다.
[대기]
지금부터 대전이 가능하며, 상대방도 빠른대전을 신청할 시에 무작위로 팀이 구성된다.
[방만들기]
방이 만들어지며 방의 태그 번호와 암호를 통해 상대방이 입력하여 접속할 수 있다.
[랭크전]
가능한 시간대를 설정하고 그 시간 동안에 경기 가능한 인원들 중 두 플레이어의 점수 차가 가까운 사람과 매치가 된다. 또한 그 시간대에 심판이 가능한 사람들 중 가장 먼저 신청을 한 사람이 선택되어 경기가 이뤄진다.
매치가 되면 알림이 오고, 플레이어들과 심판의 정보가 표시된다. 각각 확인을 해야 경기가 진행.
랭크전을 하고 싶으니 랭크전을 누르고 시간대를 설정하여 대기를 한다.
[심판]
심판은 현재 자신이 진행중인 경기가 관련된 정보들이 메인화면에 나타난다.
화면에는 양쪽에 큰 버튼으로 누를 시 1점씩 오르며 상대방의 스코어를 간편하게 기록할 수 있다.
경기가 종료가 되면 승패를 표시하며 경기 시간과 점수가 나타나고 심판은 확인을 누른다.
[플레이어]
양쪽 경기를 진행한 사람들은 서로 점수를 확인한다.
각각 포인트 상승과 하락으로 추후에 다시 경기가 진행되지 않는다.
[마이페이지]
내 계정에 관련된 정보를 수정할 수 있으며 전적 기록을 확인할 수 있다.
오늘 과제를 끝낸 jabae는 심심하다. 예전부터 과제를 끝내면 꼭 탁구 랭킹을 올리고 싶었다.
탁구 경기대의 일정을 보았다. 3시부터 4시까지 비어있는 것을 확인했다.
3시를 선택하고, 꼭 경쟁하고 싶던 jihyukim을 선택하고 예약을 신청했다.
“그 시간에 평가가 잡혔어요~ 죄송죄송“이라는 거절 메세지가 왔다.
다시 시간표로 가보니 4시만 비어있있다. 4시를 선택하고 랜덤배정을 눌렀다.
jiyokim과 4시에 매칭되었다. 수락하기를 눌러 신청을 완료했다.
10분 전에 알람이왔다. “10분 뒤에 게임이 시작됩니다!” 알람을 보고 탁구대로 간다.
해당 시간에 심판을 배정받지 못했다. 심판 없이 시작하기를 누른다. 심판 없이 탁구를 한 판 쳤다.
2:1로 졌다. 내가 점수를 기록하고 전송하기를 누른다. jiyokim이 점수를 잘 기록했는지 확인하고 확인완료를 누른다.
점수가 업데이트된 랭킹을 확인한다!
------------------
6시에 예약한 daekim은 10분 전 알람을 확인한다. “이전 게임이 완료되지 않아 대기할 수도 있습니다!”
탁구대로 뛰어간다. 시합중인 사람들을 재촉한다.
이전 시합이 6시 10분에 끝났다. 속상했다. 1판만 하고 시간이 애매해 남은 2판을 8시 이후로 미뤘다.
남은 공부를 더 하고 8시에 다시 탁구대로 돌아와 이어서 하기를 눌러 남은 게임을 진행했다.
---------------------
- 상대를 고를 수 있게 혹은 랜덤
- 만약에 시합이 너무 늦게 끝난다면? 기본 몇분으로 잡아야 할까?
- 경기가 밀릴 경우엔 어떻게 될까?
https://graceful-atom-bb0.notion.site/05-25-9499473983974a2a8428254261f92fa0
유저 시나리오 : 탁구 랭크게임 심판으로 참가하는 사용자
평소 과제에 허덕이고 있던 donghyuk은 잠시나마 쌓인 스트레스를 풀기 위해 평소에 즐기던 탁구 한 게임을 하기로 한다.
최근에 나온 탁구 랭크게임을 통해 "랭크전 등록" 하려고 했다.
하지만 "매칭 포인트가 부족"했던 donghyuk은 하는 수 없이 심판으로 참가하여 먼저 매칭 포인트를 얻기로 한다.
> **매칭 포인트를 통한 랭크전 등록**
donghyuk은 2시 ~ 3시 시간대에 "심판 등록"을 마치고 과제를 다시 시작하였다.
> **랭크전 심판 등록**
과제를 진행 중이던 donghyuk은 "알림"을 통해 2시 30분에 경기가 잡혔다는 메시지를 받았다.
> **랭크전 매칭 시 알림**
시간에 맞춰 내려간 donghyuk은 다른 두 플레이어와 인사를 나누고 심판을 보았다.
심판의 역할은 간단했다.
게임은 3판 2선승제로 진행되었고
"라운드 별로 승이 결정되면 앱를 통해 각 플레이어의 점수를 기록하는 방식"이었다.
게임은 박빙으로 진행되었고 1:1 상황에 한 플레이어의 멋진 스매쉬로 게임은 마무리 되었다.
그렇게 마지막 판의 점수마저 기록한 donghyuk은 두 플레이어에게 입력한 점수가 올바른지 확인을 부탁드렸다.
각 플레이어는 앱에 접속하여 점수를 살펴 보았고
아무런 이상이 없다는 걸 확인한 둘은 "승인 버튼"을 눌렀다.
그렇게 경기는 마무리 되었고 매칭 포인트를 1점 획득한 donghyuk은 바로 랭크전 등록을 하는데...
> **라운드별 각 플레이어의 점수 기록, 각 플레이어의 승인 버튼**
유저 시나리오 : 탁구 랭크게임 플레이어로 참가하는 사용자
매칭 포인트를 얻은 donghyuk은 랭크전 등록을 할 수 있게 되었다.
3시 ~ 4시 시간대에 "랭크전 등록"을 마치고 매칭되기 전까지 탁구 구경를 하기로 한다.
잠시 후 "알림"이 울리고 3시 30분에 경기가 잡혔다는 메시지를 받았다.
나의 상대는 누구일까? "매칭 정보"를 통해 "상대 플레이어의 전적**"**을 살펴보았다.
------------------------
상대 플레이어 [다이김]
- 3전 3승 0패 (승률 100%)
- 최근 전적 기록
·다이김(승) vs donghyuk
·다이김(승) vs ...
------------------------
> **매칭 정보**, **플레이어 전적 확인**
확인해보니 예전에 나와 겨뤄본 적이 있었던 '다이김'님...
오늘은 반드시 이겨보리라 마음먹으며 옆에 있던 탁구채를 집어들곤 몇번 헛스윙을 날려본다.
시간이 되고 '다이김'과 경기가 시작되었다.
많은 접전끝에 경기가 종료되고 결과는 패배...
나는 많이 아쉬웠지만 '다이김'님과 악수를 나눈뒤
심판이 기록한 점수를 확인하고 그렇게 그 자리를 떠났다.
집에 와서 자기전 오늘 있었던 탁구 경기가 다시 떠올랐다.
앱을 키고 "나의 전적"을 살펴보며 내일은 더 잘해보자는 마음에 그렇게 잠들었다.
[기능]
- 기본
- 나의 전적 정보, 플레이어 전적 검색
- 게임 전
- 매칭 등록(플레이어, 심판)
· 플레이어의 경우, 매칭 포인트 필요
- 매칭 알림
· 매칭 후 플레이어 전적 확인 (간단한)
- 게임 중
- 게임 점수 기록
- 게임 종료
- 각 플레이어의 점수 승인
- 시나리오 1_내 프로필을 확인하고 싶은 A
A는 탁구 전적이 궁금해서 42gg에 들어갔다. 먼저 42인트라로 로그인 한 이후, 로비의 메뉴에서 프로필 페이지로 들어갔다. 프로필 페이지에서는 자기 사진과 총 전적이 있고, 그 밑에는 최근 1주일의 전적이 기록되어 있다. 1주일 동안의 전적이 막대그래프로 표현되고 있고, 이긴 판수와 진 판수가 각각 일자별로 파란색과 빨간색 막대그래프로 나타나 있어서 알아보기 쉬웠다.
- 시나리오 2_탁구 빠른대전 매칭을 하고싶은 B
B는 클러스터에서 탁구를 치고 싶어서 42gg에 들어갔다. 혼자서 탁구를 치는 B는 새로운 상대를 만나기 위해 42gg에서 제공하는 빠른대전 매칭을 등록했다. B는 클러스터에 오후 1시부터 3시 사이에 탁구를 치고 싶어서, 전체 시간대에서 해당 시간대에 슬롯을 열고 매칭을 등록했다.
B의 총 전적은 N 승/N' 패이고, 지난 1주일 전적은 M승 / M'패이다. 따라서 서버에서 계산한 B의 mmr은 x라고 나왔다. (이 정보는 유저에게 공개되지 않는다.) 먼저 x에서 50보다 크거나 작은 상대와 매칭이 되도록 매칭 검색을 한다. 일정한 시간 이후 매칭이 잡히지 않으면, 처음 주어진 50보다 더 큰 범위인 x + 100 ~ x - 100 범위에서 검색을 시작한다. 일정한 시간이 지나도 매칭이 되지 않을 경우 범위를 늘려나가면서 검색을 한다.
이렇게 해서 매칭을 시작할 때에 매칭 풀에는 사람이 없어서 오래 걸렸지만, 20분 뒤에 더 넓어진 매칭 범위가 적용되어 B는 B보다 잘하는 C와 매칭이 되었다. 실력이 좋은 C와 탁구를 치며 B는 탁구 실력을 쌓을 수 있었다. :미소짓는_얼굴:
- 시나리오 3_프라이빗하게 매칭을 친구와 잡고싶은 C
C는 매일 탁구를 치는 카뎃이다. 오늘도 탁구를 치고 싶은 C는 어제 탁구를 쳤던 D와 탁구를 치고 싶었다. 그러면서도 42gg에서도 전적을 쌓고 싶은 C는 '빠른대전 매칭' 대신에 D와 프라이빗 매칭을 하고자 한다.
C는 빠른대전 매칭을 할 때와 마찬가지로 오후 2시부터 3시까지 시간대를 선택하고 슬롯을 열기로 했다. 열 때에 private? 이라는 체크박스가 있어서 이를 선택하니, 상대방 아이디를 입력할 수 있는 칸이 나왔다. D의 카뎃 아이디를 입력하니 '게임 신청이 전송되었습니다.'는 메세지가 떴다.
D는 C에게서 '탁구하자'는 이야기를 듣고 42gg에 들어갔다. 메뉴 옆에 작은 알람 아이콘을 클릭하니 그 밑으로 'C가 2시~3시에 게임신청을 했습니다. 수락하시겠습니까?'라는 메세지가 새로 와 있었다. 밑에 [수락] [거절] 버튼이 있었고, 이를 누르니 C와 D와 매칭상태가 되었다.
C와 D의 탁구게임은 매일 탁구를 했던 C의 극적인 역전승으로 끝났다. 게임에서 진 D는 사이트로 들어가 현재 게임 목록에서 C와 D의 게임을 클릭했다. 게임 전적을 기록하고 나니, 현재 게임목록에서 C와 D의 게임의 상태가 '종료'로 바뀌었다.
- 시나리오 4_어제 한 게임의 전적을 기록하고 싶은 E
E는 어제 42gg를 통해 B와 매칭을 하고 게임을 했지만, 게임의 전적을 깜빡하고 기록하지 못했다. 점심을 먹으면서 기억이 난 E는 현재 게임 목록에서 어제 E와 B의 게임을 찾아서 클릭을 했다. 전적을 기록하지 않아서 E와 B의 현재 게임 상태는 '진행중' 이었다. E가 전적을 입력하자, 게임 상태는 '종료'로 바뀌었고, 게임에서 이겼던 E의 전적에도 반영이 되었다
https://hill-bovid-56d.notion.site/63fff984094146d88a8d2807316004ea
탁구 매칭 시나리오
사용자 랭크포인트 A: 300 B: 350 C: 400
하루 게임 최대 횟수는 5회로 정해져 있음.
5회 이상 게임할 수 없음.
3회 연속 게임할 수 없음. 연속은 최대 2번.
탁구 한판에 15분이라고 가정
게임 시작시간 5분전까지 매칭이 되지 않으면 매칭 실패
15분 단위로 시스템 상에서 이미 게임이 개설 되어있음
3:00 ~ 3:15 (0/2), 3:15 ~ 3:30 (0/2), 3:30 ~ 3:45 (0/2), 3:45 ~ 4:00 (0/2)
A가 3:00 타임에 등록함 3:00 ~ 3:15 (1/2)
C가 타임라인을 봤을 때 A 는 랭크포인트 차이가 많이 나기 때문에 3:00 타임은 비활성화 상태로 보임
C는 3:15 타임에 등록함 3:15 ~ 3:30 (1/2)
B 는 A 와 C 모두와 랭크포인트 차이가 얼마 안나기 때문에 모두 활성화 되어 보임.
B 는 3:00 타임에 등록해서 매칭 됨. 3:00 ~ 3:15 (2/2) 는 모두에게 비활성화 상태로 보임 (회색 ?)
매칭 완료 이벤트로 A와 B는 매칭 완료 알림을 받게 됨.
시간이 되면 A와 B는 게임을 시작함.
게임 시간이 지나면 A 와 B 에게 게임을 기록하라는 알림이 옴.
게임을 끝나고 결과에 대해 이야기를 나눈후 합의하에 이긴 사람이 결과를 기록함.
진사람은 결과를 확인함
- 이긴사람이 기록한 결과가 맞는 경우. “확인” 버튼을 누르면 결과가 반영됨
- 결과가 틀린 경우, “이의제기" 버튼을 누름
- “이의제기" 버튼을 누르면 이긴사람에게 알림이감.
- 둘이 합의하에 수정해야함.
게임 결과가 일치하는 경우 결과를 반영하여 랭크 포인트가 변동됨.
게임이 끝나고 10분 뒤까지 결과를 기록하지 않은 경우 : 기록하지 않은 사람은 랭크포인트가 깎이게 됨.
- “이의제기" 버튼을 눌렀던 경우라면 둘다 기록하지 않은 것으로 간주함
https://island-zebra-5e0.notion.site/fa7204f1ef314d03b7689a052ac848b4
나는 hakim. 오늘은 탁구가 치고 싶다. 피가 들끓는 것이 랭킹전을 해서 누구라도 도륙내고 싶은 기분이다.
흥분을 잠재우고 탁구매칭사이트에 접속한다…
42api를 통해 로그인하니 나의 랭킹(혹은 티어)과 전적(승률)이 보인다.
‘개포동 살육전차 hakim’, 내가 10연승을 해내고 얻은 칭호이다.
화면에는 두개의 버튼이 있다. 순위표와 랭크전 매칭, 나는 다음 희생양을 찾기 위해 랭크전 매칭을 누른다.
나에게 다시 선택지가 주어진다. 선수 입장과 심판 입회.
42 평가 시스템과 닮은 이 서비스는 심판을 한 판 해야 랭크전을 한 판 치룰 권리, 매치포인트가 주어진다.
나는 매치포인트가 없어 경기를 진행할 수가 없다. 오직 심판 입장에만 불이 들어온다…
한껏 고조된 승부욕을 잠시 진정시키며 심판 입장을 누른다..
내 눈앞에 펼쳐진 것은 마치 평가를 잡는 화면과 같다.
4시 정각과 4시 20분에 심판이 없는 매치가 잡혀있어, 즉시 심판으로 입회하였다.
팝업, 알림과 메일을 통해 심판을 봐야 할 경기에 대한 세부사항이 전달된다.
4시와 4시 20분 경기 심판을 보게 되었다. 첫 경기는 nheo와 cgim의 경기이다.
둘이 어떻게 매칭이 되었는지 모르겠지만, 처참히 무너질 cgim을 생각하니 눈물이 눈 앞을 가린다.
시간은 3시 57분. 앞 팀이 여전히 경기를 하고 있는 중에,
나는 nheo와 cgim을 3분 미리 만나 다음 경기를 위해 대기한다.
두 사람이 모인 것을 확인하고 나는 심판 페이지를 연다.(심판 일정이 잡히면 어딘가에 활성화됨).
3판 2선의 경기를 위해 총 3세트 기록할 수 있고, 0 : 0으로 시작하는데
각 사이드 옆에 숫자를 가산/감산하는 버튼이 있어 마치 탁구 점수판을 넘기듯 점수를 기록할 수 있다.
실수를 해도 되돌릴 수 있도록 잘 고안된 듯 하다.
이제 시간은 4시를 살짝 앞두었는데 앞팀 경기가 조금 일찍 끝나 nheo와 cgim은 랠리를 하며 몸을 풀고 있다.
이제 시간은 4시 정각. Elo가 낮은 cgim이 서브게임의 선공권을 가져간다. 이래저래 경기가 끝났다.
2세트를 순식간에 가져가는 nheo. 시간은 단 3분이 걸렸을 뿐이다.
두 사람과 스코어를 확인하고 전적을 등록했다.
아직 7분이 남았지만 전의를 모조리 상실하고 만 cgim은 4층으로 올라가버렸다.
합의 하에 nheo님과 탁구를 조금 치고, 4시 10분 팀이 경기를 준비하러 도착해 조금 일찍 몸 풀라고 자리를 비켜줬다.
이제 평가포인트가 생겼다!
4시 20분 경기 심판을 보고 바로 플레이 할 수 있게 4시 30분에 매칭을 잡으려고 선수 입장에 들어갔다.
4시 30분엔 열린 슬롯이 없다. 내가 하나 열어놓으니 금시에 누군가가 상대로 등록되었다.
매치포인트가 차감되었다. 상대는 Kipark... 최근 전적이 7승 3패다. 통산 승률은 56프로..
대부분의 경기를 접전으로 이겨온 걸 보니 끈질긴 플레이어임에 틀림이 없다.
쉽지 않은 상대라고 생각하며 심판 입회를 기다린다. 안잡히면 나가리인데… 하고 걱정하던 찰나,
내가 경기를 잡는것을 본 nheo님이 심판으로 입회해준다.
어찌저찌 4시 20분 경기 심판도 본 뒤, 4시 반에 즉시 kipark과의 경기를 시작했다.
nheo님께서 심판 페이지를 열고 점수를 카운팅 해주신다. 선수는 경기 외에는 할 것이 없다.
만나서 플레이만 하면 심판이 알아서 다 제출 해준다. kipark에게 2-1로 패배해버렸다.
티어가 떨어졌다. 브론즈 4… 이곳은 내가 있을 곳이 아닌데. 실력만 보면 골드인데...
운이 없어서 진 듯 하다. 괜히 kipark이 밉다. 분하다. 복수를 꿈꾸며 눈물을 흘린다.
무언가 불의의 사태로 선수 둘과 심판까지 매칭이 되었지만 경기가 진행되지 못한다면, 선택지가 2개가 있다.
공식 랭킹전 시간이 끝난 후나 매치가 없는 탁구대가 비는 시간에 셋이 시간을 맞춰 경기를 하거나,
그냥 안하는 것이다. 익일 오전 6시까지 경기가 진행되지 않으면 각 선수에겐 매치포인트가 되돌아간다.
근데 생각을 해보니 심판 한 번 하면 매치포인트를 2개 줘야 풀이 유지가 되지 않나? 한 경기엔 두개가 쓰이니…
1. 로그인
1.1 첫 로그인 시(쿠키 없으면) 42인트라를 통해 로그인 페이지로 연결(like 42 checkin).
1.2 로그인 후 메인으로.
1.3 접속 기록이 있으면 로그인 필요 없이 메인으로.
2. 메인 화면
2.1 나의 전적과 랭크, 매치 포인트나 칭호등을 확인할 수 있는 간단한 info박스가 존재한다.
2.2 순위표로 넘어가는 버튼. 여기서(랭킹 페이지)를 통해 상위 랭킹 카뎃들의 전적과 랭크를 확인할 수 있다.
2.3 랭크전 매칭 페이지로 넘어가는 버튼.
3. 순위표
3.1 TOP 10 정도의 순위와 전적을 확인할 수 있다.
4. 랭크전 매칭
4.1 선수입장 페이지로 넘어가는 버튼. 매치 포인트가 0이면 비활성화된다.
4.2 심판입회 페이지로 넘어가는 버튼.
5. 선수입장
5.1 42의 평가 슬롯을 여는 페이지처럼 생겼는데, 10분 단위로 슬롯을 관리할 수 있다. 한 사람은 하나의 슬롯만을 열어놓을 수 있다.
5.2 선수는 매치포인트를 소모해 슬롯을 열거나 이미 열려있는 슬롯에 들어갈 수 있다. 열거나 들어가는 즉시 차감되고, 혹시 취소되면 환불된다.
5.3 슬롯에는 빈 칸이 세 개 존재하는데, 각각 선수 1, 선수 2, 심판을 위한 빈 칸이다. 슬롯을 여는 사람은 선수 1의 자리에 들어간다.
열려있는 슬롯에 들어가는 사람은 선수 2의 자리에 들어간다.
5.3.1 선수 1과 ELO가 크게 차이가 나는 사람은 선수 2로 들어갈 수 없다.
5.4 슬롯의 세 칸이 다 차게되면 모두에게 알림이 가고, 해당 시간에 모여서 경기를 하면 된다.
6. 심판입회
6.1 5번 선수입장 페이지와 동일하나, 슬롯을 눌렀을 때 심판으로서 들어가게 된다.
7. 심판의 게임 진행을 위한 페이지.
7.1 심판은 게임 스코어를 기록해야 하기 때문에 게임 시간이 되면 심판 페이지에 들어갈 수 있게 된다.
7.2 이 페이지는 탁구 스코어 보드 처럼 생겨서 간단한 조작으로 점수를 기록할 수 있다.
7.3 세트가 끝나면 점수를 제출하고, 그럼 다음 세트를 위한 스코어 보드가 다시 열린다.
7.4 경기가 끝나면 심판은 바로 다음 10분 슬롯에 매치가 성사되었는지 여부를 확인할 수 있고, 선수 1, 2, 심판 셋 모두가 동의하면 리벤지 매치를 진행 할 수 있다.
7.5 리벤지 매치는 어느 한 선수가 연승을 이루거나 || 다음 시간에 매치가 존재할때 종료된다.