Как мне автоматически обновить игровые активы и исполняемые файлы моего игрока? Предпочтительно, чтобы обновление программного обеспечения было бесплатным. Обновления должны быть небольшими по размеру и не тратить время процессора. Также должно быть легко запустить сервер обновлений для создания новых версий или логистически.
Мой пример использования - для обновления версий игр для игроков, таких как массовые онлайн-клиенты, тестирование распределенных игр или даже нормальные игры.
client-server
Пожар
источник
источник
Ответы:
Там это вопрос о переполнении стека здесь , которые могут быть использованы. Это относится к исправлению бинарных файлов эффективным способом (в основном, сохраняя различия между версиями, а не целыми файлами).
Также стоит помнить, что если вы устанавливаете игровые файлы в «Program Files» в Windows Vista и выше, вам также необходимо учитывать пользователя, который не обязательно имеет разрешение на изменение файлов. Там есть немного информации с помощью DirectX файлов здесь на это тоже.
После того, как вы сгенерируете ваш патч, вы, вероятно, захотите проверить текущую версию exe-игры с чем-то, размещенным где-то в сети, а затем загрузить и запустить отдельный патчер с содержимым патча. Основной exe игры не сможет исправиться, пока он работает. Существует множество дешевых файловых хостингов, где вы можете хранить свои патчи и другие данные.
источник
Я заметил, что вы пометили вопрос клиент-сервер, поэтому я предполагаю, что вы также спрашиваете, как физически распространять патч. В зависимости от вашего бюджета для пользователей проще всего загрузить HTTP-файл на свой веб-сайт, но для этого требуется большая пропускная способность с вашего сервера (размер патча * приобретенные игры), а чуть менее удобным для пользователя вариантом является загрузка контента в виде bittorrent и запустить некоторые семена с ваших серверов. Это уменьшает требуемую пропускную способность на вашем сервере, но будет более болезненным для ваших пользователей, если вы не похожи на Blizzard и не имеете возможности встроить в свою игру битторрент-клиента.
Суть в том, что это зависит от того, насколько большим (МБ / ГБ) будет ваш патч или обновление и сколько денег вы должны потратить на сервер и пропускную способность для распространения вашего патча среди конечных пользователей.
С точки зрения программного обеспечения существует много способов распространения и установки обновлений игры, но в целом вы должны придерживаться методов, используемых традиционным программным обеспечением. Попросите пользователя загрузить установщик обновлений, который знает, как запрашивать у пользователя административный доступ к своему компьютеру и копировать / обновлять файлы при необходимости для проверки версий (возможно, пользователь пропустил v1.1 и установил v1.2 напрямую).
источник