Advertisement
Guest User

aaa

a guest
Feb 25th, 2015
254
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VB.NET 13.15 KB | None | 0 0
  1. Imports System.IO
  2. Imports System.Text
  3. Imports System.Net
  4.  
  5. Public Class LifeForWar
  6.  
  7.  
  8.     Private Sub Connect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Connect.Click
  9.  
  10.         Dim PlayerName As String = TextBox_pseudo.Text
  11.         Dim PlayerMdp As String = TextBox_mdp.Text
  12.         If (TextBox_pseudo.Text <> "" And TextBox_mdp.Text <> "") Then
  13.             ConnectServ(PlayerName, PlayerMdp)
  14.         Else
  15.             MsgBox("Erreur: Veuillez remplir tous les champs !")
  16.  
  17.         End If
  18.  
  19.     End Sub
  20.  
  21.     Private Sub ErrorMessage()
  22.         Dim ErrorMess As String = "Une erreur est survenue lors de la lecture de vos identifiants! Veuillez réessayez en complétant tous les champs !"
  23.         MsgBox(ErrorMess)
  24.     End Sub
  25.  
  26.     Private Sub ErrorMessageAuth()
  27.         Dim ErrorMessAuth As String = "Une erreur est survenue lors de l'authentification ! Mot de passe ou nom de compte incorrect !"
  28.         MsgBox(ErrorMessAuth)
  29.     End Sub
  30.  
  31.     Private Function Authenticate(ByVal PlayerName As String, ByVal PlayerPassword As String) As String()
  32.  
  33.         ' Variables
  34.         Dim RequestResult As String = ""
  35.         Dim RequestHeader As String = "{""agent"": {""name"": ""Minecraft"",""version"": 1},""username"": """ & PlayerName & """,""password"": """ & PlayerPassword & """}"
  36.         Dim UserToken As String = ""
  37.         Dim UUID As String = ""
  38.         Dim AuthServer As String = "https://authserver.mojang.com/authenticate"
  39.  
  40.         ' Requête d'authentification
  41.         Dim AuthRequest As WebRequest
  42.         AuthRequest = WebRequest.Create(AuthServer)
  43.         Dim RequestResponse As WebResponse
  44.         Dim PostData As String = RequestHeader
  45.         Dim data As Byte() = Encoding.UTF8.GetBytes(PostData)
  46.  
  47.         AuthRequest.Method = "POST"
  48.         AuthRequest.ContentType = "application/json"
  49.         AuthRequest.ContentLength = data.Length
  50.  
  51.         Dim RequestStream As Stream = AuthRequest.GetRequestStream()
  52.         Try
  53.             RequestStream.Write(data, 0, data.Length)
  54.             RequestStream.Close()
  55.         Catch
  56.             ' TODO log
  57.         End Try
  58.  
  59.         Try
  60.             RequestResponse = AuthRequest.GetResponse()
  61.             Dim ResponseReader As New StreamReader(RequestResponse.GetResponseStream())
  62.             RequestResult = (ResponseReader.ReadToEnd)
  63.             MsgBox(RequestResult)
  64.  
  65.             Dim ResponseArray As String() = RequestResult.Split(New Char() {":"c})
  66.  
  67.             UserToken = ResponseArray(1).ToString.Split(New Char() {","c})(0).Replace("""", "")
  68.             UUID = ResponseArray(4).ToString.Split(New Char() {","c})(0).Replace("""", "")
  69.  
  70.             Return {PlayerName, PlayerPassword, UserToken, UUID}
  71.  
  72.         Catch ConnexionFailed As WebException
  73.             ''Log.Debug("Une erreur est survenue lors de la requête d'identification.")
  74.             Dim ResponseReader As New StreamReader(ConnexionFailed.Response.GetResponseStream())
  75.             RequestResult = (ResponseReader.ReadToEnd)
  76.  
  77.             Dim ErrorType As String = RequestResult.Split(":")(1).Split(",")(0).Replace("""", "")
  78.             Dim ErrorMessage As String = RequestResult.Split(":")(2).Replace("}", Nothing).Replace("""", "")
  79.         Catch ex As Exception
  80.             MsgBox(ex.Message)
  81.        
  82.         End Try
  83.  
  84.         Return {"Erreur inconnue."}
  85.  
  86.     End Function
  87.  
  88.     Private Sub ConnectServ(ByVal PlayerName As String, ByVal PlayerPassword As String)
  89.  
  90.         ' Authentification
  91.         Dim UserCredentials As String() = Authenticate(PlayerName, PlayerPassword)
  92.         If (UserCredentials.Length = 3) Then
  93.             Dim UserToken As String = UserCredentials(2)
  94.             Dim UUID As String = UserCredentials(3)
  95.  
  96.             ' Lancement
  97.             Dim G As String = """"
  98.             Dim gamedir As String = "%appdata%" & "\.lifeforwar"
  99.             Dim natives As String = gamedir & "\natives"
  100.             Dim libraries As String = gamedir & "\libraries"
  101.             Dim assets As String = gamedir & "\assets"
  102.             Dim version As String = "1.7.10"
  103.             Dim jarver As String = gamedir & "\versions\lfw\lfw-1.7.10.jar" & G
  104.             Dim mainclass As String = "net.minecraft.launchwrapper.Launch"
  105.             Dim userproperties As String = "{}"
  106.             Dim usertype As String = "mojang"
  107.             Dim tweakclass As String = "cpw.mods.fml.common.launcher.FMLTweaker"
  108.  
  109.             Dim exe As String = "java" '"""C:\Program Files\Java\jre7\bin\java.exe"""
  110.             Dim libs As String = ""
  111.             For Each file In IO.Directory.GetFiles(libraries, "*.jar", IO.SearchOption.AllDirectories)
  112.                 libs &= """" & file & """;"
  113.             Next
  114.  
  115.             '" -cp " & G & libs & jarver & G & " " & mainclass & _
  116.             '" -cp """ & gamedir & "\libraries\net\minecraftforge\forge\1.7.10-10.13.2.1230\forge-1.7.10-10.13.2.1230.jar;" & gamedir & "\libraries\net\minecraft\launchwrapper\1.11\launchwrapper-1.11.jar;" & gamedir & "\libraries\org\ow2\asm\asm-all\5.0.3\asm-all-5.0.3.jar;" & gamedir & "\libraries\com\typesafe\akka\akka-actor_2.11\2.3.3\akka-actor_2.11-2.3.3.jar;" & gamedir & "\libraries\com\typesafe\config\1.2.1\config-1.2.1.jar;" & gamedir & "\libraries\org\scala-lang\scala-actors-migration_2.11\1.1.0\scala-actors-migration_2.11-1.1.0.jar;" & gamedir & "\libraries\org\scala-lang\scala-compiler\2.11.1\scala-compiler-2.11.1.jar;" & gamedir & "\libraries\org\scala-lang\plugins\scala-continuations-library_2.11\1.0.2\scala-continuations-library_2.11-1.0.2.jar;" & gamedir & "\libraries\org\scala-lang\plugins\scala-continuations-plugin_2.11.1\1.0.2\scala-continuations-plugin_2.11.1-1.0.2.jar;" & gamedir & "\libraries\org\scala-lang\scala-library\2.11.1\scala-library-2.11.1.jar;" & gamedir & "\libraries\org\scala-lang\scala-parser-combinators_2.11\1.0.1\scala-parser-combinators_2.11-1.0.1.jar;" & gamedir & "\libraries\org\scala-lang\scala-reflect\2.11.1\scala-reflect-2.11.1.jar;" & gamedir & "\libraries\org\scala-lang\scala-swing_2.11\1.0.1\scala-swing_2.11-1.0.1.jar;" & gamedir & "\libraries\org\scala-lang\scala-xml_2.11\1.0.2\scala-xml_2.11-1.0.2.jar;" & gamedir & "\libraries\net\sf\jopt-simple\jopt-simple\4.5\jopt-simple-4.5.jar;" & gamedir & "\libraries\lzma\lzma\0.0.1\lzma-0.0.1.jar;" & gamedir & "\libraries\com\mojang\realms\1.3.5\realms-1.3.5.jar;" & gamedir & "\libraries\org\apache\commons\commons-compress\1.8.1\commons-compress-1.8.1.jar;" & gamedir & "\libraries\org\apache\httpcomponents\httpclient\4.3.3\httpclient-4.3.3.jar;" & gamedir & "\libraries\commons-logging\commons-logging\1.1.3\commons-logging-1.1.3.jar;" & gamedir & "\libraries\org\apache\httpcomponents\httpcore\4.3.2\httpcore-4.3.2.jar;" & gamedir & "\libraries\java3d\vecmath\1.3.1\vecmath-1.3.1.jar;" & gamedir & "\libraries\net\sf\trove4j\trove4j\3.0.3\trove4j-3.0.3.jar;" & gamedir & "\libraries\com\ibm\icu\icu4j-core-mojang\51.2\icu4j-core-mojang-51.2.jar;" & gamedir & "\libraries\com\paulscode\codecjorbis\20101023\codecjorbis-20101023.jar;" & gamedir & "\libraries\com\paulscode\codecwav\20101023\codecwav-20101023.jar;" & gamedir & "\libraries\com\paulscode\libraryjavasound\20101123\libraryjavasound-20101123.jar;" & gamedir & "\libraries\com\paulscode\librarylwjglopenal\20100824\librarylwjglopenal-20100824.jar;" & gamedir & "\libraries\com\paulscode\soundsystem\20120107\soundsystem-20120107.jar;" & gamedir & "\libraries\io\netty\netty-all\4.0.10.Final\netty-all-4.0.10.Final.jar;" & gamedir & "\libraries\com\google\guava\guava\16.0\guava-16.0.jar;" & gamedir & "\libraries\org\apache\commons\commons-lang3\3.2.1\commons-lang3-3.2.1.jar;" & gamedir & "\libraries\commons-io\commons-io\2.4\commons-io-2.4.jar;" & gamedir & "\libraries\commons-codec\commons-codec\1.9\commons-codec-1.9.jar;" & gamedir & "\libraries\net\java\jinput\jinput\2.0.5\jinput-2.0.5.jar;" & gamedir & "\libraries\net\java\jutils\jutils\1.0.0\jutils-1.0.0.jar;" & gamedir & "\libraries\com\google\code\gson\gson\2.2.4\gson-2.2.4.jar;" & gamedir & "\libraries\com\mojang\authlib\1.5.16\authlib-1.5.16.jar;" & gamedir & "\libraries\org\apache\logging\log4j\log4j-api\2.0-beta9\log4j-api-2.0-beta9.jar;" & gamedir & "\libraries\org\apache\logging\log4j\log4j-core\2.0-beta9\log4j-core-2.0-beta9.jar;" & gamedir & "\libraries\org\lwjgl\lwjgl\lwjgl\2.9.1\lwjgl-2.9.1.jar;" & gamedir & "\libraries\org\lwjgl\lwjgl\lwjgl_util\2.9.1\lwjgl_util-2.9.1.jar;" & gamedir & "\libraries\tv\twitch\twitch\5.16\twitch-5.16.jar;" & _
  117.             'jarver & """ " & mainclass & _
  118.             Dim params As String = _
  119.                 "-Djava.library.path=" & G & natives & G & _
  120.                 " -cp " & G & gamedir & "\libraries\net\minecraftforge\forge\1.7.10-10.13.2.1230\forge-1.7.10-10.13.2.1230.jar;" & gamedir & "\libraries\net\minecraft\launchwrapper\1.11\launchwrapper-1.11.jar;" & gamedir & "\libraries\org\ow2\asm\asm-all\5.0.3\asm-all-5.0.3.jar;" & gamedir & "\libraries\com\typesafe\akka\akka-actor_2.11\2.3.3\akka-actor_2.11-2.3.3.jar;" & gamedir & "\libraries\com\typesafe\config\1.2.1\config-1.2.1.jar;" & gamedir & "\libraries\org\scala-lang\scala-actors-migration_2.11\1.1.0\scala-actors-migration_2.11-1.1.0.jar;" & gamedir & "\libraries\org\scala-lang\scala-compiler\2.11.1\scala-compiler-2.11.1.jar;" & gamedir & "\libraries\org\scala-lang\plugins\scala-continuations-library_2.11\1.0.2\scala-continuations-library_2.11-1.0.2.jar;" & gamedir & "\libraries\org\scala-lang\plugins\scala-continuations-plugin_2.11.1\1.0.2\scala-continuations-plugin_2.11.1-1.0.2.jar;" & gamedir & "\libraries\org\scala-lang\scala-library\2.11.1\scala-library-2.11.1.jar;" & gamedir & "\libraries\org\scala-lang\scala-parser-combinators_2.11\1.0.1\scala-parser-combinators_2.11-1.0.1.jar;" & gamedir & "\libraries\org\scala-lang\scala-reflect\2.11.1\scala-reflect-2.11.1.jar;" & gamedir & "\libraries\org\scala-lang\scala-swing_2.11\1.0.1\scala-swing_2.11-1.0.1.jar;" & gamedir & "\libraries\org\scala-lang\scala-xml_2.11\1.0.2\scala-xml_2.11-1.0.2.jar;" & gamedir & "\libraries\net\sf\jopt-simple\jopt-simple\4.5\jopt-simple-4.5.jar;" & gamedir & "\libraries\lzma\lzma\0.0.1\lzma-0.0.1.jar;" & gamedir & "\libraries\com\mojang\realms\1.3.5\realms-1.3.5.jar;" & gamedir & "\libraries\org\apache\commons\commons-compress\1.8.1\commons-compress-1.8.1.jar;" & gamedir & "\libraries\org\apache\httpcomponents\httpclient\4.3.3\httpclient-4.3.3.jar;" & gamedir & "\libraries\commons-logging\commons-logging\1.1.3\commons-logging-1.1.3.jar;" & gamedir & "\libraries\org\apache\httpcomponents\httpcore\4.3.2\httpcore-4.3.2.jar;" & gamedir & "\libraries\java3d\vecmath\1.3.1\vecmath-1.3.1.jar;" & gamedir & "\libraries\net\sf\trove4j\trove4j\3.0.3\trove4j-3.0.3.jar;" & gamedir & "\libraries\com\ibm\icu\icu4j-core-mojang\51.2\icu4j-core-mojang-51.2.jar;" & gamedir & "\libraries\com\paulscode\codecjorbis\20101023\codecjorbis-20101023.jar;" & gamedir & "\libraries\com\paulscode\codecwav\20101023\codecwav-20101023.jar;" & gamedir & "\libraries\com\paulscode\libraryjavasound\20101123\libraryjavasound-20101123.jar;" & gamedir & "\libraries\com\paulscode\librarylwjglopenal\20100824\librarylwjglopenal-20100824.jar;" & gamedir & "\libraries\com\paulscode\soundsystem\20120107\soundsystem-20120107.jar;" & gamedir & "\libraries\io\netty\netty-all\4.0.10.Final\netty-all-4.0.10.Final.jar;" & gamedir & "\libraries\com\google\guava\guava\16.0\guava-16.0.jar;" & gamedir & "\libraries\org\apache\commons\commons-lang3\3.2.1\commons-lang3-3.2.1.jar;" & gamedir & "\libraries\commons-io\commons-io\2.4\commons-io-2.4.jar;" & gamedir & "\libraries\commons-codec\commons-codec\1.9\commons-codec-1.9.jar;" & gamedir & "\libraries\net\java\jinput\jinput\2.0.5\jinput-2.0.5.jar;" & gamedir & "\libraries\net\java\jutils\jutils\1.0.0\jutils-1.0.0.jar;" & gamedir & "\libraries\com\google\code\gson\gson\2.2.4\gson-2.2.4.jar;" & gamedir & "\libraries\com\mojang\authlib\1.5.16\authlib-1.5.16.jar;" & gamedir & "\libraries\org\apache\logging\log4j\log4j-api\2.0-beta9\log4j-api-2.0-beta9.jar;" & gamedir & "\libraries\org\apache\logging\log4j\log4j-core\2.0-beta9\log4j-core-2.0-beta9.jar;" & gamedir & "\libraries\org\lwjgl\lwjgl\lwjgl\2.9.1\lwjgl-2.9.1.jar;" & gamedir & "\libraries\org\lwjgl\lwjgl\lwjgl_util\2.9.1\lwjgl_util-2.9.1.jar;" & gamedir & "\libraries\tv\twitch\twitch\5.16\twitch-5.16.jar;" & jarver & " " & mainclass & _
  121.                 " --username " & PlayerName & _
  122.                 " --version " & version & _
  123.                 " --gameDir " & G & gamedir & G & _
  124.                 " --assetsDir " & G & assets & G & _
  125.                 " --assetIndex " & version & _
  126.                 " --uuid " & UUID & _
  127.                 " --accessToken " & UserToken & _
  128.                 " --userProperties " & userproperties & _
  129.                 " --userType " & usertype & _
  130.                 " --tweakClass " & tweakclass
  131.  
  132.             ' Débogage
  133.             IO.File.WriteAllText("start__.bat", exe & " " & params & vbNewLine & "pause")
  134.             Process.Start("C:\Program Files\Notepad++\notepad++.exe", "start__.bat")
  135.  
  136.             Try
  137.                 Process.Start(exe, params)
  138.             Catch ex As Exception
  139.                 MsgBox(ex.Message)
  140.             End Try
  141.  
  142.         ElseIf (UserCredentials.Length = 1) Then
  143.             ErrorMessageAuth()
  144.  
  145.         ElseIf (UserCredentials.Length = 0) Then
  146.             ErrorMessage()
  147.         End If
  148.  
  149.  
  150.  
  151.     End Sub
  152.  
  153. End Class
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement