Skip to content

Repository files navigation

UnityModBase

GitHub all releases GitHub release (latest by date) platform

简体中文 | English

UnityModBase 是一个面向 Unity 模组开发的基础设施解决方案。仓库包含核心类库和 BepInEx 生命周期适配层,主要用于统一管理模组的生命周期、配置、日志、热键、翻译和 IMGUI 工具窗口。

仓库组成

目录 说明
UnityModBase 核心类库,包含框架公开 API 和详细接入文档
BepInExLauncher BepInEx 启动适配层,负责初始化、游戏启动派发和统一释放
UnityModBase.Test 基于 xUnit 的单元测试项目

文档导航

文档 简体中文 English
核心类库说明与快速开始 README README
公开 API、调用顺序与约束 API API

初次接入建议先阅读核心类库 README;需要查找类型、成员、事件或线程约束时,再查阅 API 文档。

使用指引

使用内置 BepInEx 启动器

  1. 构建或取得 UnityModBase.dll 与 UnityModBase.BepInExLauncher.dll。
  2. 将两个文件放入目标游戏的 BepInEx/plugins 目录。
  3. 在模组项目中引用 UnityModBase.dll。
  4. 按核心类库快速开始注册模组用户、配置、日志和实时控制项。

内置启动器会负责调用框架的 Initialize、GameBootRegistry.Boot 和 Dispose。使用该启动器的模组不应重复驱动全局生命周期。

默认操作

热键 操作
F1 显示或隐藏配置窗口
F2 显示或隐藏日志窗口
F3 显示或隐藏实时控制窗口
Ctrl+R 从磁盘重新加载所有已注册用户的配置

热键、界面语言和窗口布局均可在 UnityModBase 自身的配置中调整。三个窗口会分别记住选中的模组用户;已保存的用户不可用时会回退到默认用户。

热键文本使用 + 连接组合键、, 分隔备选组合,例如 Ctrl+F,GamepadStart+GamepadA。在配置文本中使用 (NONE),F1 可禁用热键并保留 F1 组合,删除 (NONE) 段即可恢复。单独的 (NONE) 也可表示禁用;此时通过界面重新启用会使用 F12 作为默认组合,可随后重新录制。

使用自定义宿主

如果不使用 BepInEx 启动器,宿主需要自行选择安全的 Unity 生命周期节点,并按顺序调用初始化、游戏启动派发和释放入口。具体顺序及主线程约束见核心类库说明和生命周期 API。

许可

UnityModBase 使用 LGPL-3.0 许可证,详见 LICENSE.txt。

About

Unity mod infrastructure with BepInEx lifecycle integration, typed configuration, logging, hotkeys, localization, and IMGUI tools.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages