【问题标题】:My rig is always constantly lagging even though I tried almost every solution尽管我尝试了几乎所有解决方案,但我的装备总是不断滞后
【发布时间】:2021-07-24 07:26:47
【问题描述】:

TL;底部的DR

晚上好/下午/早上好,我正在尝试创建一个简单的迷宫恐怖游戏,现在我正在尝试编写我的敌人。我用这个装备尝试制作我自己的自定义敌人,https://www.roblox.com/library/5025299499/R15-Character-Template

我正在使用探路者让我的 NPC 追逐运行良好的敌人,除了它经常出现故障/滞后的事实。我尝试了所有可能的方法,从拒绝使用“humanoid.MoveToFinished”到使用下面的代码。我还尝试将 HumaoidRootPart 设置为“SetNetworkOwner(nil)”。我唯一没有尝试过的是将我的所有部件也设置在钻机中,“SetNerworkOwner(nil)”,但我不知道该怎么做。我尝试循环遍历所有部分,但我什至不知道如何设置循环遍历的每个部分,“SetNetworkOwner(nil)。我还制作并添加了自定义部件到钻机的每个主体部分,如你所见下图。请帮帮我,我真的很感激。

TL;DR:我使用模板创建了一个敌人,我成功地使用了探路者,但它总是滞后,即使我竭尽全力阻止滞后。

【问题讨论】:

  • 请将您的代码作为文本而不是图像提供。

标签: lua roblox


【解决方案1】:

尝试删除 repeat until 循环,因为代码中似乎没有使用 distance 变量。

代码结构如下:
Variable defining
Begin while loop
Player for loop
if statement to check player distance :CreatePath() and :ComputeAsync()
end for loop
:GetWaypoints()
start new for loop to loop through waypoints
<Humanoid>:MoveTo(<v>.Position)
<Humanoid>:MoveToFinished:Wait(0.1) end for loop
end if statement
end while loop

如果您有任何问题,请告诉我

【讨论】:

  • 等一下,我想我需要编辑我的答案,等等
  • 我已经编辑了我的答案。尝试更新版本,看看它是否有效。保留 :ComputeAsync() 和 :CreatePath() 以及 :GetWaypoints()。我认为您右侧的延迟可能是由于 1. 重复直到循环(您可以删除它)和 2. 移动到航点之间没有等待,所以添加一个 :MoveToFinished:Wait()
  • 创建一个普通变量,如:local waypoints = <PathfindingService>:GetWaypoints() 然后通过执行 for _, v in pairs(waypoints) do 循环通过航点,并在 for 循环中使用 <humanoid>:MoveTo(v.Position) 将人形机器人移动到每个 for 循环
  • 抱歉回复晚了。这就是您定义为 game:GetService("PathfindingService") 的内容,所以在您的情况下,它将是 PathFindingS:GetWaypoints()
  • 确保在脚本顶部定义 game:GetService("PathfindingService") 而不是 Instance.new("PathfindingService")
猜你喜欢
  • 1970-01-01
  • 2012-06-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-08
  • 2019-09-02
  • 2017-10-22
  • 2023-02-22
相关资源
最近更新 更多