offline-minecraft-launcher/oml/stages/launcher-variables.py

69 lines
2.9 KiB
Python
Raw Normal View History

print(colored(colorama.Fore.GREEN,"\nSetting up launcher variables..."))
launcherVariables["auth_player_name"] = lv["name"]
launcherVariables["version_name"] = findInChainDeepest(versionsPath,lv["version"],["id"])
launcherVariables["game_directory"] = lv["gamePath"]
launcherVariables["assets_root"] = assetsPath
launcherVariables["auth_access_token"] = "-"
launcherVariables["auth_uuid"] = hashlib.md5(lv["name"].encode('utf-8')).hexdigest()
launcherVariables["user_type"] = "offline"
launcherVariables["version_type"] = clientJson["type"]
launcherVariables["natives_directory"] = nativesOutPath
launcherVariables["launcher_name"] = "offline-minecraft-launcher"
launcherVariables["launcher_version"] = "0.0"
launcherVariables["classpath"] = libraryList
launcherVariables["game_assets"] = assetsPath
launcherVariables["auth_session"] = "-"
launcherVariables["user_properties"] = "{}"
if lv["profileFolder"] == "1":
profilePath = p(lv["gamePath"],"profiles")
launcherVariables["game_directory"] = p(profilePath,lv["name"],lv["version"],".minecraft")
if not os.path.isdir(launcherVariables["game_directory"]): os.makedirs(launcherVariables["game_directory"])
os.chdir(launcherVariables["game_directory"])
if launcherVariables["game_directory"].replace(pUp(launcherVariables["game_directory"]) + os.sep,"",1) == ".minecraft":
print(colored(colorama.Fore.MAGENTA,"> game_directory is called .minecraft, setting APPDATA/HOME environment variables to parent directory."))
os.environ["APPDATA"] = pUp(launcherVariables["game_directory"])
os.environ["HOME"] = os.environ["APPDATA"]
# JVM arguments:
args = []
if not findArgument(jvmArguments,"-Djava-library.path="):
args.append("-Djava.library.path=" +nativesOutPath)
if not findArgument(jvmArguments,"-Dminecraft.launcher.brand="):
args.append("-Dminecraft.launcher.brand=" +launcherVariables["launcher_name"])
if not findArgument(jvmArguments,"-Dminecraft.launcher.version="):
args.append("-Dminecraft.launcher.version=" +launcherVariables["launcher_version"])
if lv["osName"] == "windows":
if not findArgument(jvmArguments,"-XX:HeapDumpPath="):
args.append("-XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump")
args.append("-Dminecraft.client.jar=" +clientJar)
if not findArgument(jvmArguments,"-cp"):
args.append("-cp")
args.append(libraryList)
for arg in jvmArguments:
for var in launcherVariables:
arg = arg.replace("${" +var+ "}",launcherVariables[var])
args.append(arg)
args = args + json.loads(lv["jvmArguments"])
args.append(clientJson["mainClass"])
for arg in arguments:
for var in launcherVariables:
arg = arg.replace("${" +var+ "}",launcherVariables[var])
args.append(arg)
if not findArgument(args,"--gameDir"):
args.append("--gameDir")
args.append(launcherVariables["game_directory"])
if not findArgument(args,"--assetsDir"):
args.append("--assetsDir")
args.append(launcherVariables["assets_root"])