Skip to content

SteeringSystem

Package: com.hypixel.hytale.server.npc.systems

public class SteeringSystem extends SteppableTickingSystem

Applies the computed steering vectors (body and head) to the NPC’s active motion controller. Runs after AvoidanceSystem and after KnockbackSystems.ApplyKnockback, and before TransformSystems.EntityTrackerUpdate.

DependencyDirection
AvoidanceSystemAFTER
KnockbackSystems.ApplyKnockbackAFTER
TransformSystems.EntityTrackerUpdateBEFORE
public SteeringSystem(@Nonnull ComponentType<EntityStore, NPCEntity> npcEntityComponent)

Matches entities with NPCEntity and TransformComponent.

@Override
public void steppedTick(
float dt,
int index,
@Nonnull ArchetypeChunk<EntityStore> archetypeChunk,
@Nonnull Store<EntityStore> store,
@Nonnull CommandBuffer<EntityStore> commandBuffer
)

Delegates to role.getActiveMotionController().steer(ref, role, bodySteering, headSteering, dt, commandBuffer).

When debug motion steering is enabled, logs detailed velocity and heading information. On IllegalStateException or IllegalArgumentException, removes the entity.

Returns false — this system does not run in parallel.

  • AvoidanceSystem — computes avoidance/separation forces before steering
  • RoleSystemsPostBehaviourSupportTickSystem runs after steering
Hydex is an independent community resource. Hytale is a trademark of Hypixel Studios. Hydex is not affiliated with or endorsed by Hypixel Studios.