Reduce NPC static collision avoidance range (#13197)

This commit is contained in:
metalgearsloth
2022-12-27 12:30:31 +11:00
committed by GitHub
parent 033e87aa3b
commit 181e16db53
2 changed files with 4 additions and 4 deletions

View File

@@ -320,7 +320,7 @@ public sealed partial class NPCSteeringSystem
EntityQuery<PhysicsComponent> bodyQuery, EntityQuery<PhysicsComponent> bodyQuery,
EntityQuery<TransformComponent> xformQuery) EntityQuery<TransformComponent> xformQuery)
{ {
var detectionRadius = agentRadius + moveSpeed; var detectionRadius = MathF.Max(1.5f, agentRadius + moveSpeed / 4f);
foreach (var ent in _lookup.GetEntitiesInRange(uid, detectionRadius, LookupFlags.Static)) foreach (var ent in _lookup.GetEntitiesInRange(uid, detectionRadius, LookupFlags.Static))
{ {

View File

@@ -204,7 +204,7 @@ namespace Content.Server.NPC.Systems
var modifierQuery = GetEntityQuery<MovementSpeedModifierComponent>(); var modifierQuery = GetEntityQuery<MovementSpeedModifierComponent>();
var xformQuery = GetEntityQuery<TransformComponent>(); var xformQuery = GetEntityQuery<TransformComponent>();
var npcs = EntityQuery<NPCSteeringComponent, ActiveNPCComponent, InputMoverComponent, TransformComponent>() var npcs = EntityQuery<ActiveNPCComponent, NPCSteeringComponent, InputMoverComponent, TransformComponent>()
.ToArray(); .ToArray();
var options = new ParallelOptions var options = new ParallelOptions
{ {
@@ -213,7 +213,7 @@ namespace Content.Server.NPC.Systems
Parallel.For(0, npcs.Length, options, i => Parallel.For(0, npcs.Length, options, i =>
{ {
var (steering, _, mover, xform) = npcs[i]; var (_, steering, mover, xform) = npcs[i];
Steer(steering, mover, xform, modifierQuery, bodyQuery, xformQuery, frameTime); Steer(steering, mover, xform, modifierQuery, bodyQuery, xformQuery, frameTime);
}); });
@@ -223,7 +223,7 @@ namespace Content.Server.NPC.Systems
{ {
var data = new List<NPCSteeringDebugData>(npcs.Length); var data = new List<NPCSteeringDebugData>(npcs.Length);
foreach (var (steering, _, mover, _) in npcs) foreach (var (_, steering, mover, _) in npcs)
{ {
data.Add(new NPCSteeringDebugData( data.Add(new NPCSteeringDebugData(
mover.Owner, mover.Owner,