awa-mc-ament,🎮 生成 Minecraft 风格的成就/进度 图片

koishi-plugin-awa-mc-ament

koishi-plugin-awa-mc-ament

npm
npm-download

GitHub
Gitee

Koishi Forum
QQ群

:video_game: Koishi 插件:awa-mc-ament - Minecraft 进度/成就风格图片 生成器 ,支持自定义标题、描述和图标。


:package: 安装

yarn add koishi-plugin-awa-mc-ament
# or
npm install koishi-plugin-awa-mc-ament

或在 Koishi 控制台的插件市场中搜索 awa-mc-ament 安装。


:sparkles: 功能特性

  • :art: 生成 Minecraft 风格的成就图片

  • :framed_picture: 支持多种图标来源(游戏图标、引用图片、图片消息段、data: URL、用户头像、默认图标)

  • :video_game: 可选的 PyTorch 语义搜索后端

  • :camera_flash: 支持多种图片格式输出(JPEG、PNG、WebP)

  • :abc: 自动下载字体文件,无需手动配置

  • :robot: QQ 官方 Bot 平台支持 Markdown + 按钮消息

  • :test_tube: 实验性 --icon-base64 参数,直接传入 data: URL 作为图标


:mag: 图标获取优先级

本插件会按照以下优先级自动选择图标来源:

  1. :video_game: Minecraft 游戏图标(可选,需要启用 PyTorch 后端服务

  2. :speech_balloon: 引用消息的图片

  3. :framed_picture: 参数传入的图片--icon-base64 优先于 --icon

  4. :bust_in_silhouette: @用户的头像

  5. :game_die: 默认幸运方块图标(fallback)

代码标识符:MCICON > QUOTEMSG > CMDARG(--icon-base64 > --icon) > ATUSER > LUCKYBLOCK


:memo: 使用示例

:one: 使用 Minecraft 游戏图标(需要后端)


ament -t 挖到钻石! -d 获得钻石 --mcicon 钻石

借助 PyTorch+FastAPI 后端,进行语义相似度检测,选出 Minecraft 图片文件作为 icon。


mcicon示例


:two: 使用引用消息的图片

先引用一条包含图片的消息,然后发送:


【引用消息...】ament -t 标题 -d 介绍

使用引用消息的第一张图片作为 icon。


quote示例


:three: 使用传入的图片参数


ament -t 标题 -d 介绍 --icon [图片]

使用传入的 icon 图片参数作为 icon。


cmd-arg示例


:four: 使用 data: URL 作为图标(实验性)

需先在配置中启用 enableBase64IconArg,然后:


ament -t 标题 -d 介绍 --icon-base64 data:image/svg+xml;base64,<base64数据>

直接传入 base64 编码的图片数据,适合不想上传图片的场景。


base64示例


:five: 使用 @用户的头像


ament -t 标题 -d 介绍 @某人

使用 session 消息中第一个艾特元素的用户头像作为 icon。


at示例


:six: 使用默认幸运方块图标


ament -t 标题 -d 介绍

fallback 到默认准备好的幸运方块问号 icon。


fallback示例


:iphone: 聊天平台预览

OneBotV11


OneBot 聊天记录

↑ 从上到右依次展示 5 种图标来源:–mcicon → 被引用消息 → --icon → 艾特用户的头像 → 。

QQ 官方 Bot 平台


QQ Markdown 按钮示例

↑ 在QQ官方Bot平台,启用 enableQQMarkdown 后,每次生成图片时会附带 Markdown 消息和按钮: :arrows_counterclockwise: 再来一张:question: 获取帮助

↑ 展示了 --icon-base64 的说法


:gear: MC 图标后端(可选)

如需使用 --mcicon 参数进行 Minecraft 游戏图标搜索,请:

  1. 启用配置项中的 “启用MC图标后端服务”

  2. 自行部署 PyTorch+FastAPI 后端服务

  3. 配置后端地址(默认:http://192.168.31.233:60615

后端项目地址:

:link: https://github.com/VincentZyuApps/fastapi-awa-fuzzy-search-minecraft-backend


:wrench: 配置项

:speech_balloon: 消息设置

配置项 类型 默认值 说明
enableQuote boolean true 是否自动引用回复触发指令的消息
commandName string "ament" 指令名称

:gear: Args - 参数相关

配置项 类型 默认值 说明
banAtUserArg "none" | "all" | "qq" "qq" @用户作为图标来源的禁用范围(radio 选择)
enableBase64IconArg boolean false 启用 --icon-base64 参数,允许传入 data: URL

:robot: QQ 官方 Bot 平台设置

配置项 类型 默认值 说明
enableQQMarkdown boolean true 发送图片时附带 Markdown + 按钮消息
qqMarkdownKeyboardJson string 默认键盘 JSON Markdown 按钮 JSON 配置(支持变量 ${commandName} ${title} ${description} ${userId}

:package: Assets - 静态资源相关

配置项 类型 默认值 说明
fontPath string[] ["data","assets","fonts"] 字体文件路径(自动下载)
bgPath string[] ["data","assets","awa-mc-ament","image"] 背景图路径(自动复制)

:globe_with_meridians: Puppeteer - 浏览器截图配置

配置项 类型 默认值 说明
browserScreenshotquality number 80 截图质量 (0-100)
browserScreenshotFormat "jpeg" | "png" | "webp" "png" 截图输出格式
enableHtmlDump boolean false 是否将 HTML 模板写入文件(调试用)
htmlDumpPath string[] ["tmp"] HTML 模板输出目录

:dart: MC 图标后端

配置项 类型 默认值 说明
enableMciconBackend boolean false 启用 MC 图标后端服务
mciconBackendAddres string "http://192.168.31.233:60615" 后端地址(完整 URL)

:bug: Debug - 调试

配置项 类型 默认值 说明
VerboseLoggerMode boolean false 是否开启详细输出

:speech_balloon: 交流反馈

插件使用问题 / Bug反馈 / 插件开发交流,欢迎加入 QQ 群:259248174



:pray: 致谢

2 个赞

https://gitee.com/vincent-zyu/koishi-plugin-awa-mc-ament

https://github.com/VincentZyuApps/koishi-plugin-awa-mc-ament

https://www.npmjs.com/package/koishi-plugin-awa-mc-ament

1 个赞

图片
插件更新一波,支持qq官bot的markdown和按钮,支持base64传参渲染 (实验性功能

1 个赞

效果是像这样: