UDP или TCP?
Ну, давайте подумаем вместе: когда я отсылаю с клиента на сервер информацию о своем передвижении в онлайн-шутере я отсылаю может быть десятки UDP-пакетов в секунду. Если я потеряю несколько - это не критично. А если, в вашем случае, я потеряю информацию о ходе в пошаговой игре это приемлимо? Вот то-то и оно.
Как организовать общение с сервером в то время, когда игрок не участвует в сражении? Например, когда он просматривает свой профиль, делает покупки ит.д
Ключевое слово
платежи - это причина, по которой проверять соответсвие состояний на сервере и на клиенте нужно довольно часто ( насколько часто - зависит от конкретной задачи ). Ну и плюс конкретно HTTP - не совсем удачный выбор для протокола игры.