0 / 0 / 0
Регистрация: 04.08.2022
Сообщений: 8

Свой лаунчер для Minecraft не может запустить Minecraft

11.01.2023, 00:38. Показов 1766. Ответов 9

Студворк — интернет-сервис помощи студентам
Приветствую. Уже раньше писал на этот форумо совём лаунчере, но тогда проблема была другая и её решили. На этот раз проблема куда серьёзнее: написал код для запуска игры, при нажатии кнопки "играть" запускается java, в не передаются аргументы для запуска, после чего оконо java закрывается и всё...
Немножно предыстории: делаю миниатюрный лаунчер для майнкрафта, чисто для сборки игры с модами на какой-то одной версии.
Код запуска игры:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
        private void button1_Click(object sender, EventArgs e)
        {
            string gamedir = Path.GetDirectoryName(Application.ExecutablePath);
 
            string nickname = textBox2.Text;
 
            ProcessStartInfo mcStartInfo = new ProcessStartInfo(gamedir + "\\jre-legacy\\bin\\java.exe", string.Format(
                "-Xmx1024M" +
                " -cp " +
                gamedir + "\\libraries\\net\\minecraftforge\\forge\\1.12.2-14.23.5.2854\\forge-1.12.2-14.23.5.2854.jar;" +
                gamedir + "\\libraries\\org\\ow2\\asm\\asm-debug-all\\5.2\\asm-debug-all-5.2.jar;" +
                gamedir + "\\libraries\\net\\minecraft\\launchwrapper\\1.12\\launchwrapper-1.12.jar;" +
                gamedir + "\\libraries\\org\\jline\\jline\\3.5.1\\jline-3.5.1.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_mc\\scala-continuations-library_2.11-1.0.2_mc.jar;" +
                gamedir + "\\libraries\\org\\scala-lang\\plugins\\scala-continuations-plugin_2.11.1\\1.0.2_mc\\scala-continuations-plugin_2.11.1-1.0.2_mc.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\\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\\org\\apache\\maven\\maven-artifact\\3.5.3\\maven-artifact-3.5.3.jar;" +
                gamedir + "\\libraries\\net\\sf\\jopt-simple\\jopt-simple\\5.0.3\\jopt-simple-5.0.3.jar;" +
                gamedir + "\\libraries\\org\\tlauncher\\patchy\\1.1\\patchy-1.1.jar;" +
                gamedir + "\\libraries\\oshi-project\\oshi-core\\1.1\\oshi-core-1.1.jar;" +
                gamedir + "\\libraries\\net\\java\\dev\\jna\\jna\\4.4.0\\jna-4.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\\5.0.3\\jopt-simple-5.0.3.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.1.9.Final\\netty-all-4.1.9.Final.jar;" +
                gamedir + "\\libraries\\com\\google\\guava\\guava\\21.0\\guava-21.0.jar;" +
                gamedir + "\\libraries\\org\\apache\\commons\\commons-lang3\\3.5\\commons-lang3-3.5.jar;" +
                gamedir + "\\libraries\\commons-io\\commons-io\\2.5\\commons-io-2.5.jar;" +
                gamedir + "\\libraries\\commons-codec\\commons-codec\\1.10\\commons-codec-1.10.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.8.0\\gson-2.8.0.jar;" +
                gamedir + "\\libraries\\com\\mojang\\authlib\\1.5.25\\authlib-1.5.25.jar;" +
                gamedir + "\\libraries\\com\\mojang\\realms\\1.10.22\\realms-1.10.22.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.1.0\\fastutil-7.1.0.jar;" +
                gamedir + "\\libraries\\org\\apache\\logging\\log4j\\log4j-api\\2.8.1\\log4j-api-2.8.1.jar;" +
                gamedir + "\\libraries\\org\\apache\\logging\\log4j\\log4j-core\\2.8.1\\log4j-core-2.8.1.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 + "\\libraries\\com\\mojang\\text2speech\\1.10.3\\text2speech-1.10.3.jar;" +
                gamedir + "\\versions\\ForgeOptiFine 1.12.2\\ForgeOptiFine1.12.2.jar" +
                " -Dminecraft.applet.TargetDirectory=" +
                gamedir + "\\" +
                " -XX:+UseConcMarkSweepGC" +
                " -Dfml.ignoreInvalidMinecraftCertificates=true" +
                " -Dfml.ignorePatchDiscrepancies=true" +
                "net.minecraft.launchwrapper.Launch" +
                " --version 1.12.2" +
                " --gameDir" +
                gamedir + "\\" +
                " --assetsDir" +
                gamedir + "\\assets" +
                " --assetIndex 1.12" +
                " --uuid 00000000-0000-0000-0000-000000000000" +
                " --accessToken null" +
                " --userProperties[] " +
                " --userType legacy" +
                //" --username" + nickname +
                " --username Steve" +
                " --tweakClass net.minecraftforge.fml.common.launcher.FMLTweaker" +
                " --versionType Forge" +
                " --width 800" +
                " --height 600" +
                " -Djava.library.path=" +
                gamedir + "\\versions\\ForgeOptiFine 1.12.2\\natives"));
                Process.Start(mcStartInfo);
            //this.Close();
        }
В теории вс должно работать, т.к. эти же аргументы для запуска игры я использовал в батнике, который игру спокойно запускает. После сборки лаунчера, когда нажимаю играть, на секунду вылазит окно командиной строки, которое сразу же закрывается и на этом всё. Кто знает, в чём может быть проблема? Я думаю мог в аргументах какой пунт слуайно задеть и тем самым сделать запуск игры невозможным, но я проверил с батником, вроде как всё нормально...
Что самое интересное, это то, что с аргументами нежно обращаться очень бережно, т.к. к примеру если у аргумента " -cp " в конце удалить пробел, т.е. " -cp", то при нажатии "играть" командная строка вообще не запустится...
P.S. Ранее я писал об этой ошибке на rubukkit, т.к. тем о собственных лаунчерах там больше, чем здесь, но там мне почти все рекомендовали пользваться батником и забить на лаунчер, но для меня битник не вариант...

Добавлено через 8 минут
Кстати, я сделал копию этого же лаунчера, но не под версию 1.12.2, а под 1.7.10 с аргументами из её батника (да, у меня и такой есть) и там при нажатии "играть" лаунчер тут же зависает и VS выдаёт такую ошибку:
Code
1
2
An unhandled exception of type 'System.FormatException' occurred in mscorlib.dll
Additional information: Входная строка имела неверный формат.
И при этом выделяет жёлтым всё начиная с ProcessStartInfo и до Process.Start(mcStartInfo);.
Собственно, сам код запуска:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
        private void PlayButton_Click(object sender, EventArgs e)
        {
            string gamedir = Path.GetDirectoryName(Application.ExecutablePath);
 
            string nickname = NickBox.Text;
 
            ProcessStartInfo mcStartInfo = new ProcessStartInfo(gamedir + "\\jre_x64\\bin\\java.exe", string.Format(
                " -Xmx768M" +
                " -Dfile.encoding=UTF-8" +
                " -Dfml.ignoreInvalidMinecraftCertificates=true" +
                " -Dfml.ignorePatchDiscrepancies=true" +
                " -Djava.net.useSystemProxies=true" +
                " -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump" +
                " -Djava.library.path=" +
                gamedir + "\\versions\\Forge_1.7.10\\natives" +
                " -Dminecraft.launcher.brand=java-minecraft-launcher" +
                " -Dminecraft.launcher.version=1.6.84-j" +
                " -Dminecraft.client.jar=" +
                gamedir + "\\versions\\Forge_1.7.10\\Forge_1.7.10.jar" +
                " -cp" +
                gamedir + "\\libraries\\net\\minecraftforge\\forge\\1.7.10-10.13.4.1614-1.7.10\\forge-1.7.10-10.13.4.1614-1.7.10.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.5\\jopt-simple-4.5.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\\net\\minecraftforge\\forge\\1.7.10-10.13.4.1614-1.7.10\\forge-1.7.10-10.13.4.1614-1.7.10.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.5\\jopt-simple-4.5.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\\com\\mojang\\netty\\1.6\\netty-1.6.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\\net\\sf\\jopt-simple\\jopt-simple\\4.5\\jopt-simple-4.5.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\\15.0\\guava-15.0.jar;" +
                gamedir + "\\libraries\\org\\apache\\commons\\commons-lang3\\3.1\\commons-lang3-3.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.21\\authlib-1.5.21.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;" +
                gamedir + "\\versions\\Forge_1.7.10\\Forge_1.7.10.jar" +
                "net.minecraft.launchwrapper.Launch" +
                " --username Steve" +
                " --version Forge_1.7.10" +
                " --gameDir" +
                gamedir +
                " --assetsDir" +
                gamedir + "\\assets" +
                " --assetIndex 1.7.10" +
                " --uuid 00000000-0000-0000-0000-000000000000" +
                " --accessToken null" +
                " --userProperties {}" +
                " --userType legacy" +
                " --tweakClass cpw.mods.fml.common.launcher.FMLTweaker" +
                " --width 925" +
                " --height 530"));
            Process.Start(mcStartInfo);
            this.Close();
        }
И да, здесь у меня jre_x64, т.к. я решил немного расширить круг ПК, на которых будет работать сборка и в итоге лаунчеры будут как для х32, так и для х64...
А вообще я думаю, что эти обе ошибки между собой тесно связаны и в 1.7.10, в отличии от 1.12.2, видно где нужно копать и я думаю, что если убрать все ошибки у 1.7.10, после чего лаунчер заработает, и этим же методом убрать ошибки 1.12.2, то и мой изначальный лаунчер (1.12.2) заработает... Но это лишь догадки...
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.01.2023, 00:38
Ответы с готовыми решениями:

Лаунчер для Minecraft: как запустить игру
Всем доброго времени суток. Вообщем я решил сделать лаунчер для маинкрафта на платформе .NET, вообщем то все шло хорошо до того момента...

Лаунчер для игры MineCraft
Нашел интересный Батник запуска игры (Майнкрафт) , созданный человеком под ником KRON. Суть в наличии меню и вызове другого батника для...

Создать батник-лаунчер для игры Minecraft
и так я решил создать батник лаунчер для майнкрафта :p и мне нужно 1.Проверка обновление (хостинг есть Beget) 2. сменить ник и огромное...

9
 Аватар для Kazbek17
1483 / 938 / 454
Регистрация: 06.02.2012
Сообщений: 2,868
11.01.2023, 10:06
Цитата Сообщение от Kostyan_Sigaev Посмотреть сообщение
An unhandled exception of type 'System.FormatException' occurred in mscorlib.dll
Additional information: Входная строка имела неверный формат.
Потому что string.Format предназначен не для этого. Читаем

Чтобы ошибки не было, удалите его и просто передайте конкатенированную строку. Или используйте string.Concat, а лучше вынесите все это в файл и считывайте информацию, тогда у вам не придется каждый раз пересобирать проект, а будет уже работать динамически.
1
2272 / 1589 / 399
Регистрация: 26.06.2017
Сообщений: 4,712
Записей в блоге: 1
11.01.2023, 10:53
Согласен с предыдущим ответом, но вместо string.Concat порекомендую StringBuilder.
Цитата Сообщение от Kostyan_Sigaev Посмотреть сообщение
если у аргумента " -cp " в конце удалить пробел, т.е. " -cp", то при нажатии "играть" командная строка вообще не запустится
Хм, так у Вас именно пробел и пропущен!
0
0 / 0 / 0
Регистрация: 04.08.2022
Сообщений: 8
11.01.2023, 19:51  [ТС]
Цитата Сообщение от Kazbek17 Посмотреть сообщение
Или используйте string.Concat
Становится интереснее. Запустилась командная строка и закрылась после нескольких строк. В логе такая ошибка:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
[main/ERROR] [LaunchWrapper/]: Unable to launch
java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51]
    at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
Caused by: joptsimple.MissingRequiredOptionException: Missing required option(s) ['userProperties', 'accessToken']
    at joptsimple.OptionParser.ensureRequiredOptions(OptionParser.java:447) ~[OptionParser.class:?]
    at joptsimple.OptionParser.parse(OptionParser.java:437) ~[OptionParser.class:?]
    at net.minecraft.client.main.Main.main(SourceFile:83) ~[Main.class:?]
    ... 6 more
Пока с ошибкой не разбирался...

Добавлено через 4 минуты
Цитата Сообщение от Uswer Посмотреть сообщение
Хм, так у Вас именно пробел и пропущен!
Я в курсе...
0
 Аватар для IamRain
4691 / 2699 / 734
Регистрация: 02.08.2011
Сообщений: 7,210
11.01.2023, 19:52
Цитата Сообщение от Kostyan_Sigaev Посмотреть сообщение
Пока с ошибкой не разбирался...
Code
1
Missing required option(s) ['userProperties', 'accessToken']
0
0 / 0 / 0
Регистрация: 04.08.2022
Сообщений: 8
11.01.2023, 21:20  [ТС]
Цитата Сообщение от Kostyan_Sigaev Посмотреть сообщение
Запустилась командная строка
Забыл сказать, что на версии игры 1.7.10, т.к. на 1.12.2 изменений нет(

Добавлено через 1 час 22 минуты
Цитата Сообщение от IamRain Посмотреть сообщение
userProperties', 'accessToken
Эти строки у меня были закомментированы, раскомментировал и всё заработало, игры запустилась. К сожалению, на 1.12.2 по прежнему не работает...
0
 Аватар для Kazbek17
1483 / 938 / 454
Регистрация: 06.02.2012
Сообщений: 2,868
11.01.2023, 21:39
Цитата Сообщение от Kostyan_Sigaev Посмотреть сообщение
К сожалению, на 1.12.2 по прежнему не работает...
Вы нам предлагаете гадать, почему не работает? Покажите ошибку и участок кода! Тогда будет другой разговор.
0
0 / 0 / 0
Регистрация: 04.08.2022
Сообщений: 8
13.01.2023, 14:59  [ТС]
Цитата Сообщение от Kazbek17 Посмотреть сообщение
Покажите ошибку и участок кода
Позавчера с ноутом произошел "казус", теперь исходника лаунчера 1.12.2 нет, но остался рабочий для 1.7.10. Так что пока разбираюсь, почему текст из поля не передаётся в аргументы. К примеру ник игрока пробовал и --username NickBox.Text, и " --username" + NickBox.Text, и --username + NickBox.Text. В итоге в игре ник был либо NickBox, либо NickBox.Text, либо вообще +. Ещё пробовал такой вариант:
Code
1
2
3
4
В начале кода
string nickname = NickBox.Text;
А в аргументах
" --username" + nickname +
В итоге получал то просто nickname, то +, а то вообще Player со случайным номером...
Текст бокс с ником игрока так и называется NickBox
0
20 / 13 / 7
Регистрация: 04.02.2022
Сообщений: 69
13.01.2023, 15:54
Лучший ответ Сообщение было отмечено Kostyan_Sigaev как решение

Решение

Kostyan_Sigaev, глядя на пример --username Steve можно предположить, что между --username и nickname полагается пробел, чего в Вашем коде не предусмотрено.
1
0 / 0 / 0
Регистрация: 04.08.2022
Сообщений: 8
13.01.2023, 17:20  [ТС]
Цитата Сообщение от Dim_en Посмотреть сообщение
полагается пробел
Действительно сработало!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.01.2023, 17:20
Помогаю со студенческими работами здесь

Лаунчер Minecraft [DELPHI]
Здравствуйте, я решил сделать собственный лаунчер для Minecraft, но при компиляции выходит ошибка: Incompatible Types: 'PWideChar' and...

Minecraft. Программируй свой мир
Здравствуйте. Попалась мне книга "Minecraft. Программируй свой мир". Начал читать, делать задания. И столкнулся с одним непонятными...

Не удаётся запустить minecraft server на хостинге amazon
Пытался запустить minecraft server на 25565 порту с командой java -jar craftbukkit.jar но получил java.net.BindException: ...

Как можно запустить Minecraft с параметрами сервера, логина, и выделяемой памятью
Доброй ночи всем,люди добрые,подскажите пожалуста как можно запустить Minecraft с параметрами сервера,логина, и выделяемой памятью,если...

JS для Minecraft'a
Мне нужно сделать скрипт, который записывает второй аргумент после команды "/nicktroll" в конфиг, а затем при нажатии на клавишу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

Новые блоги и статьи
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
PowerShell Snippets
iNNOKENTIY21 11.11.2025
Модуль PowerShell 5. 1+ : Snippets. psm1 У меня модуль расположен в пользовательской папке модулей, по умолчанию: \Documents\WindowsPowerShell\Modules\Snippets\ А в самом низу файла-профиля. . .
PowerShell и онлайн сервисы. Валюта (floatrates.com руб.)
iNNOKENTIY21 11.11.2025
PowerShell функция floatrates-rub Примеры вызова: # Указанная валюта 'EUR' floatrates-rub -Code 'EUR' # Список имеющихся кодов валют floatrates-rub -Available function floatrates-rub {
PowerShell и онлайн сервисы. Погода (RP5.ru)
iNNOKENTIY21 11.11.2025
PowerShell функция Get-WeatherRP5rss для получения погоды с сервиса RP5 Примеры вызова Get-WeatherRP5rss с указанием id 5484 — Москва (восток, Измайлово) и переносом строки:. . .
PowerShell и онлайн сервисы. Погода (wttr)
iNNOKENTIY21 11.11.2025
PowerShell Функция для получения погоды с сервиса wttr Примеры вызова: Погода в городе Омск с прогнозом на день, можно изменить прогноз на более дней, для этого надо поменять запрос:. . .
PowerShell и онлайн сервисы. Валюта (ЦБР)
iNNOKENTIY21 11.11.2025
# Получение курса валют function cbr (] $Valutes = @('USD', 'EUR', 'CNY')) { $url = 'https:/ / www. cbr-xml-daily. ru/ daily_json. js' $data = Invoke-RestMethod -Uri $url $esc = 27 . . .
И решил я переделать этот ноут в машину для распределенных вычислений
Programma_Boinc 09.11.2025
И решил я переделать этот ноут в машину для распределенных вычислений Всем привет. А вот мой компьютер, переделанный из ноутбука. Был у меня ноут асус 2011 года. Со временем корпус превратился. . .
Мысли в слух
kumehtar 07.11.2025
Заметил среди людей, что по-настоящему верная дружба бывает между теми, с кем нечего делить.
Новая зверюга
volvo 07.11.2025
Подарок на Хеллоуин, и теперь у нас кроме Tuxedo Cat есть еще и щенок далматинца: Хочу еще Симбу взять, очень нравится. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru