server updates

This commit is contained in:
Joey Eamigh
2023-06-23 00:52:49 +00:00
parent 23ed3e5d97
commit 8ec387f4e3
6 changed files with 10 additions and 27 deletions

Binary file not shown.

Binary file not shown.

View File

@@ -1,18 +1,19 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
import os, sys, shutil, requests, tempfile, glob, subprocess import os, sys, shutil, requests, tempfile, glob, subprocess, argparse
from termcolor import cprint from termcolor import cprint
from typing import Any from typing import Any
parser = argparse.ArgumentParser(description="server script for FishPogPixelmon")
parser.add_argument("--plugins", "-p", help="refreshes plugins", action="store_true")
args = parser.parse_args()
OS = sys.platform OS = sys.platform
SERVER_DIR = os.getcwd() SERVER_DIR = os.getcwd()
MOD_DOWNLOADER_URL = "https://github.com/Joshyx/ModpackDownloader/releases/download/v1.3/ModpackDownloader-1.3.jar" 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"
)
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" 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_URL = "https://github.com/IzzelAliz/Arclight/releases/download/1.16%2F1.0.24/arclight-forge-1.16.5-1.0.24.jar"
@@ -29,6 +30,7 @@ def __main__():
needs_mods_plugins = instance() needs_mods_plugins = instance()
if needs_mods_plugins: if needs_mods_plugins:
mods() mods()
if args.plugins:
plugins() plugins()
arclight() arclight()
launch() launch()
@@ -70,26 +72,6 @@ def arclight():
f.close() f.close()
# forge
def forge():
os.makedirs(f"{INSTANCE_DIR}/.minecraft", exist_ok=True)
os.chdir(f"{INSTANCE_DIR}/.minecraft")
if os.path.exists(os.path.join(f"{INSTANCE_DIR}/.minecraft", "forge-installer.jar")):
return
cprint("forge-installer.jar not found - downloading", "yellow")
r = requests.get(FORGE_URL, allow_redirects=True)
open("forge-installer.jar", "wb").write(r.content)
cprint("installing forge", "green")
subprocess.run(["java", "-jar", "forge-installer.jar", "--installServer"])
f = open("eula.txt", "w")
f.write("eula=true")
f.close()
# mods # mods
def mods(): def mods():
os.chdir(INSTANCE_DIR) os.chdir(INSTANCE_DIR)
@@ -127,7 +109,8 @@ def plugins():
os.makedirs(os.path.join(INSTANCE_DIR, ".minecraft", "plugins"), exist_ok=True) os.makedirs(os.path.join(INSTANCE_DIR, ".minecraft", "plugins"), exist_ok=True)
for file in glob.glob(os.path.join(INSTANCE_DIR, ".minecraft", "plugins", "*")): for file in glob.glob(os.path.join(INSTANCE_DIR, ".minecraft", "plugins", "*")):
os.remove(file) if file.endswith(".jar"):
os.remove(file)
for file in glob.glob(os.path.join(SERVER_DIR, "plugins", "*")): 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))) shutil.copy(file, os.path.join(INSTANCE_DIR, ".minecraft", "plugins", os.path.basename(file)))

View File

@@ -19,4 +19,4 @@ source .venv/bin/activate &>/dev/null
python -m pip install --upgrade pip &>/dev/null python -m pip install --upgrade pip &>/dev/null
python -m pip install -r ../client/requirements.txt &>/dev/null python -m pip install -r ../client/requirements.txt &>/dev/null
python ./server.py python ./server.py $1