Fix dedicated server loading by constructing mods before data packs are created.
This commit is contained in:
parent
30227a1e28
commit
99917e569c
|
@ -17,7 +17,7 @@
|
|||
Path path1 = Paths.get("eula.txt");
|
||||
ServerEula servereula = new ServerEula(path1);
|
||||
if (optionset.has(optionspec1)) {
|
||||
@@ -105,6 +106,10 @@
|
||||
@@ -105,6 +106,11 @@
|
||||
GameProfileRepository gameprofilerepository = yggdrasilauthenticationservice.createProfileRepository();
|
||||
PlayerProfileCache playerprofilecache = new PlayerProfileCache(gameprofilerepository, new File(file1, MinecraftServer.field_152367_a.getName()));
|
||||
String s = Optional.ofNullable(optionset.valueOf(optionspec10)).orElse(serverpropertiesprovider.func_219034_a().field_219021_o);
|
||||
|
@ -25,10 +25,11 @@
|
|||
+ field_240759_a_.error("Invalid world directory specified, must not be null, empty or the same directory as your universe! " + s);
|
||||
+ return;
|
||||
+ }
|
||||
+ net.minecraftforge.fml.server.ServerModLoader.gatherAndInit(); // Gather and construct mods before resource loading and before world conversions.
|
||||
SaveFormat saveformat = SaveFormat.func_237269_a_(file1.toPath());
|
||||
SaveFormat.LevelSave saveformat$levelsave = saveformat.func_237274_c_(s);
|
||||
MinecraftServer.func_240777_a_(saveformat$levelsave);
|
||||
@@ -170,6 +175,7 @@
|
||||
@@ -170,6 +176,7 @@
|
||||
Thread thread = new Thread("Server Shutdown Thread") {
|
||||
public void run() {
|
||||
dedicatedserver.func_71263_m(true);
|
||||
|
|
|
@ -36,13 +36,21 @@ public class ServerModLoader
|
|||
private static DedicatedServer server;
|
||||
private static boolean hasErrors = false;
|
||||
|
||||
public static void gatherAndInit() {
|
||||
try {
|
||||
ModLoader.get().gatherAndInitializeMods(() -> {});
|
||||
} catch (LoadingFailedException e) {
|
||||
ServerModLoader.hasErrors = true;
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
public static void begin(DedicatedServer dedicatedServer) {
|
||||
ServerModLoader.server = dedicatedServer;
|
||||
SidedProvider.setServer(()->dedicatedServer);
|
||||
LogicalSidedProvider.setServer(()->dedicatedServer);
|
||||
LanguageHook.loadForgeAndMCLangs();
|
||||
try {
|
||||
ModLoader.get().gatherAndInitializeMods(() -> {});
|
||||
ModLoader.get().loadMods(Runnable::run, (a)->{}, (a)->{});
|
||||
} catch (LoadingFailedException e) {
|
||||
ServerModLoader.hasErrors = true;
|
||||
|
|
Loading…
Reference in New Issue