GS2-Datastore SDK for Game Engine API 레퍼런스
게임 엔진용 GS2-Datastore SDK의 모델 사양과 API 레퍼런스
임의의 바이너리 데이터를 서버에 저장하는 기능을 제공합니다.
업로드된 데이터에는 접근 권한 관리(ACL - Access Control List)가 적용됩니다.
데이터에는 누구나 접근할 수 있는 public
지정한 사용자 ID의 게임 플레이어만 접근할 수 있는 protected
본인만 접근할 수 있는 private, 이렇게 3종류의 ACL을 설정할 수 있습니다.
업로드된 데이터는 버전 관리되며, 데이터를 업데이트하거나 삭제하더라도
오래된 세대의 데이터는 30일간 보관됩니다.
세대 ID를 지정하여 다운로드하면 업데이트 전·삭제 전의 데이터를 가져올 수 있습니다.
업로드된 데이터에는 고유 ID(UUID v4)와 세대 ID가 할당되며, 데이터를 업데이트하거나 삭제하면 세대 ID가 갱신됩니다.
데이터를 다운로드할 때는 세대 ID를 지정하여 구체적인 파일을 특정합니다.
데이터를 업데이트하는 것과 동시에 다른 플레이어가 데이터에 접근하려고 할 때 의도치 않게 새 버전의 데이터를 가져오지 않도록 다운로드 요청에 세대 ID를 포함할 수 있습니다.
세대 ID를 다운로드 요청에 추가함으로써, 목록을 조회한 시점의 데이터를 확실하게 다운로드하도록 보장할 수 있습니다.
다만, 오래된 세대의 데이터에 언제까지나 접근할 수 있는 것을 원하지 않는 게임도 있을 수 있습니다.
이를 위해 데이터 소유자 이외의 사용자는 업데이트 후 60분 이내, 그리고 바로 이전 세대에 한해서만 오래된 세대의 데이터를 다운로드하도록 허용하는 옵션이 존재합니다.
이 기능을 사용하여 세이브 데이터를 관리할 때는 부정행위에 대한 내성을 고려하시기 바랍니다.
다른 GS2 서비스에서는 게임 사양에 맞춰 가산·감산을 자유롭게 할 수 없도록 제어되고 있습니다.
하지만 로컬 세이브 데이터를 신뢰하는 것은 치트 행위의 원인이 될 수 있습니다.
GS2의 기능이 제공되는 경우에는 그것을 우선적으로 사용하고, UGC 콘텐츠의 교환이나 설정값(config) 등 조작되더라도 영향이 경미한 요소만을 관리하도록 하십시오.
게임 엔진용 GS2-Datastore SDK의 모델 사양과 API 레퍼런스
각종 프로그래밍 언어용 GS2-Datastore SDK의 모델 사양과 API 레퍼런스
확장 스크립트를 호출하는 이벤트 트리거의 레퍼런스
GS2-Deploy의 스택을 생성할 때 사용하는 템플릿 포맷과, CDK를 이용한 각종 언어의 템플릿 출력 구현 예제