SuperAPI AI 工具集

roblox-pathfinding-and-npcs

智能体与模型

查看项目

更新于 10-16 02:32

技能介绍

用途:在 Roblox 中构建会行走、跟随、巡逻的 NPC(僵尸、守卫、宠物、同伴),基于官方 PathfindingService 的导航网格寻路。

主要能力:用 PathfindingService:CreatePath 配置代理参数,如 AgentRadius、AgentHeight、AgentCanJump、AgentCanClimb、WaypointSpacing 和 Costs(材料/区域/链接通行成本);用 path:ComputeAsync 计算并用 path:GetWaypoints 取点,配合 Humanoid:Move 沿寻路点移动。寻路点带 Action(Walk、Jump)或来自 PathfindingModifier/Link 的自定义标签(如 Climb、UseBoat)。PathfindingModifier 影响成本或标记可穿透区域;PathfindingLink 用两个 Attachment 连接不可通行间隙,用于船、传送、梯子、单向跳。移动模式包括 Follow(对移动目标节流重算)、Patrol(固定点循环)、Chase(服务端校验视线与距离)、状态机(Idle、Patrol、Chase、Attack、Return)。脚本提供 NPCPathFollower.lua、PatrolBehavior.lua、PathfindingUtility.lua。

用法要点:创建路径后设置 path.CalculationSecondsTimeout 限制求解时间;ComputeAsync 需包在 pcall 中;始终为 Humanoid:MoveTo 设置超时并在到达或停止时取消;用 workspace:GetPartBoundsInRadius 等空间查询检测目标;禁止每帧重算,采用错峰或节流重算;服务端权威 AI,客户端仅作视觉预测;NPC 死亡或销毁时清理 Heartbeat 连接并停止跟随器;重生 NPC 应新建行为实例并销毁旧的。启用攀爬需 AgentCanClimb = true 并提供 TrussPart,攀爬点标签为 "Climb"。PathfindingModifier 部件须 Anchored = true、CanCollide = false。

适用场景:需要依赖导航网格的 NPC 移动与寻路逻辑,含动态障碍、流式加载兼容(客户端目的地可能被流式卸载,可用 workspace.PersistentLoaded)、大量代理的缩放优化。

限制:直线视野距离 ≤ 3000 studs;计算节点预算约 20000 节点;寻路点 Y 坐标须在 -65536 至 65536 之间;参数不兼容(如 AgentCanJump = false 却只可达跳跃目的地)会失败;未提供具体收费、价格或平台信息。