GateShiftServer is the main serverside engine for the project. It will be a modular server that loosely couples components together allowing for unit testing and service distribution.

Software Layers

There are several software layers inside the server. These layers provide a finite boundry between the components and allow everything to be loosely coupled. The layers in order starting from the core are as follows:
  1. Core Layer - Defines the code required to make the manager layer function, start the application, and monitor its running status.
  2. Manager Layer - Defines the code required to manage pieces of the functionality as far as remote connections, configuration, service layer management, and live administration.
  3. Service Layer - Defines the code required to make the clients function. This is the layer where the engine itself handles the world, players, npcs, and anything else of the game.

With these boundries in mind, a layer knows little about the ones before it, and has no control over what the previous layer can do. The same is also true for the reverse. The core layer, for instance, should never know how to load, unload, or communicate to a service layer component and should not know or care how the manager layer performs its job.

Manager Layer Components

Last edited Jan 11, 2009 at 11:10 PM by TMYates, version 1


No comments yet.