修复无人机控制

修复无人机控制

允许您启用或禁用维修无人机。

游戏玩法

首先,长篇警告:这是我为 X4 制作的第一个模组。我习惯为 X3 制作模组,X4 有点不同。

话虽如此,我已尽可能进行了测试,没有发现问题。但这不代表完全没有问题,所以我才发布它。

如果发现任何问题或有什么建议,请在此处报告。

这本该是一件简单的事情,但结果却和我想的完全不同。尤其对于刚接触编程的我来说更是如此。

工作原理:

  • 当你关闭修复无人机时,它会取消其大量交通活动,从而移除所有 VAR。(这是默认机制,并非我新增的功能。)
  • 我发现的重新启动大量交通的唯一方法是在无人机激活时检查飞船,并根据伤害程度重新发射它们。
  • 我只添加代码,不修改基础文件中的任何内容,这意味着它应该与所有模组兼容。唯一的例外是当你重新启动无人机时,它会使用基础代码,并且在重新启动时忽略对检查伤害部分的任何修改。然后它应该会回到原始代码,因为重启代码仅用于重新启动无人机(该代码实际上是检查伤害的原始代码)。

我尝试在重启时使用标签让飞船完全重新开始,但未能成功,所以我采用了这种方法。它只在玩家飞船上运行,且仅在你重新激活无人机时运行,因此影响极小。

一些需要注意的事项:

  • 我无法控制无人机返回的时间,它们有自己的指令并会执行。
  • 有时它们在返回前会短距离徘徊。
  • 模组只有英文版本(我只懂英语)。欢迎翻译,我将添加进去。
  • 如果 AI 启动了无人机,它们可能会暂时行为异常,但一旦你接管控制,它们会快速返回并发射。
  • 我要感谢 kuertee 和 DeadAir 回答我的问题,这帮助我完成了这个模组。我在这里使用了他们的一些代码来学习 API/MD 相关内容。

现在进入正题……

[b][i]此模组需要 SirNukes Mod Support APIs。无论是 Steam 版还是 NEXUS 版都可以使用。[/i][/b]

要访问控制选项(给不知道的人):按 Esc → 扩展选项,在那里你会找到无人机控制菜单。

目前,我通过 Dropbox 发布此模组。一旦我确认一切正常,我会将其上传到 NEXUS 和 STEAM。它会以松散文件形式发布,以便人们查看代码,如果有更好的方法可以提出建议。我热衷于学习。

我的一些发现:

  • 如果在基础代码中仅设置一个参数来停止无人机,那么当你重新开启它们时,它们不会重启。这是因为代码清除了所有内容,然后飞船必须再次受到伤害才能触发修复代码。
  • 我尝试保存 VAR,虽然在一定程度上有效,但并不总是能正常工作。

因此,以我目前的技能,有些事情超出了我的控制范围。我已尽力做到最轻量化。可能有更简单的方法,一些大神级程序员(kuertee、DeadAir 等)可能完全可以用不同的方式完成。

总之,抱歉写了这么长的文字,但我想尽量涵盖我能做和不能做的事情,以尽量减少问题。

最后几点:

  • 如果你控制着一艘飞船并关闭了无人机,我建议在交给 AI 驾驶员时重新开启它们。否则,他们必须等到再次受击才会发射,这仅仅是基础代码的工作方式。
  • 控制选项会出现在任何飞船上。我不知道(虽然有个想法)如何让它只出现在带有修复无人机的飞船上。目前我不关心这一点。
  • 如果你禁用了修复无人机,然后接管了一艘正有无人机在外的飞船,它不会识别无人机已被禁用;你必须手动开关一次。——这一点我不知道如何在不修改其他地方代码的情况下修复,我很希望当你接管时它能识别你的设置,并在你离开时启用无人机。不过,这对我来说是次要问题。
  • 我建议按 Esc 暂停游戏,如果你在战斗中或处于危险情况,请先暂停再更改设置。

感谢所有读到这里的玩家,感谢 EGOSOFT(提供了游戏和支持),以及上述帮助和支持我的人。

2022年5月21日——初次发布(测试版)