Сеть - данные для отправки на сервер

Я пытаюсь сделать свою первую многопользовательскую игру (я делаю это в Ruby с Gosu), и мне интересно, какую информацию отправить на сервер и сколько, если таковые имеются, вычислений следует выполнить на сервере.

Должен ли клиент использоваться просто для сбора и отрисовки ввода, оставляя сервер для вычисления всего остального? Или это должно быть более равномерно распределено, чем это?

1 ответ

Решение

Я собираюсь ответить на свой собственный вопрос с некоторым опытом под моим поясом ради любого, кто может быть заинтересован или нуждается в ответе.

Это будет зависеть от того, что вы делаете, но, в первую очередь, для большинства игр рекомендуется, чтобы клиент получал и отправлял входные данные на сервер, чтобы он мог выполнять все необходимые вычисления. Это значительно усложняет обман игроков при использовании программного обеспечения, такого как Cheat Engine, поскольку это означает, что единственными значениями, которые они смогут изменить, будут локальные переменные, которые не имеют отношения к игре.

Тем не менее, при отправке всех данных клиента с сервера на клиент, будьте осторожны, чтобы не отправлять слишком много данных, так как это может привести к чрезмерным нагрузкам на сеть. Держите ваши данные переданы до минимума, необходимого. Однако на этой же ноте не бойтесь добавлять данные в ваши пакеты, просто убедитесь, что вы работаете эффективно.

Всем удачи в ваших проектах, и не стесняйтесь добавлять или обсуждать мой ответ, если что-то не в порядке.

Другие вопросы по тегам