Storvia

SDK 初始化

Storvia SDK 的引入、初始化和基本使用

引入 SDK

在 HTML 中通过 <script> 标签引入 SDK 文件:

<script src="js/storvia-sdk.js"></script>

引入后,全局会多出一个 StorviaSDK 类。

初始化

const sdk = new StorviaSDK();
await sdk.init();

init() 是一个异步方法,会自动完成以下步骤:

  1. 从 Storvia 平台接收配置(API 地址、游戏 ID、用户身份)
  2. 鉴权并获取或创建用户存档
  3. 加载模型列表和用户设置
  4. 在页面右下角挂载设置悬浮按钮

init() 必须在使用任何 SDK 功能之前调用。如果初始化失败(比如用户未登录),会抛出错误。建议用 try/catch 包裹:

try {
  await sdk.init();
  // 初始化成功,开始游戏
} catch (err) {
  console.error('SDK 初始化失败:', err.message);
  // 显示错误提示
}

SDK 模块一览

初始化成功后,可以通过以下模块访问平台能力:

模块访问方式功能
对话sdk.chatAI 对话(发送/保存/生成)
角色sdk.characters角色 CRUD + 角色属性
玩家sdk.player玩家信息 + 玩家属性
关系sdk.relationships角色间关系 CRUD
物品sdk.inventory物品栏 CRUD
世界sdk.world世界状态读写
自定义sdk.custom自由读写任意数据

每个模块的详细 API 见 对话系统状态管理

Debug 模式

在初始化前设置 debug: true,可以在浏览器控制台查看所有 SDK 请求和响应:

window.__STORVIA__ = {
  ...window.__STORVIA__,
  debug: true,
};

开启后,控制台会打印每个请求的方法、路径、参数和响应内容,方便调试。

Debug 模式仅用于开发调试,发布前建议移除。正式环境下 window.__STORVIA__ 由平台自动注入,不需要手动设置。

错误处理

SDK 的所有异步方法在出错时会抛出 StorviaError,包含错误码和消息:

try {
  await sdk.chat.send({ message: '你好', topic: 'main' });
} catch (err) {
  console.error(err.code, err.message);
  // 常见错误码:
  // UNAUTHORIZED — 用户未登录
  // INSUFFICIENT_BALANCE — 花园币不足
  // RATE_LIMITED — 请求太频繁
  // GAME_NOT_FOUND — 游戏不存在
  // INTERNAL_ERROR — 服务器错误
}
错误码含义建议处理
UNAUTHORIZED用户未登录或 token 过期提示用户重新登录
INSUFFICIENT_BALANCE花园币不足提示用户充值
RATE_LIMITED请求频率过高等待后重试
GAME_NOT_FOUND游戏或存档不存在检查游戏是否已发布
INTERNAL_ERROR服务器内部错误重试或联系管理员

On this page