- 뒤끝 SDK 버전 : 5.7.2
- 프로젝트명 : stepisland
- 스테이터스 코드 :
- 에러 코드 :
- 에러 메시지 :
매일 몬스터 사냥 수로 랭킹을 잡아서 보상을 주는 랭킹 시스템을 구상 중입니다.
그래서 서버쪽에는 초기화 기간 1일짜리 랭킹을 만들어 놓고 그날 토탈 킬 수를 업데이트하는 식으로 운영하려는데
토탈 몬스터 킬 수를 로컬에서 보유하고 있는데 다음날이 되어 서버가 랭킹을 리셋하여도 (서버/클라 시간 sync 등의 문제 때문에) 클라이언트가 리셋을 인지 못하면 이 수치를 새로 집계하지 않고 이전 토탈 킬수를 기록해 버릴지도 모른다는 문제가 있습니다.
예를 들자면 리셋 시간이 12:00 라고 가정하고
11:57 클라이언트에서 100마리까지 사냥함
11:58 서버에 토탈 100마리 사냥했음 업데이트 함
11:59 클라이언트에서 101마리까지 사냥함
12:00 서버에서 랭킹 리셋됨
(서버와 클라이언트간에 시간 차이로 날짜 리셋을 인지 못함)
12:00 서버에 토탈 101마리 사냥했음 업데이트 함
=> 해당 클라이언트는 새 랭킹 시작하자 마자 101마리를 기록해 버림, 랭킹에 문제 생김
그래서 해결 방법으로 클라이언트가 랭킹 데이터를 업데이트하려 할 때 해당 랭킹이 리셋되었는지를 인식할 수 있으면 토탈 킬 수를 리셋시키고 새로 집계하는 방식으로 하려고 합니다만 그런 방법이 있는지 궁금합니다.
또는 이런 문제가 다른 게임에서도 흔한 전형적인 케이스일 것 같은데 이를 해결하는 다른 방법이 있는지 궁금합니다