Туговато идет) Суть понял. Но в дальнейшем все равно придетсяя пересчитывать, чтобы получить массив со всеми координатами. 52, 52 - 52, 53 - 52, 54 ...
А потом уже показать карту. Я мыслю так.
Код
// Размерность карты
$map_x = 15;
$map_y = 15;
// Размер видимой карты 7ч7
$map_vis = 7;
// Текущая координата
$self = 1157;
$ratio = floor($map_vis/2);
$center = $self - $ratio;
// Текущий квадрат
$self_quad = array();
$quad_start = $center - ($map_x * $ratio);
for ($i = 0;$i < $map_vis; $i++)
{
$self_quad = array_merge($self_quad, range($quad_start + ($i * $map_x), $quad_start + ($i * $map_x) + $map_vis - 1));
}