Como devo atualizar automaticamente os recursos e os executáveis do jogo do meu jogador? É preferível que o software de atualização seja gratuito. As atualizações devem ser pequenas e não desperdiçar tempo de CPU. Também deve ser fácil executar um servidor de atualização para criar novas versões ou logisticamente.
Meu caso de uso é para atualizar versões de jogos de jogadores, como em grandes clientes online ou executar testes de jogos distribuídos ou mesmo jogos normais.
client-server
Fogo
fonte
fonte
Respostas:
Há uma pergunta no Stack Overflow aqui que pode ser útil. Relaciona-se ao patch de arquivos binários de maneira eficiente (basicamente armazenando as diferenças entre as versões em vez dos arquivos inteiros).
Também é importante estar ciente de que, se você instalar os arquivos do jogo em "Arquivos de Programas" no Windows Vista e superior, também precisará levar em consideração o usuário que não tem necessariamente a permissão para modificar os arquivos. Há também algumas informações dos arquivos de ajuda do DirectX aqui .
Depois de gerar seu patch, você provavelmente verificará a versão atual do jogo com algo hospedado na Web em algum lugar, faça o download e inicie um patcher separado com o conteúdo do patch. O exe principal do jogo não poderá se consertar enquanto estiver em execução. Existem muitas soluções baratas de hospedagem de arquivos por aí, onde você pode armazenar seu patch e outros dados.
fonte
Percebi que você marcou a pergunta cliente-servidor, então presumo que você também esteja perguntando como distribuir fisicamente o patch. Dependendo do seu orçamento, o mais fácil para os usuários é simplesmente fornecer um download HTTP no seu site, mas isso requer a maior largura de banda do seu servidor (tamanho do patch * jogos comprados), uma opção um pouco menos amigável é fazer upload do seu conteúdo como um bittorrent e execute algumas sementes nos seus servidores. Isso reduz a largura de banda solicitada no seu servidor, mas será mais trabalhoso para os usuários, a menos que você seja como a Blizzard e tenha recursos para criar um cliente bitorrent no seu jogo.
A conclusão é que depende do tamanho (MB / GB) de seu patch ou atualização e quanto dinheiro você precisa gastar em um servidor e largura de banda para distribuir o patch aos usuários finais.
Do ponto de vista do software, existem muitas maneiras de distribuir e instalar atualizações de jogos, mas, em geral, você deve seguir os métodos usados pelo software tradicional. Peça ao usuário que faça o download de um instalador de atualização, que saiba solicitar ao usuário acesso administrativo à máquina e copie / atualize os arquivos conforme necessário, verificando as versões (o usuário pode ter pulado a v1.1 e instalado a v1.2 diretamente).
fonte