Windows not supported, contact Panda for support
This is a Screeps server setup that includes milestones and the Stats mod built in. It was originally created by TooAngel and this version includes data export for the milestones results. The exported data includes:
- Milestones reached
- Room status (ControllerId, creep count, level, progress, structure count)
- Tick count
- Start/end time
- Node.js 16.x
- Docker-Compose
- Clone this repo
- Run
npm install
to install dependencies
- Update all
.example
files to your needs. This is not required if you use the default setup.
- Create a new folder in the
bots
directory - Add your bot's JS files to the new folder (the entry file must be named
main.js
) - Update the
config.yml
file'sbots.bot
string to the path of your bot
--debug
: listen to setup Docker logs--force
: force the non-.example
config files to be overwritten--botFilePath
: change the path to the bot folder (where themain.js
file is located or all other .js files are located)--steamKey
: change the Steam key used to authenticate the bot--deleteLogs
: delete the logs folder on startup
--serverPort
: change the port the server will run on--cliPort
: change the port the CLI will run on--relayPort
: change the port the relay will run on--disableMongo
: disable the MongoDB database and use default db instead
--maxBots
: limit the number of bots that can be spawned--tickDuration
: change the tick duration (default: 100 (ms)--maxTickCount
: limit the number of ticks the server will run--maxTimeDuration
: change the maximum duration of the server in minutes (default: 60 minutes)
--discordWebHookUrl
: send the result to the configured webhook--discordUsername
: change the username of the webhook message, default:Screeps Performance Server
--githubOwner
: username of the GitHub user that owns the repo to report to--githubRepo
: name of the repo on GitHub to report to--githubAuth
: add a GitHub token to the request header--pasteBinUrlDevKey
: add a PasteBin dev key to send the result to PasteBin--logFilter
: filter the logs by a string and export them to an file calledlogListener
in logs folder
- Run
npm run server
to start the server
After you see Start the simulation with runtime (... ticks if chosen limited tick run)
, go to localhost:21025
(if not changed) and check out the admin utils dashboard. The default pre-spawned user password is password
.
You can also start the server using npx
by running npm i -g screeps-performance-server
and then npx screeps-performance-server
with optional parameters (see #Configuration run commands)
You can add milestones to the config file, which will be checked every tick. If one of them is reached, it will be logged. The server should stop after all milestones have been reached.
To add a milestone, you can edit or add one and add/update one of the following options:
level
(rcl)creeps
(count)structures
(count)