[Duvida/Ajuda] Como deve ser um launcher? Hitskin_logo Hitskin.com

Isto é uma pré-visualização de um tema em Hitskin.com
Instalar o temaVoltar para a ficha do tema

Aldeia RPG
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

[Duvida/Ajuda] Como deve ser um launcher?

4 participantes

Ir para baixo

[Duvida/Ajuda] Como deve ser um launcher? Empty [Duvida/Ajuda] Como deve ser um launcher?

Mensagem por KamuiRyu Qua Jul 26, 2017 2:18 am

Eae galera da aldeia, então, estava fazendo o launcher para meu game e então bateu uma duvida crucial.
Em um launcher, como vocês acham que ele deve ser atualizado? Verificando arquivo por arquivo, ou por um arquivo zip, ou os dois mesmo. Eu fiz o primeiro, mas eu quero deixar esse launcher praticamente perfeito, então pergunto a vocês, como deve ser feito essa atualização.

Fico no aguardo de uma opinião.
Muito obrigado pela atenção
KamuiRyu
KamuiRyu
Novato
Novato

Mensagens : 26
Créditos : 1

Ir para o topo Ir para baixo

[Duvida/Ajuda] Como deve ser um launcher? Empty Re: [Duvida/Ajuda] Como deve ser um launcher?

Mensagem por DragonicK Qua Jul 26, 2017 5:44 am

tanto faz, depende de como vc vai fazer o negocio
DragonicK
DragonicK
Experiente
Experiente

Mensagens : 543
Créditos : 81

Ficha do personagem
Nível: 1
Experiência:
[Duvida/Ajuda] Como deve ser um launcher? Left_bar_bleue0/0[Duvida/Ajuda] Como deve ser um launcher? Empty_bar_bleue  (0/0)
Vida:
[Duvida/Ajuda] Como deve ser um launcher? Left_bar_bleue30/30[Duvida/Ajuda] Como deve ser um launcher? Empty_bar_bleue  (30/30)

Ir para o topo Ir para baixo

[Duvida/Ajuda] Como deve ser um launcher? Empty Re: [Duvida/Ajuda] Como deve ser um launcher?

Mensagem por GallighanMaker Qua Jul 26, 2017 10:16 am

Eu particularmente utilizo um arquivo ZIP para atualização, mais fácil tratar e menos problemas. Se for fazer file a file você irá precisar verificar cada um e sua integridade, aconselho a usar um hash nesses files tanto no servidor quanto client, se o file do client for diferente do server ele baixa dnv pois ainda não completou ou deu algum problema, visando isso você terá um launcher que funciona de forma adequada. 

_________________
[Duvida/Ajuda] Como deve ser um launcher? 8dVK0ku
using C# and import Python developer || Expert in Unity Engine IDE. || [Duvida/Ajuda] Como deve ser um launcher? 769_heart 2D pixel games.
GallighanMaker
GallighanMaker
Colaborador
Colaborador

Medalhas : [Duvida/Ajuda] Como deve ser um launcher? ZgLkiRU
Mensagens : 985
Créditos : 102

Ficha do personagem
Nível: 1
Experiência:
[Duvida/Ajuda] Como deve ser um launcher? Left_bar_bleue0/0[Duvida/Ajuda] Como deve ser um launcher? Empty_bar_bleue  (0/0)
Vida:
[Duvida/Ajuda] Como deve ser um launcher? Left_bar_bleue30/30[Duvida/Ajuda] Como deve ser um launcher? Empty_bar_bleue  (30/30)

https://kingsland-online.com/

Ir para o topo Ir para baixo

[Duvida/Ajuda] Como deve ser um launcher? Empty Re: [Duvida/Ajuda] Como deve ser um launcher?

Mensagem por KamuiRyu Qua Jul 26, 2017 10:37 am

DragonicK escreveu:tanto faz, depende de como vc vai fazer o negocio
É que estou em dúvida, porque eu acho um sistema que baixé arquivo por arquivo bem interessante, mas o de baixar um arquivo compactado em .zip também é um ótimo sistema, aí vem minha dúvida.
KamuiRyu
KamuiRyu
Novato
Novato

Mensagens : 26
Créditos : 1

Ir para o topo Ir para baixo

[Duvida/Ajuda] Como deve ser um launcher? Empty Re: [Duvida/Ajuda] Como deve ser um launcher?

Mensagem por KamuiRyu Qua Jul 26, 2017 10:45 am

GallighanMaker escreveu:Eu particularmente utilizo um arquivo ZIP para atualização, mais fácil tratar e menos problemas. Se for fazer file a file você irá precisar verificar cada um e sua integridade, aconselho a usar um hash nesses files tanto no servidor quanto client, se o file do client for diferente do server ele baixa dnv pois ainda não completou ou deu algum problema, visando isso você terá um launcher que funciona de forma adequada. 
Eu estou verificando arquivo por arquivo verificando apenas o tamanho, estava verificando data de modificação também, mas deu uns problemas e acabei tirando. Você acha que preciso verificar mais alguma coisa, ah, já ia esquecendo, verifico se o arquivo existe também, tudo isso utilizando um arquivo .txt que é baixado, assim que ele baixa, eu salvo ele em um array e apago, aí saiu verificando arquivo por arquivo.
Enfim, me explique um pouco sobre esse hash, só conheço hash para criptografia de varáveis, porque sou programador web, então não consegue muito isso.
E vlw pela opinião, vai ajudar bastante. 
KamuiRyu
KamuiRyu
Novato
Novato

Mensagens : 26
Créditos : 1

Ir para o topo Ir para baixo

[Duvida/Ajuda] Como deve ser um launcher? Empty Re: [Duvida/Ajuda] Como deve ser um launcher?

Mensagem por GallighanMaker Qua Jul 26, 2017 12:45 pm

Você pode usar algo parecido (utilizando uma hash MD5)

Código:
 private string GetFileChecksum(string file, HashAlgorithm algorithm)
        {
            string result = string.Empty;

            using (FileStream fs = File.OpenRead(file))
            {
                result = BitConverter.ToString(algorithm.ComputeHash(fs)).ToLower().Replace("-", "");
            }

            return result;
        }

E após criar uma função para calcular o MD5, utlizar para ler algum arquivo remoto e comparar  com um local:


Código:
string RemoteMD5checksum;
string LocalMD5checksum;

string remoteFile = "http://seuserver.com/seuarquivo.txt"
string localFile =  "C:/suapasta/seuarquivo.txt"

RemoteMD5checksum = GetFileChecksum(remoteFile, new MD5CryptoServiceProvider());
LocalMD5checksum = GetFileChecksum(localFile, new MD5CryptoServiceProvider());

if(RemoteMD5checksum.Equals(LocalMD5checksum ))
//hash's iguais
else
     //hash's diferentes


Se quiser dar uma olhada na documentação da referencia: System.Security.Cryptography;

Update:
Na verdade você terá que baixar esse arquivo remoto temporariamente, não sei se da pra verificar dessa forma passando o path completo. 


Dica:
Você pode usar um foreach pra calcular todos arquivos remotos e pra verificar com cada um local.

Espero ter ajudado.

_________________
[Duvida/Ajuda] Como deve ser um launcher? 8dVK0ku
using C# and import Python developer || Expert in Unity Engine IDE. || [Duvida/Ajuda] Como deve ser um launcher? 769_heart 2D pixel games.
GallighanMaker
GallighanMaker
Colaborador
Colaborador

Medalhas : [Duvida/Ajuda] Como deve ser um launcher? ZgLkiRU
Mensagens : 985
Créditos : 102

Ficha do personagem
Nível: 1
Experiência:
[Duvida/Ajuda] Como deve ser um launcher? Left_bar_bleue0/0[Duvida/Ajuda] Como deve ser um launcher? Empty_bar_bleue  (0/0)
Vida:
[Duvida/Ajuda] Como deve ser um launcher? Left_bar_bleue30/30[Duvida/Ajuda] Como deve ser um launcher? Empty_bar_bleue  (30/30)

https://kingsland-online.com/

Ir para o topo Ir para baixo

[Duvida/Ajuda] Como deve ser um launcher? Empty Re: [Duvida/Ajuda] Como deve ser um launcher?

Mensagem por KamuiRyu Qua Jul 26, 2017 1:10 pm

GallighanMaker escreveu:Você pode usar algo parecido (utilizando uma hash MD5)

Código:
 private string GetFileChecksum(string file, HashAlgorithm algorithm)
        {
            string result = string.Empty;

            using (FileStream fs = File.OpenRead(file))
            {
                result = BitConverter.ToString(algorithm.ComputeHash(fs)).ToLower().Replace("-", "");
            }

            return result;
        }

E após criar uma função para calcular o MD5, utlizar para ler algum arquivo remoto e comparar  com um local:


Código:
string RemoteMD5checksum;
string LocalMD5checksum;

string remoteFile = "http://seuserver.com/seuarquivo.txt"
string localFile =  "C:/suapasta/seuarquivo.txt"

RemoteMD5checksum = GetFileChecksum(remoteFile, new MD5CryptoServiceProvider());
LocalMD5checksum = GetFileChecksum(localFile, new MD5CryptoServiceProvider());

if(RemoteMD5checksum.Equals(LocalMD5checksum ))
//hash's iguais
else
     //hash's diferentes


Se quiser dar uma olhada na documentação da referencia: System.Security.Cryptography;

Update:
Na verdade você terá que baixar esse arquivo remoto temporariamente, não sei se da pra verificar dessa forma passando o path completo. 


Dica:
Você pode usar um foreach pra calcular todos arquivos remotos e pra verificar com cada um local.

Espero ter ajudado.
Eu vi isso em um forum da microsoft, e acho que tenho um jeito de fazer com que seja mais rápido e fazer requisições ao servidor apenas para fazer o necessário, no caso, o download.
Bom, vou explicar aqui, vai saber se alguém tem o mesma duvida que eu. Da pra criar um arquivo txt, com o hash original dos seus arquivos, como eu disse antes, eu to baixando o arquivo, salvando em um array, e depois eu excluo esse arquivo, é instantâneo, a partir dai, já da para comparar o hash com o arquivo original. Acho que isso pode funcionar, quase certeza que vai funcionar.


Muito obrigado, você me ajudou bastante, não teria nem pensado em usar o hash em um arquivo, muito obrigado mesmo.
KamuiRyu
KamuiRyu
Novato
Novato

Mensagens : 26
Créditos : 1

Ir para o topo Ir para baixo

[Duvida/Ajuda] Como deve ser um launcher? Empty Re: [Duvida/Ajuda] Como deve ser um launcher?

Mensagem por Darkio Qua Jul 26, 2017 1:25 pm

@gallighanmaker Falando em Launcher o seu já foi publicado amigo? Eu creio que não o encontrei aqui na Aldeia, se ja tiver publicado pesso desculpas pelo incômodo. Até pra gente saber mesmo qual lógica você usa, ele virá open source? Seria bacana se ele viesse com o codigo fonte em .rar e o launcher final junto.
Darkio
Darkio
Iniciante
Iniciante

Mensagens : 49
Créditos : 1

Ir para o topo Ir para baixo

[Duvida/Ajuda] Como deve ser um launcher? Empty Re: [Duvida/Ajuda] Como deve ser um launcher?

Mensagem por KamuiRyu Qua Jul 26, 2017 1:34 pm

Darkio escreveu:@gallighanmaker Falando em Launcher o seu já foi publicado amigo? Eu creio que não o encontrei aqui na Aldeia, se ja tiver publicado pesso desculpas pelo incômodo. Até pra gente saber mesmo qual lógica você usa, ele virá open source? Seria bacana se ele viesse com o codigo fonte em .rar e o launcher final junto.
O meu não vai virar open-source, eu até pensei em disponibilizar, mas quero algo preciso e potente para meu jogo, algo que concorrência hammmm(Forces games) não tenha. Posso até tá fazendo um launcher para deixar open-source, mas se eu for fazer, vou deixar ele mais simples e tals.
KamuiRyu
KamuiRyu
Novato
Novato

Mensagens : 26
Créditos : 1

Ir para o topo Ir para baixo

[Duvida/Ajuda] Como deve ser um launcher? Empty Re: [Duvida/Ajuda] Como deve ser um launcher?

Mensagem por GallighanMaker Qua Jul 26, 2017 2:27 pm

@Darkio


Não será open source o meu para os netplays, pelo menos não no começo até todo mundo testar e dar os feedbacks, depois disso irei criar uma documentação e disponibilizar um modelo open source.


No caso desse tópico é apenas uma sugestão ao do amigo acima, que se eu não estiver engando é para um projeto utilizando eclipse.


Após publicar eu mando o link pra você. 

_________________
[Duvida/Ajuda] Como deve ser um launcher? 8dVK0ku
using C# and import Python developer || Expert in Unity Engine IDE. || [Duvida/Ajuda] Como deve ser um launcher? 769_heart 2D pixel games.
GallighanMaker
GallighanMaker
Colaborador
Colaborador

Medalhas : [Duvida/Ajuda] Como deve ser um launcher? ZgLkiRU
Mensagens : 985
Créditos : 102

Ficha do personagem
Nível: 1
Experiência:
[Duvida/Ajuda] Como deve ser um launcher? Left_bar_bleue0/0[Duvida/Ajuda] Como deve ser um launcher? Empty_bar_bleue  (0/0)
Vida:
[Duvida/Ajuda] Como deve ser um launcher? Left_bar_bleue30/30[Duvida/Ajuda] Como deve ser um launcher? Empty_bar_bleue  (30/30)

https://kingsland-online.com/

Ir para o topo Ir para baixo

[Duvida/Ajuda] Como deve ser um launcher? Empty Re: [Duvida/Ajuda] Como deve ser um launcher?

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos