Coroutine function (Delay node) for c++

It may not have existed when OP created this thread, but there is a version of SetTimer that takes a delegate now, and you can pass arbitrary values into the delegate when you create it, e.g.,:

FTimerDelegate SomeDelegate = FTimerDelegate::CreateUObject(this, &Redacted::FunctionName, PayloadParameter1, PayloadParameter2);
TimerManager.SetTimerForNextTick(SomeDelegate);

void FunctionName(PayloadParameter1, PayloadParameter2)
{
}