Skip to content

SteppableTickingSystem

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

public abstract class SteppableTickingSystem extends EntityTickingSystem<EntityStore>

Abstract base class for NPC ECS systems that respect the Frozen component for debug stepping. When an NPC entity has a Frozen component (or the world’s isAllNPCFrozen() flag is set), the system skips the entity unless a StepComponent is present, in which case it ticks for a single step using the step’s configured tick length.

Most NPC systems extend this class rather than EntityTickingSystem directly, ensuring that frozen NPCs only advance when explicitly stepped by the debug tools.

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

Checks the Frozen component and world freeze flag. If the entity is not frozen, delegates to steppedTick with the frame delta time. If frozen, looks for a StepComponent and uses its tick length. If frozen with no step component, returns without ticking.

public abstract void steppedTick(
float var1,
int var2,
@Nonnull ArchetypeChunk<EntityStore> var3,
@Nonnull Store<EntityStore> var4,
@Nonnull CommandBuffer<EntityStore> var5
)

Called with the resolved tick length (either the frame dt or the step component’s tick length). Subclasses implement their per-entity tick logic here.

FieldTypeDescription
stepComponentTypeComponentType<EntityStore, StepComponent>Component type for debug step.
frozenComponentTypeComponentType<EntityStore, Frozen>Component type for frozen state.
Hydex is an independent community resource. Hytale is a trademark of Hypixel Studios. Hydex is not affiliated with or endorsed by Hypixel Studios.