StateTree task only ticking once

Hi, thanks for your reply.

I override all necessary functions (c++), it looks like this:

USTRUCT(meta = (DisplayName = "Random Wait Task"))
struct PROJ_API FTestWaitTask : public FMassStateTreeTaskBase
{
	GENERATED_BODY()

	using FInstanceDataType = FMassTestWaitTaskInstanceData;

protected:
	virtual bool Link(FStateTreeLinker& Linker) override;
	virtual const UStruct* GetInstanceDataType() const override { return FInstanceDataType::StaticStruct(); }
	virtual EStateTreeRunStatus EnterState(FStateTreeExecutionContext& Context, const FStateTreeTransitionResult& Transition) const override;
	virtual void ExitState(FStateTreeExecutionContext& Context, const FStateTreeTransitionResult& Transition) const override;
	virtual EStateTreeRunStatus Tick(FStateTreeExecutionContext& Context, const float DeltaTime) const override;
};

As I said, the ExitState gets called when I stop playing. The problem is that the Tick function is just called once after start.

In the enter state I return EStateTreeRunStatus::Running and in the Tick function I decrease the timer and return EStateTreeRunStatus::Succeeded when timer reaches <=0, otherwise I return EStateTreeRunStatus::Running.

I just don’t know why it isn’t ticking anymore after start.