Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[TuT] Jak Zrobić Własny Patcher


Pegas©

Rekomendowane odpowiedzi

Opublikowano

1.Tworzymy Patch.ini ,a w nim:

 

Patch.ini Otwiera
W pierwszej linii jest URL do serwera patch
W drugiej linii jest adres URL HP, który jest w oknie Patch
W trzeciej linii jest adres URL strony w oknie po załataniu
w czwartym wierszu stworzy url dla przycisków Accverwaltung / ACC

 

2.Tworzymy files.txt ,a w nim:

 

Programy klienta do serwera patch (Apache Strona cokolwiek)
Teraz wszystkie pliki do klienta prowadzi files.txt i przesłać je na serwer patch
Files.txt powinien wyglądać tak:

 

3.Błędy/Problemy:

 

1. Patcher patche xyz plik!
Rozwiązanie: patch tylko tworzy foldery:
pakiet
BGM
lib
znak
mil
screenshot
upload
Jeśli masz inne foldery musisz stworzyć go ręcznie: P
2. patcher poprawki pliku, ale nie zmieniło!
patcher szuka rozmiar pliku. Napisz coś z komentarzami w pliku / usuwa rzeczy nieistotne
3. "Nie udało się przenieść na liście patch "
files.txt nie może zostać przekazana:
Server-down
Zachęcanie do serwera non-files.txt
Empty-files.txt
(Disk full)

 

4.Kod do AutoIT:

 

#Include <File.au3>
#Include <GuiConstants.au3>
#include <IE.au3>
#include <WindowsConstants.au3>
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#NoTrayIcon
Global $m2ordner = @ScriptDir
Global $ScriptDir = @ScriptDir
Global $TempDir = @TempDir
Global $url = FileReadLine($ScriptDir & "\patch.ini", 1)
Global $adurl = FileReadLine ($ScriptDir & "\patch.ini",2)
Global $fensterurl = FileReadLine ($ScriptDir & "\patch.ini",3)
Global $buttonurl = FileReadLine ($ScriptDir & "\patch.ini",4)
FileInstall("C:\Users\iMer\Pictures\metin2start.bmp", @Tempdir&"\metin2start.bmp",1)
FileInstall("D:\Games\longjuyt2.de\patchskin\btn_startgame_up.bmp", @Tempdir&"\btn_startgame_up.bmp",1)
FileInstall("D:\Games\longjuyt2.de\patchskin\btn_settings_up.bmp", @Tempdir&"\btn_settings_up.bmp",1)
FileInstall("D:\Games\longjuyt2.de\patchskin\btn_newaccount_up.bmp", @Tempdir&"\btn_newaccount_up.bmp",1)
FileInstall("D:\Games\longjuyt2.de\patchskin\btn_idpwd_up.bmp", @Tempdir&"\btn_idpwd_up.bmp",1)
FileInstall("D:\Games\longjuyt2.de\patchskin\btn_quit_up.bmp", @Tempdir&"\btn_quit_up.bmp",1)
;GUI######################################################
Opt("GUIOnEventMode", 1)
$Form1 = GUICreate("Metin2 Patcher by iMer", 373, 541, 193, 125)
GUISetOnEvent($GUI_EVENT_CLOSE, "_close")
$stat = GUICtrlCreateEdit("", 16, 8, 337, 281)
GUICtrlSetData(-1, "((`~Patcher by iMer~´))"&@CRLF&"Dateiüberprüfung wird gestartet...")
$cancel = GUICtrlCreateButton("Cancel", 288, 496, 75, 25, 0)
GUICtrlSetOnEvent($cancel, "_close")

$Progress1 = GUICtrlCreateProgress(16, 464, 334, 17)
;16, 312, 340, 13
$oIE = _IECreateEmbedded()
$oIE_ctrl = GUICtrlCreateObj($oIE, 16, 312, 336, 136)
GUISetState(@SW_SHOW)
_IENavigate($oIE, $adurl) 
$Form2 = GUICreate("*~Metin2 Patcher by iMer~*", 595, 385, 328, 160)
GUISetOnEvent($GUI_EVENT_CLOSE, "_close")
$Pic1 = GUICtrlCreatePic(@Tempdir&"\metin2start.bmp", 0, 0, 593, 382, $BS_BITMAP)
$start = GUICtrlCreateButton("(Not allowed)", 464, 40, 127, 41, $BS_BITMAP)
GUICtrlSetImage(-1, @Tempdir&"\btn_startgame_up.bmp", 1)
GUICtrlSetOnEvent($start, "start")
$config = GUICtrlCreateButton("(Not allowed)", 464, 96, 127, 25, $BS_BITMAP)
GUICtrlSetOnEvent($config, "config")
GUICtrlSetImage(-1, @Tempdir&"\btn_settings_up.bmp", 1)
$seite1 = GUICtrlCreateButton("(Not allowed)", 464, 184, 127, 25, $BS_BITMAP)
GUICtrlSetImage(-1, @Tempdir&"\btn_newaccount_up.bmp", 1)
GUICtrlSetOnEvent($seite1, "seite")
$seite2 = GUICtrlCreateButton("(Not allowed)", 464, 160, 129, 25, $BS_BITMAP)
GUICtrlSetImage(-1,  @Tempdir&"\btn_idpwd_up.bmp", 1)
GUICtrlSetOnEvent($seite2, "seite")
$ende = GUICtrlCreateButton("(Not allowed)", 464, 352, 127, 25, $BS_BITMAP)
GUICtrlSetImage(-1,  @Tempdir&"\btn_quit_up.bmp", 1)
GUICtrlSetOnEvent($ende, "_close")
$oIE1 = _IECreateEmbedded()
$oIE_ctrl1 = GUICtrlCreateObj($oIE1, 8, 8, 456, 376)
_IENavigate($oIE1, $fensterurl)

GUISetState(@SW_HIDE)
;gui#####################################################
Func seite ()
   _IECreate($buttonurl)
EndFunc

func start ()
   run($Scriptdir&"/metin2.bin")
   Exit
EndFunc

Func config ()
   Run($ScriptDir&"\config.exe")
EndFunc


func _close ()
   Exit
EndFunc
Sleep (500)
patch ()


func patch ()
   $file = @TempDir&"\files.txt"
   InetGet( $url&"\files.txt" , $file)
   $lines = _FileCountLines($file)
   If $lines = 0 Then
       MsgBox(48,"Fehler","Fehler beim übertragen der Patchlist!")
       Exit
   EndIf
   DirCreate("pack")
   DirCreate("BGM")
   DirCreate("lib")
   DirCreate("mark")
   DirCreate("miles")
   DirCreate("screenshot")
   DirCreate("upload")
   While ($lines >= 1) 
       $datei = FileReadLine($file,$lines)
       GUICtrlSetData($stat,"Überprüfung von: "& $datei & @CRLF & GUICtrlRead($stat))
       $size_inet = InetGetSize($url&"\"&$datei)
       If FileExists($ScriptDir&""&$datei) Then        
           If @error Then
               MsgBox(16 , "Fehler", @error)
           EndIf
           $size_ordner = FileGetSize( $ScriptDir&""&$datei)
           If $size_inet <> $size_ordner Then
               GUICtrlSetData($stat,"Download von: "& $datei & @CRLF & GUICtrlRead($stat))
               InetGet($url&$datei , $ScriptDir& "" & $datei , 1 , 1)
               while 1
                   $hFileSize = FileGetSize($ScriptDir & "" & $datei) ;Wie viel wurde schon geladen.
                   $iPercent = round ( @InetGetBytesRead / $size_inet   *100) ;Rechen Operation ? 
                   GUICtrlSetData($Progress1, $iPercent) ;Progressbar einstellen
               If $hFileSize = $size_inet Then 
               GUICtrlSetData($Progress1, 100)
               ExitLoop
           EndIf
           sleep (50)
       WEnd
       Else
           GUICtrlSetData($stat,"Überspringen der Datei: "& $datei & @CRLF & GUICtrlRead($stat))
           EndIf
       Else
           InetGet($url&$datei,$ScriptDir&""&$datei,1,1)
           GUICtrlSetData($stat, "Download von: "& $datei& @CRLF & GUICtrlRead($stat))
           while 1
               $hFileSize = FileGetSize($ScriptDir & "" & $datei) ;Wie viel wurde schon geladen.

               $iPercent = round ( @InetGetBytesRead / $size_inet   *100) ;Rechen Operation ? 

               GUICtrlSetData($Progress1, $iPercent) ;Progressbar einstellen

           If $hFileSize = $size_inet Then 
               GUICtrlSetData($Progress1, 100)
               ExitLoop
           EndIf
           sleep (50)
       WEnd
       EndIf
       sleep (500)
       $lines = $lines-1
   WEnd
   FileDelete($TempDir&"files.txt")
   GUISetState(@SW_HIDE,$Form1)
   GUISetState(@SW_SHOW,$Form2)
while 1
   Sleep(100)
WEnd
EndFunc  

 

 

Zaczerpnięte z ELITEPVPERS

2ivh0ly.jpg

 

Opublikowano

do autora:

 

            GUICtrlSetData($stat, "Download von: "& $datei& @CRLF & GUICtrlRead($stat))

           GUICtrlSetData($stat,"Überspringen der Datei: "& $datei & @CRLF & GUICtrlRead($stat))

       MsgBox(48,"Fehler","Fehler beim übertragen der Patchlist!")

GUICtrlSetData(-1, "((`~Patcher by iMer~´))"&@CRLF&"Dateiüberprüfung wird gestartet...")

 

konnte nicht in Polnisch?

 

            GUICtrlSetData($stat, "Pobieram z: "& $datei& @CRLF & GUICtrlRead($stat))

           GUICtrlSetData($stat,"Przejdź do pliku: "& $datei & @CRLF & GUICtrlRead($stat))

       MsgBox(48,"Fehler","Nie udało się pobrać listę patchlist!")

GUICtrlSetData(-1, "((`~Patcher by iMer~´))"&@CRLF&"Zaczynam szukanie plików...")

 

Es ist ein übersetzen:

pakiet
BGM
lib
znak
mil
screenshot
upload

To jest moje tłumaczenie:

pack
BGM
lib
mark
miles
screenshot
upload

 

dla down:

Patch.ini Otwieramy

W pierwszej linii wpisujemy URL patcha do servera (tam się będzie wszystko znajdować chyba^^)

W drugiej linii jest adres URL wyświetlania czyli stronka w patcher

W trzeciej linii jest adres URL strony w oknie po ukończeniu patcha

w czwartym wierszu stworzy url dla przycisków Accverwaltung / ACC (??)

chyba reszta jest zrozumiała

211c73cd6486beb.gif

Minecraft

odkrywcai.pngwolftamer.png

Odkrywca

Wolfer:Lubie pieski:P

Jeżeli jesteś człowiek to kliknij na obrazek:

baner6.gif

Opublikowano

Ten patcher już jest dodany po raz kolejny.

 

Jest źle spolszczony.

 

Polecam patchera by srulian96 (czy jakoś tak) jest taki sam skrypt tylko lepiej spolszczony i zoptymalizowany.

 

Pozdro :)

 

 

  • 1 rok później...

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...