Sirherobrine23 dev #133
47
BdsManegerInfo.json
Normal file
47
BdsManegerInfo.json
Normal file
@ -0,0 +1,47 @@
|
||||
{
|
||||
"docs_base": "https://docs.bdsmaneger.com/docs/Bds Maneger core",
|
||||
"docs": {
|
||||
"url": "https://docs.the-bds-maneger.org",
|
||||
"main": "Bds Maneger core",
|
||||
"rest_api": "docs/Bds Maneger core/REST API/"
|
||||
},
|
||||
"temp_host": {
|
||||
"url": "http://hosts.bdsmaneger.com:3020"
|
||||
},
|
||||
"download": {
|
||||
"php": "https://raw.githubusercontent.com/The-Bds-Maneger/Php_Static_Binary/main/binarys.json",
|
||||
"servers": "https://raw.githubusercontent.com/The-Bds-Maneger/external_files/main/Server.json"
|
||||
},
|
||||
"Servers": {
|
||||
"bedrock": {
|
||||
"stop": "stop",
|
||||
"op": "op \"{{Player}}\"",
|
||||
"deop": "op \"{{Player}}\"",
|
||||
"kick": "kick \"{{Player}}\" \"{{Text}}\"",
|
||||
"tp": "tp \"{{Player}}\" {{CCO}}"
|
||||
},
|
||||
"java": {
|
||||
"stop": "stop",
|
||||
"op": "op \"{{Player}}\"",
|
||||
"deop": "op \"{{Player}}\"",
|
||||
"ban": "ban 0 0 0",
|
||||
"kick": "kick \"{{Player}}\" {{Text}}",
|
||||
"tp": "tp {{Player}} {{CCO}}"
|
||||
},
|
||||
"pocketmine": {
|
||||
"stop": "stop",
|
||||
"op": "op {{Player}}",
|
||||
"deop": "op {{Player}}",
|
||||
"ban": "ban {{Player}}",
|
||||
"kick": "kick {{Player}}",
|
||||
"tp": "tp {{Player}} {{CCO}}"
|
||||
}
|
||||
},
|
||||
"contributors": [
|
||||
{
|
||||
"name": "Matheus Sampaio Queiroga",
|
||||
"email": "srherobrine20@gmail.com",
|
||||
"url": "https://sirherobrine23.org/?from=the-bds-maneger-project"
|
||||
}
|
||||
]
|
||||
}
|
22
extra.json
22
extra.json
@ -1,22 +0,0 @@
|
||||
{
|
||||
"docs_base": "https://docs.bdsmaneger.com/docs/Bds Maneger core",
|
||||
"docs": {
|
||||
"url": "https://docs.the-bds-maneger.org",
|
||||
"main": "Bds Maneger core",
|
||||
"rest_api": "docs/Bds Maneger core/REST API/"
|
||||
},
|
||||
"temp_host": {
|
||||
"url": "http://hosts.bdsmaneger.com:3020"
|
||||
},
|
||||
"download": {
|
||||
"php": "https://raw.githubusercontent.com/The-Bds-Maneger/Php_Static_Binary/main/binarys.json",
|
||||
"servers": "https://raw.githubusercontent.com/The-Bds-Maneger/external_files/main/Server.json"
|
||||
},
|
||||
"contributors": [
|
||||
{
|
||||
"name": "Matheus Sampaio Queiroga",
|
||||
"email": "srherobrine20@gmail.com",
|
||||
"url": "https://sirherobrine23.org/?from=the-bds-maneger-project"
|
||||
}
|
||||
]
|
||||
}
|
2
index.js
2
index.js
@ -23,7 +23,7 @@ function date(format) {
|
||||
const bds_core_package = resolve(__dirname, "package.json")
|
||||
module.exports.package_path = bds_core_package
|
||||
module.exports.package_json = require("./package.json");
|
||||
module.exports.extra_json = require("./extra.json");
|
||||
module.exports.extra_json = require("./BdsManegerInfo.json");
|
||||
|
||||
const { bds_dir } = require("./lib/BdsSettings");
|
||||
const { arch } = require("./lib/BdsSystemInfo");
|
||||
|
@ -12,7 +12,7 @@ const { GetPlatform, GetServerVersion, GetPaths, UpdatePlatform, bds_dir } = req
|
||||
const admzip = require("adm-zip");
|
||||
const pretty = require("express-prettify");
|
||||
const latest_log = resolve(GetPaths("log"), "latest.log")
|
||||
const docs = require("../extra.json").docs;
|
||||
const docs = require("../BdsManegerInfo.json").docs;
|
||||
const { CheckPlayer, token_verify } = require("../scripts/check");
|
||||
|
||||
function api(port_api = 1932){
|
||||
|
@ -6,8 +6,7 @@ const { valid_platform } = require("../lib/BdsSystemInfo");
|
||||
const { GetServerPaths, GetServerVersion, UpdateServerVersion, GetPlatform } = require("../lib/BdsSettings");
|
||||
const { GitClone } = require("../lib/git_simples");
|
||||
const { execSync } = require("child_process");
|
||||
const fetchSync = require("@the-bds-maneger/fetchsync")
|
||||
const Extra = require("../extra.json");
|
||||
const Extra = require("../BdsManegerInfo.json");
|
||||
|
||||
const
|
||||
bds_dir_bedrock = GetServerPaths("bedrock"),
|
||||
@ -15,8 +14,8 @@ const
|
||||
bds_dir_pocketmine = GetServerPaths("pocketmine"),
|
||||
bds_dir_jsprismarine = GetServerPaths("jsprismarine");
|
||||
|
||||
module.exports = function (version, force_install, callback) {
|
||||
const Servers = fetchSync(Extra.download.servers).json(), PHPBin = fetchSync(Extra.download.php).json()
|
||||
module.exports = async function (version, force_install, callback) {
|
||||
const Servers = (await (await fetch(Extra.download.servers)).json()), PHPBin = (await (await fetch(Extra.download.php)).json());
|
||||
const ServerVersion = GetServerVersion()
|
||||
const CurrentPlatform = GetPlatform()
|
||||
if (force_install === true) {
|
||||
@ -25,7 +24,7 @@ module.exports = function (version, force_install, callback) {
|
||||
ServerVersion.pocketmine = "latest"
|
||||
}
|
||||
if (!(version) || version === true || version === "true" || version === "latest") version = Servers.latest[CurrentPlatform]
|
||||
var url, response;
|
||||
var url;
|
||||
|
||||
console.log(`Installing version ${version}`);
|
||||
// Bedrock Installer Script
|
||||
@ -43,11 +42,11 @@ module.exports = function (version, force_install, callback) {
|
||||
if (existsSync(join(bds_dir_bedrock, "server.properties"))) server_configs = readFileSync(join(bds_dir_bedrock, "server.properties"), "utf8");
|
||||
if (existsSync(join(bds_dir_bedrock, "permissions.json"))) permissions = readFileSync(join(bds_dir_bedrock, "permissions.json"), "utf8");
|
||||
if (existsSync(join(bds_dir_bedrock, "whitelist.json"))) whitelist = readFileSync(join(bds_dir_bedrock, "whitelist.json"), "utf8");
|
||||
fetchSync(url, {
|
||||
Binary: true
|
||||
}).Buffer;
|
||||
|
||||
// Download and Add to Adm_Zip
|
||||
const zip = new AdmZip(Buffer.from((await (await fetch(url)).arrayBuffer())))
|
||||
console.log("Download Sucess")
|
||||
const zip = new AdmZip(response)
|
||||
|
||||
zip.extractAllTo(bds_dir_bedrock, true)
|
||||
console.log("Extract Sucess")
|
||||
if (server_configs) writeFileSync(join(bds_dir_bedrock, "server.properties"), server_configs);
|
||||
@ -70,12 +69,9 @@ module.exports = function (version, force_install, callback) {
|
||||
} else {
|
||||
url = Servers.java[version].url
|
||||
console.log(`Server data publish: ${Servers.java[version].data}`)
|
||||
response = fetchSync(url, {
|
||||
Binary: true
|
||||
}).Buffer
|
||||
console.log("Download Sucess")
|
||||
writeFileSync(join(bds_dir_java, "MinecraftServerJava.jar"), response, "binary")
|
||||
console.log("Save sucess");
|
||||
|
||||
writeFileSync(join(bds_dir_java, "MinecraftServerJava.jar"), Buffer.from((await (await fetch(url)).arrayBuffer())), "binary")
|
||||
console.log("Success when downloading and saving Minecraft Server java");
|
||||
UpdateServerVersion(version);
|
||||
if (typeof callback === "function") callback(true);
|
||||
return true
|
||||
@ -93,24 +89,19 @@ module.exports = function (version, force_install, callback) {
|
||||
} else {
|
||||
const PocketMineJson = Servers.pocketmine[version]
|
||||
console.log(`Server data publish: ${PocketMineJson.data}`);
|
||||
response = fetchSync(PocketMineJson.url, {
|
||||
Binary: true
|
||||
}).Buffer;
|
||||
console.log("Success when downloading php from PocketMine-MP");
|
||||
// Write php file
|
||||
writeFileSync(join(bds_dir_pocketmine, "PocketMine-MP.phar"), response, "binary")
|
||||
|
||||
|
||||
writeFileSync(join(bds_dir_pocketmine, "PocketMine-MP.phar"), Buffer.from((await (await fetch(PocketMineJson.url)).arrayBuffer())), "binary")
|
||||
console.log("Success downloading and saving PocketMine-MP php");
|
||||
|
||||
// Check PHP binary
|
||||
var urlPHPBin; /* Check System php */try {urlPHPBin = PHPBin[process.platform][bds.arch]} catch (error) {throw new Error("unsupported system")}
|
||||
console.log("Downloading PHP Binaries");
|
||||
// Fetch Files
|
||||
const php = fetchSync(urlPHPBin, {
|
||||
Binary: true
|
||||
});
|
||||
const zipExtractBin = new AdmZip(php);
|
||||
// Extract bin
|
||||
// Get PHP bin File and extract
|
||||
const zipExtractBin = new AdmZip(Buffer.from((await (await fetch(urlPHPBin)).arrayBuffer())));
|
||||
|
||||
zipExtractBin.extractAllTo(bds_dir_pocketmine, true)
|
||||
console.log("Successfully extracting the binaries")
|
||||
|
||||
// Check Configs and others
|
||||
const phpFolder = resolve(bds_dir_pocketmine, "bin")
|
||||
const phpConfigInit = readFileSync(join(phpFolder, "php7", "bin", "php.ini"), "utf-8").split(/\n/g).filter(a=>a.trim());
|
||||
|
Reference in New Issue
Block a user