Jump to content
Daniel Francisco

Atualizar patchs de um jogo pelo Form?

Recommended Posts

Oi   boa noite meus amigos..

estou a uns 10 dias mexendo com c# comprei 2 livros, to focado em aprende..

to tentando atualizar meu jogo através  do meu Windows form que criei..

queria saber se isto e possível e como proceder? ou procurar referencias.

 

Exemplo:  no update oficial do jogo ele atualiza a partir do ponto exemplo:

127.0.0.1/shaiya/patch

dentro da pasta patch fica os arquivos no formato.patch que serão atualizados

é dentro da pasta shaiya fica um arquivo version.ini que verificar cada atualização nova que eu adiciono na pasta, ( esse arquivo fica no jogo tb) pra verificar versão..

ai que fiz, criei uma tela de login etc.. personalizada com login é queria atualizar o jogo através dela..

Images:

jvk7tf

 

jvk7x1

jvk827

 

agradeço a todos que estão me ajudando, que Deus recompense 

Share this post


Link to post
Share on other sites
7 horas atrás, quintelab disse:

Antes de tentar fazer via código precisa entender como é feita a atualização. O que deve ser feito ? Apenas copiar os arquivos da pasta patch e mover pra pasta do jogo ?

Meu grande, obrigado pela resposta novamente!!

Então meu amigo no cliente do jogo possuí um arquivo chamado data.saf

onde fica os arquivos do jogo, a extração deveria ser feita pra dentro dele, mesmo q seja difícil me diga quais caminhos seguir..

dentro da pasta shaiya que fica no apache, ele verificar updateversion.ini , e na pasta do jogo também te uma version.ini

updateversion.inoi

[Version]
CheckVersion=3
UpdaterVersion=20
PatchFileVersion=10

version.ini

[Version]
CheckVersion=3
CurrentVersion=20
StartUpdate=UPDATE_END

eu possuo o update original.. dos servidores privados.. que faz atualização, pelo HxD tem alguns códigos

inclusive IP_127.0.0.1 por exemplo, que e onde ele vai buscar a atualização..

deixarei aqui o update caso você se interesse em olha pra ajuda

https://www.dropbox.com/s/if6d1bmpzz06gyl/update.rar?dl=0

amigo, desculpa pela mensagem grande demais.. 

 

ainda sim, se for muito difícil e você achar q n consigo :(..

teria como de alguma maneira fazer esse update rodar em Hide, oculto através do meu form?

pra fazer atualização em  2 plano sem que ninguém visse-o, só exibisse uma mensagem na form que está

atualizando...?

 

 

meu caro, ficarei agradecido muitíssimo de me ajuda nisto... 

sou esforçado, pra eu pedir e porque tenho tentado demais :( 

 

abraços, fica com Deus

 

Share this post


Link to post
Share on other sites

Meio complexo por que não esta claro o que deve ser feito pra atualização funcionar. De qualquer forma se o necessário for mover arquivos de um lado para outro, de uma olhada nesse link: https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/file-system/how-to-copy-delete-and-move-files-and-folders

  • Gostei 1

Share this post


Link to post
Share on other sites

Boa noite amigo, ótimo agora " sei manipular arquivos, rsr.".

mais acho que tá complicado demais pra me iniciante :(

então vou tentar outra maneira, me ajuda?

 

Parte 1.

teria como pelo menos fazer seguinte.. quando clicasse pra abrir meu update,

ele verificaria se um arquivo tem atualização disponível, se sim ele ao inves de abrir meu update,

abriria o update original, faria a atualização que no caso modificaria o arquivo (.ini) dai então

tem 1 opção de jogar no update oficial, que só fica fica disponível qnd a atualização e concluída,

ou seja, não teria como abrir o meu update ( se não tiver atualizado o jogo.), meu update teria q verificar isso num arquivo .ini

Parte 2.

resumindo, toda vez que clicasse pra abrir meu update ele iria verificar, se ja ta atualizado se sim, ele abre o programa normalmente,

se não, ele abre outro programa ( o update original, no update original tem opção jogar, e so clica e pronto abre o meu UPDATE)

ai, qnd a pessoa fosse abrir meu update novamente, ele abriria direto porque no arquivo .ini consta que está atualizado

como proceder? me ajuda nessa amg você e a unica pessoa que tá me ajudando nesse inicio :/

 

mais uma vez te agradeço por tudo.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By 409.454.408-98
      Faça um programa em linguagem de programação C++ para resolver o problema abaixo:
       
      “Dado um número inteiro positivo N, determinar:
      (a) o total de dígitos pares de N;
      (b) o total de dígitos impares de N;
      (c) a soma dos dígitos de N;
      (d) qual é o maior e qual é o menor digito que ocorre em N;”
    • By Sullyvanmarks
      Estou iniciando agora com javascript e tenho vários códigos de javascript que não funcionam e não consigo resolvê-los. Alguém poderia me ajudar?
       
       







    • By eduardohaag
      Olá,
      Mais uma vez aqui estou eu com uma duvida que não estou conseguindo resolver.
      Estou desenvolvendo um ERP para a grafica da minha esposa. Nesse sistema existe um modulo que registra o tempo trabalhado.
      Para fazer isso existe um botão no formulário principal, que quando é clicado salva a hora na variável entrada, e quando clicado novamente ele registra no banco de dados o intervalo entre a entrada e saida.
      Até ai tudo ok. Porém as vezes a pessoa sai e esquece de clicar para registrar a saida.
       
      Então gostaria de fazer com que a cada 5 minutos fosse verificado se teve alteração na posição do ponteiro do mouse, porém permitindo que o usuário possa usar o programa.
       
      Procurando na internet descobri que para isso o melhor seria usar uma thread para fazer essa verificação da posição do mouse em segundo plano já que seria executado a cada 5 minutos e dessa forma travaria a execução do form principal.
       
      O problema está que quando ele detecta que mouse ficou parado por mais de 5 minutos e executa o codigo que salvo o intervalo no banco de dados acontece esse erro quando chega na linha "btEntrada.Text = "Registrar Entrada"" : "System.InvalidOperationException: 'Operação entre threads inválida: controle 'ToolStrip1' acessado de um thread que não é aquele no qual foi criado.'
       
      Li que tenho que usar algo como invoke e delegate, mas mesmo estudando não consegui entender como implementar.
      meu codigo é o seguinte:
       
      Imports System.ComponentModel Public Class Principal_content Dim saida As DateTime Dim tempo As TimeSpan Dim entrada As DateTime Dim ponteiro As Point Sub GerPonto() Do Threading.Thread.Sleep(5000) If ponteiro = Cursor.Position Then Call registraponto() End If ponteiro = Cursor.Position Loop End Sub Private Sub btEntrada_Click(sender As Object, e As EventArgs) Handles btEntrada.Click Call registraponto End Sub Sub registraponto() Dim trd = New Threading.Thread(AddressOf GerPonto) If btEntrada.Text = "Registrar Entrada" Then entrada = FormatDateTime(Now) btEntrada.Text = "Registrar Saida" btEntrada.ToolTipText = "Registrar Saida" btEntrada.Image = My.Resources.appointment_new_Ativo btEntrada.ForeColor = Color.Lime trd.Start() Else trd.Abort() saida = Now tempo = saida.Subtract(entrada) sql = "INSERT INTO ponto (Data, Entrada, Saida, Segundos) VALUES (#" & Format(entrada, "MM/dd/yyyy") & "#, #" & Format(entrada, "hh:mm:ss") & "#, #" & Format(saida, "hh:mm:ss") & "#, " & Replace(FormatNumber(tempo.TotalSeconds, 0, TriState.False, TriState.False, TriState.False), ",", ".") & ")" btEntrada.Text = "Registrar Entrada" btEntrada.Text = "Registrar Entrada" btEntrada.Image = My.Resources.appointment_new_desativo btEntrada.ForeColor = Color.Red AcessoDB.ExecutarComando(sql, CommandType.Text, Nothing, AcessoDB.TipoDeComando.ExecuteNonQuey) End If End Sub End Class  
    • By RonaldoBrJu100
      Suponha que um caixa disponha de notas de 1, 2, 5, 10, 20, 50 e 100 reais. Considerando que alguém está pagando uma compra, escreva um algoritmo que mostre o número mínimo de notas que o caixa deve fornecer como troco. Mostre também: o valor da compra, o valor do troco e a quantidade de cada tipo de nota do troco. Suponha que o sistema monetário não utilize moedas.
    • By laumello12
      Galera ajudinha
      Como faço para consumir um web service pronto em um projeto. Preciso só que ele busque no web service e traga na web 
      HELP
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.