MongoDB And Redis for the Screeps Private Server
- nodejs 8+ (Current LTS heavily recommended)
- screeps 3.0+
- mongodb 2.6+
- redis 3.0.6+ For Windows installs, you can follow these steps: https://github.com/ServiceStack/redis-windows#option-3-running-microsofts-native-port-of-redis
Installing on Ubuntu? Checkout the community guide in the official Docs Private server on Ubuntu using MongoDB and Redis
- Ensure both mongodb and redis are already installed and running
npm install screepsmod-mongoinside your server's mods folder
- Edit mods.json to point to the index.js such as:
"mods": [ "node_modules\\screepsmod-mongo\\index.js" ],
- Start server!
- DB Population
mongo.importDB()in the screeps cli imports your existing DB
system.resetAllData()in the screeps cli for a completely fresh DB
- Once done restart the server
With this mod installed you can continue to manage the server as usual, all CLI commands still function and bahave functionally identical. The original storage module will still run, but is completely ignored.
Keep in mind that RAM requirements are slightly higher, by default mongo uses 50% - 1G of your system RAM. Redis on the other hand, uses very little.
Mongo and Redis CLIs can be used to see and modify the data as usual, backups and restores should be done via normal mongo and redis tools.
All options and defaults are listed below
- host: localhost
- port: 27017
- database: screeps
- uri: mongodb://localhost:27017/screeps
If the uri Parameter is supplied it will overwrite all other settings. Use it for Authentication, passing extra options, etc.
- host: localhost
- port: 6379
Config can be applied in several ways:
Add to the bottom of your .screepsrc file
[mongo] host = 192.168.0.222 [redis] host = 192.168.0.222
Please note that this method only works when launching modules directly, when launched via the default launcher they will be ignored.