泰尔达林的插件加载器

泰尔达林的插件加载器

一个为Kenshi设计的独立原生插件加载器,具备游戏内Mods管理器、配置编辑、自动更新以及面向闭源或开源插件的开发者友好API。

[center][size=6][b]Teirdalin 的插件加载器[/b][/size]
[size=3]一个用于 Kenshi 的原生插件加载器和模组管理器。[/size][/center]



我制作 TPL 是因为我想要一种相当轻量级的方式来加载 Kenshi 原生插件,而不必捆绑一堆与游戏无关的改动。

它也对模组作者友好。TPL 自带自己的 API 和独立 SDK,没有人会因为为其制作了插件就不得不公开自己的全部源代码。你可以制作免费的、商业的、开源的、闭源的,或者按你喜欢的任何方式授权。你的插件完全属于你自己。

[size=4][b]功能[/b][/size]

[list]
[]为 Kenshi 加载原生 TPL 插件。[/]
[]在 Kenshi 主菜单中添加一个新的 [b]模组[/b] 按钮。[/]
[]将你已安装的 FCS 模组和原生插件一起显示在一个地方。[/]
[]让你启用或禁用受支持的模组和插件。更改将在下次启动 Kenshi 时生效。[/]
[]让你在游戏内编辑受支持的文本
[code].cfg[/code] 文件,并为你保留备份。[/
]
[]包含可选的自动更新检查。[/]
[]包含 TPLLib,它处理常见的插件工作,例如日志记录、已检查地址、钩子、共享钩子链、主线程调度、服务和诊断。[/]
[]设计上能够与你可能已在使用的其他插件加载器一起安装。[/]
[/list]
[size=4][b]要求[/b][/size]

[list]
[]Windows x64[/]
[]Steam Kenshi 1.0.65 x64[/]
[]Microsoft Visual C++ 2010 x64 可再发行组件[/]
[/list]
[size=4][b]安装[/b][/size]

[b]推荐:使用安装程序[/b]

[list=1]
[]关闭 Kenshi。[/]
[]从文件标签页下载
[code]TPL-0.1.0-Installer.exe[/code]。[/
]
[]运行它。[/]
[]确认它找到的 Kenshi 文件夹,或者自己指向正确的文件夹。[/]
[]选择 [b]安装[/b]。[/]
[/list]
安装程序未签名,因此 Windows SmartScreen 可能会提示未知发布者。这在此版本中是预期情况。

[b]手动安装[/b]
[list=1]
[]关闭 Kenshi。[/]
[]从文件标签页下载
[code]TPL-0.1.0-Manual.zip[/code]。[/
]
[]将所有内容直接解压到你的 Kenshi 文件夹中。[/]
[]运行
[code]Install TPL.bat[/code]。[/
]
[/list]
无论你使用哪种方法,安装程序都会备份 Kenshi 的插件配置以及它需要替换的任何现有 TPL 文件。它不会动你的模组、设置、存档和模组顺序。

[size=4][b]重新安装或卸载[/b][/size]

只需再次运行安装程序。

如果 TPL 已经安装,它会给你 [b]重新安装[/b] 和 [b]卸载[/b] 选项。手动包通过
[code]Install TPL.bat[/code]
提供相同的选择
[size=4][b]使用 TPL[/b][/size]

正常启动 Kenshi。你现在应该会在主菜单上看到一个新的 [b]模组[/b] 按钮。

在那里你可以看到 TPL 找到的 FCS 模组和原生插件,启用或禁用受支持的条目,编辑受支持的配置文件,并控制自动更新检查。

启用和禁用更改会立即保存,但它们会在下次启动 Kenshi 时生效。原生 DLL 无法安全地从正在运行的游戏中被强行移除,而我宁愿让你重启,也不愿假装可以并弄出问题。

TPL 会检查官方发布版本的更新。当有更新可用时,它会被下载并暂存以供稍后启动。

[size=4][b]兼容性与合理的免责声明[/b][/size]

如果你已经安装了其他原生加载器,TPL 设计上可与它们一起工作。

如果你的某个模组需要另一个加载器、库或特定游戏版本,请保持该依赖项处于安装状态。某个插件出现在 TPL 的模组菜单中,意味着 TPL 找到了该文件。这并不意味着该插件所需的所有外部依赖都已包含。

这是 0.1.0 版本,也是首次公开发布。我已经测试了加载器、安装程序、卸载程序、模组菜单、更新程序和主要运行时接口,

这是一个可用的版本,但仍是一个早期版本。

[size=4][b]致模组作者[/b][/size]

有一个独立的 TPL SDK

SDK 包括:

[list]
[]一个 Visual Studio 2022 C API 入门项目[/]
[]一个插件项目生成器[/]
[]构建、部署和打包脚本[/]
[]可编译的示例[/]
[]API 参考[/]
[]插件配方和示例[/]
[]生命周期文档[/]
[]故障排除信息[/]
[/list]
插件可以放在 FCS 模组文件夹内,或者放在
[code]TPL/plugins[/code] 下,并带有其 DLL 和
[code]TPL.json[/code] 清单。

最重要的是,插件作者保留对自己作品的控制权。你的插件可以是免费的、商业的、开源的、闭源的、采用 JDL-1 许可的,或者完全采用另一种许可。TPL 不要求独立开发的插件公开其源代码。

[url=https://github.com/Teirdalin/TPL/tree/main/docs/developers][b]开发者指南[/b][/url]

[url=https://github.com/Teirdalin/TPL/releases/latest][b]独立 SDK 下载[/b][/url]

[size=4][b]可能被问到的问题[/b][/size]

[b]TPL 会修改我的存档吗?[/b]

不会。安装、重新安装或卸载 TPL 不会编辑你的存档文件。单个插件显然可以改变游戏,所以请阅读你安装的任何插件的页面。

[b]启用或禁用的更改会立即生效吗?[/b]

不会。你的选择会立即保存,并在下次 Kenshi 启动时应用。。

[b]它里面装满了病毒吗?[/b]

没有,但你可以随意为此编造一个阴谋论。

[b]插件作者可以保持其源代码私密吗?[/b]

可以。独立制作的 TPL 插件可以采用其创作者选择的任何条款,包括闭源和商业发布。

[b]日志在哪里?[/b]

TPL 会在你的 Kenshi 安装文件夹内写入
[code]TPL.log[/code]。如果你报告加载器或插件启动问题,请附上该文件。这比告诉我“不能用”有用得多。

[size=4][b]更新与错误报告[/b][/size]

[url=https://github.com/Teirdalin/TPL/releases/latest][b]最新版本[/b][/url]

[url=https://github.com/Teirdalin/TPL][b]源代码和文档[/b][/url]

[url=https://github.com/Teirdalin/TPL/issues][b]错误报告[/b][/url]

报告问题时,请包括你的 Kenshi 版本、TPL 版本、你是如何安装的,以及你的
[code]TPL.log[/code]
[size=4][b]支持[/b][/size]

如果你喜欢我的模组、工具和其他各类项目,并想帮助我继续制作它们,你可以在这里找到我:

[url=https://ko-fi.com/teirdalin][b]Ko-fi[/b][/url]

[url=https://www.patreon.com/cw/Teirdalin][b]Patreon[/b][/url]

支持总是受欢迎的。<3

[size=4][b]许可证[/b][/size]

TPL 在 [url=https://github.com/Teirdalin/TPL/blob/main/LICENSE]Jelly Doughnut License (JDL-1)[/url] 下提供源代码。允许个人使用修改。除非已获得单独书面许可,否则再分发、捆绑和其他修改需要创作者许可。

独立插件不自动受 JDL-1 约束。插件作者选择自己的条款,并且不要求公开其源代码。

[url=https://github.com/Teirdalin/TPL/blob/main/THIRD_PARTY_NOTICES.md][b]第三方声明[/b][/url]