--- a/net/minecraft/server/Main.java +++ b/net/minecraft/server/Main.java @@ -63,40 +_,24 @@ public class Main { private static final Logger LOGGER = LogUtils.getLogger(); - @SuppressForbidden( - reason = "System.out needed before bootstrap" - ) + @SuppressWarnings("ConfusingMainMethod") // Plazma - replaced with org.bukkit.craftbukkit.Main#main + @SuppressForbidden(reason = "System.out needed before bootstrap") @DontObfuscate public static void main(final OptionSet optionSet) { // CraftBukkit - replaces main(String[] args) io.papermc.paper.util.LogManagerShutdownThread.hook(); // Paper - Improved watchdog support SharedConstants.tryDetectVersion(); - /* CraftBukkit start - Replace everything - OptionParser optionParser = new OptionParser(); - OptionSpec optionSpec = optionParser.accepts("nogui"); - OptionSpec optionSpec1 = optionParser.accepts("initSettings", "Initializes 'server.properties' and 'eula.txt', then quits"); - OptionSpec optionSpec2 = optionParser.accepts("demo"); - OptionSpec optionSpec3 = optionParser.accepts("bonusChest"); - OptionSpec optionSpec4 = optionParser.accepts("forceUpgrade"); - OptionSpec optionSpec5 = optionParser.accepts("eraseCache"); - OptionSpec optionSpec6 = optionParser.accepts("recreateRegionFiles"); - OptionSpec optionSpec7 = optionParser.accepts("safeMode", "Loads level with vanilla datapack only"); - OptionSpec optionSpec8 = optionParser.accepts("help").forHelp(); - OptionSpec optionSpec9 = optionParser.accepts("universe").withRequiredArg().defaultsTo("."); - OptionSpec optionSpec10 = optionParser.accepts("world").withRequiredArg(); - OptionSpec optionSpec11 = optionParser.accepts("port").withRequiredArg().ofType(Integer.class).defaultsTo(-1); - OptionSpec optionSpec12 = optionParser.accepts("serverId").withRequiredArg(); - OptionSpec optionSpec13 = optionParser.accepts("jfrProfile"); - OptionSpec optionSpec14 = optionParser.accepts("pidFile").withRequiredArg().withValuesConvertedBy(new PathConverter()); - OptionSpec optionSpec15 = optionParser.nonOptions(); try { - OptionSet optionSet = optionParser.parse(args); - if (optionSet.has(optionSpec8)) { - optionParser.printHelpOn(System.err); - return; - } - */ // CraftBukkit end - try { + // Plazma start - Branding + System.out.println(""" + \\033[38;2;215;23;133m█\\033[38;2;212;24;134m█\\033[38;2;209;26;134m█\\033[38;2;205;27;135m█\\033[38;2;202;28;136m█\\033[38;2;199;30;136m█\\033[38;2;196;31;137m╗\\033[38;2;193;33;138m \\033[38;2;190;34;138m█\\033[38;2;186;35;139m█\\033[38;2;183;37;140m╗\\033[38;2;180;38;140m \\033[38;2;177;39;141m \\033[38;2;174;41;142m \\033[38;2;170;42;142m \\033[38;2;167;43;143m \\033[38;2;164;45;144m \\033[38;2;161;46;144m█\\033[38;2;158;47;145m█\\033[38;2;155;49;146m█\\033[38;2;151;50;146m█\\033[38;2;148;52;147m█\\033[38;2;145;53;148m╗\\033[38;2;142;54;148m \\033[38;2;139;56;149m█\\033[38;2;135;57;149m█\\033[38;2;132;58;150m█\\033[38;2;129;60;151m█\\033[38;2;126;61;151m█\\033[38;2;123;62;152m█\\033[38;2;120;64;153m█\\033[38;2;116;65;153m╗ \\033[38;2;113;67;154m█\\033[38;2;110;68;155m█\\033[38;2;107;69;155m█\\033[38;2;104;71;156m╗\\033[38;2;101;72;157m \\033[38;2;97;73;157m \\033[38;2;94;75;158m \\033[38;2;91;76;159m█\\033[38;2;88;77;159m█\\033[38;2;85;79;160m█\\033[38;2;81;80;161m╗ \\033[38;2;78;81;161m \\033[38;2;75;83;162m█\\033[38;2;72;84;163m█\\033[38;2;69;86;163m█\\033[38;2;66;87;164m█\\033[38;2;62;88;165m█\\033[38;2;59;90;165m╗\\033[38;2;56;91;166m\\s + \\033[38;2;215;23;133m█\\033[38;2;212;24;134m█\\033[38;2;209;26;134m╔\\033[38;2;205;27;135m═\\033[38;2;202;28;136m═\\033[38;2;199;30;136m█\\033[38;2;196;31;137m█\\033[38;2;193;33;138m╗ \\033[38;2;190;34;138m█\\033[38;2;186;35;139m█\\033[38;2;183;37;140m║\\033[38;2;180;38;140m \\033[38;2;177;39;141m \\033[38;2;174;41;142m \\033[38;2;170;42;142m \\033[38;2;167;43;143m \\033[38;2;164;45;144m█\\033[38;2;161;46;144m█\\033[38;2;158;47;145m╔\\033[38;2;155;49;146m═\\033[38;2;151;50;146m═\\033[38;2;148;52;147m█\\033[38;2;145;53;148m█\\033[38;2;142;54;148m╗ \\033[38;2;139;56;149m╚\\033[38;2;135;57;149m═\\033[38;2;132;58;150m═\\033[38;2;129;60;151m█\\033[38;2;126;61;151m█\\033[38;2;123;62;152m█\\033[38;2;120;64;153m╔\\033[38;2;116;65;153m╝ \\033[38;2;113;67;154m█\\033[38;2;110;68;155m█\\033[38;2;107;69;155m█\\033[38;2;104;71;156m█\\033[38;2;101;72;157m╗\\033[38;2;97;73;157m \\033[38;2;94;75;158m█\\033[38;2;91;76;159m█\\033[38;2;88;77;159m█\\033[38;2;85;79;160m█\\033[38;2;81;80;161m║ \\033[38;2;78;81;161m█\\033[38;2;75;83;162m█\\033[38;2;72;84;163m╔\\033[38;2;69;86;163m═\\033[38;2;66;87;164m═\\033[38;2;62;88;165m█\\033[38;2;59;90;165m█\\033[38;2;56;91;166m╗ + \\033[38;2;215;23;133m█\\033[38;2;212;24;134m█\\033[38;2;209;26;134m█\\033[38;2;205;27;135m█\\033[38;2;202;28;136m█\\033[38;2;199;30;136m█\\033[38;2;196;31;137m╔\\033[38;2;193;33;138m╝ \\033[38;2;190;34;138m█\\033[38;2;186;35;139m█\\033[38;2;183;37;140m║\\033[38;2;180;38;140m \\033[38;2;177;39;141m \\033[38;2;174;41;142m \\033[38;2;170;42;142m \\033[38;2;167;43;143m \\033[38;2;164;45;144m█\\033[38;2;161;46;144m█\\033[38;2;158;47;145m█\\033[38;2;155;49;146m█\\033[38;2;151;50;146m█\\033[38;2;148;52;147m█\\033[38;2;145;53;148m█\\033[38;2;142;54;148m║ \\033[38;2;139;56;149m \\033[38;2;135;57;149m \\033[38;2;132;58;150m█\\033[38;2;129;60;151m█\\033[38;2;126;61;151m█\\033[38;2;123;62;152m╔\\033[38;2;120;64;153m╝\\033[38;2;116;65;153m \\033[38;2;113;67;154m█\\033[38;2;110;68;155m█\\033[38;2;107;69;155m╔\\033[38;2;104;71;156m█\\033[38;2;101;72;157m█\\033[38;2;97;73;157m█\\033[38;2;94;75;158m█\\033[38;2;91;76;159m╔\\033[38;2;88;77;159m█\\033[38;2;85;79;160m█\\033[38;2;81;80;161m║ \\033[38;2;78;81;161m█\\033[38;2;75;83;162m█\\033[38;2;72;84;163m█\\033[38;2;69;86;163m█\\033[38;2;66;87;164m█\\033[38;2;62;88;165m█\\033[38;2;59;90;165m█\\033[38;2;56;91;166m║ + \\033[38;2;215;23;133m█\\033[38;2;212;24;134m█\\033[38;2;209;26;134m╔\\033[38;2;205;27;135m═\\033[38;2;202;28;136m═\\033[38;2;199;30;136m═\\033[38;2;196;31;137m╝\\033[38;2;193;33;138m \\033[38;2;190;34;138m█\\033[38;2;186;35;139m█\\033[38;2;183;37;140m║\\033[38;2;180;38;140m \\033[38;2;177;39;141m \\033[38;2;174;41;142m \\033[38;2;170;42;142m \\033[38;2;167;43;143m \\033[38;2;164;45;144m█\\033[38;2;161;46;144m█\\033[38;2;158;47;145m╔\\033[38;2;155;49;146m═\\033[38;2;151;50;146m═\\033[38;2;148;52;147m█\\033[38;2;145;53;148m█\\033[38;2;142;54;148m║ \\033[38;2;139;56;149m \\033[38;2;135;57;149m█\\033[38;2;132;58;150m█\\033[38;2;129;60;151m█\\033[38;2;126;61;151m╔\\033[38;2;123;62;152m╝\\033[38;2;120;64;153m \\033[38;2;116;65;153m \\033[38;2;113;67;154m█\\033[38;2;110;68;155m█\\033[38;2;107;69;155m║\\033[38;2;104;71;156m╚\\033[38;2;101;72;157m█\\033[38;2;97;73;157m█\\033[38;2;94;75;158m╔\\033[38;2;91;76;159m╝\\033[38;2;88;77;159m█\\033[38;2;85;79;160m█\\033[38;2;81;80;161m║ \\033[38;2;78;81;161m█\\033[38;2;75;83;162m█\\033[38;2;72;84;163m╔\\033[38;2;69;86;163m═\\033[38;2;66;87;164m═\\033[38;2;62;88;165m█\\033[38;2;59;90;165m█\\033[38;2;56;91;166m║ + \\033[38;2;215;23;133m█\\033[38;2;212;24;134m█\\033[38;2;209;26;134m║\\033[38;2;205;27;135m \\033[38;2;202;28;136m \\033[38;2;199;30;136m \\033[38;2;196;31;137m \\033[38;2;193;33;138m \\033[38;2;190;34;138m█\\033[38;2;186;35;139m█\\033[38;2;183;37;140m█\\033[38;2;180;38;140m█\\033[38;2;177;39;141m█\\033[38;2;174;41;142m█\\033[38;2;170;42;142m█\\033[38;2;167;43;143m╗ \\033[38;2;164;45;144m█\\033[38;2;161;46;144m█\\033[38;2;158;47;145m║\\033[38;2;155;49;146m \\033[38;2;151;50;146m \\033[38;2;148;52;147m█\\033[38;2;145;53;148m█\\033[38;2;142;54;148m║ \\033[38;2;139;56;149m█\\033[38;2;135;57;149m█\\033[38;2;132;58;150m█\\033[38;2;129;60;151m█\\033[38;2;126;61;151m█\\033[38;2;123;62;152m█\\033[38;2;120;64;153m█\\033[38;2;116;65;153m╗ \\033[38;2;113;67;154m█\\033[38;2;110;68;155m█\\033[38;2;107;69;155m║\\033[38;2;104;71;156m \\033[38;2;101;72;157m╚\\033[38;2;97;73;157m═\\033[38;2;94;75;158m╝\\033[38;2;91;76;159m \\033[38;2;88;77;159m█\\033[38;2;85;79;160m█\\033[38;2;81;80;161m║ \\033[38;2;78;81;161m█\\033[38;2;75;83;162m█\\033[38;2;72;84;163m║\\033[38;2;69;86;163m \\033[38;2;66;87;164m \\033[38;2;62;88;165m█\\033[38;2;59;90;165m█\\033[38;2;56;91;166m║ + \\033[38;2;215;23;133m╚\\033[38;2;212;24;134m═\\033[38;2;209;26;134m╝\\033[38;2;205;27;135m \\033[38;2;202;28;136m \\033[38;2;199;30;136m \\033[38;2;196;31;137m \\033[38;2;193;33;138m \\033[38;2;190;34;138m╚\\033[38;2;186;35;139m═\\033[38;2;183;37;140m═\\033[38;2;180;38;140m═\\033[38;2;177;39;141m═\\033[38;2;174;41;142m═\\033[38;2;170;42;142m═\\033[38;2;167;43;143m╝ \\033[38;2;164;45;144m╚\\033[38;2;161;46;144m═\\033[38;2;158;47;145m╝\\033[38;2;155;49;146m \\033[38;2;151;50;146m \\033[38;2;148;52;147m╚\\033[38;2;145;53;148m═\\033[38;2;142;54;148m╝ \\033[38;2;139;56;149m╚\\033[38;2;135;57;149m═\\033[38;2;132;58;150m═\\033[38;2;129;60;151m═\\033[38;2;126;61;151m═\\033[38;2;123;62;152m═\\033[38;2;120;64;153m═\\033[38;2;116;65;153m╝ \\033[38;2;113;67;154m╚\\033[38;2;110;68;155m═\\033[38;2;107;69;155m╝\\033[38;2;104;71;156m \\033[38;2;101;72;157m \\033[38;2;97;73;157m \\033[38;2;94;75;158m \\033[38;2;91;76;159m \\033[38;2;88;77;159m╚\\033[38;2;85;79;160m═\\033[38;2;81;80;161m╝ \\033[38;2;78;81;161m╚\\033[38;2;75;83;162m═\\033[38;2;72;84;163m╝\\033[38;2;69;86;163m \\033[38;2;66;87;164m \\033[38;2;62;88;165m╚\\033[38;2;59;90;165m═\\033[38;2;56;91;166m╝\\033[0m + """); + // Plazma end - Branding Path path = (Path) optionSet.valueOf("pidFile"); // CraftBukkit if (path != null) { @@ -243,12 +_,12 @@ } File mcMeta = new File(bukkitDataPackFolder, "pack.mcmeta"); try { - com.google.common.io.Files.write("{\n" - + " \"pack\": {\n" - + " \"description\": \"Data pack for resources provided by Bukkit plugins\",\n" - + " \"pack_format\": " + SharedConstants.getCurrentVersion().getPackVersion(net.minecraft.server.packs.PackType.SERVER_DATA) + "\n" - + " }\n" - + "}\n", mcMeta, com.google.common.base.Charsets.UTF_8); + com.google.common.io.Files.asCharSink(mcMeta, com.google.common.base.Charsets.UTF_8).write("{\n" + + " \"pack\": {\n" + + " \"description\": \"Data pack for resources provided by Bukkit plugins\",\n" + + " \"pack_format\": " + SharedConstants.getCurrentVersion().getPackVersion(net.minecraft.server.packs.PackType.SERVER_DATA) + "\n" + + " }\n" + + "}\n"); } catch (java.io.IOException ex) { throw new RuntimeException("Could not initialize Bukkit datapack", ex); } @@ -309,24 +_,11 @@ ) ) .get(); - } catch (Exception var39) { - LOGGER.warn( - "Failed to load datapacks, can't proceed with server load. You can either fix your datapacks or reset to vanilla with --safeMode", - (Throwable)var39 - ); + } catch (final Exception e) { // Plazma + LOGGER.warn("Failed to load datapacks, can't proceed with server load. You can either fix your datapacks or reset to vanilla with --safeMode", e); // Plazma return; } - /* - RegistryAccess.Frozen frozen = worldStem.registries().compositeAccess(); - boolean hasOptionSpec1 = optionSet.has(optionSpec6); - if (optionSet.has(optionSpec4) || hasOptionSpec1) { - forceUpgrade(levelStorageAccess, DataFixers.getDataFixer(), optionSet.has(optionSpec5), () -> true, frozen, hasOptionSpec1); - } - - WorldData worldData = worldStem.worldData(); - levelStorageAccess.saveDataTag(frozen, worldData); - */ Class.forName(net.minecraft.world.entity.npc.VillagerTrades.class.getName()); // Paper - load this sync so it won't fail later async final DedicatedServer dedicatedServer = MinecraftServer.spin( thread1 -> { @@ -343,18 +_,12 @@ services, LoggerChunkProgressListener::createFromGameruleRadius ); - /* - dedicatedServer1.setPort(optionSet.valueOf(optionSpec11)); - */ // Paper start if (optionSet.has("serverId")) { dedicatedServer1.setId((String) optionSet.valueOf("serverId")); } dedicatedServer1.setDemo(optionSet.has("demo")); // Paper end - /* - dedicatedServer1.setId(optionSet.valueOf(optionSpec12)); - */ boolean flag = !optionSet.has("nogui") && !optionSet.nonOptionArguments().contains("nogui"); if (flag && !GraphicsEnvironment.isHeadless()) { dedicatedServer1.showGui(); @@ -370,16 +_,6 @@ return dedicatedServer1; } ); - /* CraftBukkit start - Thread thread = new Thread("Server Shutdown Thread") { - @Override - public void run() { - dedicatedServer.halt(true); - } - }; - thread.setUncaughtExceptionHandler(new DefaultUncaughtExceptionHandler(LOGGER)); - Runtime.getRuntime().addShutdownHook(thread); - */ // CraftBukkit end } catch (Exception var42) { LOGGER.error(LogUtils.FATAL_MARKER, "Failed to start the minecraft server", (Throwable)var42); } @@ -443,7 +_,7 @@ } else { try { Thread.sleep(1000L); - } catch (InterruptedException var12) { + } catch (InterruptedException ignore) { // Plazma - Fix IDE warning } } }