Skip to content

Releases: SereinDev/Serein

v1.3.5-pre5

09 Jul 13:31
Compare
Choose a tag to compare

GitHub release (latest by date)

⚠ 不兼容更新

  • 变量名称修改
    • Delay->Latency
  • Motd
    • 成员名称变化
      • delay->latency
    • 成员内容变化
      • Favicon
        • 图片的CQ码 现转为FaviconCQCode
        • 图片的base64字符串
  • 数据结构更改
    • Regex.regex->Regex.expression
      • 会自动识别转化文件

🚀 新功能

  • JS部分函数支持多参调用
  • JS支持安全调用
  • 添加了权限组
  • 支持自定义游戏ID验证正则
  • 支持设置全局导入的命名空间JSEventMaxWaitingTime小于0时将不等待JS返回
  • 支持命令行版关闭指定类型的输出
  • 添加MessageBus
  • 使用JToken自身方法获取指定值
  • 更改版本号
  • 支持命令重新加载文件
  • 优化了JS错误输出
  • 支持使用GBK
  • 新增控制台执行命令功能
  • 新增获取WS统计信息的函数
  • 加快了日志的处理速度[需要验证]
  • 新增获取PID的JS函数
  • 当关服命令中没有任何内容时,发送Ctrl+C信号关服 #62
  • 支持正则分组构造[仅NET6]
  • 修改权限组文件保存位置
  • 添加内部版本号
  • 缩短退出等待时长

🐛 修复

  • wpf列表复制后更新同步
  • 批量重命名错误
  • 命令行版重载文件异常
  • PreLoadConfig未以驼峰式储存
  • Motd无法获取成员
  • 获取Motd时人数过高可能异常
  • 删除不必要的判断
  • 删除无用代码
  • wpf无法新增成员(感谢@yuanxi953 反馈)
  • 命名空间错误
  • 删除冗余代码
  • 详细输出不生效
  • 内存使用情况获取异常
  • 启动时若定时任务为空弹窗
  • 事件触发器中变量替换不生效
  • JavaMotd开头截断
  • 权限组等数据文件为空时缺少判断
  • 删除了没用的Nuget包
  • 无法重启服务器
  • 自定义游戏ID检查正则失效
  • 导入文件异常
  • Winform关闭时报错
  • 事件触发器未提供%ID%变量
  • 命令行版本关闭超时
  • 无法正确读取权限组文件

🧰 其他

  • 规范命名
  • 使用Nullable
  • 优化代码
  • 拆分代码
  • 优化项目结构

v1.3.4

11 Mar 08:45
Compare
Choose a tag to compare

GitHub release (latest by date)

🚀 新功能

  • JS相关
    • 新增了一些js函数
    • 支持引入js模块
    • 支持js发送临时消息会话
    • 支持js获取插件列表
    • 支持命令调用并执行js
    • 支持js拦截事件
    • 支持js修改正则
    • 支持js使用motd对象
    • 新增PluginsLoaded事件
    • 支持获取类型名称、启动时间、设置预加载配置
  • 支持设置正则忽略群聊 (隐藏功能,需要通过修改文件实现)
  • 支持插件获取群成员缓存和设置对象
  • motd支持ipv6
  • 支持禁用指定页面
  • 支持自动更新
  • 服务器信息栏不再显示存档名称而是在线人数
  • 更新控制台版本命令
  • 支持服务器不在运行的时候禁用绑定功能
  • 支持设置自动运行的延迟
  • 新增了功能被禁用时的回复
  • 现在控制台版本也会显示欢迎页面了
  • 添加了合并导入正则的功能
  • 支持命令发送临时消息
  • 支持插件设置变量
  • 支持导入自定义程序集
  • WPF正则管理支持复制原有正则
  • 支持对插件进行详细配置
  • 支持发送临时会话消息
  • WPF使用富文本框绘制控制台
  • 添加了logo
  • 更改了部分函数名称
  • NET6支持结束进程时自动关闭子进程
  • 开启/强制结束服务器和连接机器人时自动更新详细信息栏
  • 命令行版本增加链接高亮
  • 输入Cron表达式时可预览最近20个执行时间
  • 支持查看用户协议
  • 优化热重载逻辑
  • 更新链接
  • 支持热重载文件
  • 多线程处理控制台输出 #47 需要更多测试
  • 支持获取当前服务器的Motd
  • 优化了js获取Net对象
  • 支持事件获取触发的成员变量
  • 新增MsgID变量
  • 为调用js回调添加message_id参数
  • 自动删除JS计时器
  • 单文件部署发行 #37 (only for net6.0-windows)
  • ⚠配置文件使用小写驼峰保存
    • 获取Serein设置 serein.getSettings()获取到的key将以小驼峰模式命名(事件除外)
  • 增加函数类型校验

🐛 修复

  • ❗❗❗输入命令时未转义\n(此bug极其严重,可能导致服务器被执行意外的指令)
  • 服务器无法输入命令
  • Tostring()错误
  • WPF添加事件后不显示
  • WPF事件无法保存
  • WPF启动后崩溃
  • CPU使用率获取不正确
  • Winform下CPU占用显示不正确
  • 控制台输入框上下键切换不正确
  • 部分情况下获取CPU信息失败崩溃
  • 部分控制台彩色输出异常
  • 部分语言环境下可能大小写出现错误
  • 删除没有用的包
  • 服务器信息栏不再显示存档名称而是在线人数
  • 控制台空格显示不完全;字体异常
  • 输出文件时由于被占用而报错
  • 在系统极其卡顿的情况下服务器CPU使用率计算出错导致可能超过100%
  • cwd与当前目录不同时部分文件错位
  • 绑定返回布尔值错误
  • 删除没有用的编译信息
  • 插件加载阻塞主线程
  • 打开OpenFileDialog异常崩溃
  • 输出时自动消除了行尾空格
  • 当服务器类型为未知时仍会尝试获取motd
  • WPF的MessageBox不换行
  • #31 主题跟随系统无法读取
  • 禁用后的插件无法被识别
  • WPF分隔线颜色不随主题变化
  • 禁用的任务仍能被触发
  • Winform在NET6下部分文字被遮挡
  • 服务器输出行尾空格被裁切
  • 控制台版本初始化时不保存设置
  • WPF分隔线颜色不随主题变化
  • WPF的ThemeFollowSystem和UseDarkTheme设置无法正确保存
  • 删除无效控件和资源
  • 应用变量时可能返回null
  • 部分情况下Motdje数据包被截断
  • js的motd获取失败
  • js的logger与log输出不一致
  • js定时器取消时错误
  • js报错显示不完整
  • WPF初始化时出现未经处理的异常
  • 函数英文拼写不规范
  • 游戏ID匹配时未忽略大小写
  • 无法通过命令行开启debug模式
  • ❌初始化Motdpe崩溃 (较严重)
  • js获取的数组类型不正确
  • 函数英文拼写不规范
  • 定时任务判断错误
  • 插件数据包事件的文本未转码
  • net6下内存不更新
  • 私聊消息触发群组缓存写入
  • ⚠js解释器bug( sebastienros/jint#1542 ) 暂时回退版本
    • StringCompilationAllowed暂不可用
  • ⚠js获取的数组类型不正确
    • 通过 serein.getSettingsObject() 获取的Bot.PermissionListBot.GroupList类型由System.Collections.Generic.List<Int64>转为JS原生数组
  • ❌插件触发异常 (较严重)

🧰 其他

  • 支持查询在线使用人数
  • 更新语法
  • 修改部分嵌套
  • 调整项目结构
  • 添加扫描工作流
  • 更改变量名大小写
  • 更改motd的成员类型
  • 降低部分数据的保存频率
  • 提高获取服务器信息的速度
  • 提高解析命令和替换变量的速度
  • 文件task -> schedule (可能需要重新导入数据文件) 已自动实现转换读取

v1.3.3

01 Jan 02:19
Compare
Choose a tag to compare

GitHub release (latest by date)

🚀 新功能

  • 加入了更多变量
  • 支持设置行终止符
  • 优化debug输出
    • 输出时自动将Exception解压
  • 链接更新
  • 更新了控制台html文件 (需要删除console文件夹重新生成)
    • 鼠标放开/键盘按键放开时自动复制
    • WPF版可自动根据当前主题切换暗黑模式
  • 支持wpf显示启动欢迎页面
  • 新增启动自动运行选项(见settings/Serein.json
  • 控制台版本相关
    • 支持使用Ctrl+C关闭服务器或退出
    • 支持Linux
      • 由于系统类型差异,暂不支持获取该平台的CPU使用率
      • 以后可能会想办法解决的~~(咕咕咕~~
    • 读取不到数据文件时自动创建
    • 更新了输出样式
  • JS插件相关
    • 更新了Jint的版本
      • 现支持ECMAScript 2022语法
      • 也就是说你可以使用lambda表达式、Promise等语法了
    • 使用枚举值区分js事件
    • 支持禁用插件
    • 使用serein.log的插件会自动附加命名空间

🐛 修复

  • 服务器输出事件执行速度过快导致卡死
    • 现在你可以根据自身性能修改限速,见settings/Serein.json中的DevelopmentTool-JSEventCoolingDownTime,单位为ms
  • 控制台版本无法保存调试设置选项
  • 更改工作路径后文件生成错误
  • 机器人重连时间显示错误
  • Java版motd无法正常获取
  • WPF下不显示插件
  • winform事件tag错误
  • 部分情况下WPF启动崩溃
  • 关闭事件不执行
  • 删除不必要的引用
  • 移除没有用的设置文件
  • 事件变量错误、变量词性错误 如Original -> Origin
  • JS解释器一系列问题
    • 多线程协同报错 (极其严重)
    • 执行频率过高
    • 其他乱七八糟的小细节
    • 主线程阻塞的插件无法重新加载
    • 删除了一个没有用的事件
    • Winform加载插件后堆栈溢出
    • 无法机器人反馈信息数据包的JS事件

🧰 其他

  • 合并代码
  • 简化项目文件
  • 规范代码格式
  • 修正行末重复分号
  • 强制将文档目录展开

❗ 不兼容变更

Warning

此部分更改可能导致部分插件/数据文件失效

  • 更改了部分变量
    • Original -> Origin
    • CPUPercent -> CPUUsage
    • RAMPercent -> RAMUsage
    • Percentage -> ServerCPUUsage
  • 更改了JS引擎的getSysInfo的返回类型

Warning

目前v1.3.3.0_dotnet6的版本存在多个严重Bug,建议使用net framework472的代替🙏

v1.3.2

04 Nov 14:34
Compare
Choose a tag to compare

GitHub release (latest by date)

🚀 新功能

  • WPF 【🎉新发布✨】
    极简UI且极易上手,对萌新服主极其友好
    type_wpf
    console
    • 更好的服务器插件管理
    • 重新支持了获取更新
    • 设置界面新增ToolTip
    • 在标题栏显示服务器启动文件
    • 支持使用读取命令记录
    • 完善各项功能
    • 完善快捷跳转
    • 完善开始页面部分功能
    • 完善事件编辑器
    • 支持更改主题
    • 实现弹窗
    • 实现服务器插件的加载和右键菜单
    • 实现托盘图标功能
    • 支持控制台显示
    • 新增事件修改页面
  • Winform
    • 支持修改输出编码
    • 支持修改事件
  • 控制台
    • 支持关闭彩色输出
    • 更改了部分输出文字和样式
  • 其他
    • 重载插件时自动释放EventWebSocket
    • 将提交信息写入程序版本号
      image
    • 重定向MsgBox
    • 支持使用stop命令终止服务器重启倒计时
    • 重命名了事件名称
  • WPF
    • 支持快捷启动参数
    • 支持设置最大缓存行数
  • 其他
    • 部分页面刷新后不自动适应列宽
    • 重命名了事件名称
    • 支持自动替换消息中的at
    • 输入stop可暂停重启计时器
    • 读取EventMatches文件时自动更新

🐛 修复

  • 控制台
    • 无法编译
  • WPF
    • 无法即时读取成员列表
    • 打开任务页面时自动执行
    • 机器人状态显示错误
    • 端口无法保存
    • 部分设置无法更新
    • 服务器输出编码选择后不变更
    • 切换页面后控制台输出丢失
    • 无法重新加载插件
    • 仪表盘加载卡顿
    • 系统信息获取不正确
    • 列表显示不完整
  • Winform
    • 插件重复加载
    • 部分子窗口大小可调
    • 部分页面刷新后不自动适应列宽
  • 其他
    • 事件无法保存
    • 绑定时不忽略首尾空格
    • 群事件无法触发
    • 可能导致命令Motd获取死循环
    • 可能导致命令JS死循环
    • 重启服务器仍出现弹窗
    • 无法生成Event.json
    • js类大小写错误
    • 链接错误
    • Logger输出类型错误
    • 插件关闭服务器时仍出现弹窗
    • 任务重复执行
    • 服务器未启动前强制结束导致崩溃
    • 绑定时未处理头尾空格
    • 异常关闭导致设置丢失
    • 输出日志时未换行

📃 文档

船新文档已上线

image

  • 分类更加合理
  • 支持快捷搜索
  • 新增扩展列表

⚠ 不兼容更新

  • 事件文件格式有所改动,可能导致原有设置失效
  • JS的WebSocket实例化对象后不再自动连接,需手动使用open()连接

v1.3.1

10 Aug 11:50
Compare
Choose a tag to compare

GitHub release (latest by date)

🚀 新功能

  • 新增命令行版Serein
  • 重定向Debug输出
  • 新增命令行版帮助页面
  • 支持命令行版Serein加载插件
  • 完善更多功能
  • 合并代码
  • 支持多条多行匹配正则配置
  • 更改判断服务器退出逻辑
  • 再一次更改了服务器状态逻辑
  • 更改链接
  • 为js引擎增加更多功能
  • 支持js连接ws
  • 更新js解释器功能
  • 更改js解释器初始化逻辑
  • 添加js插件
  • 增加setIntervalsetTimeout函数
  • 为插件右键菜单加入更多功能
  • 增加子窗口的帮助功能
  • 更改部分报错信息
  • 更新示例插件
  • 添加启动参数

🐛 修复

  • nukkit服务端输出异常
  • 无法导入命名空间
  • Timer无法关闭
  • 读取文件后无法释放
  • ClearTimeout等函数拼写错误
  • 文件名错误
  • 等待服务器退出的Task异常消失导致判断错误
  • 拖拉排序表格内容时数组下标越界
  • 输出时空格未被转义导致显示与实际不符
  • 输出命令时未转义
  • https://serein.cc 链接不正确
  • 窗口释放后消息仍能输出到控制台
  • 控制台输出空格不换行

📃 文档

  • 更新函数
  • 修复格式错误
  • 更新文档

🧰 其他

  • 删除不必要的代码
  • 格式化
  • 更新工作流
  • 删除病句

v1.3.0

28 Jul 15:45
Compare
Choose a tag to compare

GitHub release (latest by date)

🚀 新功能

  • 支持加载Serein的JS插件
    • 此功能暂时不太成熟,务必谨慎使用
    • 开发文档:Javascript[已过时]
  • ws断线重连
  • 纯文本发送至机器人 #11

🐛 修复

  • 大部分线程冲突问题
  • 含[]的消息无法正确匹配
  • 监听群和管理设置保存错误

📃 文档

  • 更新文档

🧰 其他

  • 增加函数注释
  • 更新工作流

v1.2.9

13 Jul 09:28
e7c7e05
Compare
Choose a tag to compare

GitHub release (latest by date)

🚀 新功能

  • 新增了GameID变量(详见 变量列表-成员管理变量[已过时]
  • 支持自定义事件被触发后执行的命令(详见事件[已过时]
  • 支持获取Java服务器Motd
  • 删除了Matches/ipv4Port设置项
  • 支持选择服务器类型
  • 支持设置本地服务器端口
  • 为Event设置添加了说明
  • 支持查询Motd
  • 新增motdpe和motdje两个指令,可用于获取指定服务器信息(详见命令-获取服务器信息[已过时]
  • Debug添加文本上限
  • 添加Favicon变量(详见变量列表-服务器motd变量[已过时]
  • 再一次支持了动态更新设置文件
  • 新增权限不足反馈

🐛 修复

  • 更改群成员时因列表变化失败
  • 处理消息回执时出现异常
  • 群限定范围错误
  • 任何非管理员消息都反馈无权限
  • 事件无法执行解绑命令
  • Event莫名其妙数组重复
  • 命令列表缓存重复
  • 含有换行符\n \r的命令无法执行
  • 类型为List<string>的设置项出现重复

📃 文档

  • 更新文档
  • 修复错字
  • 修复格式错误
  • 新增正则下载连接

🧰 其他

  • 优化代码
  • 格式化代码
  • 优化部分代码逻辑
  • 更改命名空间
  • 删除不必要的引用
  • 修复格式错误

v1.2.8

09 Jul 02:19
Compare
Choose a tag to compare

GitHub release (latest by date)

🚀 新功能

  • 新增ID:<GameID> GameID:<ID> 变量(详见#成员管理变量[已过时]
  • 群成员管理
  • 新增绑定ID功能
  • 新增绑定、解绑命令(详见绑定游戏ID[已过时]解绑游戏ID[已过时]
  • 实现退群自动解绑、删除白名单
  • 使用新的对话框
  • 新增DPI感知功能(使用时需要删除已生成的console文件夹
  • 更新设置界面的提示

🐛 修复

  • %Time%变量输出错误
  • 删除成员绑定后无法保存
  • 文档与实际代码对应不正确
  • 控制台混合模式下输出颜色错误
  • NET6.0下输入框消失
  • 连接ws时报错不正确
  • 控制台染色错误

📃 文档

  • 更新至与v1.2.8一致
  • 添加发电名单
  • 修改错字

v1.2.7

30 Jun 15:24
Compare
Choose a tag to compare

GitHub release (latest by date)

🚀 新功能

  • 支持混合类型的输出
    • 综合原始彩色语法高亮的优点
    • image
  • 更新设置界面的提示
  • 新增debug指令
    • 输出指定消息到debug窗口,标题为[DebugOutput]
    • 文档后续更新
  • 增加debug窗口输出的标题
  • 支持自动保存debug输出
  • 更改debug输出样式
  • 适配go-cqhttp v1.0.0-rc3
  • 支持处理自身上报消息
    • ❗ 保存前请务必检查这条正则触发的命令是否会导致再次被所发送的内容触发,配置错误可能导致机器人刷屏甚至被封号
    • 需要在机器人的配置文件中开启上报自身消息
  • 支持针对list的多行匹配
    • 食用方法: 在正则中加入\n字符实现跨行
    • ❗ 这项功能仅在匹配到list输出时生效,触发正则可在./settings/Matches.json修改PlayerList字段,从而实现不同输出下的多行匹配
    • 感谢@XY0797 的大力帮助支持

🐛 修复

  • 多行匹配错误
  • 私聊消息被群聊正则匹配
  • group_id为空时无法执行命令

📃 文档

  • 更新文档

v1.2.6

24 Jun 10:50
Compare
Choose a tag to compare

GitHub release (latest by date)

🚀 新功能

  • Settings_Matches.ini改为json格式
  • 将正则和定时任务的保存格式改为json
  • 删除了直接读取tsv文件的功能
    • 更新至v1.2.6后,你会发现正则和定时任务无法读取
    • 你需要手动将原来的tsv文件拖入窗口以导入旧格式的数据文件
      • 操作方法(点击查看)
  • 查询服务器状态模块
  • 新增MaxPlayer OnlinePlayer Description Protocol GameMode Original变量

🐛 修复

  • Debug窗口不换行
  • .NET6.0部分文字重叠
  • [ ] , &的消息无法正确匹配
  • 配置文件输出错误
  • 更改文件目录后无法正确启动
  • 缺少文件不能正确启动
  • 不能输出GameMode变量
  • 不能正确读取难度(#6
  • net6.0下无法正确打开网页
  • 任务栏图标错误

📃 文档|Docs

  • 更新文档