Basically, because getactorlocation hasn’t execution pins (white triangles to connect white lines), you really call it when the node with execution pins connected to it is called.
So, in the first image you are getting the actor location on begin play once, when the “Set Posicion Enemiga” node is called and stored in that var. So you get the location of the actor and store it only 1 time, at the beginning.
So in first image goes like this. Game Starts, gets location of the actor, let’s say is at 0 (0,0,0) but to make it simple imagine it moves only in 1 direction. Then you get a value of 1 in the timeline, you have 0 (posicion enemiga) + 1 (from timeline) and you move actor to position 1. Then you get 2 from timeline 0 (posicion enemiga) + 2, so you move the actor to position 2, etc…
In the other images, you are calling getactorlocation each time setactorlocation is called, basically each tick. So you are getting the actual location of the actor each tick.
So in the other images, you 0 (getactorlocation) + 1 (from timeline), you move actor to location 1, but here is the difference, you get 2 from timeline, then you have 1 (getactorlocation) + 2 (from timeline), so you move the actor to location 3.
0 (posicion enemiga) + 1 (timeline) = 1
0 (posicion enemiga) + 2 (timeline) = 2
0 (posicion enemiga) + 3 (timeline) = 3
Other 2 images:
0 (getactorlocation) + 1 (timeline) = 1
1 (getactorlocation) + 2 (timeline) = 3
3 (getactorlocation) + 3 (timeline) = 6