ModuleLauncher.Re makes developing a Minecraft launcher efficient and easy
Introducing
- Written in .NetFramework 4.8 and C#
- Main developer is AHpx
- All Minecraft versions and loaders are supported
Installation
- Clone ModuleLauncher.Re source code locally and compile it
Functions
Function | Description |
---|---|
YggdrasilAuthenticator | Authenticate Mojang account related |
OfflineAuthenticator | Offline authenticate module |
MojangApi | Get account history names and Minecraft statistics |
LibrariesCompleter | Getting the Libraries and Natives Libraries |
AssetsCompleter | Getting the Assets |
MinecraftDownloader | Get information about the Minecraft |
MinecraftLocator | Operate local Minecraft obejct |
LauncherArguments | Get launch-related parameters for Minecraft |
LauncherCore | Launch Minecraft |
HttpUtils | Network-related methods |
StringUtils | String Related Methods |
Useage
Get all local minecraft versions
new MinecraftLocator("${.minecraft}").GetLocalMinecraftPath();
Launch Minecraft
var core = new LauncherCore
{
JavaPath = "${JavaPath}",
LauncherArgument = new LauncherArgument
{
MinecraftLocator = new MinecraftLocator("${.minecraft}"),
AuthenticateResult = ${OfflineAuthenticate result}/${YggdrasilAuthenticate result},
MaxMemorySize = "${Max memory size G or M",
MinMemorySize = "${Max memory size G or M",
LauncherName = "${Your launcher's name}",
JvmArgument = "${Java virtual machine arguments}",
//Available
AutoConnect = new AutoConnectConfig
{
IpAddress = "${Auto connect server's ip}",
Port = "${Server post default 25565}"
},
WindowResolution = new WindowResolution
{
WindowWidth = "${Window width}",
WindowHeight = "${Window height}",
FullScreen = false//default
}
}
}
var result = core.Launch("${Launch version}");//return Process
Get all Libraries
new LibrariesCompleter(new MinecraftLocator("${.minecraft}")).GetLibraries("${version name}");
Get all Assets
new AssetsCompleter(new MinecraftLocator("${.minecraft}")).GetAssets("${version name}");
Authenticators
- Yggdrasil
new YggdrasilAuthenticator("${email}","${password}","${client token (available)").Authenticate();
- Offline
new OfflineAuthenticator("${name}").Authenticate();
Future
- Optifine, Forge, Fabric downloader and auto installer
- Multi download source
- Optimized project structure
OpenSource License
-
Newtonsoft.Json
MIT License
Copyright (c) 2007 James Newton-King
Json.NET is a popular high-performance JSON framework for .NET
-
RestSharp
Apache License 2.0
Simple REST and HTTP API Client for .NET
Thanks To
-
Bmclapi
BMCLAPI是@bangbang93开发的BMCL的一部分,用于解决国内线路对Forge和Minecraft官方使用的Amazon S3 速度缓慢的问题。BMCLAPI是对外开放的,所有需要Minecraft资源的启动器均可调用。
-
Module-Launcher启动模块
一个由回忆、Ploer_Shile制作的支持全版本、全拓展启动,支持多渠道服务器验证的易语言启动模块