ну, можно попробовать findcolor подобрать цвет, только не на всех локациях наверное получится, например на первом скрине там можно черный цвет с моба поискать, а там где бабочки фиг знает может получится найти подходящий цвет а может быть будет куча совпадений. Для примера возьмем скрин с кроликами
здесь переменные области поиска должны рассчитываться из координат персонажа, например персонаж определен на координатах #x = 900, #y = 800 тогда пишешь
Код
set #x1 #x - 400
set #x2 #x + 400
set #y1 #y
set #y2 #y + 50
while 1 = 1
set #mob findcolor (#x1, #y1 #x2, #y2 1 1 (color) %mob 2 1 0)
if #mob > 0
move %mob [1 1], %mob [1 2]
...
break
else
set #y1 #y1 - 50 // область поиска будет каждый проход расширяться вверх на 50 пикселей если цвет не найден.
end_if
end_while
я бы попробовал сделать так, но это только идея, нужно смотреть в как оно будет в конкретном случае и подбирать зону поиска и если персонаж будет наоборот сверху а все мобы снизу то уже немного по другому переписывать и так же в случае справа и слева хотя может и не обязательно.