BattleCon is a Battlefield / Frostbite engine RCON layer built on top of nothing less than the excellent node.js platform.
With BattleCon it's easy to create your very own server management interface, like automatic map votings, auto team balancing, live player stats and more.
var BattleCon = require("battlecon"),
bc = new BattleCon("host", port, "pass").use("core");
bc.on("login", function() {
bc.exec("version", function(err, res) {
if (err) {
console.log("Error: "+err);
return;
}
console.log("version:", res);
});
});
bc.connect(); // Connects and logs in
...
bc.on("event", function(evt) {
console.log("Event:", evt);
});
The core module implements common commands used between Frostbite-driven games, like logging in and out, version and server info querying.
Additionally, BattleCon supports game-specific modules, like the BF3 and BF4 modules. Loading modules is simple:
...
var bc = new BattleCon("host", port, "pass").use("BF4");
...your logic...
bc.connect();
Currently, the game modules are quite basic and provide basic functionality only. Feel free to extend them and send me a pull request!
There is a simple example of how to use BattleCon, like reacting to server events and issuing commands:
Apache License, Version 2.0