Skip to content

Releases: mosuka136/UnityModBase

UnityModBase v1.1.0

Choose a tag to compare

@mosuka136 mosuka136 released this 01 Oct 02:42

UnityModBase v1.1.0

新增功能

  • GUI 新增搜索功能,可按名称快速定位配置项/控件节点,并支持拼音模糊匹配
  • 枚举(enum)字段新增多语言显示支持,新增 EnumGuiDescriptionAttribute 用于声明各枚举值的翻译
  • 热键系统引入“禁用热键”功能
  • 按下配置重载热键时,现在会重新加载所有用户的配置
  • 配置 GUI 新增对集合(Collection)和 Tuple 类型的编辑器支持
  • GUI 窗口宽高、位置支持配置,并支持鼠标拖拽拉伸窗口大小
  • GUI 的用户交互状态(如节点展开/折叠等)支持持久化保存,重启后保留
  • 引入多元素配置条目的统一绑定契约及分元素说明支持,适配组合编辑器与控件悬停提示

性能优化

  • 配置自动保存改为后台线程异步写入,不再阻塞主线程;显式调用 Save/Write 仍会同步等待写入完成,返回值语义不变
  • Bool / Enum 字段编辑增加提交延迟,消除点击切换按钮时的明显卡顿
  • 优化集合(Collection)在大量数据下的显示性能,消除卡顿

问题修复

  • 修复数字编辑框无法输入小数点的问题
  • 修复唤出 GUI 界面时出现闪烁的问题
  • 修复热键条目展开后重置时,无法正确显示重置后热键的问题

重构 / 需注意的变更

  • 热键相关命名空间由 HotkeyManager 迁移到 HotkeySpace(涉及 Hotkey、HotkeyChord、HotkeyResult、KeyboardTrigger 等多个类型)。从旧版本升级的模组需要同步更新对应的 using 引用

UnityModBase v1.0.0

Choose a tag to compare

@mosuka136 mosuka136 released this 30 Aug 07:51

UnityModBase v1.0.0

UnityModBase 的首个版本,为 Unity 模组提供统一的基础设施与 BepInEx 生命周期集成。

主要功能

  • 进程初始化、游戏启动、逐帧更新及退出生命周期
  • 基于特性的启动方法和常驻 Unity 组件注册
  • 强类型配置、自动保存与事务式配置重载
  • 用户上下文及子上下文资源隔离
  • 内存日志、重复日志合并和文件日志
  • 键盘与手柄组合热键
  • 中英文文本及运行时语言切换
  • 配置、日志和实时控制 IMGUI 窗口
  • 可替换的 Unity 与 IMGUI 提供器
  • BepInEx 启动器自动管理初始化、启动和释放

安装

将以下文件放入游戏的 BepInEx/plugins 目录:

UnityModBase.dll
UnityModBase.BepInExLauncher.dll

开发环境

  • .NET Framework 4.7.2
  • BepInEx

详细接入方式及公开 API 请参阅仓库中的中英文文档。

许可

UnityModBase 使用 LGPL-3.0 许可证。