I had this problem, I done this to overcome it.
function DeathWalk: TPointArray;
begin
SetLength(Result, 21);
Result[0] := Point(3229, 3217);
Result[1] := Point(3236, 3217);
Result[2] := Point(3235, 3226);
Result[3] := Point(3228, 3232);
Result[4] := Point(3222, 3239);
Result[5] := Point(3218, 3246);
Result[6] := Point(3209, 3246);
Result[7] := Point(3200, 3246);
Result[8] := Point(3188, 3243);
Result[9] := Point(3177, 3244);
Result[10] := Point(3171, 3237);
Result[11] := Point(3162, 3239);
Result[12] := Point(3157, 3233);
Result[13] := Point(3144, 3229);
Result[14] := Point(3130, 3224);
Result[15] := Point(3120, 3219);
Result[16] := Point(3111, 3222);
Result[17] := Point(3107, 3233);
Result[18] := Point(3105, 3244);
Result[19] := Point(3096, 3248);
Result[20] := Point(3092, 3241);
for II := 0 to High(Result) do
if not (WalkToTile(Result[II], 1, 1)) then
begin
II := 0;
WalkToTile(Result[II], 3, 2);
I := I + 1;
if i > 5 then
begin
Break;
Logout;
Writeln('Reflection Failed - Logging out');
Exit;
end;
end else
continue;
end;
This from my Draynor reflection script, umm havent updated sinc elike reflection rev 70 or something so its prob outdated.