smattering of server changes

This commit is contained in:
Joey Eamigh
2023-06-22 22:56:07 +00:00
parent f13458073e
commit 519e2c8f6d
15 changed files with 58 additions and 15 deletions

View File

@@ -6,6 +6,8 @@ from typing import Any
OS = sys.platform
SERVER_DIR = os.getcwd()
MOD_DOWNLOADER_URL = "https://github.com/Joshyx/ModpackDownloader/releases/download/v1.3/ModpackDownloader-1.3.jar"
FORGE_URL = (
"https://maven.minecraftforge.net/net/minecraftforge/forge/1.16.5-36.2.34/forge-1.16.5-36.2.34-installer.jar"
@@ -14,20 +16,19 @@ FORGE_JAR = "forge-1.16.5-36.2.34.jar"
MODPACK_RELEASES_URL = "https://git.233hfd.com/api/v1/repos/joey/FishPogPixelmon/releases?limit=1"
ARCLIGHT_URL = "https://github.com/IzzelAliz/Arclight/releases/download/1.16%2F1.0.24/arclight-forge-1.16.5-1.0.24.jar"
ARCLIGHT_JAR = "arclight-forge-1.16.5-1.0.24.jar"
INSTANCE_DIR = os.path.join(str(os.getenv("HOME")), "pixelmon")
DELETION_EXEMPTED_MODS = ["TrainerCommands-1.16.5-2.6.0.jar", "spongeforge-1.16.5-36.2.5-8.1.0-RC1352-universal.jar"]
DELETION_EXEMPTED_MODS = ["TrainerCommands-1.16.5-2.6.0.jar"]
# main
def __main__():
header()
needs_mods = instance()
if needs_mods:
needs_mods_plugins = instance()
if needs_mods_plugins:
mods()
forge()
plugins()
arclight()
launch()
@@ -38,7 +39,16 @@ def launch():
exit(0)
os.chdir(f"{INSTANCE_DIR}/.minecraft")
subprocess.run(["java", "-Xmx30720M", "-Xms1024M", "-jar", ARCLIGHT_JAR, "--nogui"])
subprocess.run(
[
"java",
"-Xmx30720M",
"-Xms1024M",
"-jar",
FORGE_JAR,
"--nogui",
]
)
# arclight
@@ -52,6 +62,13 @@ def arclight():
cprint("arclight.jar not found - downloading", "yellow")
r = requests.get(FORGE_URL, allow_redirects=True)
open("arclight.jar", "wb").write(r.content)
cprint("installing forge via arclight", "green")
subprocess.run(["java", "-jar", "arclight.jar", "--installServer"])
f = open("eula.txt", "w")
f.write("eula=true")
f.close()
# forge
@@ -104,6 +121,21 @@ def mods():
cprint("mods downloaded successfully", "green")
# plugins
def plugins():
os.chdir(INSTANCE_DIR)
os.makedirs(os.path.join(INSTANCE_DIR, ".minecraft", "plugins"), exist_ok=True)
for file in glob.glob(os.path.join(INSTANCE_DIR, ".minecraft", "plugins", "*")):
os.remove(file)
for file in glob.glob(os.path.join(SERVER_DIR, "plugins", "*")):
shutil.copy(file, os.path.join(INSTANCE_DIR, ".minecraft", "plugins", os.path.basename(file)))
cprint("plugins copied successfully", "green")
# multimc
def instance():
unclean = False