Вы можете смоделировать игровое поле в виде многомерного массива JavaScript:
[[x0, x1, x2, x3 ... xn],
.....
.....]
каждая запись представляет собой массив, представляющий строку. Каждая ячейка содержит числовое значение игрового фигуры / квадрата.
Эта модель может быть "контрактом", который вы отправляете на сервер через ajax как JSON. Сервер вычисляет тот же массив и отправляет его обратно в пользовательский интерфейс. Вы можете отобразить этот массив в таблицу, div или что угодно. Prototype.js и jQuery упрощают создание dhtml.
Этот формат массива будет намного меньше, чем весь HTML-ответ с разметкой. Это также дает вам свободу рендеринга доски любым удобным вам способом.
Вы можете дополнительно сжать этот формат и просто отправить дельты. Например: сохранить координаты плиток, измененных пользователем, и отправить их на сервер:
[(x1, y2),.....(xn, yn)]
Или вы можете сделать это наоборот: отправить полный массив модели на сервер и заставить сервер вычислять дельты.
Проверьте Sponty и наблюдайте за трафиком Ajax каждые несколько минут, мы делаем нечто очень похожее:
Клиент отправляет полную модель на сервер, а сервер отправляет различия.