java - Minecraft 启动器登录代码

标签 java visual-studio authentication batch-file minecraft

<分区>

我不知道这是不是问这个问题的正确网站(我也在论坛上问过),但我从头开始创建了一个 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

坦率地说,我不明白你为什么要打扰。只需使用魔法发射器或其他东西即可。

关于java - Minecraft 启动器登录代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12902856/

相关文章:

java - JSONObject 不显示在 ListView 上

c# - 为什么 FireError 在 C# 2012 中失败,但在 VB 中有效,而 FireInformation 在两者中都有效?

java - 如何从 jsp :include or tiles? 调用 struts Action

c# - Kinect 检测指针悬停在 tilebutton 上

visual-studio - Blazor:无法启动调试适配器

node.js - 将社交登录(使用 Google 登录)添加到现有电子邮件/密码应用程序和数据库的最佳方法是什么?

php - 免费的 PHP 登录库

api - 如何向 GoodData API 进行身份验证?

java - string 和 string[] 之间的冲突

c# - 如何在 C# 和 Java 中生成相同的 MD5 哈希码?