**This is an old revision of the document!**

纳米机器

纳米机器是一种可配置的增益系统。它们可消耗能源以为玩家提供多种正面或负面效果。

基本用法

在使用之前,玩家需要“吃掉”它们。当吃掉纳米机器后,玩家的HUD中将会多出一个能量指示条,位置在快捷栏的左侧,用于显示纳米机器中的剩余能量。站在充电器附近即可补充能量。能量会随时间消耗,速度正比于启用的输入数。即使禁用所有输入也会随时间消耗少量能量。

纳米机器会提供一定数量的可开关的“输入”,这些“输入”会给玩家造成多种不同的效果:从视觉效果(如在玩家附近产生的粒子)到选择药水效果,以及一些更罕见和特殊的行为。

何种输入触发何种效果取决于纳米机器的当前配置,实际“对应关系”随配置不同而不同。玩家只有尝试才能弄清楚某种输入有什么效果。摄入新的一批纳米机器可以改变配置。此外,一次启用太多的输入会产生严重的负面效果。

请参看配置文件的nanomachines部分,以便根据您的喜好微调。

要废弃纳米机器,玩家需要饮用酸液

合成

纳米机器由以下配方合成:

编程

可通过无线网络信息程控纳米机器。纳米机器的信息接收范围只有大约两米,通过平板电脑发送信息即可轻易克服此困难。然而,纳米机器不会检查它们收到的信息是由哪台设备发出的。

纳米机器使用一套简单的专有协议:向其发送的每个数据包都必须包含多个部分,第一部分是“信息头”,需要为字符串nanomachines。第二部分需要为命令名称。其余部分是命令所需的参数。可用命令在下方列出,格式为命令名称(参数1, ...)

  • setResponsePort(port:number) - 设定纳米机器发送响应信息所用的端口,对带有响应信息的命令生效。
  • getPowerState() - 获取纳米机器当前存储能量值以及能量存储上限。
  • getHealth() - 获取玩家的健康值。
  • getHunger() - 获取玩家的饥饿值。
  • getAge() - 获取玩家的年龄,单位为秒。
  • getName() - 获取玩家的显示名称。
  • getExperience() - 获取玩家的经验等级。
  • getTotalInputCount() - 获取可用输入总数。
  • getSafeActiveInputs() - 获取最大安全启用输入数。
  • getMaxActiveInputs() - 获取最大启用输入数。
  • getInput(index:number) - 获取指定索引号对应输入的当前状态。
  • setInput(index:number, value:boolean) - 将指定索引号对应输入的状态设定为指定值。
  • getActiveEffects() - 获取启用的效果列表。请注意一些效果可能不会在列表中出现。
  • saveConfiguration() - 玩家物品栏中需要有一份纳米机器,本命令会将当前配置存储到其中。

例如,在OpenOS中:

  • component.modem.broadcast(1, "nanomachines", "setInput", 1, true)将会启用第一个输入。
  • component.modem.broadcast(1, "nanomachines", "getHealth")将会获取玩家的健康值信息。

另请参见

纳米机器预览(英文,可能略微过时)

目录