diff --git a/_internal/fg7/minecraft/1.10.2/build.gradle b/_internal/fg7/minecraft/1.10.2/build.gradle new file mode 100644 index 0000000..d164b3d --- /dev/null +++ b/_internal/fg7/minecraft/1.10.2/build.gradle @@ -0,0 +1,25 @@ +plugins { + id 'java' + id 'net.minecraftforge.gradle' version "${gradle_version}" +} + +java.toolchain.languageVersion = JavaLanguageVersion.of(8) + +minecraft { + mappings channel: 'snapshot', version: mapping_version + runs { + register('client') { + workingDir = file('runs/main/client/') + } + register('server') { + args '--nogui', 'fml_bug', '--port', 25565 + 1102 + workingDir = file('runs/main/server/') + } + } +} + +apply from: file('../shared.gradle') + +dependencies { + implementation minecraft.dependency("net.minecraftforge:forge:${minecraft_version}-${forge_version}") +} \ No newline at end of file diff --git a/_internal/fg7/minecraft/1.10.2/gradle.properties b/_internal/fg7/minecraft/1.10.2/gradle.properties new file mode 100644 index 0000000..96107c2 --- /dev/null +++ b/_internal/fg7/minecraft/1.10.2/gradle.properties @@ -0,0 +1,3 @@ +minecraft_version=1.10.2 +forge_version=12.18.3.2511 +mapping_version=20161111-1.10.2 \ No newline at end of file diff --git a/_internal/fg7/minecraft/1.10.2/src/main/java/net/miencraftforge/test/TestMod.java b/_internal/fg7/minecraft/1.10.2/src/main/java/net/miencraftforge/test/TestMod.java new file mode 100644 index 0000000..8a6cc92 --- /dev/null +++ b/_internal/fg7/minecraft/1.10.2/src/main/java/net/miencraftforge/test/TestMod.java @@ -0,0 +1,39 @@ +package net.miencraftforge.test; + +import net.minecraftforge.common.ForgeModContainer; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.common.config.Property; +import net.minecraftforge.fml.common.FMLCommonHandler; +import net.minecraftforge.fml.common.Mod; +import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; +import net.minecraftforge.fml.common.gameevent.TickEvent; +import net.minecraftforge.fml.relauncher.Side; + +import java.io.File; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; + +@Mod(modid = "test") +public class TestMod { + public TestMod() { + Property update_check = ForgeModContainer.getConfig().get(ForgeModContainer.VERSION_CHECK_CAT, "Global", true); + update_check.set(false); + // Only register out handler on the server so i can test loading into the full world + if (FMLCommonHandler.instance().getSide() == Side.SERVER) + MinecraftForge.EVENT_BUS.register(this); + } + + @SubscribeEvent + public void onServerTick(TickEvent.ServerTickEvent event) { + if (event.phase != TickEvent.Phase.END) return; + System.out.println("SERVER_TICK_SUCCESS"); + try { + Files.write(new File("test_marker.txt").toPath(), "SERVER_TICK_SUCCESS".getBytes(StandardCharsets.UTF_8)); + } catch (IOException e) { + throw new RuntimeException(e); + } finally { + FMLCommonHandler.instance().getMinecraftServerInstance().initiateShutdown(); + } + } +} diff --git a/_internal/fg7/minecraft/1.10.2/src/main/resources/META-INF/mods.toml b/_internal/fg7/minecraft/1.10.2/src/main/resources/META-INF/mods.toml new file mode 100644 index 0000000..7ae586a --- /dev/null +++ b/_internal/fg7/minecraft/1.10.2/src/main/resources/META-INF/mods.toml @@ -0,0 +1,9 @@ +modLoader="javafml" +loaderVersion="*" +license="Example" + +[[mods]] +modId="test" +version="0.0" +displayName="" +description="" diff --git a/_internal/fg7/minecraft/1.11.2/build.gradle b/_internal/fg7/minecraft/1.11.2/build.gradle new file mode 100644 index 0000000..c2e331c --- /dev/null +++ b/_internal/fg7/minecraft/1.11.2/build.gradle @@ -0,0 +1,25 @@ +plugins { + id 'java' + id 'net.minecraftforge.gradle' version "${gradle_version}" +} + +java.toolchain.languageVersion = JavaLanguageVersion.of(8) + +minecraft { + mappings channel: 'snapshot', version: mapping_version + runs { + register('client') { + workingDir = file('runs/main/client/') + } + register('server') { + args '--nogui', 'fml_bug', '--port', 25565 + 1112 + workingDir = file('runs/main/server/') + } + } +} + +apply from: file('../shared.gradle') + +dependencies { + implementation minecraft.dependency("net.minecraftforge:forge:${minecraft_version}-${forge_version}") +} \ No newline at end of file diff --git a/_internal/fg7/minecraft/1.11.2/gradle.properties b/_internal/fg7/minecraft/1.11.2/gradle.properties new file mode 100644 index 0000000..cf73d77 --- /dev/null +++ b/_internal/fg7/minecraft/1.11.2/gradle.properties @@ -0,0 +1,3 @@ +minecraft_version=1.11.2 +forge_version=13.20.1.2588 +mapping_version=20161220-1.11 \ No newline at end of file diff --git a/_internal/fg7/minecraft/1.11.2/src/main/java/net/miencraftforge/test/TestMod.java b/_internal/fg7/minecraft/1.11.2/src/main/java/net/miencraftforge/test/TestMod.java new file mode 100644 index 0000000..8a6cc92 --- /dev/null +++ b/_internal/fg7/minecraft/1.11.2/src/main/java/net/miencraftforge/test/TestMod.java @@ -0,0 +1,39 @@ +package net.miencraftforge.test; + +import net.minecraftforge.common.ForgeModContainer; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.common.config.Property; +import net.minecraftforge.fml.common.FMLCommonHandler; +import net.minecraftforge.fml.common.Mod; +import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; +import net.minecraftforge.fml.common.gameevent.TickEvent; +import net.minecraftforge.fml.relauncher.Side; + +import java.io.File; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; + +@Mod(modid = "test") +public class TestMod { + public TestMod() { + Property update_check = ForgeModContainer.getConfig().get(ForgeModContainer.VERSION_CHECK_CAT, "Global", true); + update_check.set(false); + // Only register out handler on the server so i can test loading into the full world + if (FMLCommonHandler.instance().getSide() == Side.SERVER) + MinecraftForge.EVENT_BUS.register(this); + } + + @SubscribeEvent + public void onServerTick(TickEvent.ServerTickEvent event) { + if (event.phase != TickEvent.Phase.END) return; + System.out.println("SERVER_TICK_SUCCESS"); + try { + Files.write(new File("test_marker.txt").toPath(), "SERVER_TICK_SUCCESS".getBytes(StandardCharsets.UTF_8)); + } catch (IOException e) { + throw new RuntimeException(e); + } finally { + FMLCommonHandler.instance().getMinecraftServerInstance().initiateShutdown(); + } + } +} diff --git a/_internal/fg7/minecraft/1.11.2/src/main/resources/META-INF/mods.toml b/_internal/fg7/minecraft/1.11.2/src/main/resources/META-INF/mods.toml new file mode 100644 index 0000000..7ae586a --- /dev/null +++ b/_internal/fg7/minecraft/1.11.2/src/main/resources/META-INF/mods.toml @@ -0,0 +1,9 @@ +modLoader="javafml" +loaderVersion="*" +license="Example" + +[[mods]] +modId="test" +version="0.0" +displayName="" +description="" diff --git a/_internal/fg7/minecraft/1.12.2-fg2/build.gradle b/_internal/fg7/minecraft/1.12.2-fg2/build.gradle new file mode 100644 index 0000000..422f2aa --- /dev/null +++ b/_internal/fg7/minecraft/1.12.2-fg2/build.gradle @@ -0,0 +1,25 @@ +plugins { + id 'java' + id 'net.minecraftforge.gradle' version "${gradle_version}" +} + +java.toolchain.languageVersion = JavaLanguageVersion.of(8) + +minecraft { + mappings channel: 'snapshot', version: mapping_version + runs { + register('client') { + workingDir = file('runs/main/client/') + } + register('server') { + args '--nogui', 'fml_bug', '--port', 25565 + 1122 + 1 // we have 2 1.12.2 versions, FG2/3 + workingDir = file('runs/main/server/') + } + } +} + +apply from: file('../shared.gradle') + +dependencies { + implementation minecraft.dependency("net.minecraftforge:forge:${minecraft_version}-${forge_version}") +} \ No newline at end of file diff --git a/_internal/fg7/minecraft/1.12.2-fg2/gradle.properties b/_internal/fg7/minecraft/1.12.2-fg2/gradle.properties new file mode 100644 index 0000000..d452514 --- /dev/null +++ b/_internal/fg7/minecraft/1.12.2-fg2/gradle.properties @@ -0,0 +1,3 @@ +minecraft_version=1.12.2 +forge_version=14.23.5.2847 +mapping_version=20171003-1.12 \ No newline at end of file diff --git a/_internal/fg7/minecraft/1.12.2-fg2/src/main/java/net/miencraftforge/test/TestMod.java b/_internal/fg7/minecraft/1.12.2-fg2/src/main/java/net/miencraftforge/test/TestMod.java new file mode 100644 index 0000000..8a6cc92 --- /dev/null +++ b/_internal/fg7/minecraft/1.12.2-fg2/src/main/java/net/miencraftforge/test/TestMod.java @@ -0,0 +1,39 @@ +package net.miencraftforge.test; + +import net.minecraftforge.common.ForgeModContainer; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.common.config.Property; +import net.minecraftforge.fml.common.FMLCommonHandler; +import net.minecraftforge.fml.common.Mod; +import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; +import net.minecraftforge.fml.common.gameevent.TickEvent; +import net.minecraftforge.fml.relauncher.Side; + +import java.io.File; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; + +@Mod(modid = "test") +public class TestMod { + public TestMod() { + Property update_check = ForgeModContainer.getConfig().get(ForgeModContainer.VERSION_CHECK_CAT, "Global", true); + update_check.set(false); + // Only register out handler on the server so i can test loading into the full world + if (FMLCommonHandler.instance().getSide() == Side.SERVER) + MinecraftForge.EVENT_BUS.register(this); + } + + @SubscribeEvent + public void onServerTick(TickEvent.ServerTickEvent event) { + if (event.phase != TickEvent.Phase.END) return; + System.out.println("SERVER_TICK_SUCCESS"); + try { + Files.write(new File("test_marker.txt").toPath(), "SERVER_TICK_SUCCESS".getBytes(StandardCharsets.UTF_8)); + } catch (IOException e) { + throw new RuntimeException(e); + } finally { + FMLCommonHandler.instance().getMinecraftServerInstance().initiateShutdown(); + } + } +} diff --git a/_internal/fg7/minecraft/1.12.2-fg2/src/main/resources/META-INF/mods.toml b/_internal/fg7/minecraft/1.12.2-fg2/src/main/resources/META-INF/mods.toml new file mode 100644 index 0000000..7ae586a --- /dev/null +++ b/_internal/fg7/minecraft/1.12.2-fg2/src/main/resources/META-INF/mods.toml @@ -0,0 +1,9 @@ +modLoader="javafml" +loaderVersion="*" +license="Example" + +[[mods]] +modId="test" +version="0.0" +displayName="" +description="" diff --git a/_internal/fg7/minecraft/1.12.2/build.gradle b/_internal/fg7/minecraft/1.12.2/build.gradle index cb4b483..6a6aa89 100644 --- a/_internal/fg7/minecraft/1.12.2/build.gradle +++ b/_internal/fg7/minecraft/1.12.2/build.gradle @@ -12,7 +12,7 @@ minecraft { workingDir = file('runs/main/client/') } register('server') { - args '--nogui', '--port', 25565 + 1122 + args '--nogui', 'fml_bug', '--port', 25565 + 1122 workingDir = file('runs/main/server/') } } diff --git a/_internal/fg7/minecraft/1.12.2/src/main/java/net/miencraftforge/test/TestMod.java b/_internal/fg7/minecraft/1.12.2/src/main/java/net/miencraftforge/test/TestMod.java index da267f9..8a6cc92 100644 --- a/_internal/fg7/minecraft/1.12.2/src/main/java/net/miencraftforge/test/TestMod.java +++ b/_internal/fg7/minecraft/1.12.2/src/main/java/net/miencraftforge/test/TestMod.java @@ -1,6 +1,8 @@ package net.miencraftforge.test; +import net.minecraftforge.common.ForgeModContainer; import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.common.config.Property; import net.minecraftforge.fml.common.FMLCommonHandler; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; @@ -15,6 +17,8 @@ @Mod(modid = "test") public class TestMod { public TestMod() { + Property update_check = ForgeModContainer.getConfig().get(ForgeModContainer.VERSION_CHECK_CAT, "Global", true); + update_check.set(false); // Only register out handler on the server so i can test loading into the full world if (FMLCommonHandler.instance().getSide() == Side.SERVER) MinecraftForge.EVENT_BUS.register(this); diff --git a/_internal/fg7/minecraft/1.18.2/build.gradle b/_internal/fg7/minecraft/1.18.2/build.gradle index 74ca4ca..da823bd 100644 --- a/_internal/fg7/minecraft/1.18.2/build.gradle +++ b/_internal/fg7/minecraft/1.18.2/build.gradle @@ -8,6 +8,10 @@ java.toolchain.languageVersion = JavaLanguageVersion.of(17) minecraft { mappings channel: 'official', version: minecraft_version runs { + register('client') { + workingDir = file('runs/main/client/') + jvmArgs '--add-opens', 'cpw.mods.bootstraplauncher/cpw.mods.bootstraplauncher=ALL-UNNAMED' + } register('server') { args '--nogui', '--port', 25565 + 1182 workingDir = file('runs/main/server/') diff --git a/_internal/fg7/minecraft/1.6.4/build.gradle b/_internal/fg7/minecraft/1.6.4/build.gradle new file mode 100644 index 0000000..dbbd53a --- /dev/null +++ b/_internal/fg7/minecraft/1.6.4/build.gradle @@ -0,0 +1,37 @@ +plugins { + id 'java' + id 'net.minecraftforge.gradle' version "${gradle_version}" +} + +java.toolchain.languageVersion = JavaLanguageVersion.of(8) +// Forge 1.6.4 ships ASM 4.1 which does not support java 8 +// Either we have to bump the libraries (which is fine) or compile our code for java 6 +tasks.withType(JavaCompile) { + options.fork = true + options.compilerArgs += ['-source', '1.6', '-target', '1.6'] +} + +minecraft { + mappings channel: 'snapshot', version: mapping_version + runs { + register('client') { + workingDir = file('runs/main/client/') + } + register('server') { + args '--nogui', 'fml_bug', '--port', 25565 + 164 + workingDir = file('runs/main/server/') + } + } +} + +apply from: file('../shared.gradle') + +dependencies { + implementation minecraft.dependency("net.minecraftforge:forge:${minecraft_version}-${forge_version}") + // This is required by old Forge versions because Java 8u20 changed the sorting implementation for Lists + // And that causes a ConcurrentModificationException, this **could** be added by Mavenizer but i'm on the fence for doing that. + // https://github.com/MinecraftForge/LegacyJavaFixer/blob/master/src/main/java/net/minecraftforge/legacyjavafixer/sort/LegacyJavaSortTweaker.java + implementation('net.minecraftforge.lex:legacyjavafixer:1.0') + // This will bump ASM to a version that supports java 8, also possible to do in mavenizer, but wanted to verify things work on the users side + //implementation('org.ow2.asm:asm-debug-all:5.1') +} \ No newline at end of file diff --git a/_internal/fg7/minecraft/1.6.4/gradle.properties b/_internal/fg7/minecraft/1.6.4/gradle.properties new file mode 100644 index 0000000..3f63f39 --- /dev/null +++ b/_internal/fg7/minecraft/1.6.4/gradle.properties @@ -0,0 +1,3 @@ +minecraft_version=1.6.4 +forge_version=9.11.1.964 +mapping_version=20130918-1.6.3 \ No newline at end of file diff --git a/_internal/fg7/minecraft/1.6.4/src/main/java/net/miencraftforge/test/TestMod.java b/_internal/fg7/minecraft/1.6.4/src/main/java/net/miencraftforge/test/TestMod.java new file mode 100644 index 0000000..eeab41b --- /dev/null +++ b/_internal/fg7/minecraft/1.6.4/src/main/java/net/miencraftforge/test/TestMod.java @@ -0,0 +1,53 @@ +package net.miencraftforge.test; + +import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.ITickHandler; +import cpw.mods.fml.common.Mod; +import cpw.mods.fml.common.TickType; +import cpw.mods.fml.common.registry.TickRegistry; +import cpw.mods.fml.relauncher.Side; + +import java.io.File; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.util.EnumSet; +import java.util.logging.LogManager; +import java.util.logging.Logger; + +@Mod(modid = "test") +public class TestMod implements ITickHandler { + private static final Logger LOG = LogManager.getLogManager().getLogger("test"); + public TestMod() { + LOG.info("Loaded: " + FMLCommonHandler.instance().getSide()); + // Only register out handler on the server so I can test loading into the full world + if (FMLCommonHandler.instance().getSide() == Side.SERVER) + TickRegistry.registerTickHandler(this, Side.SERVER); + } + + @Override + public void tickStart(EnumSet type, Object... tickData) { + } + + @Override + public void tickEnd(EnumSet type, Object... tickData) { + LOG.info("SERVER_TICK_SUCCESS " + new File("test_marker.txt").getAbsolutePath()); + try { + Files.write(new File("test_marker.txt").toPath(), "SERVER_TICK_SUCCESS".getBytes(StandardCharsets.UTF_8)); + } catch (IOException e) { + throw new RuntimeException(e); + } finally { + FMLCommonHandler.instance().getMinecraftServerInstance().initiateShutdown(); + } + } + + @Override + public EnumSet ticks() { + return EnumSet.of(TickType.SERVER); + } + + @Override + public String getLabel() { + return "test"; + } +} diff --git a/_internal/fg7/minecraft/1.6.4/src/main/resources/META-INF/mods.toml b/_internal/fg7/minecraft/1.6.4/src/main/resources/META-INF/mods.toml new file mode 100644 index 0000000..7ae586a --- /dev/null +++ b/_internal/fg7/minecraft/1.6.4/src/main/resources/META-INF/mods.toml @@ -0,0 +1,9 @@ +modLoader="javafml" +loaderVersion="*" +license="Example" + +[[mods]] +modId="test" +version="0.0" +displayName="" +description="" diff --git a/_internal/fg7/minecraft/1.7.10/build.gradle b/_internal/fg7/minecraft/1.7.10/build.gradle new file mode 100644 index 0000000..eb3a349 --- /dev/null +++ b/_internal/fg7/minecraft/1.7.10/build.gradle @@ -0,0 +1,25 @@ +plugins { + id 'java' + id 'net.minecraftforge.gradle' version "${gradle_version}" +} + +java.toolchain.languageVersion = JavaLanguageVersion.of(8) + +minecraft { + mappings channel: 'snapshot', version: mapping_version + runs { + register('client') { + workingDir = file('runs/main/client/') + } + register('server') { + args '--nogui', 'fml_bug', '--port', 25565 + 1710 + workingDir = file('runs/main/server/') + } + } +} + +apply from: file('../shared.gradle') + +dependencies { + implementation minecraft.dependency("net.minecraftforge:forge:${minecraft_version}-${forge_version}") +} \ No newline at end of file diff --git a/_internal/fg7/minecraft/1.7.10/gradle.properties b/_internal/fg7/minecraft/1.7.10/gradle.properties new file mode 100644 index 0000000..5bfc745 --- /dev/null +++ b/_internal/fg7/minecraft/1.7.10/gradle.properties @@ -0,0 +1,3 @@ +minecraft_version=1.7.10 +forge_version=10.13.4.1614-1.7.10 +mapping_version=20140624-1.7.10-pre4 \ No newline at end of file diff --git a/_internal/fg7/minecraft/1.7.10/src/main/java/net/miencraftforge/test/TestMod.java b/_internal/fg7/minecraft/1.7.10/src/main/java/net/miencraftforge/test/TestMod.java new file mode 100644 index 0000000..28f17a0 --- /dev/null +++ b/_internal/fg7/minecraft/1.7.10/src/main/java/net/miencraftforge/test/TestMod.java @@ -0,0 +1,40 @@ +package net.miencraftforge.test; + +import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.Mod; +import cpw.mods.fml.common.eventhandler.SubscribeEvent; +import cpw.mods.fml.common.gameevent.TickEvent; +import cpw.mods.fml.relauncher.Side; +import net.minecraftforge.common.ForgeModContainer; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +import java.io.File; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; + +@Mod(modid = "test") +public class TestMod { + private static final Logger LOG = LogManager.getLogger(); + public TestMod() { + ForgeModContainer.disableVersionCheck = true; + LOG.info("Loaded: " + FMLCommonHandler.instance().getSide()); + // Only register out handler on the server so I can test loading into the full world + if (FMLCommonHandler.instance().getSide() == Side.SERVER) + FMLCommonHandler.instance().bus().register(this); + } + + @SubscribeEvent + public void onServerTick(TickEvent.ServerTickEvent event) { + if (event.phase != TickEvent.Phase.END) return; + LOG.info("SERVER_TICK_SUCCESS " + new File("test_marker.txt").getAbsolutePath()); + try { + Files.write(new File("test_marker.txt").toPath(), "SERVER_TICK_SUCCESS".getBytes(StandardCharsets.UTF_8)); + } catch (IOException e) { + throw new RuntimeException(e); + } finally { + FMLCommonHandler.instance().getMinecraftServerInstance().initiateShutdown(); + } + } +} diff --git a/_internal/fg7/minecraft/1.7.10/src/main/resources/META-INF/mods.toml b/_internal/fg7/minecraft/1.7.10/src/main/resources/META-INF/mods.toml new file mode 100644 index 0000000..7ae586a --- /dev/null +++ b/_internal/fg7/minecraft/1.7.10/src/main/resources/META-INF/mods.toml @@ -0,0 +1,9 @@ +modLoader="javafml" +loaderVersion="*" +license="Example" + +[[mods]] +modId="test" +version="0.0" +displayName="" +description="" diff --git a/_internal/fg7/minecraft/1.8.9/build.gradle b/_internal/fg7/minecraft/1.8.9/build.gradle new file mode 100644 index 0000000..d37e5c0 --- /dev/null +++ b/_internal/fg7/minecraft/1.8.9/build.gradle @@ -0,0 +1,25 @@ +plugins { + id 'java' + id 'net.minecraftforge.gradle' version "${gradle_version}" +} + +java.toolchain.languageVersion = JavaLanguageVersion.of(8) + +minecraft { + mappings channel: 'stable', version: mapping_version + runs { + register('client') { + workingDir = file('runs/main/client/') + } + register('server') { + args '--nogui', 'fml_bug', '--port', 25565 + 189 + workingDir = file('runs/main/server/') + } + } +} + +apply from: file('../shared.gradle') + +dependencies { + implementation minecraft.dependency("net.minecraftforge:forge:${minecraft_version}-${forge_version}") +} \ No newline at end of file diff --git a/_internal/fg7/minecraft/1.8.9/gradle.properties b/_internal/fg7/minecraft/1.8.9/gradle.properties new file mode 100644 index 0000000..e021ede --- /dev/null +++ b/_internal/fg7/minecraft/1.8.9/gradle.properties @@ -0,0 +1,3 @@ +minecraft_version=1.8.9 +forge_version=11.15.1.2318-1.8.9 +mapping_version=20-1.8.8 \ No newline at end of file diff --git a/_internal/fg7/minecraft/1.8.9/src/main/java/net/miencraftforge/test/TestMod.java b/_internal/fg7/minecraft/1.8.9/src/main/java/net/miencraftforge/test/TestMod.java new file mode 100644 index 0000000..4e1c790 --- /dev/null +++ b/_internal/fg7/minecraft/1.8.9/src/main/java/net/miencraftforge/test/TestMod.java @@ -0,0 +1,43 @@ +package net.miencraftforge.test; + +import net.minecraftforge.common.ForgeModContainer; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.common.config.Property; +import net.minecraftforge.fml.common.FMLCommonHandler; +import net.minecraftforge.fml.common.Mod; +import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; +import net.minecraftforge.fml.common.gameevent.TickEvent; +import net.minecraftforge.fml.relauncher.Side; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +import java.io.File; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; + +@Mod(modid = "test") +public class TestMod { + private static final Logger LOG = LogManager.getLogger(); + public TestMod() { + Property update_check = ForgeModContainer.getConfig().get(ForgeModContainer.VERSION_CHECK_CAT, "Global", true); + update_check.set(false); + LOG.info("Loaded: " + FMLCommonHandler.instance().getSide()); + // Only register out handler on the server so i can test loading into the full world + if (FMLCommonHandler.instance().getSide() == Side.SERVER) + MinecraftForge.EVENT_BUS.register(this); + } + + @SubscribeEvent + public void onServerTick(TickEvent.ServerTickEvent event) { + if (event.phase != TickEvent.Phase.END) return; + LOG.info("SERVER_TICK_SUCCESS " + new File("test_marker.txt").getAbsolutePath()); + try { + Files.write(new File("test_marker.txt").toPath(), "SERVER_TICK_SUCCESS".getBytes(StandardCharsets.UTF_8)); + } catch (IOException e) { + throw new RuntimeException(e); + } finally { + FMLCommonHandler.instance().getMinecraftServerInstance().initiateShutdown(); + } + } +} diff --git a/_internal/fg7/minecraft/1.8.9/src/main/resources/META-INF/mods.toml b/_internal/fg7/minecraft/1.8.9/src/main/resources/META-INF/mods.toml new file mode 100644 index 0000000..7ae586a --- /dev/null +++ b/_internal/fg7/minecraft/1.8.9/src/main/resources/META-INF/mods.toml @@ -0,0 +1,9 @@ +modLoader="javafml" +loaderVersion="*" +license="Example" + +[[mods]] +modId="test" +version="0.0" +displayName="" +description="" diff --git a/_internal/fg7/minecraft/1.9.4/build.gradle b/_internal/fg7/minecraft/1.9.4/build.gradle new file mode 100644 index 0000000..dd267d1 --- /dev/null +++ b/_internal/fg7/minecraft/1.9.4/build.gradle @@ -0,0 +1,25 @@ +plugins { + id 'java' + id 'net.minecraftforge.gradle' version "${gradle_version}" +} + +java.toolchain.languageVersion = JavaLanguageVersion.of(8) + +minecraft { + mappings channel: 'snapshot', version: mapping_version + runs { + register('client') { + workingDir = file('runs/main/client/') + } + register('server') { + args '--nogui', 'fml_bug', '--port', 25565 + 194 + workingDir = file('runs/main/server/') + } + } +} + +apply from: file('../shared.gradle') + +dependencies { + implementation minecraft.dependency("net.minecraftforge:forge:${minecraft_version}-${forge_version}") +} \ No newline at end of file diff --git a/_internal/fg7/minecraft/1.9.4/gradle.properties b/_internal/fg7/minecraft/1.9.4/gradle.properties new file mode 100644 index 0000000..1118041 --- /dev/null +++ b/_internal/fg7/minecraft/1.9.4/gradle.properties @@ -0,0 +1,3 @@ +minecraft_version=1.9.4 +forge_version=12.17.0.2317-1.9.4 +mapping_version=20160518-1.9.4 \ No newline at end of file diff --git a/_internal/fg7/minecraft/1.9.4/src/main/java/net/miencraftforge/test/TestMod.java b/_internal/fg7/minecraft/1.9.4/src/main/java/net/miencraftforge/test/TestMod.java new file mode 100644 index 0000000..8a6cc92 --- /dev/null +++ b/_internal/fg7/minecraft/1.9.4/src/main/java/net/miencraftforge/test/TestMod.java @@ -0,0 +1,39 @@ +package net.miencraftforge.test; + +import net.minecraftforge.common.ForgeModContainer; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.common.config.Property; +import net.minecraftforge.fml.common.FMLCommonHandler; +import net.minecraftforge.fml.common.Mod; +import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; +import net.minecraftforge.fml.common.gameevent.TickEvent; +import net.minecraftforge.fml.relauncher.Side; + +import java.io.File; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; + +@Mod(modid = "test") +public class TestMod { + public TestMod() { + Property update_check = ForgeModContainer.getConfig().get(ForgeModContainer.VERSION_CHECK_CAT, "Global", true); + update_check.set(false); + // Only register out handler on the server so i can test loading into the full world + if (FMLCommonHandler.instance().getSide() == Side.SERVER) + MinecraftForge.EVENT_BUS.register(this); + } + + @SubscribeEvent + public void onServerTick(TickEvent.ServerTickEvent event) { + if (event.phase != TickEvent.Phase.END) return; + System.out.println("SERVER_TICK_SUCCESS"); + try { + Files.write(new File("test_marker.txt").toPath(), "SERVER_TICK_SUCCESS".getBytes(StandardCharsets.UTF_8)); + } catch (IOException e) { + throw new RuntimeException(e); + } finally { + FMLCommonHandler.instance().getMinecraftServerInstance().initiateShutdown(); + } + } +} diff --git a/_internal/fg7/minecraft/1.9.4/src/main/resources/META-INF/mods.toml b/_internal/fg7/minecraft/1.9.4/src/main/resources/META-INF/mods.toml new file mode 100644 index 0000000..7ae586a --- /dev/null +++ b/_internal/fg7/minecraft/1.9.4/src/main/resources/META-INF/mods.toml @@ -0,0 +1,9 @@ +modLoader="javafml" +loaderVersion="*" +license="Example" + +[[mods]] +modId="test" +version="0.0" +displayName="" +description="" diff --git a/_internal/fg7/minecraft/settings.gradle b/_internal/fg7/minecraft/settings.gradle index a8570e0..aebd903 100644 --- a/_internal/fg7/minecraft/settings.gradle +++ b/_internal/fg7/minecraft/settings.gradle @@ -1,7 +1,7 @@ pluginManagement { repositories { gradlePluginPortal() - //mavenLocal() + mavenLocal() } } @@ -11,6 +11,13 @@ plugins { rootProject.name = 'minecraft' +include '1.6.4' // FG 1.0 +include '1.7.10' // FG 1.2 +include '1.8.9' // FG 2.1 +include '1.9.4' // FG 2.2 +include '1.10.2' // FG 2.2 +include '1.11.2' // FG 2.2 +include '1.12.2-fg2' // FG 2.3 include '1.12.2' include '1.13.2' include '1.14.4' @@ -20,4 +27,4 @@ include '1.19.4' include '1.20.1' include '1.20.6' include '1.21.11' -include '26.1.2' +include '26.1.2' \ No newline at end of file diff --git a/_internal/fg7/minecraft/shared.gradle b/_internal/fg7/minecraft/shared.gradle index 597e00f..1352200 100644 --- a/_internal/fg7/minecraft/shared.gradle +++ b/_internal/fg7/minecraft/shared.gradle @@ -1,16 +1,28 @@ repositories { minecraft.mavenizer(it) - //mavenLocal() // if we're testing things + mavenLocal() // if we're testing things maven fg.forgeMaven maven fg.minecraftLibsMaven } +// This is only needed if we are testing local builds +fgtools { + configure('slimelauncher') { + version = '0.2.1' + } + configure('mavenizer') { + version = '0.5.10' + } +} + // Force sign the eula var eula = file('runs/main/server/eula.txt') if (!eula.parentFile.exists()) eula.parentFile.mkdirs() eula.text = 'eula=true' var marker = file('runs/main/server/test_marker.txt') var log = file('runServer.log') +// Delete the world if it exists +project.delete(file('runs/main/server/world')) // Delete the marker so we can see if it ran marker.delete()