Skip to content

快速开始 ​

Findor Cheat 的 Mod 是一段普通的 JavaScript(ES Module),放在服务器或本地后由加载器载入,通过一个 ctx 对象访问作弊端的能力(日志、存储、事件、命令、UI、模型、协议)。

最小可用 Mod ​

一个 Mod 只需要两个文件:

my-mod/
├── manifest.json     # 元数据(必需)
└── index.js          # 入口代码(由 manifest.main 指定)

manifest.json:

json
{
  "id": "my-mod",
  "name": "我的第一个 Mod",
  "version": "1.0.0",
  "author": "your-name",
  "description": "示例说明",
  "main": "index.js",
  "permissions": []
}

index.js:

js
export function onLoad(ctx) {
    ctx.logger.log('我被加载了');
}

export function onEnable(ctx) {
    ctx.logger.log('我被启用了');
    ctx.ui.notify('我的第一个 Mod 已启用', 'success');
}

export function onDisable(ctx) {
    ctx.logger.log('我被禁用了');
}

export function onUnload(ctx) {
    ctx.logger.log('我被卸载了');
}

想直接拿模板?

在 Findor Cheat UI 里打开 Mods → 上传 Mod,点击 下载示例脚本,会得到官方示例 hello-world.js(含 API 注释与 manifest 参考)。

安装方式 ​

方式一:种子目录(随站点部署) ​

把 my-mod/ 放到 Mods 站点的 mods/ 目录下,并在 registry.json 里登记一条:

json
{
  "id": "my-mod",
  "name": "我的第一个 Mod",
  "version": "1.0.0",
  "author": "your-name",
  "description": "示例说明",
  "tags": ["示例"]
}

客户端会访问:

  • 元数据:https://mods-findor-cheat.pages.dev/registry.json
  • manifest:https://mods-findor-cheat.pages.dev/mods/<id>/manifest.json
  • 代码:https://mods-findor-cheat.pages.dev/mods/<id>/<main>

方式二:上传到服务器(KV) ​

通过 Mods → 上传 Mod 提交元数据(含代码地址 url),服务端写入 Cloudflare KV:

  • 上传:POST /api/upload-mod
  • 列表:GET /api/list-mods
  • 删除:POST /api/delete-mod(需要管理员 token)

浏览页的列表 = registry.json 种子 Mod + /api/list-mods 上传 Mod 的并集(按 id 去重)。

上传的 Mod 没有 manifest.json,客户端会用上传元数据合成一份 manifest(main 即上传时填的 url)后再安装。

启用与调试 ​

打开 Mods → 已安装(或在浏览页点击 安装),启用后:

  • 日志前缀是 [Mod:<你的id>],来自 ctx.logger
  • 任何 API 都可以在控制台手动验证,例如:
js
const L = findorCheat.modLoader;
L.listAvailable().map(m => m.id);        // 浏览页可见的 Mod id
L.listInstalled().map(m => m.id);        // 已安装
findorCheat.modFeatures;                 // 各 Mod 的 features 容器

开发约定 ​

约定说明
入口导出必须 export function onLoad/onEnable/onDisable/onUnload(ctx)(都可选,但推荐成对实现)
注册与清理在 onEnable 里注册的事件/命令/页面,必须在 onDisable 里取消;ctx.onCleanup(fn) 可注册统一清理
不要依赖 DOM 结构使用 ctx.ui 提供的接口,而不是直接改作弊端面板的 DOM
一个 Mod 一个 idid 只允许 a-z 0-9 -,且首字符为字母或数字

下一步:manifest.json 规范 · ctx 全量 API · 示例 hello-world

仅供学习交流 · 请在遵守游戏与服务条款的前提下使用