Could you show the new code?
If you put a ForLoop in tick, yeah you’ll get a crash. It seems like re-running the code on each floor is good.
Alternatively, you could get rid of the timeline entirely. You could do an Interp node with a set speed to go from point A to point B. In fact I’m thinking that’s the better way to go about this. You won’t need to track if it’s up or down, just set “Starting position” as a variable (don’t constantly update it) and have the goal Z set. Then use a “Set Actor Location” node from that. Then you can adjust the speed at the bottom of the node.