클라우드 세이브 기능 관련 건의가 있습니다.

보통 게임 초기 부분에 모든 컬렉션을 로드하는 과정을 수행할텐데 신규 유저의 경우 게임을 처음 시작했기에 저장한 컬렉션도 없을거라 로드하는 과정이 불필요 한데 이를 어떻게 구분 지을지
고민입니다. 처음에는 Backend.CloudSave.GetCollectionNames()가 한번 upload하면 컬렉션이 추가되어 요소가 늘어나는줄 알고 반환요소의 개수가 0이면 신규유저로 판단하려 했는데 알고보니 사전에 미리 콘솔에 추가한 값들을 반환하는 함수여서 신규 유저의 경우가 고민이 많이되네요 아직 뒤끝에 입문한지 안되어서 미숙한점도 있는지라 혹시나 해결방안이 있으면 알려주시면 감사하겠습니다.

일단 신규유저임을 판별할 bool값 변수를 UserData라는 클래스(그 외 다른 데이터들도 저장)에 넣어서 이 UserData라는 클래스를 한번 저장한적이 있는지 처음에 체크해서 IsSuccess()가 false이면 신규유저로 판별하고 신규유저가 아니면 나머지 클라우드 데이터를 다운로드 하는 방식으로 사용하고 있습니다.

안녕하세요 개발자님,
클라우드 세이브의 경우 게임정보(테이블) 데이터와는 다르게
최초 데이터 삽입 후 수정 방식이 아닌 업로드(덮어씌우기) 방식으로 작동합니다.

신규/기존 유저에 따른 신규 데이터 생성 방식이 아닌,
필요에 따라 저장을 하여 덮어씌우는 방식이기에 (데이터가 없다면 생성)
말씀해주신 것과 같이 신규 유저임을 판별하는 변수를 두고 처리하시거나
기본적으로 클라우드 세이브 데이터를 다운로드하도록 하고, 데이터가 존재하지 않아 에러가 발생하는 경우 데이터를 저장하도록 구성하시면 됩니다.

좋아요 1

답변 감사합니다. 마지막 질문인데 클라우드 세이브, 게임정보 둘다 저장관련 기능인데 어떤 경우에 둘 중 골라서 쓰면 될지에 대한 가이드라인이 있을까요?

게임정보는 실시간으로 빠른 저장이 이루어지나,
클라우드 세이브의 경우 800ms 에서 최대 2초까지 딜레이가 존재합니다.

사용하시기에 따라 두 기능을 복합적으로 사용하실 수 있고
클라우드세이브는 위 특징으로 인해 유저의 게임 설정, 개인 기록, 비실시간 진행 상황, 백업용 데이터 등의 저장 용도로 사용하시는 것을 권장드립니다.

좋아요 1