Storvia

快速开始

从零创建一个自由模式游戏的完整流程

1. 创建游戏

在创作台选择「自由模式」,填写基本信息:

  • 标题 — 游戏名称
  • 简介 — 一句话描述
  • 封面 — 游戏封面图
  • 游戏设定 — AI 系统提示词(角色设定、世界观、行为规则等)

2. 配置面板字段(可选)

自由模式同样支持高级模式的面板字段配置。配置后,你通过 SDK 写入的数据会在玩家的状态面板中显示,同时以 XML 格式自动注入到 AI 提示词中。

具体配置方法参考 高级模式(世界状态、主控面板、NPC 面板、关系系统、物品栏)。

面板字段配置不是必须的。如果你的游戏不需要状态面板显示,可以跳过这一步,直接使用 SDK 的 custom 模块存储自定义数据。

3. 编写游戏代码

创建一个包含 index.html 的项目文件夹。最小结构:

my-game/
├── index.html
├── js/
│   ├── storvia-sdk.js    (SDK 文件,从平台下载)
│   └── game.js           (你的游戏逻辑)
└── css/
    └── style.css          (样式文件)

index.html 示例

<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>我的游戏</title>
  <link rel="stylesheet" href="css/style.css">
</head>
<body>
  <div id="app">
    <div id="chat-area"></div>
    <input id="user-input" placeholder="说点什么..." />
    <button id="send-btn">发送</button>
  </div>

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

game.js 示例

// 初始化 SDK
const sdk = new StorviaSDK();

async function start() {
  await sdk.init();
  console.log('SDK 初始化成功!');

  // 发送消息并获取 AI 回复
  document.getElementById('send-btn').onclick = async () => {
    const input = document.getElementById('user-input');
    const text = input.value.trim();
    if (!text) return;
    input.value = '';

    // 显示用户消息
    addMessage('user', text);

    // 调用 AI
    const reply = await sdk.chat.send({
      message: text,
      topic: 'main',
      context: '[场景] 和玩家聊天',
    });

    // 显示 AI 回复
    if (reply) {
      addMessage('ai', reply.content);
    }
  };
}

function addMessage(role, text) {
  const area = document.getElementById('chat-area');
  const div = document.createElement('div');
  div.className = role === 'user' ? 'msg-user' : 'msg-ai';
  div.textContent = text;
  area.appendChild(div);
}

start();

4. 上传 ZIP

将项目文件夹打包为 ZIP 文件,在创作台的「上传游戏文件」区域上传。

  • ZIP 文件大小限制 20MB
  • ZIP 根目录下必须有 index.html
  • 确保 storvia-sdk.js 已包含在 ZIP 中

5. 预览

上传成功后,点击「预览」按钮即可在创作台内预览游戏效果。预览模式下 AI 对话正常工作(会消耗花园币),但游戏状态不会持久保存。

6. 发布

确认无误后点击「发布」,游戏上线。玩家通过链接访问游戏时,SDK 会自动完成鉴权,加载存档数据。

每次重新上传 ZIP 并发布后,新版本会替换旧版本。玩家下次打开游戏时自动加载新版本的代码,但他们的存档数据(角色属性、关系、物品等)会保留。

On this page