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?
36
Respostas:
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.
fonte
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:
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.
fonte
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.
fonte