Difference between revisions of "Private Server"
m (→Info) |
(Finalization of cleaning up the page and adding some info.) |
||
Line 8: | Line 8: | ||
<br> |
<br> |
||
The Screeps private server is a private server created by the devs and highly modifiable by the community.<br> |
The Screeps private server is a private server created by the devs and highly modifiable by the community.<br> |
||
+ | |||
− | <br> |
||
It consists of several segmented modules detailed below. And you can access their source codes at the bottom of this page.<br> |
It consists of several segmented modules detailed below. And you can access their source codes at the bottom of this page.<br> |
||
− | <br> |
||
The modules are as follows:<br> |
The modules are as follows:<br> |
||
+ | |||
− | <br> |
||
=== Launcher === |
=== Launcher === |
||
launcher launches the rest of the processes, and it includes the server control GUI.<br> |
launcher launches the rest of the processes, and it includes the server control GUI.<br> |
||
It is also an optional modules as any user can write their own launcher or launch modules manually.<br> |
It is also an optional modules as any user can write their own launcher or launch modules manually.<br> |
||
Doing the latter gives far more control regarding the server operations.<br> |
Doing the latter gives far more control regarding the server operations.<br> |
||
+ | |||
− | <br> |
||
=== Storage === |
=== Storage === |
||
storage contains a LokiJS-based database, a key-value storage, and a Pub/Sub mechanism.<br> |
storage contains a LokiJS-based database, a key-value storage, and a Pub/Sub mechanism.<br> |
||
The rest of the processes connect to storage to exchange data.<br> |
The rest of the processes connect to storage to exchange data.<br> |
||
It is where your servers game lives including map data, player data, etc...<br> |
It is where your servers game lives including map data, player data, etc...<br> |
||
+ | |||
− | <br> |
||
=== Backend === |
=== Backend === |
||
backend contains an HTTP server accessed by clients and a CLI server for administration.<br> |
backend contains an HTTP server accessed by clients and a CLI server for administration.<br> |
||
This allows for server administrators to execute commands and also the primary way to interact with mods if they have an intractable element.<br> |
This allows for server administrators to execute commands and also the primary way to interact with mods if they have an intractable element.<br> |
||
+ | |||
− | <br> |
||
=== Engine === |
=== Engine === |
||
engine is the game core. It executes game scripts and interacts with game world objects.<br> |
engine is the game core. It executes game scripts and interacts with game world objects.<br> |
||
+ | |||
− | <br> |
||
=== Driver === |
=== 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.<br> |
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.<br> |
||
You can replace this module with your own one, if you wish to use another method of storing and handling data.<br> |
You can replace this module with your own one, if you wish to use another method of storing and handling data.<br> |
||
+ | |||
− | <br> |
||
=== Common === |
=== Common === |
||
common is a shared code base with useful utilities.<br> |
common is a shared code base with useful utilities.<br> |
||
Line 43: | Line 42: | ||
[[Private Server Common Tasks|Common Tasks]] |
[[Private Server Common Tasks|Common Tasks]] |
||
− | == Server mods |
+ | == Server mods == |
-Mods tracked by devs: https://github.com/ScreepsMods<br> |
-Mods tracked by devs: https://github.com/ScreepsMods<br> |
||
-DeathTech's mods: https://github.com/DeathTech154/screepsMods<br> |
-DeathTech's mods: https://github.com/DeathTech154/screepsMods<br> |
Revision as of 16:23, 17 January 2017
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
Server mods
-Mods tracked by devs: 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. |