SubServers Release v2.11.2b
This commit is contained in:
parent
60fc38b5fb
commit
d60d6640b5
Binary file not shown.
Binary file not shown.
|
@ -4,9 +4,11 @@ import net.ME1312.SubServers.Bungee.Event.SubCreateEvent;
|
||||||
import net.ME1312.SubServers.Bungee.Host.Executable;
|
import net.ME1312.SubServers.Bungee.Host.Executable;
|
||||||
import net.ME1312.SubServers.Bungee.Host.Host;
|
import net.ME1312.SubServers.Bungee.Host.Host;
|
||||||
import net.ME1312.SubServers.Bungee.Host.SubCreator;
|
import net.ME1312.SubServers.Bungee.Host.SubCreator;
|
||||||
|
import net.ME1312.SubServers.Bungee.Host.SubServer;
|
||||||
import net.ME1312.SubServers.Bungee.Library.Config.YAMLConfig;
|
import net.ME1312.SubServers.Bungee.Library.Config.YAMLConfig;
|
||||||
import net.ME1312.SubServers.Bungee.Library.Config.YAMLSection;
|
import net.ME1312.SubServers.Bungee.Library.Config.YAMLSection;
|
||||||
import net.ME1312.SubServers.Bungee.Library.Container;
|
import net.ME1312.SubServers.Bungee.Library.Container;
|
||||||
|
import net.ME1312.SubServers.Bungee.Library.Exception.InvalidServerException;
|
||||||
import net.ME1312.SubServers.Bungee.Library.UniversalFile;
|
import net.ME1312.SubServers.Bungee.Library.UniversalFile;
|
||||||
import net.ME1312.SubServers.Bungee.Library.Util;
|
import net.ME1312.SubServers.Bungee.Library.Util;
|
||||||
import net.ME1312.SubServers.Bungee.Library.Version.Version;
|
import net.ME1312.SubServers.Bungee.Library.Version.Version;
|
||||||
|
@ -367,6 +369,7 @@ public class InternalSubCreator extends SubCreator {
|
||||||
UniversalFile dir = new UniversalFile(new File(host.getDirectory()), name);
|
UniversalFile dir = new UniversalFile(new File(host.getDirectory()), name);
|
||||||
dir.mkdirs();
|
dir.mkdirs();
|
||||||
|
|
||||||
|
System.out.println(host.getName() + "/Creator > Generating Server Files...");
|
||||||
if (type == ServerType.SPIGOT) {
|
if (type == ServerType.SPIGOT) {
|
||||||
exec = new Executable("java -Xmx" + memory + "M -Djline.terminal=jline.UnsupportedTerminal -Dcom.mojang.eula.agree=true -jar Spigot.jar");
|
exec = new Executable("java -Xmx" + memory + "M -Djline.terminal=jline.UnsupportedTerminal -Dcom.mojang.eula.agree=true -jar Spigot.jar");
|
||||||
|
|
||||||
|
@ -396,6 +399,13 @@ public class InternalSubCreator extends SubCreator {
|
||||||
}
|
}
|
||||||
} else if (type == ServerType.SPONGE) {
|
} else if (type == ServerType.SPONGE) {
|
||||||
try {
|
try {
|
||||||
|
exec = new Executable("java -Xmx" + memory + "M -jar Forge.jar");
|
||||||
|
|
||||||
|
GenerateEULA(dir);
|
||||||
|
GenerateProperties(dir, port);
|
||||||
|
GenerateSpongeConf(dir);
|
||||||
|
|
||||||
|
System.out.println(host.getName() + "/Creator > Searching Versions...");
|
||||||
Document spongexml = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(new InputSource(new StringReader(Util.readAll(new BufferedReader(new InputStreamReader(new URL("http://files.minecraftforge.net/maven/org/spongepowered/spongeforge/maven-metadata.xml").openStream(), Charset.forName("UTF-8")))))));
|
Document spongexml = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(new InputSource(new StringReader(Util.readAll(new BufferedReader(new InputStreamReader(new URL("http://files.minecraftforge.net/maven/org/spongepowered/spongeforge/maven-metadata.xml").openStream(), Charset.forName("UTF-8")))))));
|
||||||
Document forgexml = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(new InputSource(new StringReader(Util.readAll(new BufferedReader(new InputStreamReader(new URL("http://files.minecraftforge.net/maven/net/minecraftforge/forge/maven-metadata.xml").openStream(), Charset.forName("UTF-8")))))));
|
Document forgexml = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(new InputSource(new StringReader(Util.readAll(new BufferedReader(new InputStreamReader(new URL("http://files.minecraftforge.net/maven/net/minecraftforge/forge/maven-metadata.xml").openStream(), Charset.forName("UTF-8")))))));
|
||||||
|
|
||||||
|
@ -409,6 +419,8 @@ public class InternalSubCreator extends SubCreator {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (spversion == null) throw new InvalidServerException("Cannot find sponge version for Minecraft " + version.toString());
|
||||||
|
System.out.println(host.getName() + "/Creator > Found spongeforge-" + spversion.toString());
|
||||||
|
|
||||||
NodeList mcfnodeList = forgexml.getElementsByTagName("version");
|
NodeList mcfnodeList = forgexml.getElementsByTagName("version");
|
||||||
Version mcfversion = null;
|
Version mcfversion = null;
|
||||||
|
@ -420,18 +432,14 @@ public class InternalSubCreator extends SubCreator {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (mcfversion == null) throw new InvalidServerException("Cannot find forge version for Sponge " + spversion.toString());
|
||||||
|
System.out.println(host.getName() + "/Creator > Found forge-" + mcfversion.toString());
|
||||||
|
|
||||||
exec = new Executable("java -Xmx" + memory + "M -jar Forge.jar");
|
|
||||||
version = new Version(mcfversion.toString() + "::" + spversion.toString());
|
version = new Version(mcfversion.toString() + "::" + spversion.toString());
|
||||||
|
|
||||||
GenerateEULA(dir);
|
|
||||||
GenerateProperties(dir, port);
|
|
||||||
GenerateSpongeConf(dir);
|
|
||||||
} catch (ParserConfigurationException | IOException | SAXException | NullPointerException e) {
|
} catch (ParserConfigurationException | IOException | SAXException | NullPointerException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
InputStream input = null;
|
InputStream input = null;
|
||||||
OutputStream output = null;
|
OutputStream output = null;
|
||||||
|
@ -451,7 +459,7 @@ public class InternalSubCreator extends SubCreator {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(new File(dir, "build.sh").exists())) {
|
if (!(new File(dir, "build.sh").exists())) {
|
||||||
System.out.println(host.getName() + "/Creator > Problem Copying build.sh!");
|
System.out.println(host.getName() + "/Creator > Problem copying build.sh");
|
||||||
} else {
|
} else {
|
||||||
File gitBash = new File(this.gitBash, "bin" + File.separatorChar + "bash.exe");
|
File gitBash = new File(this.gitBash, "bin" + File.separatorChar + "bash.exe");
|
||||||
if (!(System.getProperty("os.name").toLowerCase().indexOf("win") >= 0)) {
|
if (!(System.getProperty("os.name").toLowerCase().indexOf("win") >= 0)) {
|
||||||
|
@ -463,15 +471,15 @@ public class InternalSubCreator extends SubCreator {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
if (process.exitValue() != 0) {
|
if (process.exitValue() != 0) {
|
||||||
System.out.println(host.getName() + "/Creator > Problem Setting Executable Permissions for build.sh");
|
System.out.println(host.getName() + "/Creator > Problem Setting Executable Permissions.");
|
||||||
System.out.println(host.getName() + "/Creator > This may cause errors in the Build Process");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
System.out.println(host.getName() + "/Creator > Launching build.sh");
|
||||||
this.process = Runtime.getRuntime().exec((System.getProperty("os.name").toLowerCase().indexOf("win") >= 0)?
|
this.process = Runtime.getRuntime().exec((System.getProperty("os.name").toLowerCase().indexOf("win") >= 0)?
|
||||||
"\"" + gitBash + "\" --login -i -c \"bash build.sh " + version.toString() + " " + type.toString().toLowerCase() + "\""
|
"\"" + gitBash + "\" --login -i -c \"bash build.sh " + version.toString() + " " + type.toString().toLowerCase() + "\""
|
||||||
:("bash build.sh " + version.toString() + " " + type.toString().toLowerCase() + " " + System.getProperty("user.home")), null, dir);
|
:("bash build.sh " + version.toString() + " " + type.toString().toLowerCase() + " " + System.getProperty("user.home")), null, dir);
|
||||||
InternalSubLogger read = new InternalSubLogger(this.process.getInputStream(), host.getName() + "/Creator", new Container<Boolean>(host.plugin.config.get().getSection("Settings").getBoolean("Log-Creator")), new File(dir, "SubCreator-" + type.toString() + "-" + version.toString().replace("::", "@") + ".log"));
|
InternalSubLogger read = new InternalSubLogger(this.process, host.getName() + "/Creator", new Container<Boolean>(host.plugin.config.get().getSection("Settings").getBoolean("Log-Creator")), new File(dir, "SubCreator-" + type.toString() + "-" + version.toString().replace("::", "@") + ".log"));
|
||||||
read.start();
|
read.start();
|
||||||
try {
|
try {
|
||||||
this.process.waitFor();
|
this.process.waitFor();
|
||||||
|
@ -481,8 +489,9 @@ public class InternalSubCreator extends SubCreator {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.process.exitValue() == 0) {
|
if (this.process.exitValue() == 0) {
|
||||||
|
System.out.println(host.getName() + "/Creator > Saving...");
|
||||||
if (host.plugin.exServers.keySet().contains(name.toLowerCase())) host.plugin.exServers.remove(name.toLowerCase());
|
if (host.plugin.exServers.keySet().contains(name.toLowerCase())) host.plugin.exServers.remove(name.toLowerCase());
|
||||||
host.addSubServer(player, name, true, port, "&aThis is a SubServer", true, "." + File.separatorChar + name, exec, "stop", true, false, false, false, false);
|
SubServer subserver = host.addSubServer(player, name, true, port, "&aThis is a SubServer", true, "." + File.separatorChar + name, exec, "stop", false, false, false, false, false);
|
||||||
|
|
||||||
YAMLSection server = new YAMLSection();
|
YAMLSection server = new YAMLSection();
|
||||||
server.set("Enabled", true);
|
server.set("Enabled", true);
|
||||||
|
@ -500,8 +509,9 @@ public class InternalSubCreator extends SubCreator {
|
||||||
host.plugin.config.get().getSection("Servers").set(name, server);
|
host.plugin.config.get().getSection("Servers").set(name, server);
|
||||||
host.plugin.config.save();
|
host.plugin.config.save();
|
||||||
|
|
||||||
|
subserver.start(player);
|
||||||
} else {
|
} else {
|
||||||
System.out.println(host.getName() + "/Creator build.sh exited with an errors. Please try again.");
|
System.out.println(host.getName() + "/Creator > Couldn't build the server jar. See \"SubCreator-" + type.toString() + "-" + version.toString().replace("::", "@") + ".log\" for more details.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
|
|
@ -7,67 +7,101 @@ import java.io.*;
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
public class InternalSubLogger extends Thread {
|
public class InternalSubLogger {
|
||||||
InputStream is;
|
private Process process;
|
||||||
String name;
|
private String name;
|
||||||
Container<Boolean> log;
|
private Container<Boolean> log;
|
||||||
PrintWriter writer = null;
|
private PrintWriter writer = null;
|
||||||
|
private boolean started = false;
|
||||||
|
|
||||||
InternalSubLogger(InputStream is, String name, Container<Boolean> log, File file) {
|
InternalSubLogger(Process process, String name, Container<Boolean> log, File file) {
|
||||||
this.is = is;
|
this.process = process;
|
||||||
this.name = name;
|
this.name = name;
|
||||||
this.log = log;
|
this.log = log;
|
||||||
if (file != null)
|
if (file != null)
|
||||||
try {
|
try {
|
||||||
this.writer = new PrintWriter(file, "UTF-8");
|
this.writer = new PrintWriter(file, "UTF-8");
|
||||||
this.writer.println("---------- LOG START: " + name + " ----------");
|
|
||||||
this.writer.flush();
|
|
||||||
} catch (UnsupportedEncodingException | FileNotFoundException e) {
|
} catch (UnsupportedEncodingException | FileNotFoundException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
public void start() {
|
||||||
public void run() {
|
started = true;
|
||||||
try {
|
if (writer != null) {
|
||||||
InputStreamReader isr = new InputStreamReader(is);
|
this.writer.println("---------- LOG START: " + name + " ----------");
|
||||||
BufferedReader br = new BufferedReader(isr);
|
this.writer.flush();
|
||||||
String line = null;
|
}
|
||||||
while ((line = br.readLine()) != null) {
|
new Thread(() -> {
|
||||||
if (!line.startsWith(">")) {
|
try {
|
||||||
if (log.get()) {
|
BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream()));
|
||||||
String msg = line;
|
String line = null;
|
||||||
// REGEX Formatting
|
while ((line = br.readLine()) != null) {
|
||||||
String type = "INFO";
|
if (!line.startsWith(">")) {
|
||||||
Matcher matcher = Pattern.compile("^((?:\\s*\\[?[0-9]{2}:[0-9]{2}:[0-9]{2}]?)?\\s*(?:\\[|\\[.*\\/)?(INFO|WARN|WARNING|ERROR|ERR|SEVERE)\\]:?\\s*)").matcher(msg);
|
if (log.get()) {
|
||||||
while (matcher.find()) {
|
String msg = line;
|
||||||
type = matcher.group(2);
|
// REGEX Formatting
|
||||||
}
|
String type = "INFO";
|
||||||
|
Matcher matcher = Pattern.compile("^((?:\\s*\\[?[0-9]{2}:[0-9]{2}:[0-9]{2}]?)?\\s*(?:\\[|\\[.*\\/)?(INFO|WARN|WARNING|ERROR|ERR|SEVERE)\\]:?\\s*)").matcher(msg);
|
||||||
|
while (matcher.find()) {
|
||||||
|
type = matcher.group(2);
|
||||||
|
}
|
||||||
|
|
||||||
msg = msg.replaceAll("^((?:\\s*\\[?[0-9]{2}:[0-9]{2}:[0-9]{2}]?)?\\s*(?:\\[|\\[.*\\/)?(INFO|WARN|WARNING|ERROR|ERR|SEVERE)\\]:?\\s*)", "");
|
msg = msg.replaceAll("^((?:\\s*\\[?[0-9]{2}:[0-9]{2}:[0-9]{2}]?)?\\s*(?:\\[|\\[.*\\/)?(INFO|WARN|WARNING|ERROR|ERR|SEVERE)\\]:?\\s*)", "");
|
||||||
|
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case "INFO":
|
case "INFO":
|
||||||
ProxyServer.getInstance().getLogger().info(name + " > " + msg);
|
ProxyServer.getInstance().getLogger().info(name + " > " + msg);
|
||||||
break;
|
break;
|
||||||
case "WARNING":
|
case "WARNING":
|
||||||
case "WARN":
|
case "WARN":
|
||||||
ProxyServer.getInstance().getLogger().warning(name + " > " + msg);
|
ProxyServer.getInstance().getLogger().warning(name + " > " + msg);
|
||||||
break;
|
break;
|
||||||
case "SEVERE":
|
case "SEVERE":
|
||||||
case "ERROR":
|
case "ERROR":
|
||||||
case "ERR":
|
case "ERR":
|
||||||
ProxyServer.getInstance().getLogger().severe(name + " > " + msg);
|
ProxyServer.getInstance().getLogger().severe(name + " > " + msg);
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (writer != null) {
|
||||||
|
writer.println(line);
|
||||||
|
writer.flush();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
if (writer != null) {
|
|
||||||
writer.println(line);
|
|
||||||
writer.flush();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} catch (IOException ioe) {
|
||||||
|
} finally {
|
||||||
|
stop();
|
||||||
}
|
}
|
||||||
} catch (IOException ioe) {} finally {
|
}).start();
|
||||||
|
new Thread(() -> {
|
||||||
|
try {
|
||||||
|
BufferedReader br = new BufferedReader(new InputStreamReader(process.getErrorStream()));
|
||||||
|
String line;
|
||||||
|
while ((line = br.readLine()) != null) {
|
||||||
|
if (!line.startsWith(">")) {
|
||||||
|
if (log.get()) {
|
||||||
|
String msg = line;
|
||||||
|
msg = msg.replaceAll("^((?:\\s*\\[?[0-9]{2}:[0-9]{2}:[0-9]{2}]?)?\\s*(?:\\[|\\[.*\\/)?(INFO|WARN|WARNING|ERROR|ERR|SEVERE)\\]:?\\s*)", "");
|
||||||
|
ProxyServer.getInstance().getLogger().severe(name + " > " + msg);
|
||||||
|
}
|
||||||
|
if (writer != null) {
|
||||||
|
writer.println(line);
|
||||||
|
writer.flush();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (IOException ioe) {
|
||||||
|
} finally {
|
||||||
|
stop();
|
||||||
|
}
|
||||||
|
}).start();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void stop() {
|
||||||
|
if (started) {
|
||||||
|
started = false;
|
||||||
if (writer != null) {
|
if (writer != null) {
|
||||||
writer.println("---------- END LOG ----------");
|
writer.println("---------- END LOG ----------");
|
||||||
writer.close();
|
writer.close();
|
||||||
|
|
|
@ -51,7 +51,7 @@ public class InternalSubServer extends SubServer {
|
||||||
try {
|
try {
|
||||||
process = Runtime.getRuntime().exec(executable.toString(), null, directory);
|
process = Runtime.getRuntime().exec(executable.toString(), null, directory);
|
||||||
System.out.println("SubServers > Now starting " + getName());
|
System.out.println("SubServers > Now starting " + getName());
|
||||||
final InternalSubLogger read = new InternalSubLogger(process.getInputStream(), getName(), log, null);
|
final InternalSubLogger read = new InternalSubLogger(process, getName(), log, null);
|
||||||
read.start();
|
read.start();
|
||||||
command = new BufferedWriter(new OutputStreamWriter(process.getOutputStream()));
|
command = new BufferedWriter(new OutputStreamWriter(process.getOutputStream()));
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Version: 2.11.2a+
|
# Version: 2.11.2b+
|
||||||
#
|
#
|
||||||
# SubCreator Build Script
|
# SubCreator Build Script
|
||||||
# Usage: "bash build.sh <version> <software> [jre]"
|
# Usage: "bash build.sh <version> <software> [jre]"
|
||||||
|
@ -16,14 +16,11 @@ if [ -z "$2" ]
|
||||||
rm -Rf $0
|
rm -Rf $0
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
echo ---------- SERVER BUILD START ----------
|
|
||||||
if [ $2 == bukkit ] || [ $2 == spigot ]
|
if [ $2 == bukkit ] || [ $2 == spigot ]
|
||||||
then
|
then
|
||||||
echo Downloading Buildtools...
|
echo Downloading Buildtools...
|
||||||
curl -o BuildTools.jar https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar; retvalb=$?
|
curl -o BuildTools.jar https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar; retvalb=$?
|
||||||
if [ $retvalb -eq 0 ]; then
|
if ! [ $retvalb -eq 0 ]; then
|
||||||
echo Downloaded Buildtools!
|
|
||||||
else
|
|
||||||
echo ERROR: Failed Downloading Buildtools. Is SpigotMC.org down?
|
echo ERROR: Failed Downloading Buildtools. Is SpigotMC.org down?
|
||||||
rm -Rf $0
|
rm -Rf $0
|
||||||
exit 3
|
exit 3
|
||||||
|
@ -34,27 +31,25 @@ if [ $2 == bukkit ] || [ $2 == spigot ]
|
||||||
fi
|
fi
|
||||||
mkdir Buildtools
|
mkdir Buildtools
|
||||||
cd "Buildtools"
|
cd "Buildtools"
|
||||||
echo Building CraftBukkit/Spigot Jarfiles...
|
echo Launching BuildTools.jar
|
||||||
export MAVEN_OPTS="-Xmx2G"
|
export MAVEN_OPTS="-Xms2G"
|
||||||
if [ -z "$3" ]
|
if [ -z "$3" ]
|
||||||
then
|
then
|
||||||
java -Xmx2G -jar ../BuildTools.jar --rev $1; retvalc=$?
|
java -Xms2G -jar ../BuildTools.jar --rev $1; retvalc=$?
|
||||||
else
|
else
|
||||||
HOME=$3 java -Xmx2G -jar ../BuildTools.jar --rev $1; retvalc=$?
|
HOME=$3 java -Xms2G -jar ../BuildTools.jar --rev $1; retvalc=$?
|
||||||
fi
|
fi
|
||||||
cd ../
|
cd ../
|
||||||
if [ $retvalc -eq 0 ]; then
|
if [ $retvalc -eq 0 ]; then
|
||||||
echo CraftBukkit/Spigot Jarfiles Built!
|
echo Copying Final Jar...
|
||||||
if [ $2 == "spigot" ]; then
|
if [ $2 == "spigot" ]; then
|
||||||
cp Buildtools/spigot-*.jar Spigot.jar
|
cp Buildtools/spigot-*.jar Spigot.jar
|
||||||
else
|
else
|
||||||
cp Buildtools/craftbukkit-*.jar Craftbukkit.jar
|
cp Buildtools/craftbukkit-*.jar Craftbukkit.jar
|
||||||
fi
|
fi
|
||||||
echo Added Jarfiles!
|
|
||||||
echo Cleaning Up...
|
echo Cleaning Up...
|
||||||
rm -Rf BuildTools.jar
|
rm -Rf BuildTools.jar
|
||||||
rm -Rf Buildtools
|
rm -Rf Buildtools
|
||||||
echo ---------- END SERVER BUILD ----------
|
|
||||||
rm -Rf $0
|
rm -Rf $0
|
||||||
exit 0
|
exit 0
|
||||||
else
|
else
|
||||||
|
@ -72,7 +67,7 @@ else
|
||||||
fi
|
fi
|
||||||
mkdir Buildtools
|
mkdir Buildtools
|
||||||
mkdir Buildtools/Vanilla
|
mkdir Buildtools/Vanilla
|
||||||
echo Downloading Vanilla Server Jarfile
|
echo Downloading Vanilla Jar...
|
||||||
curl -o Buildtools/Vanilla/minecraft_server.$1.jar https://s3.amazonaws.com/Minecraft.Download/versions/$1/minecraft_server.$1.jar; retvald=$?
|
curl -o Buildtools/Vanilla/minecraft_server.$1.jar https://s3.amazonaws.com/Minecraft.Download/versions/$1/minecraft_server.$1.jar; retvald=$?
|
||||||
if [ $retvald -eq 0 ]; then
|
if [ $retvald -eq 0 ]; then
|
||||||
echo Downloading Vanilla Patches...
|
echo Downloading Vanilla Patches...
|
||||||
|
@ -80,16 +75,19 @@ else
|
||||||
if [ $retvale -eq 0 ]; then
|
if [ $retvale -eq 0 ]; then
|
||||||
echo Patching Vanilla for BungeeCord Support
|
echo Patching Vanilla for BungeeCord Support
|
||||||
cd Buildtools/Vanilla
|
cd Buildtools/Vanilla
|
||||||
java -jar bungee-patch.jar $1; retvalf=$?;
|
if [ -z "$3" ]
|
||||||
|
then
|
||||||
|
java -jar bungee-patch.jar $1; retvalf=$?;
|
||||||
|
else
|
||||||
|
HOME=$3 java -jar bungee-patch.jar $1; retvalf=$?;
|
||||||
|
fi
|
||||||
if [ $retvalf -eq 0 ]; then
|
if [ $retvalf -eq 0 ]; then
|
||||||
echo Patched Vanilla Jar!
|
echo Copying Final Jar...
|
||||||
cd ../../
|
cd ../../
|
||||||
cp Buildtools/Vanilla/out/$1-bungee.jar Buildtools/vanilla-$1.jar
|
cp Buildtools/Vanilla/out/$1-bungee.jar Buildtools/vanilla-$1.jar
|
||||||
cp Buildtools/Vanilla/out/$1-bungee.jar Vanilla.jar
|
cp Buildtools/Vanilla/out/$1-bungee.jar Vanilla.jar
|
||||||
echo Added Jarfiles!
|
|
||||||
echo Cleaning Up...
|
echo Cleaning Up...
|
||||||
rm -Rf Buildtools
|
rm -Rf Buildtools
|
||||||
echo ---------- END SERVER BUILD ----------
|
|
||||||
rm -Rf $0
|
rm -Rf $0
|
||||||
exit 0
|
exit 0
|
||||||
else
|
else
|
||||||
|
@ -114,21 +112,25 @@ else
|
||||||
if [ $2 == "sponge" ]; then
|
if [ $2 == "sponge" ]; then
|
||||||
IFS='::' read -r -a version <<< "$1"
|
IFS='::' read -r -a version <<< "$1"
|
||||||
sversion=$(echo ${version[@]:1} | tr -d ' ')
|
sversion=$(echo ${version[@]:1} | tr -d ' ')
|
||||||
echo Downloading Minecraft Forge
|
echo Downloading Minecraft Forge...
|
||||||
curl -o forge-${version[0]}-installer.jar http://files.minecraftforge.net/maven/net/minecraftforge/forge/${version[0]}/forge-${version[0]}-installer.jar; retvalg=$?
|
curl -o forge-${version[0]}-installer.jar http://files.minecraftforge.net/maven/net/minecraftforge/forge/${version[0]}/forge-${version[0]}-installer.jar; retvalg=$?
|
||||||
if [ $retvalg -eq 0 ]; then
|
if [ $retvalg -eq 0 ]; then
|
||||||
echo Installing Minecraft Forge Server
|
echo Installing Minecraft Forge Server...
|
||||||
java -jar ./forge-${version[0]}-installer.jar --installServer; retvalh=$?
|
if [ -z "$3" ]
|
||||||
|
then
|
||||||
|
java -jar ./forge-${version[0]}-installer.jar --installServer; retvalh=$?
|
||||||
|
else
|
||||||
|
HOME=$3 java -jar ./forge-${version[0]}-installer.jar --installServer; retvalh=$?
|
||||||
|
fi
|
||||||
if [ $retvalh -eq 0 ]; then
|
if [ $retvalh -eq 0 ]; then
|
||||||
mkdir ./mods
|
mkdir ./mods
|
||||||
echo Downloading SpongeForge
|
echo Downloading SpongeForge...
|
||||||
curl -o mods/Sponge.jar http://files.minecraftforge.net/maven/org/spongepowered/spongeforge/$sversion/spongeforge-$sversion.jar; retvali=$?
|
curl -o mods/Sponge.jar http://files.minecraftforge.net/maven/org/spongepowered/spongeforge/$sversion/spongeforge-$sversion.jar; retvali=$?
|
||||||
if [ $retvali -eq 0 ]; then
|
if [ $retvali -eq 0 ]; then
|
||||||
echo Cleaning Up...
|
echo Cleaning Up...
|
||||||
rm -Rf forge-${version[0]}-installer.jar
|
rm -Rf forge-${version[0]}-installer.jar
|
||||||
rm -Rf forge-${version[0]}-installer.jar.log
|
rm -Rf forge-${version[0]}-installer.jar.log
|
||||||
mv -f forge-${version[0]}-universal.jar Forge.jar
|
mv -f forge-${version[0]}-universal.jar Forge.jar
|
||||||
echo ---------- END SERVER BUILD ----------
|
|
||||||
rm -Rf $0
|
rm -Rf $0
|
||||||
exit 0
|
exit 0
|
||||||
else
|
else
|
||||||
|
@ -154,4 +156,5 @@ else
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
echo ERROR: Unknown Server Software
|
||||||
exit 2
|
exit 2
|
|
@ -36,7 +36,7 @@ public final class SubPlugin extends BungeeCord {
|
||||||
public YAMLConfig lang;
|
public YAMLConfig lang;
|
||||||
public HashMap<String, String> exLang = new HashMap<String, String>();
|
public HashMap<String, String> exLang = new HashMap<String, String>();
|
||||||
public SubDataServer subdata = null;
|
public SubDataServer subdata = null;
|
||||||
public final Version version = new Version("2.11.2a");
|
public final Version version = new Version("2.11.2b");
|
||||||
protected Version bversion = null;
|
protected Version bversion = null;
|
||||||
|
|
||||||
protected boolean running = false;
|
protected boolean running = false;
|
||||||
|
@ -98,7 +98,7 @@ public final class SubPlugin extends BungeeCord {
|
||||||
} catch (NullPointerException e) {}
|
} catch (NullPointerException e) {}
|
||||||
brText.close();
|
brText.close();
|
||||||
|
|
||||||
if (!Version.equalsIgnoreCase("2.11.2a+")) {
|
if (!Version.equalsIgnoreCase("2.11.2b+")) {
|
||||||
Files.move(new UniversalFile(dir, "build.sh").toPath(), new UniversalFile(dir, "build.old" + Math.round(Math.random() * 100000) + ".sh").toPath());
|
Files.move(new UniversalFile(dir, "build.sh").toPath(), new UniversalFile(dir, "build.old" + Math.round(Math.random() * 100000) + ".sh").toPath());
|
||||||
Util.copyFromJar(SubPlugin.class.getClassLoader(), "net/ME1312/SubServers/Bungee/Library/Files/build.sh", new UniversalFile(dir, "build.sh").getPath());
|
Util.copyFromJar(SubPlugin.class.getClassLoader(), "net/ME1312/SubServers/Bungee/Library/Files/build.sh", new UniversalFile(dir, "build.sh").getPath());
|
||||||
System.out.println("SubServers > Updated ~/SubServers/build.sh");
|
System.out.println("SubServers > Updated ~/SubServers/build.sh");
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
name: 'SubServers'
|
name: 'SubServers'
|
||||||
main: 'net.ME1312.SubServers.Client.Bukkit.SubPlugin'
|
main: 'net.ME1312.SubServers.Client.Bukkit.SubPlugin'
|
||||||
version: '2.11.2a'
|
version: '2.11.2b'
|
||||||
authors: [ME1312]
|
authors: [ME1312]
|
||||||
softdepend: [TitleManager]
|
softdepend: [TitleManager]
|
||||||
website: 'http://www.ME1312.net/'
|
website: 'http://www.ME1312.net/'
|
||||||
|
|
Loading…
Reference in New Issue