Documentation Index
Fetch the complete documentation index at: https://docs.hyperx.dev/llms.txt
Use this file to discover all available pages before exploring further.
HyperX는 게임 데이터의 소유자와 운영 방식에 따라 저장소를 나눕니다. 먼저 어떤 데이터인지 결정한 뒤 Console에서 필요한 테이블을 만들고 SDK로 읽거나 저장합니다.
어떤 기능을 써야 하나요?
| 기능 | 소유자 | 주 용도 |
|---|
| 공유 데이터 | 프로젝트 | 아이템 목록, 상점 카탈로그, 공개 밸런스 값처럼 모든 클라이언트가 읽는 데이터 |
| 유저 데이터 | 유저 계정 | 재화, 업적, 튜토리얼 진행도처럼 계정에 붙는 구조화 데이터 |
| 캐릭터 데이터 | 대표 캐릭터 | 캐릭터 레벨, 장비, 스탯처럼 플레이 캐릭터에 붙는 데이터 |
| 유저 프리퍼런스 | 유저 계정의 슬롯 | 그래픽 옵션, 조작 설정, 마지막 선택값처럼 유연한 설정 데이터 |
운영자가 필드 단위로 확인하고 검증해야 하면 유저 데이터나 캐릭터 데이터를 사용합니다. 클라이언트가 자유로운 JSON 설정 묶음을 저장하면 유저 프리퍼런스가 적합합니다.
공유 데이터 읽기
공유 데이터는 Console에서 테이블과 행을 만들고 게시합니다. SDK는 읽기만 합니다.
var items = await HyperX.Core.Data.Shared.List("catalog");
var sword = await HyperX.Core.Data.Shared.Get("catalog", "sword");
int price = (int)sword.Data["price"];
유저 데이터 저장
유저 데이터는 로그인한 유저 계정에 저장됩니다.
await HyperX.Core.Data.User.PutJson(
tableKey: "inventory",
rowKey: "main",
accessToken: session.AccessToken,
json: "{\"gold\":1200,\"gem\":30}"
);
var inventory = await HyperX.Core.Data.User.Get(
"inventory",
"main",
session.AccessToken
);
필요 없어진 행은 삭제할 수 있습니다.
await HyperX.Core.Data.User.Delete("inventory", "main", session.AccessToken);
유저 프리퍼런스 저장
유저 프리퍼런스는 테이블 행이 아니라 slot_key 단위로 저장합니다.
await HyperX.Core.Data.UserPreference.PutJson(
slotKey: "settings",
accessToken: session.AccessToken,
json: "{\"quality\":\"high\",\"bgm\":0.7}",
metadataJson: "{\"platform\":\"android\"}"
);
var settings = await HyperX.Core.Data.UserPreference.Get(
"settings",
session.AccessToken
);
현재 기본 제한은 유저당 20개 슬롯, 슬롯당 JSON payload 1MiB입니다.