Custom Launcher minecraft c# & wpf

Версия Minecraft
1.10.2
17
0
[font=Georgia,]пишу лаунчер для себя на C# в WPF и не могу разобраться[/font]

[font=Georgia,]Имеем такой код, только когда запускаем - ничего не получаем (вообще никаких действий, позывов, подпроцессов...) Проверку java проходит, а клиент молчит[/font]

Код:
private void button_Click(object sender, RoutedEventArgs e)
        {
 
            string username = "testuser";
 
            string gamedir = "F:\\Games\\Cuboid";
 
       
 
            ProcessStartInfo mcStartInfo = null;
            Microsoft.Win32.RegistryKey readKey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\javaws.exe");
            string java = (string)readKey.GetValue("Path") + @"\javaw.exe";
            readKey.Close();
            if (File.Exists(java))
            {
                mcStartInfo = new ProcessStartInfo(java, string.Format(
"-Xmx2048M" +
" -Djava.library.path=" +
gamedir + "\\versions\\Forge 1.10.2\\natives -Dos.name=Windows 10 -Dos.version=10.0 " +
" - cp " +
gamedir + "\\libraries\\net\\minecraftforge\\forge\\1.10.2-12.18.1.2011\\forge-1.10.2-12.18.1.2011.jar;" +
gamedir + "\\libraries\\net\\minecraft\\launchwrapper\\1.12\\launchwrapper-1.12.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\\lzma\\lzma\\0.0.1\\lzma-0.0.1.jar;" +
gamedir + "\\libraries\\net\\sf\\jopt-simple\\jopt-simple\\4.6\\jopt-simple-4.6.jar;" +
gamedir + "\\libraries\\java3d\\vecmath\\1.5.2\\vecmath-1.5.2.jar;" +
gamedir + "\\libraries\\net\\sf\\trove4j\\trove4j\\3.0.3\\trove4j-3.0.3.jar;" +
gamedir + "\\libraries\\com\\mojang\\netty\\1.6\\netty-1.6.jar;" +
gamedir + "\\libraries\\oshi-project\\oshi-core\\1.1\\oshi-core-1.1.jar;" +
gamedir + "\\libraries\\net\\java\\dev\\jna\\jna\\3.4.0\\jna-3.4.0.jar;" +
gamedir + "\\libraries\\net\\java\\dev\\jna\\platform\\3.4.0\\platform-3.4.0.jar;" +
gamedir + "\\libraries\\com\\ibm\\icu\\icu4j-core-mojang\\51.2\\icu4j-core-mojang-51.2.jar;" +
gamedir + "\\libraries\\net\\sf\\jopt-simple\\jopt-simple\\4.6\\jopt-simple-4.6.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.23.Final\\netty-all-4.0.23.Final.jar;" +
gamedir + "\\libraries\\com\\google\\guava\\guava\\17.0\\guava-17.0.jar;" +
gamedir + "\\libraries\\org\\apache\\commons\\commons-lang3\\3.3.2\\commons-lang3-3.3.2.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.22\\authlib-1.5.22.jar;" +
gamedir + "\\libraries\\com\\mojang\\realms\\1.9.5\\realms-1.9.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\\it\\unimi\\dsi\\fastutil\\7.0.12_mojang\\fastutil-7.0.12_mojang.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.4-nightly-20150209\\lwjgl-2.9.4-nightly-20150209.jar;" +
gamedir + "\\libraries\\org\\lwjgl\\lwjgl\\lwjgl_util\\2.9.4-nightly-20150209\\lwjgl_util-2.9.4-nightly-20150209.jar;" +
gamedir + "\\versions\\Forge 1.10.2\\Forge 1.10.2.jar;" +
" -Dfml.ignoreInvalidMinecraftCertificates=true" +
" -Dfml.ignorePatchDiscrepancies=true" +
" -Xms256M" +
" -XX:+UseG1GC" +
" -XX:ConcGCThreads=8" +
"-XX:MaxPermSize=3072M" +
"net.minecraft.launchwrapper.Launch " +
"--username" + username + "--version Forge 1.10.2 " +
"--gameDir" + gamedir + " --assetsDir " + gamedir +
"\\assets" + "--assetIndex 1.10 --uuid 00000000-0000-0000-0000-000000000000 --accessToken null --userType legacy" +
" --tweakClass net.minecraftforge.fml.common.launcher.FMLTweaker " +
"--versionType Forge" +
"--width 925" +
"--height 530"));
                Process.Start(mcStartInfo);
            }
            else MessageBox.Show("На вашем компьютере отсутствует Java!");
        }


[font=Georgia,]Подскажите где я накосячил, пожалуйста ...[/font]
 
7,099
324
1,510
Лаунчер открытый будет?
 
17
0
hohserg написал(а):
Лаунчер открытый будет?

Если я его все-таки допишу то выложу скомпиленый и реализую возможность настройки под свои (клиенты адреса и тп) мб и сурсы выложу.
С запуском косяк. Из-за лени я не писал строку сам а содрал полную команду из tlaucher. Вот только странно что она даже из bat не пашет(ну на butch без редактирования) что оооочень странно.

Обидно, автообновление лаунчера и клиента сделал, поддежку нескольких клиентов с общим акком сделал, поддержку вывода статистики из mySql сделал. А тупо клиент запустить не выходит - беда.
 
17
0
wilah написал(а):
Потому что надо уметь. Посмотри в учебнике, Тао писал, как запускать игру. Да и вообще, как сделать клиент чище. Алсо, твой лаунчер мало кому будет нужен без кроссплатформенности :/

1) Уметь и лениться - разные вещи.
2) Если человек говорит что странно, значит по его мнению это работает и если я зашёл на форум я ожидаю не направления на учебники аля "как запустить jar через c# и прочее", а помочь найти ошибку в коде и поделиться этим самым кодом(вдруг кому будет полезно).
3) Самая первая строчка уже мягко намекает что пишу для себя а не для кого-то.
4) Вы думаете что крайне сложно переделать проект дабы не использовать .net и потом собирать на любые платформы ? Ну думайте дальше.
________________________________________________________________________________
Итого Ценность вашего сообщения 0 % . Спасибо за помощь.
 
1,137
5
3
Зачем делать лаунчер для себя?
***
А так, вроде команда правильная. У меня было такое, что новый процесс запускался и зависал (съедал пару мегабайт памяти и больше не отзывался). Попробуй лог игры вывести в консоль.
***
А еще, можно поманипулировать с libraries так, что достаточно будет cp="libraries/*"
 
Сверху