Нужны ли игры в наши дни?

36

Интересно, зачем вообще нужно устанавливать игры. Я понимаю, что некоторым программам, таким как браузер, он нужен, чтобы он мог связать с ним некоторые типы файлов и запустить исполняемый файл или добавить значок в компонент «Программы / компоненты» в Windows. Но какова цель установки, скажем, игры Steam? Сам Steam управляет установкой / удалением игры, обновлением, запуском и т. Д. Если я разрабатываю свой собственный лаунчер для игр (который будет использовать установку), зачем мне использовать установщик для моих игр?

nikitablack
источник
20
Steam НАМНОГО больше чем установщик. Steam также включает в себя множество функций сообщества, облачное сохранение, достижения, обработку платежей и т. Д. Итак, ваш вопрос "Зачем мне использовать установщик?" это другой вопрос, чем "Зачем мне использовать Steam?"
Almo
4
Steam также предоставляет набор инструментов для компиляции, который служит общей базой для компиляции игр linux для максимальной совместимости между дистрибутивами и другими вещами. Steam и Valve предоставляют целую экосистему инструментов для разработчиков игр, чтобы легче делиться своими работами с миром.
11
У меня проблемы с пониманием вопроса. Что такое «игровой лаунчер, который использует установку», а не установщик?
Mooing Duck
5
При всем уважении, если бы вы использовали свой собственный лончер, похожий на Steam, я был бы гораздо менее склонен покупать вашу игру, чем если бы вы использовали Steam. Steam имеет 12-летнюю историю, поддерживается крупной популярной компанией и пользуется доверием. Даже если бы вы были частью большой устоявшейся компании, вам все равно пришлось бы убеждать людей, что ваша система лучше. Кроме того, то, что @almo говорит о сообществе, имеет решающее значение. Steam - мой основной метод общения с друзьями - я не использую популярные формы социальных сетей.
Pharap
3
@Pharap - мне лично не особо важны какие-либо дополнительные функции Steam, но, учитывая выбор между «Самодельным установщиком Боба, полностью надежным и неинсталлирующим» и Steam, я бы предпочел воспользоваться последним. Я также часто использую GOG, поэтому выбор между этим и Steam заслуживает большего внимания, но, короче говоря, я бы предпочел более проверенный и проверенный способ получения игр, чем другое случайное программное обеспечение для того же самого.
ВЛАЗ

Ответы:

82

Есть немало причин, по которым вы хотите использовать установщик. Некоторые из них, от макушки головы:

  • Большинство игр (и, действительно, большинство приложений) в наши дни требуют использования некоторых вспомогательных библиотек DLL (таких как динамически связанная среда C ++ или среда Direct3D). Иногда эти DLL не могут быть законно распределены напрямую и должны быть установлены через распространяемые установщики. Раньше, например, это относится к библиотекам D3DX. Важно прочитать и понять условия лицензирования для ваших зависимостей. Если у вас есть такая зависимость, завершение ее установки в вашем собственном установщике может сгладить процесс для конечных пользователей.

  • Хорошо функционирующая современная программа не требует повышенного доступа (администратора) для запуска. Тем не менее, может потребоваться такой доступ будет установлен , и установщик обеспечивает достаточно простой способ сделать это , чтобы пользователи более или менее знакомы.

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

  • Если игра опирается на общесистемные версии некоторых из ее зависимостей (как указано выше), она может получить выгоду от обновлений безопасности и исправлений, сделанных для этих зависимостей, легче (ОС заботится о них, а не разработчик игры). Но установка этих зависимостей в системных местах также требует повышения прав, и может быть очень легко ошибиться, если вы попросите пользователя (особенно нетехнического пользователя) сделать это вручную.

  • Наконец, не забывайте, как легко, как человек, который разбирается в технологиях, недооценивать представление, не разбирающееся в технологиях. Иногда «двойной щелчок для открытия» - это единственный навык, который вы можете принять (иногда даже не так много); Двойной щелчок установщика запускает программу, которую пользователь обычно может "хорошо, хорошо, хорошо". Двойной щелчок по ZIP-файлу просто извлекает его («ну, куда пошла моя игра?») Или, что еще хуже, открывает его как папку, где пользователи дважды щелкают по файлу .exe, и он не запускается правильно. Пользователи также не всегда понимают установщики, но это ближе к той парадигме, которую они стремятся получить, чем «распаковать архив и поместить файлы в« правильное место »».

Что касается Steam ... Steam предоставляет средства для помощи в установке и удалении игры, но он не делает все для вас. Стоит также отметить, что не все игры распространяются в Steam или исключительно в Steam, поэтому полностью полагаться на сервисы установки Steam означает, что эти игры в конечном итоге дублируют работу для каналов распространения, отличных от Steam.

Джош
источник
3
Спасибо. Все имеет смысл, особенно последний пункт.
nikitablack
5
Кроме того, установщики можно использовать для восстановления отсутствующих файлов, используя параметр «восстановить» на панели управления -> Программы, если установщик поддерживает это.
ps2goat
1
@ ps2goat Например, кнопка «проверить целостность кеша игры», предлагаемая Steam.
Pharap
1
Стоит отметить , есть возможность создать самораспаковывающийся архив, так что делает работу с помощью двойного щелчка и слепо okaying
user1306322
4
Я бы добавил, что одной из основных причин, по которой программа должна иметь установщик, является то, что она может зарегистрировать UNinstaller. Заставлять пользователя вручную находить и удалять файлы, ярлыки, настройки и тому подобное, когда он хочет избавиться от вашей программы, - очень плохая практика.
Волновой режим
5

На самом деле, когда Steam устанавливает игру, есть еще установщик. Вокруг довольно много пакетов установки, и для сборки программы установки вы используете один из этих пакетов, а затем пишете скрипт установки, который сообщает программе установки:

  • Переместите файлы на локальный компьютер.
  • Зарегистрировать COM dll.
  • Добавьте записи реестра, возможно, в зависимости от сложного сценария.
  • Запустите любые алгоритмы защиты от копирования
  • Регистрация Услуги.
  • Установите переменные среды, возможно, в зависимости от сложного сценария.
  • Запустите дополнительные установщики сторонних производителей (наиболее известные примеры - DirectX и .Net Frameworks)
  • Установите ярлыки на рабочий стол и в меню «Пуск».
  • Зарегистрируйте процедуру удаления.

Решение о том, что делать там, не принимается Steam, а принимается сценарием установки, который нужно написать независимо от того, какой пакет установки вы используете, будь то WiX, NSIS или Steam.

Unix имеет аналогичные шаги. Вы можете перенести большую часть этой логики на первый запуск приложения, но логика все еще существует, вы просто разбиваете установщик на несколько частей и помещаете одну часть в вашу игру вместо установщика. Для этого есть свои плюсы и минусы, которые я бы с удовольствием обсудил в другом вопросе.

Питер
источник
Зачем игре нужно регистрировать сервисы?
Мединок
8
@Medinoc Мой нет. Но есть такие вещи, как анти-чит-пакеты или ошибочные разработчики. Или экзотические игровые концепции, требующие запуска игры, даже если вы в нее не играете.
Питер
4
@Medinoc В прошлом я явно прекратил играть в игру, потому что она ввела античит-систему, которая требовала установки собственного сервиса.
Фарап
1

Вопрос невероятно двусмысленный, но я думаю, что OP спрашивает, почему игры должны быть установлены и запущены через приложение «store» на рабочем столе, а не просто быть автономными.

Ответ прост: дистрибьютор может зарабатывать больше денег, отслеживая то, что вы делаете, а Управление цифровыми ограничениями (DRM) более эффективно при выполнении операций с удаленного сервера. Шлюз магазина также служит вашим глазам и щелчкам продавцам и облегчает дополнительные покупки.

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

Стивен М. Уэбб
источник