关于NPC生成
这个插件没有自己的功能。这个插件只用作其他插件的API。
支持的插件
- 空气事件
- 港口事件
- 水事件
- 卫星天线事件
- 发电厂事件
- 废品场事件
- 老板怪物
- 更好的NPC
- 可防御的基地
- 可防御的房屋
- 水上巡逻
- 护航队
- 装甲列车
- 斯普特尼克
- 空间
- 钴实验室
- XDChinook事件
- IQ球事件
- IQ老板
- 圣诞节
命令
/preset
打开NPC预设配置GUI。允许您通过图形界面创建、编辑和管理NPC预设。
/SpawnPreset <presetName>
使用指定的预设在玩家附近生成NPC。
其中<presetName>是现有的NPC预设名称。
/CheckInfo
显示您正在查看的NPC的当前参数值。对于检查和调试很有用。
应用程序编程接口
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
科学家NPC生成NPC(Vector3 位置,JObject 配置Json)
使用JSON配置块生成一个NPC
参数:
- 位置 —— NPC将被生成的世界位置
- configJson — NPC配置块 (JObject)
生成的科学家NPC实例。
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
科学家NPC生成预设(Vector3 位置, string 预设)
使用NpcSpawn预设文件夹中的预设来生成一个NPC
参数:
- 位置 —— NPC将被生成的世界位置
- 预设 — 从NpcSpawn预设文件夹中获取的预设名称
生成的科学家NPC实例。
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
空创建预设(字符串 预设,JObject 配置Json)
在插件文件夹中创建一个新的NPC预设文件。
参数:
- 预设 — 预设名称
- configJson — NPC配置块
空添加目标团队(自定义科学家NPC npc,哈希集合<建筑模块> 基础设施)
将一个建筑指定为NPC的突袭目标。
您必须提供应突袭的建筑的所有基础。
参数:
- npc — 目标NPC
- 基础 —— 建筑基础集合,用于突袭
空SetParent(CustomScientistNpc npc,Transform parent,Vector3 localPos,float updateTime =1f)
将NPC附加到一个移动的Transform上。
NPC的家位置将会在相对于父Transform的局部坐标系中定期重新计算。
参数:
- npc — NPC 实例
- 父级 — 移动 Transform 用作参考
- localPos — 相对于父级的本地偏移
- 更新时间 — 位置更新间隔(秒)(默认:1f)
空设置起始位置(自定义科学家NPC npc,三维向量 pos)
设置NPC的新家位置。
参数:
- npc — NPC 实例
- pos — 新世界位置
无设置当前武器(自定义科学家NPC npc,物品 武器)
强制让NPC从其物品栏中装备特定的武器。
参数:
- npc — NPC 实例
- 武器 —— NPC物品栏中的武器物品
空设置自定义导航网格(自定义科学家NPC npc,变换 transform, 字符串导航网格名称)
为NPC应用自定义导航网格。
参数:
- npc — NPC 实例
- 变换 — 根变换,用于导航网格坐标计算
- navMeshName — 从NpcSpawn导航网格文件夹中的导航网格名称
基础实体获取当前目标(定制科学家NPC npc)
获取该NPC当前的战斗目标。
参数:
- npc — NPC 实例
当前目标实体或 null。
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
空添加状态(自定义科学家NPC npc,HashSet<字符串> 状态)
为已生成的NPC添加额外的AI状态。
参数:
- npc — NPC 实例
- 状态 — 需要添加的状态名称集合。 例如: "RoamState", "ChaseState", "CombatState"
空销毁陷阱(定制科学家NPC npc)
移除所有由NPC拥有的陷阱和地雷。
参数:
- npc — NPC 实例
布尔是否为固定预设(字符串 预设)
检查预设是否定义了一个静态的NPC。
参数:
- 预设 — 预设名称
如果预设是静止的,则为 true;否则为 false。
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
整数获取区域掩码(字符串 预设)
获取预设中定义的AreaMask值。
参数:
- 预设 — 预设名称
区域掩码整数值。
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
字符串 获取预设名称(自定义科学家NPC NPC)
获取已生成NPC使用的预设名称。
参数:
- npc — NPC 实例
预设名称。
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
空注册预设用法(字符串 预设, 字符串 插件, 字符串 分类)
在NpcSpawn界面中注册一个预设被特定插件和类别使用。
参数:
- 预设 — 预设名称
- 插件 — 插件名称
- 类别 — 插件内部的可选类别名称(例如:在 BetterNpc 中的纪念碑名称组)
无取消注册预设用法(字符串 前置, 字符串 插件, 字符串 类别)
移除插件/类别预设使用注册。
参数:
- 预设 — 预设名称
- 插件 — 插件名称
- 类别 — 类别名称
空清除预设用法(字符串 插件)
清除插件的所有预设使用注册。
在插件卸载或重新加载时不需要 — 会自动处理。
参数:
- 插件 — 插件名称
参数列表
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
字符串 Prefab ["资产/rust.ai/代理/非玩家角色/人类非玩家角色/科学家/科学家非玩家角色_重(prefab)"]
用于生成的非玩家角色预制件的路径。仅支持 ScientistNPC 类的预制件
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
字符串 名字 ["科学家"]
在游戏中分配给非玩家角色的名称。多个名称用逗号分隔(例如 Name1,Name2)
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
整型 性别 [0]
0 = 随机, 1 = 女性, 2 = 男性
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
整型 皮肤色调 [0]
0 = 随机, 1 = 很白, 2 = 白, 3 = 暗, 4 = 很暗
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
无符号整型 内衣 [0]
NPC穿的内衣
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
HashSet<NpcWear> WearItems
NPC穿的衣物和护甲
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
HashSet<NpcBelt> BeltItems
NPC腰带上的武器和物品
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
字符串工具 [""]
工具名称
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
死亡时摧毁陷阱 [false]
如果启用,NPC死亡时将摧毁所有放置的陷阱
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
浮点数生命值 [100f]
NPC的总生命值
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
中弹头部立即死亡 [false]
如果启用,NPCs无论健康状况如何,任何头部射击都会立即死亡
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
漫游范围 [10f]
NPCs可以巡逻的最大距离,从他们的生成点算起。值低于2表示不移动
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
浮点数 追踪范围 [80f]
最大距离,NPC 从出生点可以追击目标
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
浮点数 感知范围 [40f]
最大距离,NPC 可以检测到目标
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
float 听取范围 [20f]
NPC在全范围内听到枪声,在1/3范围内听到脚步声,在1/9范围内听到蹲下移动的声音
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
float 伤害范围 [80f]
玩家对NPC造成伤害的最大距离。使用-1表示无限范围
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
float 短距离 [10f]
当目标靠近时,NPC增加枪械喷射持续时间的距离
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
float AttackLengthMaxShortRangeScale [2f]
当目标在短距离内时,喷射长度增加的乘数
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
float AttackRangeMultiplier [1f]
应用于NPC武器默认Facepunch攻击距离的乘数
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
布尔值 检查视觉锥 [ false ]
如果启用,NPC将只检测在其向前视觉锥内的目标
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
浮点数 视觉锥 [ 286f ]
定义NPC的视野角度(20-340)
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
只对敌对目标 [false]
启用后,NPC 仅在安全区域附近射击或携带武器时攻击被标记为敌对的玩家
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
只显示腰带目标 [false]
启用后,NPC 仅在重生后拾取武器的玩家
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
忽略安全区域玩家 [true]
启用后,NPC 将忽略安全区域内玩家
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
忽略正在睡觉的玩家 [真]
如果启用,NPC将忽略正在睡觉的玩家
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
忽略受伤的玩家 [真]
如果启用,NPC将忽略受伤倒地的玩家
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
整数 NpcAttackMode [2]
0 = 不攻击, 1 = 攻击所有, 2 = 详细瞄准
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
浮点数 NpcSenseRange [40f]
这个 NPC 能够感知其他 NPC 的最远距离
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
浮点数 NpcDamageScale [1f]
对 NPC 的伤害修正值。乘以全局 Scale Damage 值
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
字符串 NpcWhitelist ["FrankensteinPet,14922524"]
允许攻击的NPC。使用简短的预制名称,皮肤ID,类名,NPC名称。用逗号分隔
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
字符串 NpcBlacklist ["11162132011012"]
阻止攻击的NPC。使用简短的预制名称,皮肤ID,类名,NPC名称。用逗号分隔
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
动物攻击模式 [0]
0 = 不攻击,1 = 攻击所有,2 = 详细瞄准
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
动物感知范围 [20f]
这个NPC可以感知动物的最大距离
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
float AnimalDamageScale [1f]
动物伤害修正值。乘以全局Scale Damage值
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
string AnimalWhitelist [""]]
允许攻击的动物。使用ShortPrefabName,SkinID,类名。用逗号分隔
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
string AnimalBlacklist ["11491311214163"]]
阻止攻击的动物。使用ShortPrefabName,SkinID,类名。用逗号分隔
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
浮动伤害比例 [0.75f]
应用于所有NPC攻击的全局伤害乘数
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
是否允许炮塔瞄准NPC [true]
启用后,炮塔允许瞄准NPC
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
float DamageScaleFromTurret [0.5f]
NPC从炮塔受到伤害时应用的伤害乘数
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
float DamageScaleToTurret [1f]
对炮塔的伤害修正。乘以全局Scale Damage值
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
float AimConeScale [2f]
NPC射击的扩散角度。默认Facepunch值为2。不允许使用负值
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
布尔值禁用广播 [false]
如果启用,将禁用科学家NPC生成的默认广播声音
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
布尔值可在水中逃跑 [true]
如果启用,进入深水的NPC将返回到他们的生成点
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
布尔值 CanSleep [true]
如果启用,当没有玩家在附近时,NPC 可以进入睡眠模式以减少性能成本
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
浮点数 SleepDistance [100f]
如果没有任何玩家在范围内,NPC 将进入睡眠模式的距离
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
浮点数速度 [5f]
非玩家角色的移动速度。默认Facepunch值为5
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
整数区域掩码 [1]
整数代理类型ID [-1372625422]
导航网格类型
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
浮点数基础偏移 [0f]
从导航网格的垂直偏移。正数 = 在上方,负数 = 在下方,0 = 默认高度
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
字符串 HomePosition [""]]
用于NPC移动的起始位置,作为其家和参考点
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
浮点数 MemoryDuration [10f]
NPC在失去目标视线后记住目标的时间
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
HashSet<string> States [HashSet<string> { "RoamState", "ChaseState", "CombatState" }]
List of AI states the NPC can use
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
string LootPreset ["Default-Npc-KpucTaJl"]
Name of LootManager preset applied on NPC. Leave empty for no preset
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
字符串 箱子预制体 [""]
在 NPC 死亡地点生成的箱子预制体路径。留空表示没有
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
布尔值 移除尸体 [true]
如果启用,NPC 尸体在死亡时会立即被移除
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
bool GroupAlertEnabled [false]
如果启用,NPC 会与附近具有匹配预设的 NPC 共享攻击者信息
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
float GroupAlertRadius [40f]
NPC 可以在其中警戒附近群体关于攻击玩家的半径
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
string GroupAlertReceivers [""]
警戒的 NPC 预设。使用 All 或预设名称 (Preset1, Preset2)。自己的预设会自动添加
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
头颅伤害比例 [1f]
头颅击中伤害乘数
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
身体伤害比例 [1f]
身体击中伤害乘数
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
腿部伤害比例 [1f]
腿部击打的伤害倍数
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------