This is the game server for Eleven Giants.
Work in progress disclaimer: The server is currently only able to run a limited portion of the game. To actually start up the client with it, additional components are required, which are not publicly available at this time. If you want to get involved in the development process, please let us know!
Development and testing usually happens in our Debian based Vagrant VM, so that is probably the least painful way to get up and running. Setup instructions for the VM can be found in our internal wiki.
For the adventurous, it should be possible to run the server on most platforms that support Node.js v6. At the moment you also need Python 2.7 for the GSJS preprocessor script.
Note: The following setup steps are not necessary if you are using the
Vagrant box and created the VM with the eleven-server and eleven-gsjs
repos already present.
Clone this repository and eleven-gsjs
in the same parent directory. Directory names are assumed to match the Git
repository names. Call
npm -s run preprocto run the preprocessor script that prepares the GSJS code for embedding in the game server.
Once that has finished successfully, compile the required non-JS npm packages:
npm installIf you are running the Vagrant VM on Windows, add --no-bin-links as an
argument (necessary because symlinks cannot be created in folders shared between
the VM and the Windows host).
The server expects environment specific parts of the configuration in a file
called config_local.js in its root directory. Copy one of the
config_local.js.SAMPLE_* files and adjust it according to your needs.
All actions are invoked via npm.
The following operations are available:
testrun the unit tests (with mocha)functestrun functional testsinttestrun integration tests (depends on external components)alltestsrun all tests back-to-back with reduced output (also includes thelinttask below); handy as a basic smoke test before committingbenchrun benchmarkslintperform static code analysis with ESLintdocsgenerate HTML documentation with JSDocstartrun the server
These scripts can be called using npm run-script (or the alias npm run); the
-s flag hides distracting additional output, e.g.:
npm -s run testTo run specific tests or benchmark suites, append arguments for the test or
benchmark runner with --, e.g.:
npm -s run test -- --grep objrefProxy
npm -s run bench -- utils.js(this requires npm >= 2.0.0)
Help is always welcome! If you are interested, please [get in touch] (http://elevengiants.com/contact.php) to get access to our [Slack] (http://slack.com/) instance, internal documentation, guidelines and other resources.
(If you are in fact already signed up and ready to go, have a look here).