#mod #user #tiger #checking #strategy #ck3-tiger #vic3-tiger

tiger-bin-shared

ck3-tiger、vic3-tiger 和 imperator-tiger 的共享二进制库

2 个版本 (1 个稳定)

1.0.0 2024年7月3日
0.9.6 2024年4月12日

#64游戏

44 每月下载次数
3 crates 中使用

GPL-3.0-or-later

5.5MB
100K SLoC

Tiger Banner

GitHub Release GitHub License tiger-lib docs.rs Discord

Tiger 猎取虫子。检查《十字军之王3》用户模组文件中的错误,并警告用户。例如:缺少本地化,或在角色上使用信仰触发器。

《十字军之王3》是由 Paradox Interactive 开发的大战略游戏,玩家制作的模组用于增强或改变他们的游戏体验。这个工具是为制作模组的人准备的。

ck3-tiger 现在也包含 vic3-tiger,它为《维多利亚3》做同样的事情,以及 imperator-tiger,它为《罗马帝国》做同样的事情。

状态

此项目正在成熟但尚未稳定。它会警告一些实际上是正确的事情。

vic3-tiger 比较年轻,因此警告将不如 ck3-tiger 准确。

功能

ck3-tiger (或 vic3-tigerimperator-tiger) 将读取相关的原始文件和您的模组文件,并会对您模组中的所有看起来不正确的地方提出抱怨。在可能的情况下,它会告诉您为什么它认为这个事情是错误的,并且在非常少数的情况下,您可以做什么。

  • 语法验证:您是否使用了正确的键 = 值对?没有拼写错误吗?
  • 缺少项目:您引用的每个游戏对象实际上是否在某个地方定义了?
  • 缺少本地化:您是否为您的模组拥有所有需要的本地化?
  • 作用域一致性检查:您是否在文化上使用文化效果,在角色上使用角色效果等?
  • 历史(CK3):配偶、雇主和封君在相关日期是否还活着?是否没有人是自己的祖父?
  • 特别:rivers.png 检查

示例输出

Sample Output

Sample Output

Sample Output

如何使用

ck3-tiger

GitHub下载发布包。将其解压到某个位置。

在Windows上,如果一切顺利,您可以双击ck3-tiger-auto并尝试运行。

否则,从命令提示符运行工具

path/to/ck3-tiger path/to/your/descriptor.mod

path/to/ck3-tiger "path/to/Paradox Interactive/Crusader Kings III/mod/YourMod.mod"

(请注意,路径两侧的引号非常重要,因为其中包含空格。)

如果您希望将输出重定向到文件,可以这样做

ck3-tiger path/to/your/descriptor.mod >filename

vic3-tiger

GitHub下载发布包。将其解压到某个位置。

在Windows上,如果一切顺利,您可以双击vic3-tiger-auto并尝试运行。

否则,从命令提示符运行工具

path/to/vic3-tiger path/to/your/mod

path/to/vic3-tiger "path/to/Paradox Interactive/Victoria 3/mod/YourMod/"

(请注意,路径两侧的引号非常重要,因为其中包含空格。)

如果您希望将输出重定向到文件,可以这样做

vic3-tiger path/to/your/mod >filename

imperator-tiger

GitHub下载发布包。将其解压到某个位置。

从命令提示符运行工具

path/to/imperator-tiger path/to/your/descriptor.mod

path/to/imperator-tiger "path/to/Paradox Interactive/ImperatorRome/mod/YourMod.mod"

(请注意,路径两侧的引号非常重要,因为其中包含空格。)

如果您希望将输出重定向到文件,可以这样做

imperator-tiger path/to/your/mod >filename

如何配置

您可以将文件ck3-tiger.conf(或vic3-tiger.confimperator.conf)放置在您的模组目录中。您可以使用它来选择要检查本地化的语言,以及抑制关于您不想修复的事情的消息。

发布中包含一个示例ck3-tiger.conf文件、vic3-tiger.conf文件和imperator-tiger.conf文件,其中包含有关其中内容的说明。还有一个指南

如何构建

如果您想自己构建,您将需要安装Rust编程语言。您可以从发布中的某个源存档获取(最好是最新版本)或克隆Git仓库。

对于ck3-tiger,在项目目录中运行cargo build --release -p ck3-tiger,然后作为cargo run --release -p ck3-tiger运行程序。
对于vic3-tiger,在项目目录中运行cargo build --release -p vic3-tiger,然后作为cargo run --release -p vic3-tiger运行程序。
对于 imperator-tiger,在项目目录中运行 cargo build --release -p imperator-tiger,然后以 cargo run --release -p imperator-tiger 的方式运行程序。

Visual Studio Code 扩展

用户 unLomTrois 为 ck3-tiger 制作了一个 VS Code 扩展。它允许您在“问题”标签中直接查看报告。

仅显示新报告

您可以指示 tiger 抑制在上一次运行中显示的报告。当您只想查看更改的内容时,例如在更新您的模组后,这非常有用。首先您必须生成一个“基线”来与未来的运行进行比较

ck3-tiger --json path/to/your/mod >baseline.json

您可以使用任何文件名代替 baseline.json。然后当您再次运行 tiger 时,您可以指示它排除基线中的报告

ck3-tiger --suppress baseline.json path/to/your/mod

它也适用于 vic3-tigerimperator-tiger

贡献

我欢迎贡献和合作!以下是一些贡献的形式

  • 关于 tiger 应该检查哪些内容的建议和想法
  • 告诉我哪些输出消息是令人困惑或难以理解的
  • 报告 tiger 抱怨的不是真实问题的案例(假阳性)
  • 在 GitHub 上提交有关您遇到的问题的问题,或直接给我发邮件
  • 启动游戏以验证代码中标记为 "TODO: verify" 的内容

也欢迎以代码形式进行的贡献。它们应作为 GitHub pull request 进行,并在这样做之前您应该阅读并理解项目的版权许可。不过,在开始编码之前提交一个 GitHub issue 可能会很有帮助,因为我不一定喜欢以不同的方式解决问题。

一些代码贡献的想法

  • 添加新的检查及其错误报告
  • 添加对新项目类型的验证器
  • 更新验证器以支持新的游戏版本
  • 解决代码中的数百个 TODO 注释之一
  • 解决 TODOIDEAS wiki 页面上标记的问题之一
  • 速度或内存使用改进;机会无处不在

有关代码和编码风格的概述,请参阅 CODING wiki 页面。

许可

本程序是自由软件:您可以在自由软件基金会发布的 GNU 通用公共许可证的条款和条件下重新分发和/或修改它,许可证版本为 3 或(根据您的选择)更高版本。

本程序按“希望有用”原则提供,但不提供任何保证;甚至不保证适销性或适用于特定目的。有关详细信息,请参阅 LICENSE 文件。

依赖关系

~15–32MB
~570K SLoC