This repository has been archived by the owner on Dec 9, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
Next Generation WorldForge MetaServer
License
worldforge/metaserver-ng
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
------------ DEPRECATED This code has been moved to [the Worldforge repository](https://github.com/worldforge/worldforge). ------------ Welcome to the WorldForge Next Generation MetaServer! The new MetaServer aims to have the following goals: 1) Maintain backwards compatibility with the existing WorldForge MetaServer protocol/libraries 2) Provide additional features beyond the current MetaServer capabilities 3) Provide a robust framework that would facilitate future development 4) Serve as a evaluation of multiple boost libraries for inclusion into the WorldForge codebase ( most specifically targetted was boost::asio ). Code: https://github.com/worldforge/metaserver-ng Bugs / Features : https://launchpad.net/metaserver-ng This is as always, a work-in-progress. If you have questions / comments / suggestions, please feel free to contact any of the WorldForge folks as detailed on http://worldforge.org Installation ------------ The usual: - checkout from github, or download a dist package - autogen.sh && configure && make && make install MetaServer Overview ------------------- The MetaServer Next Generation is a generic lobby type server. The main services that it provides are: 1. Maintain a list of currently available servers, and their corresponding attributes 2. Maintain a list of currently connected clients, and their corresponding attributes 3. Provide mechanism for servers to update, and clients to query this information. 4. Provide delegated authentication, if requested by the connecting server. Feature Roadmap --------------- Features / Fixes can be brought up as either blueprints ( new features ), or bugs ( abhorrent behaviour ) at https://launchpad.net/metaserver-ng The current list of planned features ( in no specific order ): - binary packet logging ( partially implemented ) - replay binary packet log - delegate authentication - encryption of comms - context sensitive listreq ( in laymen terms, the client can set a filter once on any server attribute, and all list requests are constrained by those filters ) - client to client game selection - automatic client:server matching - webui/utility to modify runtime configuration - scoreboard session list - admin interface to query/effect data: - kill a session - create a session - query session list - serve up internal data structure as a dns request MetaServer Configuration ------------------------ [sections] - high level organisation of configuration options key=value - specific option Unknown options in the configuration file are ignored, and incorrectly formatted values raise a fatal exception on startup. In the case of a mismatch, the metaserver-ng.conf file contains the authoratative list of default values, and running the metaserver with the "--help" option will display the authoratative list of accepted options. The majority of options are self explanitory. Some options will be given a description as the purpose may be unclear. Example: [server] port=8453 ip=0.0.0.0 daemon=true logfile=~/.metaserver-ng/metaserver-ng.log client_stats=true server_stats=true MetaServer Protocol ------------------- Refer to PROTOCOL document. Contributors ------------ All contributors will be listed in the AUTHORS file. -- Sean Ryan <[email protected]>
About
Next Generation WorldForge MetaServer
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published