Sid Meier's Civilization VI

Sid Meier's Civilization VI

"Unit Limit" Adjustment and Translation
单位限制原mod描述翻译
基础机制
该游戏性Mod为每个文明在特定时间可拥有的单位数量设定了动态限制。Mod新增了一个顶部面板,显示您当前的单位数量以及各类单位的数量上限。本Mod的主要目的是防止AI过度刷单位而导致地图过于拥挤。

单位被分为五大主要类别:
陆战单位;海军单位;空军单位;支援单位;宗教单位。

此外,对以下特定平民单位设有独立的数量限制:
开拓者;建造者;自然学家。

每位玩家的每类单位都有一个最大数量上限,该上限会随着游戏进程动态变化,具体取决于以下因素:
城市数量;
特定区域(区域)数量(兵营类区域影响陆战/支援单位,港口影响海军单位,机场影响空军单位,圣地影响宗教单位);
区域内建筑数量(对应上述各类区域)。

除了这些动态变化的限制外,每类单位还设有一个硬性上限(最高值)。该硬性上限根据地图大小进行调整(地图越小,单位上限越低)。默认的硬性上限数值已在上方图片中列出。如需关闭硬性上限,请参见下文说明。

注意:特定平民单位(如开拓者、建造者等)的数量限制不会因新增区域或建筑而提升。

默认的限制参数详见上方图片中的表格。您可通过编辑 TCUnitLimit.lua 和 TCUnitLimitTopPanel.lua 文件中的数值,轻松调整各项单位上限。

顶部面板
新增的顶部面板会显示您当前拥有的陆战、支援、海军、空军和宗教单位数量及其对应的数量上限。我决定不在该面板上显示建造者、开拓者和自然学家的限制,是为了避免信息过于繁杂。这些单位的限制较为简单,玩家无需UI辅助也较容易自行追踪。

由于本Mod的顶部面板会替换您可能正在使用的其他Mod所添加的顶部面板,因此我额外加入了一个舒适度(Amenities)总览指示器。将鼠标悬停在该指示器上时,您将看到当前拥有的所有奢侈资源的完整列表。我此前一直使用CQUI的顶部面板,因此无法接受将奢侈资源信息移出顶部区域——这一设计正是为此而保留。

它是如何工作的?
当某类单位数量达到上限时,您的城市将无法继续生产该类型的单位。一旦您的单位数量回落到上限以下,或因新建城市、区域或建筑导致上限提升,您便可再次生产该类单位。

如果某个文明的单位数量因特殊情况(例如失去城市、从村庄奖励中获得单位等)而超过当前上限,已有的超额单位不会被移除——系统仅阻止您继续生产,而不会惩罚已有单位。

底层(实现)机制说明:
所有单位都被赋予了一个“前置需求建筑”,例如“陆军单位解锁”、“开拓者单位解锁”等。

当您的单位数量低于上限时,这些“解锁类建筑”会自动出现在您的城市中,允许您生产对应类型的单位。
一旦达到上限,这些建筑将从所有城市中移除,相应单位的生产也随之被禁止。
当您再次低于上限时,这些建筑会重新出现,单位生产功能也随之恢复。


重要提示:
为了实现上述机制,本Mod要求所有单位不再依赖原本的生产建筑。因此,原本需要特定建筑才能生产的单位(如传教士、使徒、军事工程师等),现在改为仅需对应建筑所需的科技或市政即可生产。

从实际游戏体验来看,最主要的变化是:您现在可以在建造神庙(Temple)之前就生产使徒(Apostle)。其他类似单位的生产逻辑也做了相应调整,整体更灵活,但依然保持科技/市政进度作为核心解锁条件。

兼容性
本Mod 兼容 官方DLC以及第三方添加的单位(mod单位)。

已确认兼容以下单位类Mod:
Steel and Thunder Units
Steel and Thunder Unique Units
Warfare Expanded: Complete Edition

潜在兼容性问题:
本Mod会移除所有单位对“建筑前置条件”的依赖。因此,如果某个Mod添加的单位仅以建筑作为生产前提,而没有科技或市政要求,那么这些单位将从游戏第一回合起即可建造(无需等待相关建筑建成)。

建议在使用此类单位Mod时,检查其设计逻辑是否受影响,必要时可手动调整。

此外,本Mod将覆盖您正在使用的其他顶部面板Mod(如CQUI或其他UI增强Mod的顶部栏),请知悉。

如何修改单位上限?
进入您的Steam创意工坊文件夹:
路径通常为:Program Files -> Steam -> steamapps -> workshop -> content
找到包含本Mod文件的文件夹。
在其中找到两个关键文件:TCUnitLimit.lua 和 TCUnitLimitTopPanel.lua。
使用任意文本编辑器(如记事本、Notepad++等)打开这两个文件。
文件内部的变量均已附有详细注释说明,请仔细阅读注释后按需修改数值。
⚠️ 重要提示:请确保您在两个文件中对同一参数的修改保持一致,否则可能导致显示与实际机制不符。

如何关闭硬性上限(Hard Cap)?
按照上述路径找到本Mod的文件夹。
打开 TCUnitLimit.lua 和 TCUnitLimitTopPanel.lua 两个文件。
在文件顶部附近,找到名为 bEnableHardCap 的变量。
将其值由 true 修改为 false(即:bEnableHardCap = false)。
⚠️ 同样请确保在两个文件中都进行此修改,否则设置可能无效。
Last edited by 无敌的小学又倒下了; 25 Sep @ 8:16pm