Releases: SereinDev/Serein
Releases · SereinDev/Serein
v2.0.1
Tip
这是一次次要更新,主要修复了一些影响正常使用的Bug
修复
- 4179769 在某些系统上无法获取监视器信息导致控制台刷屏
- 4179769 Lite版在尝试删除运行中的服务器时引发崩溃
- ac4256a 使用了Pty的服务器退出时抛出错误
- a63219f 某些情况下在控制台输入导致崩溃
- a63219f 获取服务器信息时导致崩溃
- 54a1de4 Lite和Plus的服务器配置编辑器中的端口下限不一致
- 71e293a Plus的服务器配置编辑器未设置父窗口
- 71e293a 服务器配置编辑器的端口项无法输入超过
32767
的数字 - 5daf425 Plus窗口不半透明
Tip
Note
不知道下面哪个文件适合你?看看这个文档
v2.0.0-rc1
- 时隔一年余Serein v2.0终于做好了
- 考虑到和v1的差别过大,此处不再写详细的更新日志。具体的差异内容请查看文档介绍
Warning
- 这是一个预览版,或者更准确地说是一个发布候选版,仍可能含有未知的Bug或漏洞,故在使用前你应该做好备份
- 此版本和v1的配置文件、数据文件、插件均不兼容
v1.3.5-pre5
⚠ 不兼容更新
- 变量名称修改
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
🚀 新功能
- 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将以小驼峰模式命名(事件除外)
- 获取Serein设置
- 增加函数类型校验
🐛 修复
- ❗❗❗输入命令时未转义
\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.PermissionList
和Bot.GroupList
类型由System.Collections.Generic.List<Int64>
转为JS原生数组
- 通过
- ❌插件触发异常 (较严重)
🧰 其他
支持查询在线使用人数- 更新语法
- 修改部分嵌套
- 调整项目结构
- 添加扫描工作流
- 更改变量名大小写
- 更改motd的成员类型
- 降低部分数据的保存频率
- 提高获取服务器信息的速度
- 提高解析命令和替换变量的速度
- 文件
task
->schedule
(可能需要重新导入数据文件)已自动实现转换读取
v1.3.3
🚀 新功能
- 加入了更多变量
- 支持设置行终止符
- 优化debug输出
- 输出时自动将Exception解压
- 链接更新
- 更新了控制台html文件 (需要删除console文件夹重新生成)
- 鼠标放开/键盘按键放开时自动复制
- WPF版可自动根据当前主题切换暗黑模式
- 支持wpf显示启动欢迎页面
- 新增启动自动运行选项(见
settings/Serein.json
) - 控制台版本相关
- 支持使用
Ctrl+C
关闭服务器或退出 - 支持Linux
- 由于系统类型差异,暂不支持获取该平台的CPU使用率
- 以后可能会想办法解决的~~(咕咕咕~~
- 读取不到数据文件时自动创建
- 更新了输出样式
- 支持使用
- JS插件相关
- 更新了Jint的版本
- 现支持
ECMAScript 2022
语法 - 也就是说你可以使用lambda表达式、
Promise
等语法了
- 现支持
- 使用枚举值区分js事件
- 支持禁用插件
- 使用
serein.log
的插件会自动附加命名空间
- 更新了Jint的版本
🐛 修复
- 服务器输出事件执行速度过快导致卡死
- 现在你可以根据自身性能修改限速,见
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
🚀 新功能
- WPF 【🎉新发布✨】
极简UI且极易上手,对萌新服主极其友好
- 更好的服务器插件管理
- 重新支持了获取更新
- 设置界面新增
ToolTip
- 在标题栏显示服务器启动文件
- 支持使用
↑
、↓
读取命令记录 - 完善各项功能
- 完善快捷跳转
- 完善开始页面部分功能
- 完善事件编辑器
- 支持更改主题
- 实现弹窗
- 实现服务器插件的加载和右键菜单
- 实现托盘图标功能
- 支持控制台显示
- 新增事件修改页面
- Winform
- 支持修改输出编码
- 支持修改事件
- 控制台
- 支持关闭彩色输出
- 更改了部分输出文字和样式
- 其他
- WPF
- 支持快捷启动参数
- 支持设置最大缓存行数
- 其他
- 部分页面刷新后不自动适应列宽
- 重命名了事件名称
- 支持自动替换消息中的at
- 输入
stop
可暂停重启计时器 - 读取
Event
和Matches
文件时自动更新
🐛 修复
- 控制台
- 无法编译
- WPF
- 无法即时读取成员列表
- 打开任务页面时自动执行
- 机器人状态显示错误
- 端口无法保存
- 部分设置无法更新
- 服务器输出编码选择后不变更
- 切换页面后控制台输出丢失
- 无法重新加载插件
- 仪表盘加载卡顿
- 系统信息获取不正确
- 列表显示不完整
- Winform
- 插件重复加载
- 部分子窗口大小可调
- 部分页面刷新后不自动适应列宽
- 其他
- 事件无法保存
- 绑定时不忽略首尾空格
- 群事件无法触发
- 可能导致命令Motd获取死循环
- 可能导致命令JS死循环
- 重启服务器仍出现弹窗
- 无法生成
Event.json
- js类大小写错误
- 链接错误
Logger
输出类型错误- 插件关闭服务器时仍出现弹窗
- 任务重复执行
- 服务器未启动前强制结束导致崩溃
- 绑定时未处理头尾空格
- 异常关闭导致设置丢失
- 输出日志时未换行
📃 文档
船新文档已上线
- 分类更加合理
- 支持快捷搜索
- 新增扩展列表
⚠ 不兼容更新
- 事件文件格式有所改动,可能导致原有设置失效
- JS的WebSocket实例化对象后不再自动连接,需手动使用
open()
连接
v1.3.1
🚀 新功能
- 新增命令行版Serein
- 重定向Debug输出
- 新增命令行版帮助页面
- 支持命令行版Serein加载插件
- 完善更多功能
- 合并代码
- 支持多条多行匹配正则配置
- 更改判断服务器退出逻辑
- 再一次更改了服务器状态逻辑
- 更改链接
- 为js引擎增加更多功能
- 支持js连接ws
- 更新js解释器功能
- 更改js解释器初始化逻辑
- 添加js插件
- 增加
setInterval
和setTimeout
函数 - 为插件右键菜单加入更多功能
- 增加子窗口的帮助功能
- 更改部分报错信息
- 更新示例插件
- 添加启动参数
🐛 修复
- nukkit服务端输出异常
- 无法导入命名空间
- Timer无法关闭
- 读取文件后无法释放
ClearTimeout
等函数拼写错误- 文件名错误
- 等待服务器退出的Task异常消失导致判断错误
- 拖拉排序表格内容时数组下标越界
- 输出时空格未被转义导致显示与实际不符
- 输出命令时未转义
- https://serein.cc 链接不正确
- 窗口释放后消息仍能输出到控制台
- 控制台输出空格不换行
📃 文档
- 更新函数
- 修复格式错误
- 更新文档
🧰 其他
- 删除不必要的代码
- 格式化
- 更新工作流
- 删除病句
v1.3.0
🚀 新功能
- 支持加载Serein的JS插件
- 此功能暂时不太成熟,务必谨慎使用
- 开发文档:
Javascript[已过时]
- ws断线重连
- 纯文本发送至机器人 #11
🐛 修复
- 大部分线程冲突问题
- 含[]的消息无法正确匹配
- 监听群和管理设置保存错误
📃 文档
- 更新文档
🧰 其他
- 增加函数注释
- 更新工作流
v1.2.9
🚀 新功能
- 新增了GameID变量(详见
变量列表-成员管理变量[已过时]) - 支持自定义事件被触发后执行的命令(详见
事件[已过时]) - 支持获取Java服务器Motd
- 删除了
Matches/ipv4Port
设置项 - 支持选择服务器类型
- 支持设置本地服务器端口
- 为Event设置添加了说明
- 支持查询Motd
- 新增motdpe和motdje两个指令,可用于获取指定服务器信息(详见
命令-获取服务器信息[已过时]) - Debug添加文本上限
- 添加Favicon变量(详见
变量列表-服务器motd变量[已过时]) - 再一次支持了动态更新设置文件
- 新增权限不足反馈
🐛 修复
- 更改群成员时因列表变化失败
- 处理消息回执时出现异常
- 群限定范围错误
- 任何非管理员消息都反馈无权限
- 事件无法执行解绑命令
- Event莫名其妙数组重复
- 命令列表缓存重复
- 含有换行符
\n
\r
的命令无法执行 - 类型为List<string>的设置项出现重复
📃 文档
- 更新文档
- 修复错字
- 修复格式错误
- 新增正则下载连接
🧰 其他
- 优化代码
- 格式化代码
- 优化部分代码逻辑
- 更改命名空间
- 删除不必要的引用
- 修复格式错误