Os jogos precisam de instalação hoje em dia?

36

Eu me pergunto por que os jogos precisam de instalação. Entendo que alguns softwares, como um navegador, precisam dele para associar alguns tipos de arquivos e iniciar um executável ou adicionar o ícone ao componente Programas / Recursos no Windows. Mas qual é o objetivo de instalar, digamos, um jogo Steam? O próprio Steam lida com a instalação / remoção de um jogo, atualização, inicialização etc. Se eu desenvolver meu próprio iniciador de jogos (que usará a instalação), quais são os motivos para eu usar também um instalador para meus jogos?

nikitablack
fonte
20
O Steam é MUITO mais do que um instalador. O Steam também inclui muitos recursos da comunidade, economia na nuvem, conquistas, processamento de pagamentos etc. Então sua pergunta "Por que eu usaria um instalador?" é uma pergunta diferente de "Por que eu usaria o Steam?"
Almo
4
O Steam também fornece uma cadeia de ferramentas de compilação que funciona como uma base comum para compilar jogos Linux para máxima compatibilidade entre distribuições e outras coisas; o Steam e a Valve fornecem um ecossistema inteiro de ferramentas para que os desenvolvedores de jogos compartilhem mais facilmente seus trabalhos com o mundo.
11
Estou tendo problemas para entender a pergunta. O que é um "iniciador de jogos que usa instalação", que não é um instalador?
Mooing Duck
5
Com todo o respeito, se você usasse seu próprio lançador semelhante ao Steam, eu estaria muito menos inclinado a comprar seu jogo do que se usasse o Steam. O Steam tem uma história de 12 anos, é apoiado por uma grande empresa popular e é bem confiável. Mesmo se você fizesse parte de uma grande empresa bem estabelecida, ainda teria que convencer as pessoas de que seu sistema é superior. Além disso, o que o @almo diz sobre a comunidade é crucial. O Steam é o meu principal método de comunicação com os amigos - não uso as formas populares de mídia social.
Pharap
3
@Pharap - Eu pessoalmente não me importo com nenhum dos recursos extras do Steam, mas, ainda assim, tenho a opção de usar o "Instalador não-instalador totalmente confiável e caseiro de Bob" e o Steam, eu prefiro ir com o último. Também uso muito o GOG, portanto, uma escolha entre isso e o Steam mereceria mais consideração, mas, resumindo, eu preferiria uma maneira mais experimentada e testada de obter jogos do que um outro software aleatório para o mesmo.
VLAZ 21/07

Respostas:

82

Existem algumas razões pelas quais você deseja usar um instalador. Alguns deles, em cima da minha cabeça:

  • Atualmente, a maioria dos jogos (e de fato, a maioria dos aplicativos) exige o uso de algumas DLLs de suporte (como um tempo de execução C ++ vinculado dinamicamente ou os tempos de execução do Direct3D). Às vezes, essas DLLs não podem ser legalmente distribuídas diretamente e devem ser instaladas através de instaladores redistribuíveis. Isso costumava ser o caso das DLLs do D3DX, por exemplo. É importante ler e entender os termos de licenciamento para suas dependências. Se você tiver essa dependência, encerrar sua instalação em seu próprio instalador pode facilitar o processo para os usuários finais.

  • Um programa moderno bem comportado não exigirá acesso elevado (administrador) para ser executado. No entanto, pode exigir que esse acesso seja instalado , e um instalador fornece um processo razoavelmente simples para que os usuários estejam mais ou menos familiarizados.

  • Da mesma forma, alguns jogos desejam gerar entradas de registro para associar tipos de arquivos e similares, como você observou. Isso também pode exigir elevação.

  • Se um jogo conta com versões instaladas em todo o sistema de algumas de suas dependências (como acima), ele pode se beneficiar com atualizações de segurança e hotfixes feitos com mais facilidade nessas dependências (o sistema operacional cuida delas, não do desenvolvedor do jogo). Mas instalar essas dependências em locais adequados ao sistema também requer elevação e pode ser muito fácil cometer erros se você pedir a um usuário (particularmente um usuário não técnico) para fazê-lo manualmente.

  • Por fim, não se esqueça de como é fácil, como alguém que é um usuário experiente em tecnologia, subestimar a visão não computacional da computação. Às vezes, "clicar duas vezes para abrir" é a única habilidade que você pode assumir (às vezes nem isso); clicar duas vezes em um instalador inicia um programa pelo qual o usuário pode "ok, ok, ok". Clicar duas vezes em um .zip apenas o extrai ("para onde foi o meu jogo?") Ou pior, abre-o como uma pasta, na qual os usuários clicam duas vezes no .exe e ele falha na execução correta. Os usuários nem sempre entendem os instaladores, mas é mais próximo do paradigma que eles tendem a obter do que "descomprimir o arquivamento e colocar os arquivos no 'lugar certo'".

Quanto ao Steam ... O Steam fornece recursos para ajudar a instalar e desinstalar um jogo, mas ele não faz tudo por você. Também vale a pena notar que nem todos os jogos são distribuídos no Steam ou exclusivamente no Steam, portanto, confiar inteiramente nos serviços de instalação do Steam significa que esses jogos acabam duplicando o trabalho em canais de distribuição que não são do Steam.

Josh
fonte
3
Obrigado. Tudo faz sentido, especialmente o último ponto.
Nikitablack 20/07
5
Além disso, os instaladores podem ser usados ​​para restaurar arquivos ausentes usando a opção 'reparar' no painel de controle -> Programas, se o instalador suportar.
Ps2goat
1
@ ps2goat Como o botão "verificar a integridade do cache do jogo" oferecido pelo Steam.
Pharap
1
interessante notar que há uma opção para criar um arquivo auto-extraível, para que ele faz trabalho clicando duas vezes e cegamente okaying
user1306322
4
Eu acrescentaria que um grande motivo pelo qual um programa deve ter um instalador é para que ele possa registrar um desinstalador. Forçar o usuário a encontrar e excluir manualmente arquivos, atalhos, configurações e outros quando quiserem se livrar do seu programa, é uma prática muito ruim.
Wavemode 21/07
5

Na verdade, quando o steam instala um jogo, ainda existe um instalador. Existem muitos pacotes de instaladores disponíveis e, para construir um instalador, você usa um desses pacotes e depois escreve um script de instalação que informa ao instalador para:

  • Mova os arquivos para o PC local.
  • Registre dlls COM.
  • Adicione entradas do registro, possivelmente dependendo de um script complexo.
  • Execute qualquer algoritmo de proteção contra cópia
  • Serviços de Registro.
  • Defina variáveis ​​de ambiente, possivelmente dependendo de um script complexo.
  • Execute instaladores adicionais de terceiros (o DirectX e o .Net Frameworks são os exemplos mais conhecidos)
  • Instale atalhos na área de trabalho e no menu Iniciar.
  • Registre o procedimento de desinstalação.

A decisão do que fazer lá não é tomada pelo Steam, é tomada pelo script de instalação, que você precisa escrever, independentemente do pacote de instalação usado, seja WiX, NSIS ou Steam.

O Unix tem etapas semelhantes. Você pode mover grande parte dessa lógica para o primeiro início do aplicativo, mas a lógica ainda existe, você está apenas dividindo o instalador em várias partes e colocando uma no seu jogo em vez de em um instalador. Existem prós e contras em fazê-lo, que eu ficaria feliz em discutir em outra pergunta.

Pedro
fonte
Por que um jogo precisaria registrar serviços?
Medinoc 21/07
8
@Medinoc Mine não. Mas existem coisas como pacotes anti-fraude ou desenvolvedores equivocados por aí. Ou conceitos de jogos exóticos que exigem que o jogo seja executado mesmo quando você não está jogando.
Peter Peter
4
@Medinoc No passado, parei explicitamente de jogar um jogo porque ele introduziu um sistema anti-aquecimento que exigia a instalação de seu próprio serviço.
Pharap
1

A pergunta é incrivelmente ambígua, mas acho que o OP está perguntando por que os jogos precisam ser instalados e executados através de um aplicativo de "loja" na área de trabalho, em vez de apenas serem independentes.

A resposta é simples: o distribuidor pode ganhar mais dinheiro acompanhando o que você faz, e o Gerenciamento de Restrições Digitais (DRM) é mais eficaz quando realizado por meio de uma operação de servidor remoto. O gateway da loja também serve aos seus olhos e cliques aos seus vendedores e facilita compras adicionais.

Se você estiver distribuindo seu próprio jogo, não há necessidade de um aplicativo dessa loja. Use um instalador simples e torne seu jogo livre de DRM.

Stephen M. Webb
fonte