模组设置中心

创作者: wuyuwan39
已更新:2026-08-28 16:23:50
878KB

关于此 MOD

EM2026 mod 统一设置中心:设置窗一个入口,自动发现各 mod 设置页,语言热切换。纯 UI 容器,不碰存档。
EM Mod 设置中心

EM2026模组的统一设置中心。

剧透:  
显示

EM2026模组的统一设置中心:在游戏设置窗口左上角添加一个“模组设置”按钮,点击后打开一个带有侧边导航的对话框,可切换查看各模组的设置页面。

这是一个纯 UI 容器——它本身不包含任何模组专属设置,不会更改任何游戏数值,也绝不会触碰存档文件。任何模组都可以接入,详见下方的开发者部分。

功能
  • 游戏设置窗口中的一个入口按钮,位于左上角的青绿色“模组设置”。
  • 设置中心对话框:左侧为页面导航(有序、高亮选中项),右侧为可滚动内容区域。
  • 自动发现:每次打开对话框时自动发现集成的模组——零配置,零编译时耦合。
  • 实时语言切换:更改游戏语言后,按钮和所有中心文本(包括子页面)会立即刷新。
  • 绝不破坏游戏:若单个页面构建失败,仅显示回退提示;其他页面及游戏本身不受影响。

整合模组
  • EM LlmService(1.1.0+)
  • EMTV颁奖典礼 (1.1.0+)
  • EM PlayerOfTheYear (1.1.0+)
当中心界面存在时,这些模组会自动隐藏各自的独立设置按钮,使所有模组设置集中在一处管理。在没有中心界面的情况下,它们也能通过各自的按钮正常使用。

安装
  • 安装 BepInEx(EM2026 版本)。
  • 请确保EM.Framework(五个框架DLL文件,一份全局副本)已安装在BepInEx/plugins/EM.Framework/目录下。
  • 将模组文件夹 EM.ModSettingsHub/ 放入 BepInEx/plugins/ 中。
  • 启动游戏并打开设置——左上角会出现“Mod设置”按钮。

兼容性
  • 游戏:电竞经理 2026
  • 需要:EM.Framework 0.2.3+
  • 与其他模组零耦合:无需安装任何集成模组即可运行(会显示空状态提示)。

面向模组开发者——如何集成
无需引用此模组。在你的插件程序集中声明一个名为 EmSettingsHubEntry 的静态类(命名空间不限);枢纽每次打开其对话框时,都会按类型名称对所有已加载的程序集进行反射扫描。

已识别的静态成员(公共或非公共;Id/Title/Order 可以分别是属性、字段或无参数方法):
  • 编号 — 必需项。稳定标识符,用于去重并作为排序的最终依据。
  • void BuildContent(Transform parent) — 必需。将你的设置界面构建到父级(一个可滚动的垂直布局内容区域,宽约 740 像素)。每次打开页面时调用。
  • 标题 — 可选。导航中显示的页面标题;每次打开时实时求值,因此请以当前游戏语言返回。回退到 Id。
  • 整数顺序 — 可选。导航排序顺序,默认1000;数值越小越靠前。(已占用:100 LlmService,200 EMTV Awards,300 PlayerOfTheYear。)
  • 关闭时 — 可选。当用户切换离开你的页面或关闭中心时调用;在此处清除你缓存的控制引用(中心会为你销毁 GameObject)。

示例:
public static class 模拟设置中心入口
{
    public static string Id => "mymod";
    public static string Title => MyStrings.Tr("dialog.title"); // 实时,跟随游戏语言
    public static int Order => 500;
    public static void BuildContent(Transform parent) => MyConfigDialog.BuildIntoHub(parent);
    public static void OnClosed() => MyConfigDialog.OnHubClosed();
}

说明:
  • 从 BuildContent 抛出的异常会被中心捕获;你的页面会显示备用提示,其他页面不受影响。
  • 可选:安装中心后隐藏你自己的独立设置按钮:在已加载的程序集中探测类型名 EM.Mods.ModSettingsHub.HubPlugin(缓存结果)。这样可保持软依赖——即使没有中心,你的模组也能完全正常运行。
  • 当游戏语言在中心界面打开时发生更改,中心会通过 BuildContent 重建页面——你这边无需额外操作。


剧透:  
显示

EM2026 mod 的统一设置中心:在游戏「设置」窗口左上角加一个「Mod 设置」按钮,打开「左侧子页导航 + 右侧内容区」的设置中心,把各个 mod 的设置页收进同一个对话框。

本身是纯 UI 容器——不含任何具体 mod 的设置内容、不改游戏数值、不写存档。任何 mod 都可以接入,见下方开发者章节。

功能
  • Mod 设置
  • 设置中心对话框:左侧子页导航(按序排列、选中高亮),右侧内容区(可滚动)。
  • 自动发现:打开时自动发现已安装且已接入的 mod 设置子页,零配置、零编译期耦合。
  • 语言热切换:游戏内切换语言时,入口按钮与设置中心文案(含各子页)即时刷新。
  • 永不崩游戏:单个子页构建失败只显示降级提示,不影响其余子页与游戏本体。

已启用的 mod
  • EM LlmService(1.1.0+)
  • EMTV 颁奖典礼(1.1.0+)
  • 年度最佳球员
安装本设置中心后,以上 mod 会自动收起自己的独立设置按钮,入口统一走这里;不装本设置中心时它们也照常工作。

安装
  • 安装 BepInEx(EM2026 版)。
  • 确保已安装 EM.Framework(框架五件套,全局一份,放 BepInEx/plugins/EM.Framework/)。
  • 把 mod 目录 EM.ModSettingsHub/ 放进 BepInEx/plugins/。
  • 启动游戏,打开「设置」即可看到左上角「Mod 设置」按钮。

兼容性
  • 游戏版本:电竞经理 2026
  • 依赖:EM.Framework 0.2.3+
  • 与各 mod 零耦合:不装任何接入 mod 也能运行(显示空态提示)。

给 Mod 开发者——如何接入
无需引用本模组。在你的插件程序集中声明一个名为 EmSettingsHubEntry 的静态类(命名空间不限);设置中心每次打开对话框时,会按类型名反射扫描所有已加载的程序集。

识别出的静态成员(public 或非 public 均可;Id/Title/Order 可以是属性、字段或无参方法):
  • ID——必需。稳定标识,用于去重与排序次键。
  • void BuildContent(Transform parent)——必需。将你的设置 UI 构建到 parent 中(一个可滚动的垂直布局内容区,约 740 px 宽)。每次打开子页时都会调用。
  • 标题——可选。导航栏里的子页标题;每次打开现取现算,请按当前游戏语言返回。缺省回退 Id。
  • 订单——可选。导航排序,默认 1000,数值越小越靠前。(已占用:100 LlmService、200 EMTV Awards、300 PlayerOfTheYear。)
  • 关闭时——可选。用户切走你的子页或关闭设置中心时调用;在这里清掉你缓存的控件引用即可(GameObject 由设置中心负责销毁)。

示例:
public static class EmSettingsHubEntry
{
    public static string Id => "mymod";
    public static string Title => MyStrings.Tr("dialog.title"); // 实时获取,跟随游戏语言
    public static int Order => 500;
    public static void BuildContent(Transform parent) => MyConfigDialog.BuildIntoHub(parent);
    public static void OnClosed() => MyConfigDialog.OnHubClosed();
}

说明:
  • BuildContent 抛异常会被设置中心接住,你的子页显示降级提示,其余子页不受影响。
  • 可选做法:检测到设置中心在场时收起你自己的独立设置按钮——反射探测已加载程序集中是否存在类型 EM.Mods.ModSettingsHub.HubPlugin(结果做缓存)。这样保持软依赖,不装设置中心你的 mod 依然完整可用。
  • 设置中心打开时切换游戏语言,会通过 BuildContent 重建子页,你无需额外处理。




电竞经理 2026 的热门 MOD

探索适用于 电竞经理 2026 的最佳MOD,带来新功能、升级画面,以及令人兴奋的方式来改变您的游戏体验。

使用 Xmod 解锁 电竞经理 2026 的全部潜力 — 今天就探索这些顶级 MOD!