Advertisement
Guest User

Launcher LFW

a guest
Feb 24th, 2015
265
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VB.NET 7.75 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.     End Sub
  11.  
  12.     Private Sub Connect(ByVal PlayerName As String, ByVal PlayerPassword As String)
  13.  
  14.         ' Authentification
  15.         Dim UserCredentials As String() = Authenticate(PlayerName, PlayerPassword)
  16.         Dim UserToken As String = UserCredentials(2)
  17.         Dim UUID As String = UserCredentials(3)
  18.  
  19.         ' Lancement
  20.         Dim G As String = """"
  21.         Dim gamedir As String = "%APPDATA%" & "\.lifeforwar"
  22.         Dim natives As String = gamedir & "\natives"
  23.         Dim libraries As String = gamedir & "\libraries"
  24.         Dim assets As String = gamedir & "\assets"
  25.         Dim version As String = "1.7.10"
  26.         Dim jarver As String = gamedir & "\versions\lfw\lfw-1.7.10.jar" & G
  27.         Dim mainclass As String = "net.minecraft.launchwrapper.Launch"
  28.         Dim userproperties As String = "{}"
  29.         Dim usertype As String = "mojang"
  30.         Dim tweakclass As String = "cpw.mods.fml.common.launcher.FMLTweaker"
  31.  
  32.         Dim exe As String = "java" '"""C:\Program Files\Java\jre7\bin\java.exe"""
  33.         Dim libs As String = ""
  34.         For Each file In IO.Directory.GetFiles(libraries, "*.jar", IO.SearchOption.AllDirectories)
  35.             libs &= """" & file & """;"
  36.         Next
  37.  
  38.  
  39.         Dim params As String = _
  40.             "-Djava.library.path=" & G & natives & G & _
  41.             " -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 & _
  42.             " --username " & PlayerName & _
  43.             " --version " & version & _
  44.             " --gameDir " & G & gamedir & G & _
  45.             " --assetsDir " & G & assets & G & _
  46.             " --assetsIndex " & version & _
  47.             " --uuid " & UUID & _
  48.             " --accessToken " & UserToken & _
  49.             " --userProperties " & userproperties & _
  50.             " --userType " & usertype & _
  51.             " --tweakClass " & tweakclass
  52.  
  53.         ' Débogage
  54.         'IO.File.WriteAllText("start__.bat", exe & " " & params & vbNewLine & "pause")
  55.         'Process.Start("notepad++", "start__.bat")
  56.  
  57.         Try
  58.             Process.Start(exe, params)
  59.         Catch ex As Exception
  60.             MsgBox(ex.Message)
  61.         End Try
  62.     End Sub
  63.  
  64.     Private Function Authenticate(ByVal PlayerName As String, ByVal PlayerPassword As String) As String()
  65.  
  66.         ' Variables
  67.         Dim RequestResult As String = ""
  68.         Dim RequestHeader As String = "{""agent"": {""name"": ""Minecraft"",""version"": 1},""username"": """ & PlayerName & """,""password"": """ & PlayerPassword & """}"
  69.         Dim UserToken As String = ""
  70.         Dim UUID As String = ""
  71.         Dim AuthServer As String = "https://authserver.mojang.com/authenticate"
  72.  
  73.         ' Requête d'authentification
  74.         Dim AuthRequest As WebRequest
  75.         AuthRequest = WebRequest.Create(AuthServer)
  76.         Dim RequestResponse As WebResponse
  77.         Dim PostData As String = RequestHeader
  78.         Dim data As Byte() = Encoding.UTF8.GetBytes(PostData)
  79.  
  80.         AuthRequest.Method = "POST"
  81.         AuthRequest.ContentType = "application/json"
  82.         AuthRequest.ContentLength = data.Length
  83.  
  84.         Dim RequestStream As Stream = AuthRequest.GetRequestStream()
  85.         Try
  86.             RequestStream.Write(data, 0, data.Length)
  87.             RequestStream.Close()
  88.         Catch
  89.             ' TODO log
  90.         End Try
  91.  
  92.         Try
  93.             RequestResponse = AuthRequest.GetResponse()
  94.             Dim ResponseReader As New StreamReader(RequestResponse.GetResponseStream())
  95.             RequestResult = (ResponseReader.ReadToEnd)
  96.             MsgBox(RequestResult)
  97.  
  98.             Dim ResponseArray As String() = RequestResult.Split(New Char() {":"c})
  99.  
  100.             UserToken = ResponseArray(1).ToString.Split(New Char() {","c})(0).Replace("""", "")
  101.             UUID = ResponseArray(4).ToString.Split(New Char() {","c})(0).Replace("""", "")
  102.  
  103.             Return {PlayerName, PlayerPassword, UserToken, UUID}
  104.  
  105.         Catch ex As Exception
  106.             MsgBox(ex.Message)
  107.         End Try
  108.  
  109.         Return {"Erreur inconnue."}
  110.  
  111.     End Function
  112.  
  113. End Class
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement