В конкретно в этой задаче кажется, что самое длинное расстояние, это количество ячеек игрового поля в области, которая содержит красную точку. Т.е. это можно попробовать решить каким либо алгоритмом заливки области цветом.
Можно сделать наоборот. Не использовать таймер обратного отсчёта, но в момент начала хода рассчитать время его окончания и сравнивать по таймеру текущее время с рассчитанным. Как только рассчитанное время наступило спросить у сервера текущее состояние игры. Такой вариант позволит сгладить фризы таймера на клиенте.