@Tiran_94
Python Django

Как лучше реализовать игровой сервер для 2d игры на Python?

Как лучше организовать игровой сервер на питоне. Игра рассчитана на 1000 игроков, может меньше максимум который может быть это 5000 игроков и то вряд ли. Зона видимости игрока 576 клеток.
Как можно реализовать ожидание сервера на действия игрока?
Может есть примеры?
Какие библиотеки стоит изучить и использовать?
  • Вопрос задан
  • 1819 просмотров
Пригласить эксперта
Ответы на вопрос 1
chupasaurus
@chupasaurus
Сею рефлекторное, злое, временное
Дополните картину внешнего вида игрового поля хотя бы, 576 для отвечающих одинаково равно 765.
Сервер должен держать полную картину мира, клиенты - только отдавать на сервер команды (которые сервер обязательно должен проверять на соответствие правилам и текущему состоянию), получать положенные по механике изменения мира (т.е. объекты с координатами в поле видимости) и отрисовывать то, что получил от сервера.
Ожидание обычно реализуют по маленьким шагам для real-time игр (от 20 раз в секунду до скольки можно выжать из железа); для пошаговых - ставится таймер для хода и в это время получаются команды вплоть до "Конец хода", команда окончания хода не успевает прийти к концу таймера - ход автоматически завершается.
pygame - если 2D, документация покрывает в целом всё, что надо для освоения; 3D игры на Пайтоне - это плохая музыка, там на выбор есть Unreal Engine 3.5/4 (документация там правда не на всё, что надо, но то же клиент-серверное взаимодействие расписано как надо, порог входа высокий, возможностей ещё больше), Unity3D (хорошая документация, относительно несложно освоиться на базовом уровне, но не такой мастодонт всё же) и с полсотни движков поменьше.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы