elitepvpers

elitepvpers (https://www.elitepvpers.com/forum/)
-   Metin2 PServer Guides & Strategies (https://www.elitepvpers.com/forum/metin2-pserver-guides-strategies/)
-   -   [How to]Script your own Patcher (https://www.elitepvpers.com/forum/metin2-pserver-guides-strategies/583452-how-script-your-own-patcher.html)

Mars147 05/31/2010 07:28

ähm und wie mache ich jetzt dass er weis was er downloaden soll?

'Haseo 05/31/2010 16:50

jo so gehts auch ist aber komplizierter :D
das programm arbeitet ja den code von oben nach unten ab und deswegen steht button1.enabled = true am ende damit er das zuletzt macht!
achja bei dir müsste es heißen :
Code:

If Progressbar1.Value = Progressbar1.Maximum Then
Button1.Enabled = True
[COLOR="RED"]End If[/COLOR]

MfG
Bestshocker

€dit: Du musst in patchconfig.cfg reinschreiben welche Dateien er downlaoden soll!
also bei Liedern und der roo.epk heißt es :
BGM\lied.mp3
BGM\lied2.mp3
pack\root.epk
pack\root.eix

usw.

Mars147 05/31/2010 19:35

also z.b.

patchconfig.cfg
Quote:

mark\10.tga
mark\20.tga
mark\30.tga
und wohin mit den 3 datein?


lg Mars

'Haseo 05/31/2010 21:30

genau die packste dann auf dein webspace in den ordner also den ordenr genauso wie dein cleint machen, bei dir wär es dann so:
[Only registered and activated users can see links. Click Here To Register...]
usw.

Mars147 05/31/2010 21:51

Quote:

Originally Posted by bestshocker (Post 5454357)
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
usw.

so in die patchconfig.cfg?

'Haseo 06/01/2010 07:05

genau und die dann auf dein sever laden!

Mars147 06/01/2010 08:41

alles klar ich mache den patcher fertig und zeuge ihn dann euch :)

'Haseo 06/01/2010 21:37

#updated gibt schon einige THX und noch kein einzigen Patcher Oo :D

1337_Noize 06/06/2010 14:20

Danke hat mir sehr geholfen (:

Mars147 06/06/2010 14:21

o.O

[Only registered and activated users can see links. Click Here To Register...]


Hier Details

Code:

Informationen über das Aufrufen von JIT-Debuggen
anstelle dieses Dialogfelds finden Sie am Ende dieser Meldung.

************** Ausnahmetext **************
System.Net.WebException: Der Remotename konnte nicht aufgelöst werden: 'http'
  bei System.Net.WebClient.DownloadFile(Uri address, String fileName)
  bei Microsoft.VisualBasic.MyServices.Internal.WebClientCopy.DownloadFile(Uri address, String destinationFileName)
  bei Microsoft.VisualBasic.Devices.Network.DownloadFile(Uri address, String destinationFileName, ICredentials networkCredentials, Boolean showUI, Int32 connectionTimeout, Boolean overwrite, UICancelOption onUserCancel)
  bei Microsoft.VisualBasic.Devices.Network.DownloadFile(String address, String destinationFileName, String userName, String password, Boolean showUI, Int32 connectionTimeout, Boolean overwrite, UICancelOption onUserCancel)
  bei Microsoft.VisualBasic.Devices.Network.DownloadFile(String address, String destinationFileName)
  bei AionMT2___Patcher.Form1.Form1_Load(Object sender, EventArgs e)
  bei System.EventHandler.Invoke(Object sender, EventArgs e)
  bei System.Windows.Forms.Form.OnLoad(EventArgs e)
  bei System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
  bei System.Windows.Forms.Control.CreateControl()
  bei System.Windows.Forms.Control.WmShowWindow(Message& m)
  bei System.Windows.Forms.Control.WndProc(Message& m)
  bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
  bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Geladene Assemblys **************
mscorlib
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.4927 (NetFXspW7.050727-4900).
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll.
----------------------------------------
mscorlib.resources
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.4927 (NetFXspW7.050727-4900).
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll.
----------------------------------------
AionMT2 - Patcher
    Assembly-Version: 1.0.0.0.
    Win32-Version: 1.0.0.0.
    CodeBase: file:///C:/Users/Marcel/Desktop/Mein_P_Server/Client_by_Profizocker94/AionMT2%20-%20Patcher.exe.
----------------------------------------
Microsoft.VisualBasic
    Assembly-Version: 8.0.0.0.
    Win32-Version: 8.0.50727.4927 (NetFXspW7.050727-4900).
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll.
----------------------------------------
System
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.4927 (NetFXspW7.050727-4900).
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll.
----------------------------------------
System.Windows.Forms
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.4927 (NetFXspW7.050727-4900).
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll.
----------------------------------------
System.Drawing
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.4927 (NetFXspW7.050727-4900).
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll.
----------------------------------------
System.Runtime.Remoting
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.4927 (NetFXspW7.050727-4900).
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll.
----------------------------------------
System.Configuration
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.4927 (NetFXspW7.050727-4900).
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll.
----------------------------------------
System.Xml
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.4927 (NetFXspW7.050727-4900).
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll.
----------------------------------------
System.resources
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.4927 (NetFXspW7.050727-4900).
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.resources/2.0.0.0_de_b77a5c561934e089/System.resources.dll.
----------------------------------------
System.Windows.Forms.resources
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.4927 (NetFXspW7.050727-4900).
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_de_b77a5c561934e089/System.Windows.Forms.resources.dll.
----------------------------------------

************** JIT-Debuggen **************
Um das JIT-Debuggen (Just-In-Time) zu aktivieren, muss in der
Konfigurationsdatei der Anwendung oder des Computers
(machine.config) der jitDebugging-Wert im Abschnitt system.windows.forms festgelegt werden.
Die Anwendung muss mit aktiviertem Debuggen kompiliert werden.


soul1993 06/06/2010 14:44

funzt das auch irgendwie über hamachi das andere die sachen die gepatcht werden sollen von dem host pc ziehen?

syshack3rz 06/06/2010 14:46

Screen vom Patcher wäre nett ^^

Mars147 06/06/2010 15:16

Nix großes xD

[Only registered and activated users can see links. Click Here To Register...]

'Haseo 06/06/2010 16:59

@Mars147 : das heißt das du den Link noch nicht geändert hast! Du musst einfach den Link im Patcher ändern
dim link as string = "Eurer Patch link!"
Eurer Patch Link ersetzt du dann einfach durch den Patchlink ohnne http:// oder sonst was also z.B. bei Hamachi dann : 5.123.456.789 oder so ;)
Quote:

Originally Posted by soul1993 (Post 5524342)
funzt das auch irgendwie über hamachi das andere die sachen die gepatcht werden sollen von dem host pc ziehen?

meinst du etwa das du dein regi usw. über xampp laufen lässt??
Dann musst du es einfach gleich machen
1. iom htdocs ordner einfach die Dateien reinziehen die patchconfig schreiben fertig!

Mars147 06/06/2010 17:10

hier mein Code


Code:

Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim link As String = "http://lcr-samp.k1.cx/metin2/"
        My.Computer.Network.DownloadFile("http://" & link & "/patchconfig.cfg", My.Computer.FileSystem.CurrentDirectory & "\patchconfig.cfg")
        For Each line In System.IO.File.ReadAllLines(My.Computer.FileSystem.CurrentDirectory & "\patchconfig.cfg")
            ProgressBar1.Maximum = ProgressBar1.Maximum + 1
        Next
        For Each line In System.IO.File.ReadAllLines(My.Computer.FileSystem.CurrentDirectory & "\patchconfig.cfg")
            My.Computer.Network.DownloadFile("http://" & link & "/" & line, My.Computer.FileSystem.CurrentDirectory & "\" & line)
            ProgressBar1.Value = ProgressBar1.Value + 1
        Next
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Button1.Enabled = False
        Dim link As String = "http://lcr-samp.k1.cx/metin2/"
        My.Computer.Network.DownloadFile("http://" & link & "/patchconfig.cfg", My.Computer.FileSystem.CurrentDirectory & "\patchconfig.cfg")
        For Each line In System.IO.File.ReadAllLines(My.Computer.FileSystem.CurrentDirectory & "\patchconfig.cfg")
            ProgressBar1.Maximum = ProgressBar1.Maximum + 1
        Next
        For Each line In System.IO.File.ReadAllLines(My.Computer.FileSystem.CurrentDirectory & "\patchconfig.cfg")
            My.Computer.Network.DownloadFile("http://" & link & "/" & line, My.Computer.FileSystem.CurrentDirectory & "\" & line)
            ProgressBar1.Value = ProgressBar1.Value + 1
        Next
        Button1.Enabled = True
    End Sub
End Class

ahso noch ne frage wie mache ich dass wen er z.b. auf homepage klickt dass er zur hp kommt? :)

lg Marci
€: Es ist ein Hamachi server aber er müsste eig. au von einem webspace laden können odeR?

'Haseo 06/06/2010 18:07

klar geht des vom webspace laden ;)
probier mal was in die patchconfig auf deinem server was reinzuschreiben nur so zum test z.b.
pack/root.epk
speichern wieder hochladen nd dann nochmal debuggen!

Mars147 06/06/2010 18:26

wie debuggen?
- also ich verstehe es so

patchconfig.cfg
Code:

http://lcr-samp.k1.cx/metin2/mark/999.tga
dann auf dem Webspace

so

[Only registered and activated users can see links. Click Here To Register...]

[Only registered and activated users can see links. Click Here To Register...]

was noch`?

€: Immer noch der Gleiche Error

'Haseo 06/06/2010 18:32

In deine Pachconfig kommt noch :
Code:

metin2/mark/999.tga
rein!
Also alles draus löschen und metin2/mark/999.tga einfügen! speicher und wieder hochladen dann müsste es funktionieren! (aber dann lädt der Patcher die Datei nicht in Mark/999.tga sondern in Metin2/mark/999.tga daher würde ich dir raten für den patcher ein extra webspace einzurichten damit man da alle files hochladen kann!

Mars147 06/06/2010 18:40

also es will einfac hnicht gehen hast du icq skype ?

wen ja pls add mich ma :(

icq -> 47818792

skype -> tgx_driver

Mars147 06/09/2010 14:04

sry wen es unter "Doppelpost" zählt

aber pls help :)

[Only registered and activated users can see links. Click Here To Register...]


Start Button

Code:

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Button1.Enabled = False
        Dim link As String = "lcr-samp.k1.cx/metin2/"
        My.Computer.Network.DownloadFile("http://" & link & "/patchconfig.cfg", My.Computer.FileSystem.CurrentDirectory & "\patchconfig.cfg")
        For Each line In System.IO.File.ReadAllLines(My.Computer.FileSystem.CurrentDirectory & "\patchconfig.cfg")
            ProgressBar1.Maximum = 0
            ProgressBar1.Maximum = ProgressBar1.Maximum + 1
        Next
        For Each line In System.IO.File.ReadAllLines(My.Computer.FileSystem.CurrentDirectory & "\patchconfig.cfg")
            My.Computer.Network.DownloadFile("http://" & link & "/" & line, My.Computer.FileSystem.CurrentDirectory & "\" & line)
            ProgressBar1.Value = ProgressBar1.Value + 1
        Next
        Button1.Enabled = True
    End Sub


Demon-777 06/09/2010 20:56

Code:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        ' Disable button.
        Me.Button1.Enabled = False

        ' Declare variables.
        Dim link As String = "http://lcr-samp.k1.cx/"
        Dim list As String = link + "metin2/patchconfig.cfg"
        Dim local As String = Environment.CurrentDirectory + "\patchconfig.cfg"
        Dim client As New Net.WebClient
        Dim counter As Int32
        Dim files As New List(Of String)

        ' Try to download our list file.
        Try
            client.DownloadFile(list, local)
        Catch ex As Exception
            MessageBox.Show(ex.Message)
            Exit Sub
        End Try

        ' If all is ok check how many files we have.
        Using rd As New IO.StreamReader(local)
            Dim _ln As String = String.Empty

            Do While rd.Peek() <> -1
                _ln = rd.ReadLine()

                If Not _ln = String.Empty Then
                    files.Add(_ln)
                    counter += 1
                End If
            Loop

            rd.Close()
        End Using

        ' Set maximum file number.
        ProgressBar1.Maximum = counter

        ' Check our files.
        For Each _file In files

            Dim _lc As String = Environment.CurrentDirectory + "\" + _file.Replace("/", "\")

            ' Try to get new one.
            Try
                If IO.File.Exists(_lc) Then IO.File.Delete(_lc)
                client.DownloadFile(link + _file, _lc)
            Catch ex As Exception
                MessageBox.Show(ex.Message)
                Exit Sub
            End Try

            Me.ProgressBar1.Value += 1
        Next

        Me.Button1.Enabled = True
    End Sub

So kannste dein Problem lösen! Ich würde dir raten schon einen fertigen Patcher zu nehmen, da die Anleitung hier zeigt nur wie man eine Datei runterläd. Es prüft garnicht ob die Datei veraltet ist. Dadurch wirst du immer und immer wieder die Datei runterladen müssen.

'Haseo 06/11/2010 14:35

Nope musst du nicht wie ich schon erklärt habe ;)
Man muss immer nur in der Patchliste eintragen was er downloaden muss!
€dit: Ich hab ihm schon per Skype gezeigt wie man es richtig macht ;)

Mars147 06/11/2010 16:04

geil danke für dass Update :=)

'Haseo 06/11/2010 18:14

Jo ich hoffe ich konnte euch helfen ;)
PS: Bei Verbesserungsvorschlägen pn´t mich oder schreibt sie hierein!

'Haseo 06/14/2010 19:38

#push bitte zeigt mir doch mal eure Ergebnisse :(
ps: ist kein doppelpost sondern ein push :D

HighWave 06/15/2010 16:41

Da klappt gar nichts, das tut ist so unübersichtlich, man weiß nich woraus er den link nimmt, woher soll er die Adresse wissen ? einfach bei "& Link &" den Link eintragen oder was ?

'Haseo 06/15/2010 17:11

Genau!
Und warum findest du es unübersichtlich?

Ҡanoȥ 06/16/2010 03:53

Quote:

Originally Posted by bestshocker (Post 5628565)
#push bitte zeigt mir doch mal eure Ergebnisse :(
ps: ist kein doppelpost sondern ein push :D

#Report wegen pushen

'Haseo 06/16/2010 13:55

Darf man das nicht Oo

_RunN* 06/17/2010 07:32

Quote:

Originally Posted by ĸαɴo (Post 5643656)
#Report wegen pushen

1. heißt es "#report"ed""
2. davon abgesehen wäre sein Thread eh nicht untergegangen und er wollte auch noch wissen, was aus den Patchern geworden ist, den die anderen gemacht haben.
Und wieso bekommst du immer von "Deryam" ein Thx ? o.O
Double acc. ?

HighWave 10/07/2010 18:10

Ein Verbesserungsvorschlag: Prüfung des md5 hash codes ;) und das vergleichen


All times are GMT +2. The time now is 05:02.

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