#minecraft-launcher #minecraft #minecraft-downloader

bin+lib minecraft_launcher_core

用 Rust 编写的 Minecraft 启动器库

3 个版本

0.1.2 2023 年 2 月 2 日
0.1.1 2022 年 12 月 15 日
0.1.0 2022 年 11 月 22 日

#1727算法

BSD-2-Clause

30KB
378

mc_launcher_core_rs

用 Rust 编写的 Minecraft 启动器库

支持的平台

由于这个库使用了 https://github.com/shasankp000/mcdl_core_rs/ 作为底层依赖,目前只支持 Windows,因此这个库(这个库中的所有函数)目前也只支持 Windows。

但是很快就会扩展到 Linux 和 MacOS。

注意

要启动 mc,您需要在 www.ely.by 上有一个账户,因为启动器库目前只支持来自 www.ely.by 的用户身份验证。

功能

download_runtime

下载 Minecraft 的最新 JDK 运行时(目前是 JDK 17)。目前只支持 Windows。我很快就会将其扩展到 Linux。

minecraft_launcher_core::main::runtime_downloader::download_runtime;

download_runtime()

is_java_installed

检查系统上是否已安装 Java

目前只检查 Windows

```minecraft_launcher_core::main::launcher_cli::is_java_installed`;``

letis_java_installed= is_java_installed();

println!("{}", is_java_installed) (true/false)

get_total_sys_mem

以字符串形式获取总系统内存。

minecraft_launcher_core::main::launcher_cli::get_total_sys_mem;

lettotal_mem= get_total_sys_mem();

println!("{}",total_mem)

对于 2GB,它是 "2",4GB,它是 "4",8GB,它是 "8",依此类推...

init()

基本初始化工作。所有与 mc 启动器相关的功能都应该首先调用 init()。

或者可以在首次运行时只调用 init() 函数。

use minecraft_launcher_core::main::launcher_cli::init; init("{}", refresh_data:true)

如果 refresh_data 设置为 true,则每次都会用默认值覆盖 settings.json 文件

ely_by_authenticator

www.ely.by 进行用户身份验证并将数据保存到 settings.json

使用 minecraft_launcher_core::main::launcher_cli::ely_by_authenticator;

ely_by_authenticator("ely.by 的用户名", "ely.by 的密码", "minecraft_installation_directory")

下载_ely_authlib

下载ely_by authlib

使用 minecraft_launcher_core::main::launcher_cli::下载_ely_authlib;

下载_ely_authlib("minecraft安装目录")

启动_mc_vanilla

根据指定的游戏版本、类型(发行版或快照)和使用的身份验证类型启动minecraft。

此功能仅针对minecraft的"发行版"版本进行了测试。在下一个版本中,将添加对快照的支持,包括底层依赖和此库。

目前支持www.ely.by身份验证

目前仅支持Windows。我很快会将此扩展到Linux和MacOS。

使用 minecraft_launcher_core::launcher_cli::启动_mc_vanilla;

启动_mc_vanilla(auth_type:"ely_by",game_version:"1.19.2",r#type: "release/snapshot",username: "你在ely.by上的用户名",password: "你在ely.by上的密码",alloc_mem: "2")

alloc_mem是你想分配给minecraft的内存量(仅以GB为单位,取整数)

依赖项

~7–21MB
~306K SLoC