CloudSave 관련 추가 문의

고객님의 문의에 답변하는 직원은 고객 여러분의 가족 중 한 사람일 수 있습니다.
고객의 언어폭력(비하, 조롱, 욕설, 협박, 성희롱 등)으로부터 직원을 보호하기 위해
관련 법에 따라 수사기관에 필요한 조치를 요구할 수 있으며, 형법에 의해 처벌 대상이 될 수 있습니다.

커뮤니티 이용 정책에 위배되는 게시물을 작성할 경우, 별도 안내 없이 게시물 삭제 또는 커뮤니티 이용이 제한될 수 있습니다.

문의 응대 : 평일 오전 10시 ~ 오후 6시
문의를 남기실 경우 다음 항목을 작성해 주세요.
정보가 부족하거나 응대시간 외 문의하는 경우 확인 및 답변이 지연될 수 있습니다.

  • 뒤끝 SDK 버전 : 5.16.1
  • 프로젝트명 : 스타디펜스
  • 스테이터스 코드 :
  • 에러 코드 :
  • 에러 메시지 :

안녕하세요. 일전에 위 링크의 케이스 발생 이 후,
IsSuccess이지만 bro.returnValue가 비어있는 경우에,
로그를 추가하고 별도로 분기처리하였는데
해당 이슈들이 재현되어 추가적인 문의드립니다.

현재 저희 게임에서 위 상황발생시 뒤끝 로그를 이용해서 SignInWithoutData 라는 이름으로 남기고 있는데

image
아래와 같이 11일 11시 44분 40초에 데이터가 동일 이슈로 로그가 남았고
당시 해당 유저의 cloudSave 내용을 확인해보니 아래 스샷과 같이

11시 43분 54초에 빈 값으로 갱신된 이력이 있었습니다.
image

해당 시간 유저의 이벤트로그 기록을 보면

image

11시 43분 34초에 게임오버 후 데이터 저장을 요청 후 게임을 종료하고 다시 로그인 하신 것 같은데,

아무래도 cloudsave에 데이터가 갱신된 시간과 저장 시점,
이후 다시 로그인 시 에러로그가 찍힌 정황을 보면
저장 시점에 제대로 데이터가 올라가지 못했거나,
잘못된 데이터가 그대로 저장되는 등의 이슈가 있었을 것으로 의심됩니다.

관련하여, 혹시 뒤끝 sdk 혹은 서버 쪽 처리 상
일어날 수 있는 상황인지 확인 부탁 드립니다.

save관련 함수는 아래 형태로 동기 코드로 사용하고 있습니다.

BackendReturnObject bro = Backend.CloudSave.Upload(collectionName, jsonString)

감사합니다.

좋아요 1

이슈 확인이 용이하도록 타임 라인 순으로 정리한 내용도 공유드립니다.

11:43:30 → 게임오버
11:43:?? → 보상정보 갱신등을 위해 cloudSave 저장 시도 (문제 발생 의심구간)
11:43:54 → 빈 값으로 cloudsave갱신됨
11:44:02 → 유저 게임 재시작
11:44:40 → 유저 게임 실행시 빈 값 로그 찍힘 (SignInWithoutData)

좋아요 1

안녕하세요개발자님,
저장 데이터를 구성할 때, 아래 예시처럼 첫 번째 depth의 모든 key를 숫자로 시작하도록 구성하는 경우가 있는지 확인 요청드립니다.

{  
  "10004": 3,
  "4_bcd0": {
    "Amount": 679,
    "CurrencyType": 14
  },
  "5da5455": 27,
  "888-ccc": {
    "InitTime": "2025-05-12T09:54:54+09:00",
    "RemainCount": 2
  },
  "324324": 36,
  "554": 0,
  "7676": "0002-01-01T09:00:00+09:00"
}

확인 내용 안내드립니다.

SDK의 클라우드 세이브에서 특정 형식의 데이터에 대해 전송 누락하는 부분을 발견하여 금주중 핫픽스 업데이트가 제공될 예정입니다.
전송 누락되는 경우는 첫번째 depth에서 숫자로 시작하는 key값이 있을 경우로 확인됩니다.
SDK를 통한 데이터 전송 시, 일부 숫자로 시작하는 key는 사용할 수 없도록 처리되는 내역이 존재하는데
이것이 클라우드 세이브에도 적용되어 첫번째 depth에서 숫자가 있을 경우에 저장 값에서 제외되는 현상이 발생하였습니다.

해당 부분을 변경하여 클라우드 세이브에서는 key에 대한 예외를 체크하지 않고 전달하는 문자열 그대로 저장할 수 있도록 개선될 예정입니다.

안녕하세요! 확인 감사합니다.

그 말씀해주신 첫번째 depth의 key가 아래 이미지에서
_activeDungeonSeason, _blueprint 등이 있는 depth가 맞을까요?

image

조금 의아한 부분이
저희가 save용 class의 객체를 json형태로 serialize하여 CloudSave시 전송하고 있는데,
class 변수명이 숫자로 시작하는 경우가 없어서요.

말씀하신 첫 번째 depth가 저 부분이라면 뭔가 다른 원인이 있을 것 같기도 합니다

클라우드 세이브 업로드 요청 관련,
데이터가 빈 값으로 저장되는 케이스는
key값이 빈값("")로 요청이 되어오거나, key값이 숫자로 시작되는 경우 두 가지 경우로 확인됩니다.

관련하여서는 핫픽스 SDK가 빠르면 익일중 제공될 예정이기에 업데이트 후 이용을 권장드리며,
클라우드 세이브 업로드에 전달하는 json문자열 위에 해당하는 케이스가 발생될 수 있는 경우가 있는지도 확인하여 주시면 감사하겠습니다.

저희가 5.16.1을 쓰고 있는데 지금 패치노트를 보니
5.16.2에 용량 관련해서 수정된 내역이 있더라구요
혹시 이거랑 관련 있을 가능성은 없을까요?

용량 초과 상황의 경우 아래 에러 발생과 함께 저장 자체에 실패하기에 해당 현상은 아닌 것으로 확인됩니다.

StatusCode : 400
ErrorCode : ValidationException
Message : The string size is too big.

오 네 답변 감사합니다!
클라에서 위 두 가지 케이스로 데이터 전송 시도하는 일이 없는지
방어코드 및 로그 추가하겠습니다.

좋아요 1