Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 00:24

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Game Patcher schreiben?

Discussion on Game Patcher schreiben? within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Sep 2009
Posts: 175
Received Thanks: 11
Game Patcher schreiben?

Guten Tag liebe Community

Und zwar würde ich gerne einen Game Patcher schreiben.

Wofür brauch in den Patcher?

Naja, ich bin gerade dabei, eine etwas "größeren" Mod für eine Mod von nem Spiel zu schreiben (DayZ) und da dort häufig Updates rauskommen werden, bräuchte ich nen Update/Patcher.

Und zwar möchte ich, dass das der Patcher die Versionen vergleicht (z.B über eine lokale "version.txt" und eine die auf dem Server liegt) und dann die aktuellste Version komplett runterlädt und nicht nur die Änderungen (wäre dann per .zip).
Das ganze soll dann per FTP laufen, oder falls irgendwie möglich per Domain (ich glaub man kann das dann auch per FTP als Domain machen, z.B "127.0.0.1:21").

Ich weiß, ist ein wenig umständlich geschrieben, aber ich bin müde und mein Kopf glüht, ergo -> hab nicht soviel Ahnung von AutoIt. Wäre also gut, wenn ich da ein wenig mehr Hilfe bekommen würde....

Später möchte ich dann noch einen Launcher schreiben, dass ist jetzt aber eine andere Sache.
Hans-Eggert is offline  
Old 11/28/2012, 23:58   #2
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
Die Version der lokalen Version in einer .txt zu speichern ist unnötig, dafür kannst du
Code:
FileGetVersion(@AutoItExe)
verwenden. Das sollte allerdings nur dann verwendet werden, wenn das Script kompiliert ist.

Wenn du die Dateien auf einen FTP Server hochlädst kannst du sie über einen "normalen" HTTP Download starten. Das .zip Format ist nicht unbedingt die beste Lösung, da du dafür auf eine ZIP-UDF zurückgreifen müsstest. Eine einfache Lösung wäre es, wenn du eine "Patcher.exe" auf den Server hochlädst, der dann alle Dateien mit FileInstall() überschreibt.

KDeluxe is offline  
Old 11/29/2012, 00:09   #3
 
elite*gold: 0
Join Date: Sep 2009
Posts: 175
Received Thanks: 11
Ja, soviel Ahnung hab ich nun nicht von AutoIt, aber wird mal wohl nicht rum kommen, wenn man was schreiben will

Wie verwendet man "FileGetVersion" den im Script, wie wird das dann ausgelesen? Steht das dann im Script, welche Version das wäre?

Und so wie du das in deinem Beispiel geschrieben hast, wäre das jetzt sozusagen nach meinen Vorstellungen?
Hans-Eggert is offline  
Old 11/29/2012, 06:08   #4

 
Futur94's Avatar
 
elite*gold: 0
Join Date: Aug 2011
Posts: 263
Received Thanks: 177
So ?
Code:
$Version = "Version von diesem Programm z.b 1.0"
$NewVersionRead = Inetread (BinarytoString ("Die url zur Textdatei wo die Version drinnen steht"))
If $NewVersionRead > $Version then
InetGet("URL", @DesktopDir & "\Dein neues Programm.exe")
Endif
Futur94 is offline  
Thanks
1 User
Old 11/29/2012, 07:17   #5
 
elite*gold: 0
Join Date: Sep 2009
Posts: 175
Received Thanks: 11
Ich denke so hab ich mir das vorgestellt, aber KDeluxe hat ja noch bessere Ideen gehabt.

Ich setz das erstmal so um.
Wie mach ich das jetzt, dass der User vorm download seinen Pfad aussuchen kann?
Hans-Eggert is offline  
Old 11/29/2012, 13:52   #6
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
In meinem Spoiler steht doch ein Codebeispiel. In diesem verwende ich auch FileGetVersion().
Falls du gerade an deinem Script arbeiten solltest, irgendwie müssen die Updates ja zustande kommen, sollte dann natürlich auch kein Update herunter geladen werden, deshalb habe ich noch "@Compiled" verwendet. Wäre die Abfrage nicht dabei, würde das Script immer von der Version der AutoIt Installation ausgehen, aktuell also 3.3.8.1.
Allerdings habe ich nicht erwähnt, wie du der kompilierten .exe die Version zuweist. Installiere dazu noch . Im Kontextmenü (Rechtsklick auf .au3) findest du dann die Option "Compile with options". In der Oberfläche kannst du dann die Version eintragen.

Quote:
Originally Posted by Hans-Eggert View Post
Wie mach ich das jetzt, dass der User vorm download seinen Pfad aussuchen kann?
FileSelectFolder()
KDeluxe is offline  
Old 11/30/2012, 21:52   #7
 
elite*gold: 0
Join Date: Dec 2008
Posts: 371
Received Thanks: 115
man lässt das programm eine seite aufrufen blablabla.com/blablabla/version.txt und sieht dann welche version das hat.
Code:
If Not $Returnedvalue=Version Then
Shellexecute("blablabla.com/blablabla/update")
isaias is offline  
Reply


Similar Threads Similar Threads
[RELEASE] Any-Game Patcher
08/25/2012 - CO2 Private Server - 27 Replies
V2: moved things to make it simpler to processes and made the designs smaller Links: Mediafire folder (http://www.mediafire.com/?ow18rziefp1xe) my web local: Source(http://www.divinecorps.com/games/downloads /Divine Patcher.rar) Sourcev2(http://www.divinecorps.com/games/downloa ds/Divine Patcherv2.rar) Working Program(http://www.divinecorps.com/games/downloads /patcher.exe) Eamples.rar(http://www.divinecorps.com/games/down loads/examples.rar) What it does?:
[Help] ep6 game patcher
08/19/2012 - Shaiya Private Server - 0 Replies
May I use this patch for this Ep6 game.exe? game.exe http://www.elitepvpers.com/forum/attachment.php?a ttachmentid=142783&stc=1&d=1345347544 patcher http://www.elitepvpers.com/forum/attachment.php?a ttachmentid=142784&stc=1&d=1345348229 Ep6 game.exe cannot use the movestone break the skill spasticity break the skill spasticity can make the skill time more shorter if this patch can revise it , it will be a god patch forget my bad English
3d game schreiben.( logik- frage)
05/02/2012 - General Coding - 39 Replies
hallo zusammen. Erstmal : ich habe die Sufu genutz und leider keine Antwort auf meine frage gefunden^^. So, ich schreib jetzt schon seit einiger zeit progs, und da ich immer wissen will wie etwas funktioniert, wenn ich es benutze.... Beispiel: ( ich schreib grad mit nem stift ,Frage : wie funktioniert ein stift.) Und ich spiele 3d Games.(wie funktioniert eine 3d welt ?)
Ct1 - Game Guard Patcher
05/20/2008 - Lin2 Exploits, Hacks, Bots, Tools & Macros - 11 Replies
Removes GameGuard From Ct1 Client GG_Patcher_CT1.zip - FileFront.com Someone scan this / check it . . . its not of my doing but supposedly works to kill gameguard. Again I can not test cause my Desktop is toast. Maybe this will Kill GameGuard and allow us to further debug / eliminate problems related to walker Verification. Atleast this will let us route out GG as the cause.:cool:
Anyone cannot access patcher / game?
12/14/2007 - RF Online - 0 Replies
hi . anyone cant after the patch?



All times are GMT +1. The time now is 00:24.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.