纪念碑机器人!

一个实验性的基本插件,用于在 Rust 纪念碑上为机器人提供机器人,否则最近被疏散和/或尚未被 Facepunch 填充。

已创建基本管理 GUI,只能由 ADMINS 使用 /mb 命令访问。

使用臭名昭著的 Kits 插件。

可能会有变化!对于现在的每个版本,请在 oxide/en/MonBots.json 中删除您的 LANG 文件。

命令和 GUI

— /mb— 启动 GUI 中,您可以在其中选择和编辑配置文件,包括机器人名称、套件选择等。还有其他几个子命令,它们都由 gui 使用,但尚未记录。

更新说明:
在 1.0.4 中,您现在可以创建自己的个人资料位置,因此您不仅限于古迹。但是,机器人必须能够通过游戏导航网格系统进行导航。所以,一般来说,保持在地形上,你应该没事。

在配置文件选择屏幕中,将有一个新按钮“在此处添加”。在按下它之前,请位于您想要跨越一组非纪念碑机器人的一般中心。按下后,将弹出另一个屏幕,提示输入名称。键入或复制/粘贴名称,然后按 Enter。这应该会将您带到新配置文件的标准编辑屏幕。完成编辑后,配置文件将在配置文件选择屏幕中可用。

也可以删除自定义配置文件。

此外,1.0.4 修复了与 HumanNPC 插件的冲突,以及在我的情况下,还修复了幻影灯塔的创建。听起来很酷,但遗憾的是它实际上并不存在……

显示配置文件列表和选择按钮的初始 GUI。绿色的配置文件(纪念碑)有活跃的机器人(spawnCount > 0)。蓝色^H^H^H^H灰色的配置文件有一些设置,例如机器人名称或套件选择,但没有 spawnCount。其余的处于非活动状态。自定义配置文件现在为蓝色。

具有活动 spawnCount、一些机器人名称和选定套件的(纪念碑)配置文件。

机器人名称编辑。有点时髦。但是,您可以编辑或删除现有名称,也可以一次创建一个新名称。
像往常一样 – 将文本复制并粘贴到这些字段中效果最好。粘贴后按回车键保存:

配置

{
  "Options": {
    "Default Health": 200.0,
    "Default Respawn Timer": 30.0,
    "debug": false
  },
  "Version": {
    "Major": 1,
    "Minor": 0,
    "Patch": 1
  }
}

这里很基本。默认值应该会让你开始。真正的肉在数据文件中。

配置值将填充数据文件,以 1:1 的比例填充它们基本匹配的位置(目前是 health 和 respawn timer,两者都有效)。

数据文件

在重新加载插件后,会在 oxide/data/MonBots/spawnpoints 创建各种配置文件。

下面是一个显示两个纪念碑的示例:

"Sphere Tank 0": {
    "monname": "Sphere Tank 0",
    "spawnCount": 0,
    "respawn": true,
    "respawnTime": 60.0,
    "detectRange": 60.0,
    "spawnRange": 30,
    "roamRange": 140.0,
    "startHealth": 200.0,
    "invulnerable": false,
    "lootable": false,
    "wipeClothing": true,
    "wipeBelt": true,
    "wipeMain": false,
    "wipeCorpseMain": false,
    "dropWeapon": false,
    "hostile": false,
    "kits": null,
    "names": null,
    "pos": []
  },
  "Stables A 0": {
    "monname": "Stables A 0",
    "spawnCount": 0,
    "respawn": true,
    "respawnTime": 60.0,
    "detectRange": 60.0,
    "spawnRange": 30,
    "roamRange": 140.0,
    "startHealth": 200.0,
    "invulnerable": false,
    "lootable": false,
    "wipeClothing": true,
    "wipeBelt": true,
    "wipeMain": false,
    "wipeCorpseMain": false,
    "dropWeapon": false,
    "hostile": false,
    "kits": null,
    "names": null,
    "pos": []
  },

对于要填充的每个纪念碑,首先将 spawnCount 设置为 1 个或多个机器人。

接下来,您可以根据需要选择一个名称或一组名称随机分配给机器人。

您可以而且可能确实希望从 Kits 插件中为他们分配一个工具包。如果需要,此设置也可以是套件数组。

除了可掠夺标志之外,您还可以设置以下项目,这些项目仅在可移动时才相关 == true:
– wipeClothing — 不要将 NPC 穿的衣服复制到尸体上(默认为 true) – wipeBelt — 不要将 NPC 腰带中的物品复制到尸体上(默认为 true) – wipeMain — 不要将 NPC 在其主要库存中的物品复制到尸体上(默认为 true)

– wipeCorpseMain — 删除添加到 NPC 尸体主库存中的默认战利品(默认为 false) 请注意,您可能希望将 wipeMain 或 wipeCorpseMain 设置为 true,或将两者都设置为 false

别管 pos: [] 。这将在运行时填充每个机器人的生成点,以防您必须寻找它们等。

  "Sphere Tank 0": {
    "monname": "Sphere Tank 0",
    "spawnCount": 3,
    "respawn": true,
    "respawnTime": 60.0,
    "detectRange": 60.0,
    "spawnRange": 30,
    "roamRange": 140.0,
    "startHealth": 200.0,
    "invulnerable": false,
    "lootable": false,
    "dropWeapon": false,
    "hostile": false,
    "kits": [
      "tankbots"
    ],
    "names": {
      "Barbara",
      "Megan",
      "Lacey"
    ],
    "pos": []
  },
  "Stables A 0": {
    "monname": "Stables A 0",
    "spawnCount": 5,
    "respawn": true,
    "respawnTime": 60.0,
    "detectRange": 60.0,
    "spawnRange": 30,
    "roamRange": 140.0,
    "startHealth": 200.0,
    "invulnerable": false,
    "lootable": false,
    "dropWeapon": false,
    "hostile": false,
    "kits": {
      "cowboy1",
      "cowboy2"
    },
    "names": [
      "Stabler"
    ],
    "pos": []
  },

您还可以根据需要调整 startHealth 和其他值。并非一切都在起作用,但他们确实在战斗和躲藏,并做所有你可能期望的通常的 NPC 事情。

使用 GUI – /mb

对于开发人员

  • private bool IsMonBot(科学家NPC播放器)给定一个 ScientistNPC 对象,确定它是否是 MonBot
  • private string[] AddGroupSpawn(Vector3 location, string profileName, string group, int quantity)使用新的或现有的配置文件(组)在特定位置生成一组机器人
  • private string[] RemoveGroupSpawn(字符串组)删除配置文件(组)和关联的机器人
  • 私有字符串 GetMonBotName(ulong npcid)返回给定其 userid 的机器人名称
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。