Private Server

From Screeps Wiki
Revision as of 22:41, 21 January 2017 by DeathTech (talk | contribs) (Updated the server mods section.)
Jump to navigation Jump to search

This article is a stub. You can help Screeps Wiki by editing to add more information.

Info

This article is a stub. You can help Screeps Wiki by editing to add more information.
The Screeps private server is a private server created by the devs and highly modifiable by the community.

It consists of several segmented modules detailed below. And you can access their source codes at the bottom of this page.
The modules are as follows:

Launcher

launcher launches the rest of the processes, and it includes the server control GUI.
It is also an optional modules as any user can write their own launcher or launch modules manually.
Doing the latter gives far more control regarding the server operations.

Storage

storage contains a LokiJS-based database, a key-value storage, and a Pub/Sub mechanism.
The rest of the processes connect to storage to exchange data.
It is where your servers game lives including map data, player data, etc...

Backend

backend contains an HTTP server accessed by clients and a CLI server for administration.
This allows for server administrators to execute commands and also the primary way to interact with mods if they have an intractable element.

Engine

engine is the game core. It executes game scripts and interacts with game world objects.

Driver

driver is a link between the environment-independent engine (that is shared for the official server, standalone server, and in-browser simulation) and the immediate environment that hosts the game engine.
You can replace this module with your own one, if you wish to use another method of storing and handling data.

Common

common is a shared code base with useful utilities.

Links

Installation

Common Tasks

Public Servers

Server mods

-Mods collection on github: https://github.com/ScreepsMods
-DeathTech's mods: https://github.com/DeathTech154/screepsMods
More to be added when more links get published.

!Notice!
DeathTech's version of GCL to CPU made by iKlem is not the official one.
For the official version of GCLtoCPU please refer to iKlem's github page (or you can find it in the devs tracked repositories displayed above.)
Please use "https://github.com/ScreepsMods/screepsmod-gcltocpu" for gcltocpu. Unless you want deathtech's chronjob version.


Source Code

https://GitHub.com/screeps/screeps Main Repo, mostly a meta-package and wrapper for the rest.
https://GitHub.com/screeps/launcher Electron/CLI launcher
https://GitHub.com/screeps/backend-local Webserver/API module
https://GitHub.com/screeps/engine Core Engine, this is shared with the public server
https://GitHub.com/screeps/storage Storage module, acts as a communications hub for all other modules
https://GitHub.com/screeps/common Shared module that other modules use to connect to storage
https://GitHub.com/screeps/driver This is the driver for the engine.