Your friendly agar.io private server recreation.
-
It supports all current agar.io protocol versions.
-
It supports handling multiple worlds, all within one instance. Be wary that you can still use up the one CPU core node.js is running on.
-
It has a minimal memory footprint, and strictly uses uWebSockets for networking.
-
The code uses JSDoc to specify types. Understanding what the code does is down to your understanding of English.
-
Ask all your questions over on the Agar.io Private Servers Discord guild.
-
Before connecting from agar.io you will need to do
core.disableIntegrityChecks(true)
in the console.
-
Make sure you have node.js version 8 or greater.
-
Make sure you have a C++11 compliant compiler for building uWebSockets.
- If you're on Windows,
npm install -g windows-build-tools
. - If you're on GNU/Linux, use your package manager to install a supported C++ compiler such as GCC.
- If you're on Windows,
-
Clone / download the repo.
-
npm install
in/
. -
cd ./cli/
-
node index.js
-
After your first run, OgarII will drop two files in
cli/
/ working directory:log-settings.json
andsettings.json
. -
To change how OgarII runs, modify
cli/settings.json
. -
To change what gets logged, modify
cli/log-settings.json
.
-
To create your own commands, check out
src/commands/CommandList.js
on the command API. To add it to the CLI useServerHandle.commands.register
, and for chat commands useServerHandle.chatCommands.register
. -
To create your own gamemodes, inherit
src/Gamemode.js
'sGamemode
abstract class, modify event handling to your wish, then add it withServerHandle.gamemodes.register
before the handle starts. -
The
ServerHandle
class is standalone, which means that you can completely ditch thecli/
folder,require("./src/ServerHandle.js")
and do whatever you want with it. OgarII is also available as an npm package for this exact purpose.