我不知道这是不是问这个问题的正确网站(我也在论坛上问过),但我从头开始创建了一个 Minecraft 启动器(不是使用 Java)。一切正常,我可以启动 Minecraft,但它每次都以离线模式启动。我使用批处理代码启动 .minecraft-Folder 中的 minecraft.jar。我知道有一种方法可以使用 Minecraft-Launcher 使用参数启动 Minecraft,但那样我就无法更改 Minecraft-Directory(从 .minecraft
到 .minecraft2
).有什么方法可以连接到 Minecraft.net 并使用批处理或 Visual Basic 登录和启动 Minecraft?非常感谢!
您可以通过在运行启动器之前设置 APPDATA 环境变量来更改 Minecraft 查找其数据文件夹的位置。您可以使用这样的批处理脚本来执行此操作:
set APPDATA="C:\Users\You\Desktop\Some\Folder"
javaw -jar "C:\Path\To\Minecraft.exe"
请记住,Minecraft.exe secret 地只是一个包装的 jar 文件,它作为 EXE 在生活中的目的是用 java 运行它自己。
您可以将参数传递给它以通过将第二行更改为如下内容来选择用户名和密码:
javaw -jar "C:\Path\To\Minecraft.exe" DigitalClark hunter2
或者,如果您真的喜欢,您可以通过querying the login API directly 获得您自己的 session key 。 ,从中解析你的 session ID 和确切的用户名,并直接启动 minecraft(绕过启动器):
javaw -Djava.library.path=[path to natives folder] -cp minecraft.jar;lwjgl.jar;lwjgl-util.jar;jinput.jar net.minecraft.client.Minecraft [username] [sessionID]
您可以为 minecraft jar 指定绝对路径,如果不这样做,它们必须相对于工作目录。要为 natives 目录指定相对路径,请使用类似 .\This\Folder\Relative\To\Working\Dir
坦率地说,我不明白你为什么要打扰。只需使用魔法发射器或其他东西即可。