# eso
**Repository Path**: Chicor/eso
## Basic Information
- **Project Name**: eso
- **Description**: 本插件主要功能是提供QQ群聊查询上古卷轴OL的相关信息
次要功能是提供轻松的娱乐功能活跃群聊气氛
需要YunZai -v3 本体 才可运行
- **Primary Language**: Lua
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 3
- **Forks**: 2
- **Created**: 2024-11-28
- **Last Updated**: 2026-08-21
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 🏰 ESO-BOT
[](https://gitee.com/TimeRainStarSky/Yunzai)
[](./LICENSE)
## 📋 介绍
**ESO-BOT** 是基于 TRSS-Yunzai 开发的《上古卷轴OL》(Elder Scrolls Online) 主题 QQ 机器人插件。
- 🎯 **主要功能**:QQ 群内查询 ESO 游戏资讯、角色图鉴、交易价格、战斗日志解析
- 🎉 **次要功能**:提供轻松的娱乐功能活跃群聊气氛
- ⚠️ 本插件基于 TRSS-Yunzai 开发环境,其他框架可能存在兼容性问题
### 📚 相关项目
| 名称 | 作者 | GitHub | Gitee | 备注 |
|------| ---- | ------ | ----- | ----- |
| TRSS-Yunzai | [@时雨🌌星空](https://gitee.com/TimeRainStarSky) | [☞GitHub](https://github.com/TimeRainStarSky/Yunzai) | [☞Gitee](https://gitee.com/TimeRainStarSky/Yunzai) | Yunzai 应用端,支持多账号与多协议端 |
| 插件集合索引库 | [@渔火Arcadia](https://gitee.com/yhArcadia) | [☞GitHub](https://github.com/yhArcadia/Yunzai-Bot-plugins-index) | [☞Gitee](https://gitee.com/yhArcadia/Yunzai-Bot-plugins-index) | 云崽相关内容索引库 |
| 锅巴插件 (guoba-plugin) | [@zolay-poi](https://github.com/zolay-poi) | [☞GitHub](https://github.com/guoba-yunzai/guoba-plugin) | [☞Gitee](https://gitee.com/guoba-yunzai/guoba-plugin) | 云崽网页端后台管理界面 |
## 📦 安装插件
### 1. 克隆插件
#### 使用 GitHub 安装
```bash
git clone --depth=1 https://github.com/ChicorSun/eso.git ./plugins/eso/
```
#### 使用 Gitee 安装
```bash
git clone --depth=1 https://gitee.com/Chicor/eso.git ./plugins/eso/
```
### 2. 安装依赖
```bash
pnpm install --filter=eso
```
### 3. 使用
发送 `#ESO帮助` 查看插件部分功能
> 💡 如需使用 `#帮助` 直接查看,请确保已安装锅巴插件,并正确为每个群配置了合适的插件黑名单或白名单
---
## 🎮 功能与命令
> **权限说明**:
> - 👤 **所有人** - 所有群成员均可使用
> - 🛡️ **管理员** - 需要群管理员或群主权限
> - 👑 **主人** - 需要在 Yunzai-Bot 配置文件中设置的主人账号
### 🖥️ 服务器指令
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| 服务器状态 | `#服务器状态` | 👤 所有人 | 查询当前服务器状态 |
| 服务器公告 | `#服务器公告` | 👤 所有人 | 查询服务器维护计划 |
| 服务器通知 | `#服务器通知 [01串]` | 🛡️ 管理员 | 设置服务器维护通知开关 |
| 查看通知配置 | `#服务器通知` | 👤 所有人 | 查看当前通知掩码与服务器顺序 |
| 时间查询 | `#几点了` | 👤 所有人 | 查询当前北京时间与UTC时间 |
### 🏰 无畏者指令
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| 无畏信息 | `#无畏` | 👤 所有人 | 获取最近的无畏者副本信息 |
| 今日无畏 | `#今日无畏` | 👤 所有人 | 提供今日刷新后的无畏套装 |
| 昨日无畏 | `#昨日无畏` | 👤 所有人 | 提供今日刷新前的无畏套装 |
| 明日无畏 | `#明日无畏` | 👤 所有人 | 提供明日刷新后的无畏套装 |
### 📖 图鉴查询
| 类型 | 命令格式 | 权限 | 说明 |
|------|------|------|------|
| 套装图鉴 | `#装备名` | 👤 所有人 | `#` 开头查询套装图鉴,支持别名/简称/模糊匹配 |
| 技能图鉴 | `*技能名` | 👤 所有人 | `*` 开头查询技能图鉴,支持别名 |
| 食物图鉴 | `%食物名` | 👤 所有人 | `%` 开头查询食物图鉴,支持别名 |
| 家具图鉴 | `!家具名` | 👤 所有人 | `!` 开头查询家具图鉴 |
| 收藏品图鉴 | `!!收藏品名` | 👤 所有人 | `!!` 开头查询收藏品家具图鉴 |
| 物品链接 | 直接发送含 `item:编号:` 的文本 | 👤 所有人 | 等价于 `#ITEMID编号` |
| 图鉴帮助 | `#图鉴` / `*图鉴` / `%图鉴` / `!图鉴` | 👤 所有人 | 查看对应类型图鉴的使用说明 |
> 💡 支持按增益/减益名精确查询(如 `#高级勇气`、`#次级破甲`),合并转发全部关联图鉴
### 💰 TTC 交易中心
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| 查询物品 | `#查询物品 物品名` | 👤 所有人 | 查询物品基本信息 |
| 查询交易 | `#查询交易 物品名` | 👤 所有人 | 查询 TTC 交易信息 |
| 查询价格 | `#查询价格 物品名` | 👤 所有人 | 查询物品价格信息 |
| 热销商品 | `#热销商品` | 👤 所有人 | 查询当前热销/快销商品 |
| 拍卖行位置 | `#拍卖行` / `#公会商人` | 👤 所有人 | 查询拍卖行 NPC 位置 |
| TTC帮助 | `#TTC帮助` | 👤 所有人 | 查看 TTC 功能帮助 |
| 更新价格表 | `#更新价格表` | 👑 主人 | 更新 TTC 价格数据 |
| 设置默认服务器 | `#设置ttc默认 美服/欧服` | 👑 主人 | 设置默认 TTC 服务器 |
| 更新拍卖行位置 | `#更新拍卖行位置` | 👑 主人 | 强制扫描更新拍卖行位置 |
| 验证码设置 | `#ttc验证码` | 👤 所有人 | 设置/查看验证码自动处理状态 |
| 代理设置 | `#ttc代理 ` | 👑 主人 | 设置 TTC 代理 |
| 反代理设置 | `#ttc反代理 ` | 👑 主人 | 设置 TTC 反代理 |
| 测试代理 | `#ttc测试代理` | 👑 主人 | 测试代理是否可用 |
### 📜 ESOLOG 解析
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| 网址解析 | 直接发送 esologs 网址 | 👤 所有人 | 解析排行榜和个人BD,生成图表(需先配置API凭证) |
| 配置API凭证 | `#esolog设置apikey{clientId}:{clientSecret}` | 👑 主人 | 配置 ESOLogs 官方 API 凭证(仅私聊) |
| 快速分析开关 | `#快速分析开/关` | 👑 主人 | 开启/关闭快速分析模式 |
| 解析速度 | `#设置解析速度 <数字>` | 👑 主人 | 设置最大并发解析数 |
| 等待时间 | `#设置等待时间 <毫秒>` | 👑 主人 | 设置解析等待超时 |
**角色管理**:
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| 查看角色 | `#角色` | 👤 所有人 | 查看已绑定角色 |
| 删除角色 | `#删除角色` | 👤 所有人 | 删除指定角色 |
| 编辑角色 | `#编辑角色` | 👤 所有人 | 编辑角色信息 |
| 设置职业 | `#设置职业` | 👤 所有人 | 设置角色职业 |
| 设置定位 | `#设置定位` | 👤 所有人 | 设置角色定位 |
| 设置标题 | `#设置标题` | 👤 所有人 | 设置角色标题 |
| 添加标签 | `#添加标签` | 👤 所有人 | 添加角色标签 |
| 查看标签 | `#查看标签` | 👤 所有人 | 查看角色标签 |
| 删除标签 | `#删除标签` | 👤 所有人 | 删除角色标签 |
**名片系统**:
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| 生成名片 | `#名片化` | 👤 所有人 | 生成角色名片 |
| 查看名片 | `#查看名片` | 👤 所有人 | 查看自己的名片 |
| 查看群友名片 | `#查看群友名片` | 👤 所有人 | 查看群友的名片 |
| 删除名片 | `#删除名片` | 👤 所有人 | 删除角色名片 |
| 更新头像 | `#更新头像` | 👤 所有人 | 更新角色头像 |
### 🔗 账号绑定
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| 绑定账户 | `#绑定 账号名` | 👤 所有人 | 绑定玩家账户 |
| 查询绑定 | `#查询绑定` | 👤 所有人 | 查询已绑定的账号 |
| 切换主账号 | `#切换绑定 序号` | 👤 所有人 | 切换主账号(序号见查询绑定) |
| 解除绑定 | `#解绑 序号` | 👤 所有人 | 解除指定序号的绑定 |
| ESOCN绑定 | `#BCXXXXXX` | 👤 所有人 | 使用 ESOCN 绑定码绑定账号,绑定成功后自动同步成就 |
| ESOCN状态 | `#esocn状态` | 👤 所有人 | 查看 ESOCN 绑定状态(可 @ 群友查看) |
| ESOCN配装链接 | 直接发送含 `esocn.com.cn/build/` 的链接 | 👤 所有人 | 自动解析 ESOCN 配装链接并绑定/查询 |
### 🏆 成就系统
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| 上传成就 | `#上传成就` | 👤 所有人 | 发送 PAT 成就二维码截图,与本地已存成就合并保存(绑定 ESOCN 自动同步) |
| 查看成就 | `#查看成就` / `#副本成就` | 👤 所有人 | 查看自己(或 @用户)的副本成就 |
| 同步成就 | `#同步成就` | 👤 所有人 | 合并本地与 ESOCN 成就并双向同步(可 @ 群友) |
| 更新角色 | `#更新成就` | 👤 所有人 | 合并同步后按成就更新 KOOK 服务器角色(可 @ 群友) |
### 📰 游戏资讯
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| 黄金商人 | `#黄金商人` | 👤 所有人 | 查询黄金商人的商品 |
| 泰尔瓦石商人 | `#泰尔瓦石商人` | 👤 所有人 | 查询泰尔瓦石商人的商品 |
| 无限档案塔 | `#无限档案塔` | 👤 所有人 | 查询无限档案塔商人的商品 |
| 家具商人 | `#家具商人` | 👤 所有人 | 查询冷港家具商人的商品 |
| 周常试炼 | `#周常试炼` | 👤 所有人 | 查询本周试炼信息 |
| 大力丸配方 | `#大力丸配方` | 👤 所有人 | 查询大力丸制作配方 |
| 三回药配方 | `#三回药配方` | 👤 所有人 | 查询三回药制作配方 |
| 隐身药配方 | `#隐身药配方` | 👤 所有人 | 查询隐身药制作配方 |
| 大招药配方 | `#大招药配方` | 👤 所有人 | 查询大招药制作配方 |
| 炼金配方 | `#炼金配方` / `#XX配方` | 👤 所有人 | 查询任意炼金配方(如 `#大力丸配方`) |
| 新闻列表 | `#新闻列表` | 👤 所有人 | 获取游戏新闻列表 |
| 新闻详情 | `#新闻1` | 👤 所有人 | 查看第1条新闻详情 |
| 刷新新闻 | `#刷新新闻列表` / `#更新新闻1` | 👤 所有人 | 强制刷新新闻数据 |
| 游戏攻略 | `#攻略` | 👤 所有人 | 获取游戏攻略链接 |
| 插件信息 | `#插件` / `#SA插件` / `#插件管理器` | 👤 所有人 | 获取插件相关信息 |
### 🛠️ 群管理功能
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| 通知全体 | `#全体成员 xxx` | 👤 所有人 | 通知全体成员,后面接上通知话语(23:00~7:00 静默,黑名单用户不可用) |
| 禁止全体功能 | `#禁止全体功能` | 👑 主人 | 禁止某群友使用全体功能 |
| 允许全体功能 | `#允许使用全体功能` | 👑 主人 | 允许某群友使用全体功能 |
| 查看黑名单 | `#查看全体功能黑名单` | 👑 主人 | 查看全体功能黑名单中的成员 |
| 禁言转盘 | `#禁言转盘` | 👤 所有人 | 娱乐功能,禁言发出请求的群友随机时间 |
| 禁言转盘开关 | `#禁言转盘开/关` | 🛡️ 管理员 | 开启/关闭禁言转盘功能 |
| 投票撤回 | `撤回`/`撤销` | 👤 所有人 | 投票撤回消息(回复消息使用) |
| 群昵称格式 | `#群昵称格式` | 👤 所有人 | 查看规范的群昵称格式 |
| 开启群昵称检查 | `#开启群昵称检查` | 🛡️ 管理员 | 开启群昵称格式检查 |
| 关闭群昵称检查 | `#关闭群昵称检查` | 🛡️ 管理员 | 关闭群昵称格式检查 |
| 开启违规词检查 | `#开启违规词检查` | 🛡️ 管理员 | 开启群消息违规词检查 |
| 关闭违规词检查 | `#关闭违规词检查` | 🛡️ 管理员 | 关闭群消息违规词检查 |
| 违规禁言时长 | `#设置群昵称违规禁言时长 <分钟>` | 🛡️ 管理员 | 设置违规禁言时长 |
### 📊 统计功能
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| 发言榜 | `#发言榜(日榜\|月榜\|年榜)` | 👤 所有人 | 统计群友水群次数排行榜 |
| 发言统计 | `#发言统计` | 👤 所有人 | 查看自己的发言统计 |
| 发言成就 | `#发言成就(列表)` | 👤 所有人 | 查看发言成就 |
| 设置显示成就 | `#发言设置显示成就 <成就名>` | 👤 所有人 | 设置聊天中显示的成就 |
### 🎮 Steam 功能
> ⚠️ **注意**:Steam API 需要配置反向代理才能使用(`data/eso/custome_resources/steam/config/steamConfig.json` 中的 `proxyUrl`),详见下方说明。
**账户与查询**:
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| Steam帮助 | `#steam` | 👤 所有人 | 获取 Steam 功能帮助 |
| Steam绑定 | `#steam绑定 ` | 👤 所有人 | 绑定 Steam 账户 |
| Steam解绑 | `#steam解绑 [序号]` | 👤 所有人 | 解绑 Steam 账户 |
| 切换绑定 | `#steam切换绑定 <序号>` | 👤 所有人 | 切换当前使用的绑定账号 |
| 用户信息 | `#steam信息` | 👤 所有人 | 查看 Steam 用户信息卡 |
| 用户状态 | `#steam状态` | 👤 所有人 | 查看绑定账号在线状态 |
| 在线状态 | `#steam在线` | 👤 所有人 | 查看账号在线信息 |
| 游戏库 | `#steam游戏` | 👤 所有人 | 查看 Steam 游戏库 |
| 成就进度 | `#steam成就 <游戏ID>` | 👤 所有人 | 查看指定游戏的成就进度 |
| 库存 | `#steam库存` | 👤 所有人 | 查看 Steam 社区库存 |
| 愿望单 | `#steam愿望单` | 👤 所有人 | 查看 Steam 愿望单 |
| 商店搜索 | `#steam搜索 <关键词>` | 👤 所有人 | 搜索 Steam 商店游戏 |
| 折扣信息 | `#steam折扣` | 👤 所有人 | 查看当前特惠 |
| 统计信息 | `#steam统计` | 👤 所有人 | 查看绑定统计 |
| 玩家列表 | `#steam列表` | 👤 所有人 | 查看所有绑定玩家当前状态 |
| 时长排行 | `#steam排行 [天数]` | 👤 所有人 | 游戏时长排行榜 |
**推送管理**:
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| 游玩推送 | `#steam开启/关闭游玩推送` | 👤 所有人 | 开启/关闭游玩/结束/切换游戏推送 |
| 在线推送 | `#steam开启/关闭在线推送` | 👤 所有人 | 开启/关闭上线/下线动态推送 |
| 成就推送 | `#steam开启/关闭成就推送` | 👤 所有人 | 开启/关闭成就解锁推送 |
| 全体游玩推送 | `#steam全体开启/关闭游玩推送` | 👑 主人 | 批量修改所有用户游玩推送开关 |
| 全体在线推送 | `#steam全体开启/关闭在线推送` | 👑 主人 | 批量修改所有用户在线推送开关 |
| 推送目标列表 | `#steam推送目标列表` | 👑 主人 | 查看推送目标列表 |
| 新增推送目标 | `#steam新增推送目标 <序号>` | 👑 主人 | 新增推送目标 |
| 删除推送目标 | `#steam删除推送目标 <序号>` | 👑 主人 | 删除推送目标 |
| 推送测试 | `#steam推送测试` | 👑 主人 | 测试推送是否正常 |
| 刷新推送 | `#steam刷新推送` | 👑 主人 | 手动刷新推送状态 |
**白名单管理**:
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| 白名单列表 | `#steam推送白名单` | 👑 主人 | 查看全局游戏推送白名单 |
| 白名单开关 | `#steam开启/关闭推送白名单` | 👑 主人 | 开启/关闭白名单过滤 |
| 添加白名单 | `#steam添加推送白名单 <游戏ID>` | 👑 主人 | 添加游戏到白名单 |
| 删除白名单 | `#steam删除推送白名单 <游戏ID>` | 👑 主人 | 从白名单移除游戏 |
**系统设置**:
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| 设置界面 | `#steam设置` | 👤 所有人 | 查看当前配置与 API Key 管理命令 |
| 添加API Key | `#steam添加apikey ` | 👑 主人 | 添加 Steam API Key |
| 删除API Key | `#steam删除apikey ` | 👑 主人 | 删除 Steam API Key |
| API Key列表 | `#steamapikey列表` | 👑 主人 | 查看已配置的 API Key |
### ⚙️ 系统管理
| 功能 | 命令 | 权限 | 说明 |
|------|------|------|------|
| 插件帮助 | `#ESO帮助` | 👤 所有人 | 获取插件帮助图 |
| 挡位查询 | `#挡位` / `#当前挡位` | 👤 所有人 | 查看当前功能挡位 |
| 设置挡位 | `#设置挡位 0-5` | 👑 主人 | 设置功能挡位(挡位越高功能越全) |
| 更新插件 | `#更新eso` | 👑 主人 | 更新 ESO-BOT(Yunzai 框架通用更新命令) |
---
## 📝 使用说明
### 📖 图鉴查询说明
- `#` 开头查询**套装**图鉴
- `*` 开头查询**技能**图鉴
- `%` 开头查询**食物**图鉴
- `!` 开头查询**家具**图鉴,`!!` 开头查询**收藏品家具**图鉴
- 支持常用别名、简称和模糊匹配
### 📜 ESOLOG 解析说明
- 直接发送 esologs 网址即可解析
- 支持排行榜和个人 BD 解析
- 可绑定账户生成角色名片
- **需要先配置 ESOLogs 官方 API 凭证**(esologs.com 已启用防爬,不再支持网页抓取):
1. 登录 https://www.esologs.com 后在 https://www.esologs.com/api/clients/ 创建客户端应用,获取 `clientId` 和 `clientSecret`
2. 私聊机器人发送 `#esolog设置apikey{clientId}:{clientSecret}` 完成配置(仅主人可用)
3. 凭证保存在 `data/eso/custome_resources/config/esologcfg.json`,不会提交到 git
- 支持 `fight=last` 等非数字战斗参数(自动解析为最后一场战斗)
### 💰 TTC 交易说明
- 支持美服和欧服查询
- 可设置默认服务器
- 价格数据定期更新
- 部分功能需要配置代理才能访问
### 🎮 Steam 功能说明
- 首次使用需要配置 Steam API Key
- **本机直连 Steam API 可能被墙**:必须在 `data/eso/custome_resources/steam/config/steamConfig.json` 中配置 `proxyUrl`(格式 `https://proxy/{{url}}`),否则所有 Steam 功能不可用
- 用户需要先绑定 Steam 账户才能使用相关功能
- 在线状态推送需要开启对应推送开关
- 游戏白名单用于过滤需要监控的游戏
- 微信协议端仅支持私聊推送
### 🛠️ 群管理说明
- 全体通知功能有使用限制(23:00~7:00 静默,黑名单用户不可用)
- 禁言转盘需要管理员权限开启
- 投票撤回需要回复目标消息
- 群昵称/违规词检查需要管理员权限配置
### ⚙️ 挡位说明
- 挡位 1:极简模式(禁用 esologs 日志解析等重功能)
- 挡位 2 及以上:启用 esologs 日志解析等完整功能
- 通过 `#设置挡位 <0-5>` 调整
---
## 💬 交流与反馈
你可以提 issue 或者 PR
如需联系我,可以加入 QQ 群 `452116107` 寻找 @Chicor
## ⚠️ 免责声明
1. 功能仅限内部交流与小范围使用,严禁将 `eso-bot` 用于任何商业用途或盈利
2. 图片与其他素材均来自于网络,仅供交流学习使用,如有侵权请联系 `2268233763@qq.com` 删除
3. 本插件仅用于学习交流,开发者不对因使用本插件而造成的任何损失负责
## 🙏 鸣谢
- [ESOCN](https://esocn.com.cn/)
- [ESOLOG](https://www.esologs.com/)
- [TTC](https://us.tamrieltradecentre.com)
- [TRSS-Yunzai](https://gitee.com/TimeRainStarSky/Yunzai)
- [Yunzai-Bot](https://gitee.com/Le-niao/Yunzai-Bot)