Skip to content

Releases: Xwdit/RainyBot-Core

v2.0-RC-8

30 Jun 21:38
Compare
Choose a tag to compare

RainyBot版本 v2.0-RC-8 现已正式发布,此版本新增了Gif动图生成与发送相关的API,新增了从Http请求结果自动判断图像格式并获取为图像实例的API,变更了插件类中的部分函数为静态函数以支持在插件外进行调用,简化并类型化了大部分的内部代码以提升运行速度及可维护性,修复了大量已知的错误,同时还带来了多个方面的细节改进与问题修复。建议所有用户均升级至此版本以获得最佳的开发与使用体验~

更新日志:

  • 新增了Gif动图生成与发送相关的API,可前往RainyBot-API中的CoreAPI/GifImage.gd以及MessageAPI/Types/ImageMessage.gd文件来查看相关文档
  • 新增了从Http请求结果自动判断图像格式并获取为图像实例的API,可前往RainyBot-API中的CoreAPI/HttpRequestResult.gd文件来查看相关文档
  • 将Plugin插件类中的部分函数更改为静态函数以支持在插件外进行调用 (如场景脚本中)
  • 简化并类型化了大部分的内部代码以提升运行速度及可维护性,预计可带来25%左右的脚本性能提升
  • 将BotEvent中的get_qq()函数更名为get_id()以统一命名规范
  • 修复了Mirai启动时的系统平台判断问题,解决了RainyBot试图在Windows平台启动.sh脚本的问题
  • 修复了场景图像生成后拉伸缩放异常的问题,并调整了所使用的缩放算法以取得最佳效果
  • 其余各项细节的改进与修复,若要查看更详细的更新内容,请参阅Commits更改日志

更新说明:

  • 此版本包含了增量更新包(文件名以-update结尾),以及与以往相同的完整发行包(文件名以-full结尾)
  • 若您从v2.0-RC-4之前的版本更新,请删除RainyBot根目录/adapters/mirai/下除bots文件夹以外的所有内容,删除RainyBot根目录下的.pck(如果有).exe文件,删除Rainybot根目录下的project.godot(如果有)/project.binary(如果有)文件以及libs(如果有).godot(如果有)文件夹,随后下载完整发行包并用其中所有内容直接覆盖旧版本文件即可。
  • 若您从v2.0-RC-4或之后的版本更新,请删除Rainybot根目录下的project.godot文件以及libs.godot文件夹,随后下载增量更新包并将其中的所有内容放置在RainyBot根目录下即可
  • 更新完毕后,您可能需要运行一次插件菜单中的重新导入所有资源功能,以确保所有场景及资源均可被正常加载

国内下载镜像(坚果云):

v2.0-RC-7

25 Jun 11:22
Compare
Choose a tag to compare

RainyBot版本 v2.0-RC-7 现已正式发布,此版本带来了对MacOS/Linux(暂未测试)平台的支持,新增了与群公告相关的各类API,新增对商城表情消息类型的支持,大幅简化了场景加载与图像生成相关的API,且支持异步并发的场景加载与图像生成,优化了资源重新导入的稳定性与速度,同时还带来了多个方面的细节改进与问题修复。建议所有用户均升级至此版本以获得最佳的开发与使用体验~

重要兼容性变更:

  • 此版本开始,大幅简化了场景加载与图像生成相关的API,场景默认进行异步加载且不再支持随插件进行热重载 (必须重启RainyBot来应用更改,可通过主菜单来快速重启),并且移除了插件类中的所有的Viewport相关函数
  • 插件类中load_scene()函数的用法更改为:
## 加载一个场景文件,并根据第二个参数将其准备为用于图像捕捉或用于其他用途(如自定义GUI),需要配合await关键字来使用此函数
##
## 注意:加载场景与根目录的相对路径必须与场景在原项目时所在的相对路径相同,且加载前请确保已重新导入所有资源(位于插件菜单中),否则可能会加载失败或出现未知问题
## 例如,原项目中位于"res://plugins"的场景在加载时必须位于"RainyBot根目录/plugins"路径下
##
## 需要的参数从左到右分别为: 
## - 场景文件的路径,可以是相对路径(以res://开头),也可以是绝对路径(如D:/RaintBot/plugins,可通过get_plugin_path()函数来获取插件目录的绝对路径)
## - 是否将加载的场景准备为用于图像捕捉 (可选,默认为false,必须启用才可使用get_scene_image()函数来获取其中内容的图像,否则会直接将其添加为插件的子项以便用于其他用途(如自定义GUI))
##
## 小贴士:出于性能原因,对已加载的场景或其附加脚本所做的的任何修改均无法通过重载插件来实时更新,因此在修改场景或其脚本后,请通过主菜单中的重新启动选项来快速重启RainyBot以便应用您所做的任何更改
func load_scene(path:String,for_capture:bool=false)->Node:
  • 原先用于获取Viewport图像的函数,更改为可以直接获取场景图像的get_scene_image()函数,用法为:
## 将指定场景实例中的当前内容获取为[Image]类图像的实例,需要配合await关键字来使用此函数
##
## 请确保指定的场景是通过load_scene()函数加载的,且加载时在函数中启用了for_capture参数,否则将无法正确获取其中的内容
##
## 需要的参数从左到右分别为: 
## - 需要从其中获取图像的场景实例,场景实例需要满足上述条件才能被正确获取为图像
## - 要生成的图像的原始大小,这决定了场景的内容将会以何种分辨率渲染为图像
## - 图像生成后要拉伸到的大小(可选,默认为Vector2i(0,0)),若设置为大于0的值,则将基于第二个参数的大小渲染图像,并将渲染后的图像拉伸为此参数指定的大小
## - 设置生成的图像是否启用透明背景(可选,默认为false)。若启用透明背景,则场景中任何拥有透明度的位置在获取的图像中将拥有同样的透明度,空白的位置在获取的图像中将完全透明
func get_scene_image(scene:Node,size:Vector2i,stretch_size:Vector2i=Vector2i.ZERO,transparent:bool=false)->Image:

更新日志:

  • 新增了了对MacOS/Linux(待测试)平台的支持,对应平台的发行包将在稍后于此页面中更新
  • 新增了与群公告相关的各类API,可前往GroupAPI的Group类与GroupAnnounce相关类中查看详情
  • 新增对商城表情消息类型的支持,目前仅支持读取与转发,暂不支持手动构造发送,可前往MessageAPI/Types/MarketFaceMessage.gd下查看相关API
  • 大幅简化了场景加载与图像生成相关的API,详情请查看上方“重要兼容性变更”处所述的内容
  • 支持异步并发的场景加载与图像生成,可以在每次不同的请求中异步创建独立的场景并进行独立的图像生成,即多个场景加载与图像生成可以同时进行且互不干扰
  • 优化了资源重新导入的稳定性与速度,提升了对不同平台下的兼容性
  • 其余各项细节的改进与修复,若要查看更详细的更新内容,请参阅Commits更改日志

更新说明:

  • 此版本包含了增量更新包(文件名以-update结尾),以及与以往相同的完整发行包(文件名以-full结尾)
  • 若您从v2.0-RC-4之前的版本更新,请删除RainyBot根目录/adapters/mirai/下除bots文件夹以外的所有内容,删除RainyBot根目录下的.pck(如果有).exe文件,删除Rainybot根目录下的project.godot(如果有)/project.binary(如果有)文件以及libs(如果有).godot(如果有)文件夹,随后下载完整发行包并用其中所有内容直接覆盖旧版本文件即可。
  • 若您从v2.0-RC-4或之后的版本更新,请删除Rainybot根目录下的project.godot文件以及libs文件夹,随后下载增量更新包并将其中的所有内容放置在RainyBot根目录下即可

国内下载镜像(坚果云):

v2.0-RC-6

22 Jun 21:45
Compare
Choose a tag to compare

RainyBot版本 v2.0-RC-6 现已正式发布,此版本带来了许多全新的API,新增了配置文件自动更新功能,进行了大量运行稳定性优化,同时还带来了多个方面的细节改进与问题修复。建议所有用户均升级至此版本以获得最佳的开发与使用体验~

更新日志:

  • 新增了获取好友/单向好友/群成员/群组/机器人自身的头像图片链接的API
  • 群成员类中新增直接获取此成员的相关资料卡的API
  • 成员资料类新增直接获取任意指定ID用户的资料并构造为成员资料实例的API
  • 软件本体与插件新增配置文件更新功能,可以自动添加缺失的配置项与移除多余的配置项
  • 协议后端配置文件中新增用于配置单次请求获取结果的最大超时秒数的配置项
  • 需要向协议后端发送请求的每个API函数中均在最后增加了可选的最大超时秒数参数项,可为每次的不同的请求分别配置超时时间
  • 内部代码进行了大量调整以提升稳定性并尽可能地避免出现运行时错误
  • 新增了对通过Godot编辑器运行RainyBot时的判定检查,以避免执行部分可能导致编辑器提示错误并冻结RainyBot的代码逻辑
  • 进行了对各项内容的细节改进与问题修复
  • 若要查看更详细的更新内容,请参阅Commits更改日志。

更新说明:

  • 此版本包含了增量更新包(文件名以-update结尾),以及与以往相同的完整发行包(文件名以-full结尾)
  • 若您从v2.0-RC-4之前的版本更新,请删除RainyBot根目录/adapters/mirai/下除bots文件夹以外的所有内容,删除RainyBot根目录下的.pck(如果有).exe文件,删除Rainybot根目录下的project.godot(如果有)/project.binary(如果有)文件以及libs(如果有).godot(如果有)文件夹,随后下载完整发行包并用其中所有内容直接覆盖旧版本文件即可。
  • 若您从v2.0-RC-4或之后的版本更新,请删除Rainybot根目录下的project.godot文件以及libs文件夹,随后下载增量更新包并将其中的所有内容放置在RainyBot根目录下即可

国内下载镜像(坚果云):

v2.0-RC-5

21 Jun 21:15
Compare
Choose a tag to compare

RainyBot版本 v2.0-RC-5 现已正式发布,此版本新增了异步加载资源与场景的API,新增了将Http请求结果解析并获取为图像实例,以及保存为文件的API,并且将渲染后端默认更改为桌面版本以支持更高级的渲染效果,同时还带来了多个方面的细节改进与问题修复。建议所有用户均升级至此版本以获得最佳的开发与使用体验~

重要兼容性变更:

  • 此版本开始,插件类API中的load_scene()函数现在必须通过await关键字才能正常使用,否则将会出现错误

更新日志:

  • 新增了异步加载资源与场景的API,现可通过Utils类中的load_threaded()函数来异步加载各类资源,还可通过设置插件API中的load_scene()函数的第三个参数来进行异步场景加载
  • 新增了将Http请求结果按照指定图像格式(png,bmp,jpg,tga,webp)解析并获取为图像实例的API
  • 新增了将Http请求结果保存至指定路径的文件的API
  • 将渲染后端默认更改为桌面平台版本以支持更高级的图像渲染效果(如高斯模糊)
  • 若要查看更详细的更新内容,请参阅Commits更改日志。

更新说明:

  • 此版本包含了增量更新包(文件名以-update结尾),以及与以往相同的完整发行包(文件名以-full结尾)
  • 若您从v2.0-RC-4之前的版本更新,请删除RainyBot根目录/adapters/mirai/下除bots文件夹以外的所有内容,删除RainyBot根目录下的.pck(如果有).exe文件,删除Rainybot根目录下的project.godot(如果有)/project.binary(如果有)文件以及libs(如果有).godot(如果有)文件夹,随后下载完整发行包并用其中所有内容直接覆盖旧版本文件即可。
  • 若您从v2.0-RC-4版本更新,请删除Rainybot根目录下的project.godot文件以及libs文件夹,随后下载增量更新包并将其中的所有内容放置在RainyBot根目录下即可

国内下载镜像(坚果云):

v2.0-RC-4

21 Jun 10:36
Compare
Choose a tag to compare

RainyBot版本 v2.0-RC-4 现已正式发布,此版本大幅改进了软件结构,新增了插件场景资源重新导入功能,集成了Godot编辑器作为运行时以便于直接进行场景制作与代码调试,并且带来了多个方面的细节改进与问题修复。建议所有用户均升级至此版本以获得最佳的开发与使用体验~

编辑日志:

  • 2022/06/21 - 18:52 新增在场景加载失败时提示重新导入资源 (492539b)
  • 2022/06/21 - 20:28 在重新导入前清空缓存,以避免缓存被作为资源导入 (9d395c3),并且在导入与编辑器中忽略除核心及插件以外的目录 (021177b)
  • 若您下载了较早上传的v2.0-RC-4版本,建议您重新下载最新发行包以获得如上所述的内容变更

更新日志:

  • 软件结构大幅改进,将Godot的编辑器版本作为运行时,直接在RainyBot工程目录中运行。这意味着您无需另行下载或启动Godot编辑器,即可随时编辑与实时调试RainyBot插件乃至软件本身的场景及脚本 (在主菜单中点击场景编辑器选项即可);并且,此项改进还为后续如自动化增量更新,代码自修改等功能打下了良好的基础~
  • 新增了一键重新导入所有资源的功能,这意味着您现在不需要以特殊方法加载或处理插件场景中所使用的资源,而是直接按照常规Godot场景的编辑方式进行编辑即可。将制作好的插件及其场景放置在RainyBot对应目录后,只需点击插件菜单中的重新导入所有资源选项,即可自动对RainyBot目录下的所有场景及资源进行处理以保证其正常运行
  • 为各项SubViewport相关的API新增了错误检测与提示
  • 新增了资源重新导入的控制台命令,补全了缺失的重新启动命令
  • 改进了版本更新的检测流程,提高了版本检测的稳定性
  • 改进了Mirai协议后端的启动流程,提高了启动过程中的稳定性
  • 其余各项细节改进与问题修复
  • 若要查看更详细的更新内容,请参阅Commits更改日志。

更新说明:

  • 此版本因文件结构改动较大,仅包含完整发行包(文件名以-full结尾)
  • 请删除RainyBot根目录/adapters/mirai/下除bots文件夹以外的所有内容,删除RainyBot根目录下的.pck(如果有).exe文件,删除Rainybot根目录下的project.godot(如果有)/project.binary(如果有)文件以及libs(如果有).godot(如果有)文件夹,随后下载完整发行包并用其中所有内容直接覆盖旧版本文件即可。

国内下载镜像(坚果云):

v2.0-RC-3

20 Jun 08:36
Compare
Choose a tag to compare

RainyBot版本 v2.0-RC-3 现已正式发布,此版本新增了全新的运行时脚本错误检测,以及通过主菜单快捷重启RainyBot的功能,并且进行了一些代码清理与改进。建议所有用户均升级至此版本以获得最佳的开发与使用体验~

更新日志:

  • 新增了全新的运行时脚本错误检测功能及相关的插件API,若插件脚本或RainyBot内部脚本在运行时出现错误,您将可以第一时间通过控制台获得反馈,并可以通过插件进行错误处理(如发送通知到指定好友等)
  • 主菜单新增快捷重新启动RainyBot的选项,对于部分无法热重载的内容(如场景附加的脚本),您可以通过此功能来便捷的对RainyBot进行快速重启
  • 代码内容清理,各类细节改进与修复

若要查看更详细的更新内容,请参阅Commits更改日志。

更新说明:

  • 此版本包含了增量更新包(文件名以-update结尾),以及与以往相同的完整发行包(文件名以-full结尾)
  • 若您从v2.0-beta-6之前的版本更新,请删除RainyBot根目录/adapters/mirai/下除bots文件夹以外的所有内容,随后下载完整发行包并直接覆盖旧版本文件即可。
  • 若您从v2.0-beta-6版本更新,请删除RainyBot根目录下的RainyBot.pck,下载增量更新包并将其中的所有内容放置在RainyBot根目录下即可
  • 若您从v2.0-beta-7或更高的版本更新,请删除Rainybot根目录下的project.godot/project.binary文件以及libs.godot文件夹,随后用增量更新包中的内容覆盖即可

国内下载镜像(坚果云):

v2.0-RC-2

19 Jun 15:53
Compare
Choose a tag to compare

RainyBot版本 v2.0-RC-2 现已正式发布,此版本修复了以往版本的多个重要问题,并改进了整体的使用体验,建议所有用户均升级至此版本

编辑日志:

  • 2022/06/20 - 00:23 从完整发行包中移除了示例插件,详情请见下方更新日志

更新日志:

  • 修复设置SubViewport背景透明导致渲染异常的问题
  • 修复设置SubViewport拉伸大小无效的问题
  • 修复插件管理器启动时不刷新插件列表的问题
  • 主字体更换为等宽字体,大幅提升内置编辑器的使用体验
  • 改进插件模板的格式
  • 从完整发行包中移除了示例插件,您可以根据需要在这里找到它们: https://github.com/Xwdit/RainyBot-API/tree/main/examples
  • 其余各类细节改进与修复

若要查看更详细的更新内容,请参阅Commits更改日志。

更新说明:

  • 此版本包含了增量更新包(文件名以-update结尾),以及与以往相同的完整发行包(文件名以-full结尾)
  • 若您从v2.0-beta-6之前的版本更新,请删除RainyBot根目录/adapters/mirai/下除bots文件夹以外的所有内容,随后下载完整发行包并直接覆盖旧版本文件即可。
  • 若您从v2.0-beta-6版本更新,请删除RainyBot根目录下的RainyBot.pck,下载增量更新包并将其中的所有内容放置在RainyBot根目录下即可
  • 若您从v2.0-beta-7或更高的版本更新,请删除Rainybot根目录下的project.godot/project.binary文件以及libs.godot文件夹,随后用增量更新包中的内容覆盖即可

国内下载镜像(坚果云):

v2.0-RC-1

19 Jun 11:58
e018585
Compare
Choose a tag to compare

RainyBot版本 v2.0-RC-1 现已正式发布,此版本紧急补全了上个版本遗漏的一些SubViewport相关API,并且将SubViewport的透明背景默认设置为禁用。

版本特别说明:

  • 此版本的发布,意味着RainyBot已基本进入稳定状态,足以应对生产环境下的各种常见用途。
  • 在此,非常感谢各位在RainyBot开发期间给予的反馈与支持;没有你们,就不可能有如今这样功能齐全,简单易用的RainyBot~

更新日志:

  • 支持在通过插件创建SubViewport时设置其背景透明的状态
  • 新增在运行时设置指定SubViewport的背景透明状态的API
  • 默认禁用通过插件创建的SubViewport的背景透明状态

若要查看更详细的更新内容,请参阅Commits更改日志。

更新说明:

  • 此版本包含了增量更新包(文件名以-update结尾),以及与以往相同的完整发行包(文件名以-full结尾)
  • 若您从v2.0-beta-6之前的版本更新,请删除RainyBot根目录/adapters/mirai/下除bots文件夹以外的所有内容,随后下载完整发行包并直接覆盖旧版本文件即可。
  • 若您从v2.0-beta-6版本更新,请删除RainyBot根目录下的RainyBot.pck,下载增量更新包并将其中的所有内容放置在RainyBot根目录下即可
  • 若您从v2.0-beta-7或更高的版本更新,请删除Rainybot根目录下"project.godot"文件以及"libs"文件夹,用增量更新包中的内容覆盖即可

国内下载镜像(坚果云):

v2.0-beta-9

19 Jun 08:27
Compare
Choose a tag to compare

RainyBot版本 v2.0-beta-9 现已正式发布,此版本新增了一些全新的API,带来了全新的插件缓存数据功能,改善了各类功能的使用体验

更新日志:

  • Bot类中新增获取连接状态,以及获取私聊消息/群聊消息/已发送消息数量统计的API
  • 插件类中新增缓存数据库API,可储存需要在插件卸载或重载时保留,但同时将在RainyBot关闭时自动清理的数据
  • 插件类中新增获取全局运行时间的API
  • 窗口标题栏新增各项状态信息显示
  • 主菜单栏新增打开内部日志目录的快捷选项
  • 新增在创建SubViewport时调整拉伸大小的支持
  • 现支持通过创建的SubViewport来生成透明背景的图像(且默认情况下为透明背景)
  • 初步支持对插件关联场景的热重载,但关联场景中的脚本目前仍需通过重启RainyBot来进行重载
  • 各类细节改善与错误修复

若要查看更详细的更新内容,请参阅Commits更改日志。

更新说明:

  • 此版本包含了增量更新包(文件名以-update结尾),以及与以往相同的完整发行包(文件名以-full结尾)
  • 若您从v2.0-beta-6之前的版本更新,请删除RainyBot根目录/adapters/mirai/下除bots文件夹以外的所有内容,随后下载完整发行包并直接覆盖旧版本文件即可。
  • 若您从v2.0-beta-6版本更新,请删除RainyBot根目录下的RainyBot.pck,下载增量更新包并将其中的所有内容放置在RainyBot根目录下即可
  • 若您从v2.0-beta-7或v2.0-beta-8版本更新,请删除Rainybot根目录下"project.godot"文件以及"libs"文件夹,用增量更新包中的内容覆盖即可

国内下载镜像(坚果云):

v2.0-beta-8

19 Jun 01:05
Compare
Choose a tag to compare

RainyBot版本 v2.0-beta-8 现已正式发布,此版本新增了大量可简化场景加载/图像生成的功能函数,并且修复了插件编辑器错误行不能正确清除的问题

更新日志:

  • 插件类中新增了快捷加载场景,创建SubViewport,更改SubViewport大小,更新SubViewport内容,基于SubViewport获取图像等函数
  • 修复了插件编辑器错误行不能正确清除的问题

若要查看更详细的更新内容,请参阅Commits更改日志。

更新说明:

  • 此版本包含了增量更新包(文件名以-update结尾),以及与以往相同的完整发行包(文件名以-full结尾)
  • 若您从v2.0-beta-6之前的版本更新,请删除RainyBot根目录/adapters/mirai/下除bots文件夹以外的所有内容,随后下载完整发行包并直接覆盖旧版本文件即可。
  • 若您从v2.0-beta-6版本更新,请删除RainyBot根目录下的RainyBot.pck,下载增量更新包并将其中的所有内容放置在RainyBot根目录下即可
  • 若您从v2.0-beta-7版本更新,请删除Rainybot根目录下"project.godot"文件以及"libs"文件夹,用增量更新包的内容覆盖即可

国内下载镜像(坚果云):