Added registry data bootstrap

This commit is contained in:
Kyler Olsen 2024-04-17 09:21:07 -06:00
parent 9f8366711f
commit 076d4b9dd0
1 changed files with 23 additions and 0 deletions

View File

@ -5,6 +5,7 @@ os.environ["SSL_CERT_FILE"] = certifi.where()
# Modified from https://raw.githubusercontent.com/barneygale/quarry/master/examples/server_chat_room_advanced.py
from typing import List
import subprocess
from twisted.internet import reactor
from quarry.net.server import ServerFactory, ServerProtocol
@ -14,9 +15,31 @@ from quarry.types.registry import LookupRegistry
import quarry.types.nbt as NBT
from quarry.data.data_packs import data_packs, dimension_types
def is_java_17_installed():
try:
result = subprocess.run(['java', '-version'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True)
return result.returncode == 0# and "java version \"17" in result.stdout
except FileNotFoundError:
return False
def bootstrap_server_data():
import requests
if not is_java_17_installed():
# winget install Microsoft.OpenJDK.17
print("Java not found, please install Java 17 (or newer).")
return
url = "https://piston-data.mojang.com/v1/objects/c8f83c5655308435b3dcf03c06d9fe8740a77469/server.jar"
command = ["java", "-DbundlerMainClass=net.minecraft.data.Main", "-jar", "minecraft_server.jar", "--reports"]
r = requests.get(url)
os.makedirs("generate_data")
with open(r'generate_data\minecraft_server.jar', 'wb') as file:
file.write(r.content)
process = subprocess.Popen(command, shell=True, cwd="generate_data")
process.wait()
FOREST_BIOME_DATA_PACK_ID = 7
# java -DbundlerMainClass=net.minecraft.data.Main -jar minecraft_server.jar --reports
if not os.path.exists("generate_data"): bootstrap_server_data()
REGISTRY = LookupRegistry.from_json(r'generate_data\generated\reports')
CHUNKS_TALL = 28