Zeustiak, your post here saved me lots of hours banging my head against the keyboard! https://answers.unrealengine.com/questions/117669/iteration-limit-setting-broken.html
Apparently I’m reaching iteration limit and UE then complains that my blueprint class has an infinite loop. I think it just means that you reached the iteration limit in one tick, that all while loops together contribute to, or something? The editor then reports it as an infinite loop, which is a ridiculously misleading error IMO.
Update: Got it working! I immediately noticed the performance hit when having abnormally large movement radii or attack ranges. I added a broad pass to optimize it a bit: the line stepping itself is the cost-heavy part, checking a single tile isn’t. So what I’m doing right now is first check all tiles within the rectangle from source tile to target tile. If none of them is blocking, line of sight is guaranteed.