MMORPG Core - Deutsche Community für Online Rollenspiele - Powered by vBulletin

  • AAA
  • Aggressive
  • Alienated
  • Amazed
  • Amused
  • Angelic
  • Angry
  • Apelike
  • Artistic
  • Asleep
  • Balanced
  • Banhappy
  • Bashful
  • Bitchy
  • Blah
  • Bookworm
  • Bored
  • Breezy
  • Brooding
  • Busy
  • Buzzed
  • Chatty
  • Cheeky
  • Cheerful
  • Cloud 9
  • Cold
  • Coldturkey
  • Confused
  • Cool
  • Crappy
  • Creative
  • Curious
  • Cynical
  • Daring
  • Dead
  • Depressed
  • Devilish
  • Disagree
  • Doh
  • Doubtful
  • Dramaqueen
  • Dreaming
  • Drunk
  • Elated
  • Energetic
  • Fiendish
  • Fine
  • Flirty
  • Gloomy
  • Goofy
  • Grumpy
  • Happy
  • Horny
  • Hot
  • Hungover
  • In Love
  • Innocent
  • Inpain
  • Insomnious
  • Inspired
  • Lonely
  • Lucky
  • Lurking
  • Mellow
  • Mischievious
  • Mondayblues
  • Musical
  • Nerdy
  • Notamused
  • Notworthy
  • Paranoid
  • Pensive
  • Predatory
  • Procrastinating
  • Psychedelic
  • Question
  • Relaxed
  • Roflmao
  • Sad
  • Scared
  • Scurvy
  • Shocked
  • Sick
  • Sleepy
  • Sluggish
  • Sneaky
  • Snobbish
  • Spaced
  • Spooky
  • Sporty
  • Starving
  • Stressed
  • Sunshine
  • Sweettooth
  • Thinking
  • Tired
  • Torn
  • Twisted
  • Veggedout
  • Volatile
  • Woot
  • Worried
  • Yeehaw
  • DDos
  • DDos
  • DDos
  • DDos
  • DDos
  • DDos
  • DDos
  • DDos
  • DDos
  • DDos
  • DDos
  • Tweet   
    Seite 1 von 2 12 LetzteLetzte
    Ergebnis 1 bis 15 von 24
    1. #1
      Core Freak!
       
      Avatar von Sedrika
      Registriert seit
      Aug 2009
      Beiträge
      1,695
      Danke
      240
      Danke erhalten: 628

      Standard [Open Source] Patcher

      Die Werbung stört? Registriere dich hier!
      Hallo Core'ler,

      ich habe mir die Zeit genommen und einen Patcher geschrieben. Dieser entstand aus langeweile und weil ich den Offi Patcher nicht mag.

      Folgenes ist eingebaut:


      • Arbeitet mit gZip (um die Dateien zu packen/entpacken)
      • Datei-Signatur Check
      • Eigene list.txt (wird vom eigenen PatchListCreator erstellt)
      • Home Button (welche die WebSite öffnet)
      • Log funktion
      • News Page (sieht man überdeutlich)
      • Options Menü
      • Pre-Patch
      • Registry Nutzung für Option Einstellungen
      • Self Update
      • Sprach Einstellung
      • Update, falls verfügbar
      • Verschlüsselte list.txt



      Der Patcher sieht folgendermaßen aus:




      Ich habe den Patcher auf ein Bild draufprogramiert, da ich finde, dass es besser aussieht als eine standart form, die angeboten wird.

      Es ist im Source eine GlobalConfig.vb enthalten, die ihr im grunde bloß verändern braucht:
      PHP-Code:
      Module GlobalConfig

          
      Public Const VER "1.8.10"                                           ' Patcher Version
          Public Const TITLE = "Sensation Fly"                                  ' 
      Patcher Titel
          
      Public Const TITLE_VER True                                         ' Patcher Version im Titel anzeigen
          Public Const HOME_URL = "http://sensation-fly.de/"                    ' 
      Homepage URL
          
      Public Const NEWS_URL "http://sensation-fly.de/include/news.php"    ' Inhalt der WebBox
          Public Const PATCH_URL = "http://sensation-fly.de/patch/"             ' 
      Patch URL"/" am Ende nicht vergessen
          
      Public Const NEUZ_FILE "neuz.exe"                                   ' Dateiname des Clienten
          Public Const NEUZ_PARAM = "sunkist"                                   ' 
      Start Parameter des Clienten
          
      Public Const ENCRYPTION_USE True                                    ' list.txt Encryption benutzen
          Public Const ENCRYPTION_KEY = "ai/HJ0AU?)%U!NAh047AW"                 ' 
      Enctyption Key
          
      Public Const LOG_CRYPT False                                        ' Logs verschlüsselt erstellen (ENCRYPTION_USE muss auf True sein)
          Public Const LOG_FORCE = False                                        ' 
      Logs immer erstellen
          
      Public Const MAX_GZIP 100                                           ' Maximale Anzahl an Compressionen/Decompressionen gleichzeitig

      End Module 
      Die GlobalConfig.vb ist wie der Name sagt Global und wird direkt für den Patcher & PatchListCreator übernommen.

      So dann kommen wir zum PatchListCreator, welchen Ich nach der vorlage von HDBlacker aufgebaut habe und somit bis auf das Aussehen das selbe ist:


      Für das erstellen der Patch Liste, folgendermaßen:


      1. Pfad angeben
      2. Create List klicken und warten bis die liste im Ordner abgelegt wurde
      3. Compress klicken und warten bis alles fertig ist



      Falls ihr die Liste aktualisieren wollt folgendermaßen:


      1. Pfad angeben
      2. Decompress klicken und warten bis alles fertig ist
      3. Create List klicken und warten bis die liste im Ordner abgelegt wurde
      4. Compress klicken und warten bis alles fertig ist


      _________________________________________


      Im grunde war es das auch bisher, ich werde hier auch Changelogs reinbauen, falls ich Veränderungen durchführe.


      PS: Das ganze ist mit Visual Basic 2010 geschrieben und arbeitet mit .NET Framework 2.0
      PPS: Ich habe im Source soviel wie möglich ist kommentiert, damit ihr wisst was ich da gemacht habe.

      Download v1.8.10: [Um Links zu sehen registriere dich bitte. Klicke hier.]
      Download v1.8.5: [Um Links zu sehen registriere dich bitte. Klicke hier.]
      Download v1.8: [Um Links zu sehen registriere dich bitte. Klicke hier.]
      Download v1.7: [Um Links zu sehen registriere dich bitte. Klicke hier.]
      Download v1.6: [Um Links zu sehen registriere dich bitte. Klicke hier.]
      Download v1.5: [Um Links zu sehen registriere dich bitte. Klicke hier.]
      Download v1.4: [Um Links zu sehen registriere dich bitte. Klicke hier.]
      Download v1.3: [Um Links zu sehen registriere dich bitte. Klicke hier.]
      Download v1.2: [Um Links zu sehen registriere dich bitte. Klicke hier.]
      Download v1.1: [Um Links zu sehen registriere dich bitte. Klicke hier.]
      Download v1.0: [Um Links zu sehen registriere dich bitte. Klicke hier.]
      Die Dummy.txt könnt ihr löschen.

      Change Log:
      v1.8.10

      • Code Optimierungen
      • Design Update


      v1.8.5

      • Code Optimierungen


      v1.8

      • Code Optimierung
      • Optionseinstellungen auf die Registry verlegt
      • Force Log eingebaut, damit auch trotz Enctyption eine Log erstellt wird
      • Log Encryption eingebaut


      v1.7

      • Code Optimierung
      • Pre-Patch Modus verbessert
      • Sprach Einstellung eingebaut
      • PatchList Creator verbessert


      v1.6

      • Code Optimierung
      • Datei-Signatur check eingebaut


      v1.5

      • Options Menü erweitert
      • Pre-Patch eingebaut


      v1.4

      • PatchListCreator speichert nun den letzen genutzen pfad
      • Laggs beim PatchListCreator wurden unterbunden, dass es sich nicht aufhängt
      • Leichte Code optimierungen


      v1.3

      • Options Menü eingebaut
      • list.txt Verschlüsslung eingebaut, dabei wird dann keine PatchLog angelegt
      • Config globalisiert
      • Einige funktionen globalisiert


      v1.2

      • Self Update eingefügt, danke an Tex0 für die Idee der Umsetzung


      v1.1

      • Crash fixx, sollte list.txt nicht auf dem server existieren bzw. kein Internet angeschlossen sein.


      v1.0:

      • Release des Patchers

      Credits:
      - Patcher: Sedrika
      - Design: ZooLag
      - Updater Idee: Tex0
      Geändert von Sedrika (06.04.12 um 16:27 Uhr)

    2. Die folgenden 3 Mitglieder bedankten sich bei Sedrika für diesen Beitrag:

      Dawn (16.01.12), Dreadlock (19.01.12), Tex0 (21.01.12)

    3. #2
      Redakteur auf Probe!
      DDos
       
      Avatar von Voltium
      Registriert seit
      Apr 2011
      Ort
      Frankfurt
      Beiträge
      916
      Danke
      154
      Danke erhalten: 145

      Standard

      Sieht nice aus :)

    4. #3
      Core Freak!
      DDos
       
      Avatar von Crasy
      Registriert seit
      Sep 2009
      Ort
      ~~
      Beiträge
      1,429
      Danke
      74
      Danke erhalten: 263

      Standard

      Wozu ein Open Source Patcher wenn Patcher src Public is? o.O


    5. #4
      Core Freak!
       
      Avatar von Sedrika
      Registriert seit
      Aug 2009
      Beiträge
      1,695
      Danke
      240
      Danke erhalten: 628

      Standard

      Zitat Zitat von Crasy [Um Links zu sehen registriere dich bitte. Klicke hier.]
      Wozu ein Open Source Patcher wenn Patcher src Public is? o.O
      Hast du überhaupt die Einleitung gelesen ?

      Hallo M-Core'ler,

      ich habe angefangen einen eigenen Patcher zu coden (aus langeweile)

    6. #5
      Core Freak!
      DDos
       
      Avatar von Crasy
      Registriert seit
      Sep 2009
      Ort
      ~~
      Beiträge
      1,429
      Danke
      74
      Danke erhalten: 263

      Standard

      Klar gelesen, aber wie kommt man auf so ein Scheiß aus lw ein Patcher zu machen...

      Beast oder so würd ich ja verstehen aber PATCHER..


    7. #6
      Core Freak!
       
      Avatar von Sedrika
      Registriert seit
      Aug 2009
      Beiträge
      1,695
      Danke
      240
      Danke erhalten: 628

      Standard

      Zitat Zitat von Crasy [Um Links zu sehen registriere dich bitte. Klicke hier.]
      Klar gelesen, aber wie kommt man auf so ein Scheiß aus lw ein Patcher zu machen...

      Beast oder so würd ich ja verstehen aber PATCHER..
      Weil ich den aktuellen auch nicht so dolle finde ?
      Zudem lass mich doch machen was ich will, wenn du einen neuen beast codest sag bescheid ich überweise dir sogar geld wenn es fertig und voll funktionsfähig ist.

    8. Das folgende Mitglied bedankt sich bei Sedrika für diesen Beitrag:

      ~Kevin~ (21.01.12)

    9. #7
      Core
      Blah
       
      Avatar von Tex0
      Registriert seit
      Aug 2010
      Beiträge
      416
      Danke
      67
      Danke erhalten: 89

      Standard

      // Kleines edit ;)
      Eh Jo Updater Sache: (noch ned getestet)
      Patcher.vb :
      Code:
       If VER <> scanner.ReadLine() Then ' überprüfen ob die Version stimmt
                      MsgBox("There is a new update", MsgBoxStyle.Information, "Update")
                     Try
                          My.Computer.Network.DownloadFile(PATCH_URL & "NewLaunch.exe", "NewLaunch.exe")
                          TerminateAndStart()
                      Catch ex As Exception
                          MsgBox("Could not download NewLauncher File")
                      End Try
                      Exit Sub
                  End If
      Funktionen.vb :
      Code:
      Public Sub TerminateAndStart()
              Dim Task As Long
              Task = Shell(My.Application.Info.DirectoryPath & "Update.exe", vbNormalNoFocus)
              MsgBox("A Newer Version of This Patcher has been downloaded !")
              Process.GetCurrentProcess.Kill() ' Kills process
          End Sub
      Neues Projekt: Update
      Modul1.vb :
      Code:
      Imports System
      Imports System.IO
      Module Module1
          Sub Main()
              Dim FileName As String = My.Application.Info.DirectoryPath & "\NewLauncher.exe"
              Dim FileName2 As String = My.Application.Info.DirectoryPath & "\Launcher.exe"
              If DoesProcessExists("Launcher.exe") Then
                  For Each Process In System.Diagnostics.Process.GetProcessesByName("Launcher.exe")
                      Process.Kill()
                  Next
      
      
              ElseIf Not File.Exists(FileName) Then
                  MsgBox("NewLauncher.exe existiert nicht !")
                  End
              Else
                  File.Delete(FileName2)
                  File.Move(FileName, FileName2)
                  Shell(FileName2, AppWinStyle.NormalFocus)
                  End
              End If
          End Sub
          Private Function DoesProcessExists(ByVal PName As String) As Boolean
              If System.Diagnostics.Process.GetProcessesByName(PName).Length > 0 Then
                  Return True
              End If
      
              Return False
          End Function
      
      End Module

    10. Das folgende Mitglied bedankt sich bei Tex0 für diesen Beitrag:

      Sedrika (16.01.12)

    11. #8
      Core Freak!
       
      Avatar von Sedrika
      Registriert seit
      Aug 2009
      Beiträge
      1,695
      Danke
      240
      Danke erhalten: 628

      Standard

      Werd es nacher mal testen, hab grad etwas fixxed, das kommt zuerst.

      Edit: Hab mal Self Updater coded, etwas aus deiner Idee hab ich genommen und verändert, ich arbeite lieber mit Parametern als mit festen werden, so kann der User zB seinen Patcher "ALALALA Patcher.exe" nennen und nach dem Update heisst es immernoch so.

      Edit2:

      v1.3 ist auch da ;)

      Change Log:
      v1.3

      • Options Menü eingebaut
      • list.txt Verschlüsslung eingebaut, dabei wird dann keine PatchLog angelegt
      • Config globalisiert
      • Einige funktionen globalisiert


      v1.2

      • Self Update eingefügt, danke an Tex0 für die Idee der Umsetzung


      v1.1

      • Crash fixx, sollte list.txt nicht auf dem server existieren bzw. kein Internet angeschlossen sein.


      v1.0:

      • Release des Patchers
      Geändert von Sedrika (17.01.12 um 05:29 Uhr)

    12. #9
      Core Freak!
       
      Avatar von Sedrika
      Registriert seit
      Aug 2009
      Beiträge
      1,695
      Danke
      240
      Danke erhalten: 628

      Standard

      Update 1.4 ist da, mehr in den Logs.

    13. #10
      E▲S Y
      DDos
       
      Avatar von Dreadlock
      Registriert seit
      Jul 2010
      Beiträge
      1,248
      Danke
      276
      Danke erhalten: 397

      Standard

      Finde ich ein klasse Projekt und habe beschlossen, dass es einen Sticky bekommt. Weiter so!

    14. Das folgende Mitglied bedankt sich bei Dreadlock für diesen Beitrag:

      Sedrika (21.01.12)

    15. #11
      Core
      Blah
       
      Avatar von Tex0
      Registriert seit
      Aug 2010
      Beiträge
      416
      Danke
      67
      Danke erhalten: 89

      Standard

      Kleine Idee:
      Die Patchversion kann beim erstellen der Patchlist über die Patchlistcreator.exe eingestellt werden, ansonsten muss man (bei neuer Patchversion) immer zwei Programme builden ;)

    16. #12
      Core Freak!
       
      Avatar von Sedrika
      Registriert seit
      Aug 2009
      Beiträge
      1,695
      Danke
      240
      Danke erhalten: 628

      Standard

      Joah wär eine Idee aber dafür hab ich ja die GlobalConfig

    17. #13
      Core Freak!
      DDos
       
      Avatar von Crasy
      Registriert seit
      Sep 2009
      Ort
      ~~
      Beiträge
      1,429
      Danke
      74
      Danke erhalten: 263

      Standard

      Naja, hier mal noch eine Idee: Pre Patch!

      Der User kann beim Start des Patchers über ein Kästchen den Pre Patch aktivieren, der wird beim System Start im Hintergrund alles Patchen und somit müsste der User nicht extra warten bis er Spielen kann ( Ja, die Idee is von 4Story ).


    18. #14
      Core Freak!
       
      Avatar von Sedrika
      Registriert seit
      Aug 2009
      Beiträge
      1,695
      Danke
      240
      Danke erhalten: 628

      Standard

      Hmm, keine schlechte idee. Denke wird sich einrichten lassen.

    19. #15
      Core Freak!
       
      Avatar von Sedrika
      Registriert seit
      Aug 2009
      Beiträge
      1,695
      Danke
      240
      Danke erhalten: 628

      Standard

      So v1.5 ist nun auch da.

      Folgendes wurd gemacht:
      - Options Menü erweitert auf ein zweites Tab fenster
      - Pre-Patch eingebaut, dabei wird der Patcher im hintergrund mit dem system gestartet und updated alles und beendet sich danach selber wieder. Sollte die Version allerdings nicht übereinstimmen, passiert nichts.

      Download v1.5: [Um Links zu sehen registriere dich bitte. Klicke hier.]

    20. Das folgende Mitglied bedankt sich bei Sedrika für diesen Beitrag:

      Tex0 (24.01.12)

    Seite 1 von 2 12 LetzteLetzte

    Lesezeichen

    Berechtigungen

    • Neue Themen erstellen: Nein
    • Themen beantworten: Nein
    • Anhänge hochladen: Nein
    • Beiträge bearbeiten: Nein
    •