• 免费帮忙安装服务器。需要上传插件可以联系客服/QQ:823667852
  • Rust插件网抽奖活动 点击红色字体进去
Automated Workcarts - 自动工作车

免费 Automated Workcarts - 自动工作车 0.35.0

没有下载权限

特点​

  • 允许使用NPC导体实现列车自动化
  • 允许放置触发器以指示导体如何导航
  • 允许放置生成点,从而生成带有可选火车货车的工作车
  • 允许禁用默认的地下workcart生成点
  • 允许配置自动列车引擎力和速度
  • 允许自动列车向附近的玩家鸣喇叭
  • 地下隧道的可选默认触发器
  • 自动列车和站点的可选地图标记
  • 用于创建插件的API

导言​

这个插件的主要功能是将 “触发器” 添加到火车轨道上。触发器是一种不可见的物体,它可以检测火车何时与其接触,以便执行各种功能,包括以下功能。

  • 给火车增加一名售票员
  • 更改列车的速度、方向和轨道选择
  • 在可配置的时间段内暂时停止列车
  • 运行自定义服务器命令
  • 摧毁火车
除添加导体外,上述所有功能仅适用于具有导体的火车,这意味着玩家驱动的火车可以不受影响地通过大多数触发器。

触发器还可以用作工作车的生成点,并带有可选数量的附加货车和工作车。

导体如何工作​

自动驾驶火车将为连接到该火车的每个工作台添加一个导体NPC,自动卸下当前驾驶它们的任何玩家。

  • 导体是无敌的
  • 作为自动列车一部分的所有工作车和货车都是无敌的
  • 自动工作车不需要燃料
  • 自动列车不能与其他列车耦合,也不能解耦

触发器如何工作​

每个触发器可以具有多个属性,包括方向 (例如,Fwd,Rev,Invert) 、速度 (例如,Hi,Med,Lo,Zero) 、曲目选择 (例如,Default,Left,Right),停止持续时间 (以秒为单位) 以及出发速度/方向。当导体驱动的列车接触触发器时,其指令可以根据触发器属性而改变。例如,如果火车当前正在遵循说明Fwd,Hi,Left,然后触摸仅指定轨道选择的触发器Right,列车指令将更改为Fwd,Hi,Right,导致火车在它到达的每个十字路口右转,直到它碰到一个指示其他情况的触发器。

触发器的类型​

映射特定触发器​

  • 可以放置在火车轨道上的任何地方,地上或地下。
  • 仅适用于使用世界坐标放置它们的地图。
  • 通过启用Enable map triggers配置选项。
  • 添加了aw.addtrigger或awt.add命令。
  • 保存在数据文件中:oxide/data/AutomatedWorkcarts/MAP_NAME.json。
    • 注意: 非程序映射的文件名将排除擦除编号,以便您可以在强制擦除中重复使用触发器。

隧道触发器​

  • 只能放置在香草火车隧道中。
  • 使用隧道相对坐标在相同类型的所有隧道处自动复制。
  • 通过启用Enable tunnel triggers->*选项。
  • 添加了aw.addtunneltrigger或awt.addt命令。
  • 保存在数据文件中oxide/data/AutomatedWorkcarts/TunnelTriggers.json。

教程​

教程: 自动化所有地下工作车​

该插件提供默认触发器,您可以为地下隧道启用。此设置只需几分钟。

  1. 设置Enable tunnel triggers->TrainStation至true在插件配置中。
  2. 设置Enable tunnel triggers->VerticalIntersection至true在插件配置中。
  3. 重新加载插件。
这将放置Conductorvanilla workcart上的触发器在火车站维护隧道中产生点,这些点会在产生时自动将导体添加到workcart中。工作车将以最大速度向前行驶,并在所有路口左转。这也将放置Brake火车站的触发器,这将导致火车在电梯附近短暂地自动停止。

从地图的角度来看,每个workcart将围绕相邻的循环以逆时针方向移动,或者围绕地图的外边缘以顺时针方向移动,根据workcart在哪个维护隧道中生成以及附近可用的循环。这种组合将覆盖大多数地图,允许玩家通过在各个站点切换方向来几乎去任何地方。

要直观地查看触发器,请授予automatedworkcarts.managetriggers权限并运行awt.show命令。60秒,这将显示附近隧道的触发器。从这里,您可以根据自己的喜好添加、更新、移动和删除触发器。有关如何管理触发器,请参阅命令部分。

下面的屏幕截图描述了一个具有以下属性的配置,火车刚刚产生了片刻。

  • 启用所有默认隧道触发器
  • 自动售货机和彩色地图标记启用火车,使用动态路线颜色
  • 使用动态路线颜色为火车站启用彩色地图标记
DynamicRouteColors.png


教程: 自动化地上工作车​

注意: 这些说明最初是为自定义地图编写的,可能不适合程序生成的地上轨道,因为火车会随机产生。相反,请参见下面的部分或创建繁殖点。

  1. 如果您是地图开发人员,请参阅下面的 “地图开发人员提示” 部分。合理地设计轨道将简化自动路线的设置。
  2. 仔细检查地图上的轨道,以确定您希望使用的路线。
  3. 授予自己automatedworkcarts.managetriggers许可。
  4. 找到一个火车产卵的位置,你想火车自动接收导体。
  5. 瞄准轨道并运行命令awt.add Conductor Fwd Hi。在此触发器上产生的任何火车都将自动接收售票员,并以最大速度开始向前行驶。
  6. 找到您希望自动工作车短暂停止的轨道部分。
  7. 瞄准轨道并运行命令awt.add Brake Zero 15 Hi。任何通过此触发器的火车都会刹车,直到停止,等待15秒,然后开始移动相同的方向Hi速度。
  8. 继续添加/编辑触发器并生成workcarts以优化路线。

教程: 创建繁殖点​

可以通过生成触发器生成Workcarts。以下步骤将引导您通过一个示例开始。

  1. 授予自己automatedworkcarts.managetriggers许可。
  2. 瞄准火车轨道上的某个地方,然后运行命令awt.add Workcart(或awt.addt Workcart对于隧道相对触发器)。workcart应该立即在那里产卵 (如果有足够的空间),但不会有导体。
  3. 如果workcart面向错误的方向,则瞄准触发器,同时大致面向您希望workcart面向的方向,然后运行awt.rotate。
  4. 要移动生成点,请瞄准要将其移动到的位置,然后运行awt.move <id>,在哪里<id>应替换为触发器id,您可以在触发器上方看到浮动 (它将有一个#)。
  5. 要将货车添加到生成点,请瞄准触发器并运行命令awt.train Workcart WagonA WagonB WagonC Workcart。此示例命令将添加多个货车,最后还有一个额外的工作车。您可以根据需要以任何顺序添加任意数量的货车和工作车,只要在轨道上有足够的空间即可。
  6. 如果要在火车上添加售票员,请瞄准触发器并运行awt.update Conductor Fwd Hi然后awt.respawn。
注意: 如果火车被摧毁,它将在30秒后被重新典当。一次最多可以由给定的生成点生成一列火车。如果你想要多个火车,你将需要创建多个产卵点。

许可​

此插件使用权限系统。要分配权限,请使用oxide.grant <user or group> <name or steam id> <permission>。要删除权限,请使用oxide.revoke <user or group> <name or steam id> <permission>。
  • automatedworkcarts.toggle-- 允许使用aw.toggle和aw.resetall命令。
  • automatedworkcarts.managetriggers-允许查看,添加,更新和删除触发器。

命令​

此插件使用相同的语法提供聊天和控制台命令。在聊天中使用命令时,请在其前面加上正斜杠: “/”。

切换单个工作推车的自动化​

  • aw.toggle @<optional_route_name>-切换您正在查看的火车的自动化。
    • 如果指定了路线名称,则列车将响应全局触发器 (即,未指定路线的触发器) 和分配给该路线的触发器。列车将忽略分配给其他路线的触发器。
    • 如果路由名称为指定,列车将仅响应全局触发器。
    • 火车将根据DefaultSpeed和Default track selection在插件配置中。
  • aw.resetall-将所有自动列车重置为正常。这将移除所有导体。例外:由导体触发器产生的火车将保留其导体。

管理触发器​

  • aw.showtriggers @<optional_route_name> <optional_duration_in_seconds>(别名:awt.show) -- 向玩家显示指定持续时间的所有附近触发器。默认为60秒。
    • 这将显示每个触发器的id、速度、方向等。
    • 当使用任何其他触发命令或手动自动化workcart时,触发也会自动显示至少60秒。
    • 指定路由名称时,全局触发器和匹配该路由的触发器将以其默认颜色显示,但不同路由的触发器将显示为灰色。
  • aw.addtrigger <option1> <option2> ...(别名:awt.add) -- 将触发器添加到您瞄准的轨道位置,并带有指定的选项。通过触发器的自动列车将受到触发器选项的影响。
    • 速度选项:Hi|Med|Lo|Zero。
    • 方向选项:Fwd|Rev|Invert。
    • 轨道选择选项:Default|Left|Right|Swap。
    • 火车车厢选项:Locomotive|Sedan|Workcart|WorkcartCovered|WagonA|WagonB|WagonC|WagonFuel|WagonLoot|WagonResource|Caboose
    • 其他选项:
      • Conductor-如果不存在,则将导体添加到火车上。一个放置的好地方Conductor触发器位于workcart产卵位置,例如地下维护隧道中的香草产卵。此选项也可以与火车车厢选项结合使用,以自动生成自动火车。
        • 注意: 玩家拥有的火车不能接收导体。香草列车没有所有者,但大多数为玩家生成车辆的插件将通过设置OwnerID车辆的属性。
      • Brake-- 指示列车制动,直至达到指定速度。例如,如果火车正在Fwd_Hi并进入一个Brake Med触发,它会暂时去Rev_Lo直到它足够慢下来,然后它会去Fwd_Med。
      • Destroy-摧毁火车。这主要用于测试和演示,但如果您不想费心进行更周到的轨道设计,它也很有用。
      • @<route_name>-- 如果未分配此路线,则指示列车忽略此触发器 (替换<route_name>用你想要的名字)。
        • 如果触发器具有Conductor属性和火车还没有售票员,它将被分配这条路线。
      • <chance>%-使触发器只有百分之一的机会影响火车。不影响列车接收售票员的机会。
      • Enabled-- 启用触发器。
      • Disabled-- 禁用触发器。禁用的触发器被火车忽略,颜色为灰色。
  • aw.addtrunneltrigger <option1> <option2>(别名:awt.addt) -- 在您瞄准的轨道位置添加触发器。
    • 选项与相同aw.addtrigger。
    • 必须在支持的火车隧道中 (在插件配置中启用)。
    • 该触发将在相同类型的所有列车隧道处被复制。编辑或删除其中一个触发器将影响所有触发器。
  • aw.updatetrigger <id> <option1> <option2> ...(别名:awt.update) -- 添加或更新指定触发器的属性,而不删除任何属性。
    • 选项与相同aw.addtrigger。
  • aw.replacetrigger <id> <option1> <option2> ...(别名:awt.replace) -- 用指定的属性替换指定触发器的所有属性。
    • 选项与相同aw.addtrigger。
    • 这对于从触发器中删除属性 (无需删除并添加它) 很有用,因为aw.updatetrigger不删除属性。
  • aw.movetrigger <id>(别名:awt.move) -- 将指定的触发器移动到玩家瞄准的轨道位置。
  • aw.rotatetrigger <id>(别名:awt.rotate) -- 将指定的触发器旋转到玩家面对的位置。这仅对生成触发器有用,因为它确定了生成时火车将面对的方式。如果旋转已反转,此命令将自动重新生成火车。
  • aw.removetrigger <id>(别名:awt.remove) -- 删除指定的触发器。
  • aw.enabletrigger <id>(别名:awt.enable) -- 启用指定的触发器。这与aw.updatetrigger <id> enabled。
  • aw.disabletrigger <id>(别名:awt.disable) -- 禁用指定的触发器。这与aw.updatetrigger <id> disabled。禁用的触发器被火车忽略,颜色为灰色。
  • aw.settriggertrain <id> <wagon1> <wagon2> ...(别名:awt.train) -- 将零个或多个火车车厢分配给触发器,替换当前的火车车厢列表,导致此触发器自动生成具有指定工作车和货车的火车,按顺序连接。货车将自动连接到工作车。允许值:Locomotive,Sedan,Workcart,WorkcartCovered,WagonA,WagonB,WagonC,WagonFuel,WagonLoot,WagonResource,Caboose。要删除所有火车车厢,请在不指定任何火车车厢的情况下运行命令。
  • aw.respawntrigger <id>(别名:awt.respawn) -- Despawns和respawns指定的触发器的火车。在隧道触发器处使用时,列车将在隧道触发器的所有实例处被重新生成。
  • aw.addtriggercommand <id> <command>(别名:awt.addcmd) -- 将指定的命令添加到触发器。每当火车通过触发器时都会执行。您可以使用魔术变量$id在将由主workcart的网络ID替换的命令中。
  • aw.removetriggercommand <id> <number>(别名:awt.removecmd) -- 从触发器中删除指定的命令。命令编号为1、2、3等,并且在使用aw.showtriggers。
提示: 对于更新、移动或删除触发器的命令,您可以跳过<id>参数,如果你瞄准的是附近的触发器。

命令示例​

简单的例子:

  • awt.add Lo-使火车在其电流方向在Lo速度。示例:Fwd_Hi->Fwd_Lo。
  • awt.add Fwd Lo-使火车移动前进在Lo速度,不管它的当前方向。示例:Rev_Hi->Fwd_Lo。
  • awt.add Invert-导致火车反方向在其当前速度。示例:Fwd_Med->Rev_Med。
  • awt.add Invert Med-导致火车反方向在Med速度。示例:Fwd_Hi->Rev_Med。
  • awt.add Brake Med-导致火车制动器直到它到达Med速度。示例:Fwd_Hi->Rev_Lo->Fwd_Med。
  • awt.add Left-使火车转弯在所有未来的十字路口。
高级示例:

  • awt.add Conductor Fwd Hi Left-- 使列车自动接收导体,移动前进在Hi速度,并始终转向
  • awt.add Brake Zero 10 Hi-导致火车制动器到a停止,等待10秒,然后移动Hi速度在同一方向
  • awt.add Zero 20 Med-导致火车关闭它的引擎为20秒 (缓慢滚动到停止),然后移动同一方向在Med速度。
路线示例:

  • awt.add @Route1 Conductor Fwd Hi Left-- 使列车自动接收导体,移动前进在Hi速度,总是转,并向忽略分配给其他路由的触发器(即,未命名的路线Route1)。
  • awt.add @Route1 Left-使火车转弯在所有未来的十字路口,如果火车被分配了Route1路线。
更新示例:

  • awt.update 60-- 将触发器的停止持续时间更新为60秒。
  • awt.update Left-- 将触发器的曲目选择更新为Left。
  • awt.update Fwd Hi-将触发器的方向更新为Fwd,并将速度提高到Hi。
  • awt.update @Route2-- 将触发器的路由更新为Route2。
  • awt.update 60 Left Fwd Hi @Route2-- 一次将上述所有更新应用于触发器。
生成示例:

  • awt.add Workcart-- 创建一个触发器,将产生一个workcart。
  • awt.train Workcart WagonA WagonB-更新触发器以生成一个workcartWagonA和一个WagonB马车耦合在它后面。
  • awt.train Workcart WagonC WagonC-更新触发器以生成具有两个的workcartWagonC后面有货车。
  • awt.train Workcart Workcart-- 更新触发器以生成两个耦合在一起的workcarts。
  • awt.train Locomotive Workcart WagonA WagonB WagonC WagonFuel WagonLoot WagonResource Caboose WorkcartCovered-更新触发器以生成一列火车,并在其后面耦合所有可能的火车车厢类型。
All-in-one示例:

  • awt.add Conductor Brake Zero 10 Fwd Hi Left Workcart WagonA WagonB-创建一个触发器,将产生一个workcart与一个WagonA和一个WagonB马车耦合在它后面。它将有一个导体,最初将等待10秒,然后在Hi速度。在回访时,它会刹车停下来,等待10秒钟再继续。

配置​

设置和选项可以在AutomatedWorkcarts文件下的config目录。建议使用编辑器和验证程序,以避免格式问题和语法错误。
默认配置:
代码:
{
  "Play horn for nearby players in radius": 0.0,
  "Default speed": "Fwd_Hi",
  "Default track selection": "Left",
  "Bulldoze offending workcarts": false,
  "Destroy barricades instantly": false,
  "Enable map triggers": true,
  "Enable tunnel triggers": {
    "TrainStation": false,
    "BarricadeTunnel": false,
    "LootTunnel": false,
    "Intersection": false,
    "LargeIntersection": false,
    "VerticalIntersection": false
  },
  "Max conductors": -1,
  "Spawn triggers respect conductor limit": false,
  "Disable default tunnel workcart spawn points": false,
  "Trigger display distance": 150.0,
  "Conductor outfit": [
    {
      "ShortName": "jumpsuit.suit",
      "Skin": 0
    },
    {
      "ShortName": "sunglasses03chrome",
      "Skin": 0
    },
    {
      "ShortName": "hat.boonie",
      "Skin": 0
    }
  ],
  "Automated train engine overrides": {
    "assets/content/vehicles/sedan_a/sedanrail.entity.prefab": {
      "Enable engine overrides": false,
      "Override max speed": 44.0,
      "Override engine force": 10000.0
    },
    "assets/content/vehicles/trains/locomotive/locomotive.entity.prefab": {
      "Enable engine overrides": false,
      "Override max speed": 20.0,
      "Override engine force": 250000.0
    },
    "assets/content/vehicles/trains/workcart/workcart.entity.prefab": {
      "Enable engine overrides": false,
      "Override max speed": 21.0,
      "Override engine force": 33000.0
    },
    "assets/content/vehicles/trains/workcart/workcart_aboveground.entity.prefab": {
      "Enable engine overrides": false,
      "Override max speed": 18.0,
      "Override engine force": 30000.0
    },
    "assets/content/vehicles/trains/workcart/workcart_aboveground2.entity.prefab": {
      "Enable engine overrides": false,
      "Override max speed": 17.0,
      "Override engine force": 30000.0
    }
  },
  "Map markers": {
    "Train map markers": {
      "Map marker update interval seconds": 5.0,
      "Colored map marker": {
        "Enabled": false,
        "Color": "#00ff00",
        "Alpha": 1.0,
        "Radius": 0.05,
        "Use dynamic route color": false
      },
      "Vending map marker": {
        "Enabled": false,
        "Name": "Automated Train"
      }
    },
    "Train stop map markers": {
      "Display only while stop is reachable": false,
      "Colored map marker": {
        "Enabled": false,
        "Color": "#ff9900",
        "Alpha": 1.0,
        "Radius": 0.1,
        "Use dynamic route color": false
      },
      "Vending map marker": {
        "Enabled": false,
        "Name": "Train Stop"
      }
    },
    "Dynamic route colors": [
      "#ff0000",
      "#ff9900",
      "#ffff00",
      "#00ff00",
      "#0099ff",
      "#cc00ff",
      "#ffffff",
      "#777777"
    ]
  }
}
作者
rust插件网
下载
1
查看
692
首次发布
最后更新
评分
0.00 星 0 星

来自rust插件网的更多资源