diff --git a/cluster_rcon.js b/CLI tools/cluster_rcon.js similarity index 79% rename from cluster_rcon.js rename to CLI tools/cluster_rcon.js index bfffde5b..b62e6638 100644 --- a/cluster_rcon.js +++ b/CLI tools/cluster_rcon.js @@ -1,5 +1,13 @@ const needle = require("needle"); -const config = require("./config.json"); +const cli = require("cli"); +const config = require("./../config.json"); + +let options = cli.parse() +cli.setUsage(`node cluster_rcon.js /c game.player.force = "player"`) +if(process.argv.length < 3){ + cli.getUsage() + process.exit(1) +} const masterIP = `${config.masterIP}:${config.masterPort}`; const token = config.masterAuthToken @@ -30,4 +38,4 @@ let killBiters = `/silent-command local surface=game.surfaces[1] for key, entity // console.log(resp.body) // }); // }, 1000*60*5); -})(); \ No newline at end of file +})(); diff --git a/CLI tools/delete_player.js b/CLI tools/delete_player.js new file mode 100644 index 00000000..1043935e --- /dev/null +++ b/CLI tools/delete_player.js @@ -0,0 +1,19 @@ +const needle = require("needle") +const config = require("./../config.json") +const cli = require("cli") + +let options = cli.parse({ + name: ["n", "Name of the player to delete, case sensitive", "string"], + token: [false, "Factorio auth token", "string", config.masterAuthToken] +}) +if(!options.name){ + cli.getUsage() + process.exit(1) +} + +needle.post(config.masterIP+":"+config.masterPort+"/api/playerManager/deletePlayer", { + name: options.name, + token: options.token +}, (err, resp) => { + console.log(resp.body) +}); diff --git a/package.json b/package.json index 9e8d861f..3fce3b94 100644 --- a/package.json +++ b/package.json @@ -30,6 +30,7 @@ "bcryptjs": "^2.4.3", "body-parser": "^1.18.2", "cache-require-paths": "^0.3.0", + "cli": "^1.0.1", "cli-interact": "^0.1.9", "codecov": "^3.0.1", "compression": "^1.7.2",