Skip to content

打包与发布

正确结构:

text
example.splug
├─ manifest.json
├─ main.lua
├─ modules/
└─ assets/

错误结构:

text
example.splug
└─ example/
   ├─ manifest.json
   └─ main.lua

可以使用任意标准 ZIP 工具创建插件包:

  1. 打开插件项目目录。
  2. 选择 manifest.json、Lua 入口文件以及插件使用的其他文件和目录, 不要选择最外层的项目目录。
  3. 创建不带密码和加密的标准 ZIP 压缩包。
  4. 打开压缩包,确认根目录可以直接看到 manifest.json
  5. 确认嵌套条目使用 /,例如 modules/settings.lua
  6. example.zip 重命名为 example.splug
  7. 将生成的文件导入 App,并测试一次全新安装。

Windows 路径

不要使用会把嵌套条目写成 \ 的打包方式,所有平台都会拒绝反斜杠。 发布前请用 ZIP 查看工具打开成品,并至少检查一个嵌套条目。

使用 Plugin Tools

Plugin Tools 仓库提供了 samp-plugin CLI 用于自动验证和打包,是确保插件包满足所有客户端要求的推荐方式。

bash
# 验证插件源码目录
samp-plugin validate path/to/plugin

# 打包为 .splug 文件
samp-plugin pack path/to/plugin

# 验证已有的 .splug 包
samp-plugin validate my-plugin-1.0.0.splug

该仓库还包含示例插件,演示了完整的 API 使用方式。

发布校验和

应当同时发布最终 .splug 文件的 SHA-256:

powershell
Get-FileHash .\example.splug -Algorithm SHA256
bash
sha256sum example.splug
bash
shasum -a 256 example.splug

版本要求

  • 每次内容变化都增加 version
  • 不要在相同 ID 和版本下发布不同内容。
  • 正确声明 apiVersion
  • 增加权限时在发布说明中明确说明。
  • 保持已有私有存储的兼容迁移。

发布检查

验证 manifest、入口和包根目录;测试安装、更新、启停、卸载、两个 ABI、重连和失效 Handle;确认权限与行为一致;计算准确的 SHA-256;保留上一稳定版供回滚。