Lobby Development: Difference between revisions

From Spring
Jump to navigationJump to search
 
(42 intermediate revisions by 10 users not shown)
Line 1: Line 1:
[[Engine_Development|Development]] < {{FULLPAGENAME}}
[[Engine_Development|Development]] < {{FULLPAGENAME}}


=Documentation=
=Live systems=


==Protocol==
===Protocol===
* [http://springrts.com/dl/LobbyProtocol/ HTML] (is updated once a day)
* [https://springrts.com/dl/LobbyProtocol/ProtocolDescription.html Spring Lobby Protocol Description]
* [https://github.com/spring/LobbyProtocol/blob/master/ProtocolDescription.xml XML] (raw, always latest)
* [https://springrts.com/dl/LobbyProtocol/ProtocolDescription.html#Changelog changelog]
* [http://springrts.com/dl/LobbyProtocol/ Index of commands]
These are both updated once per day from [https://github.com/spring/LobbyProtocol/blob/master/ProtocolDescription.xml the raw xml docs]


==Download Systems==
===Server:===
* [http://springrts.com/wiki/Dev:LobbyDownloadSystems Lobby Download Systems]
 
===[[Uberserver]]===
<font color="orange">cross-platform</font>,
<font color="#00AAFF">Python</font>,
by <font color="#00CC00">aegis, abma, silentwings</font>
 
* The primary lobby server currently running on springrts.com. See the dedicated page on [[uberserver]] for more info.
 
===[[Download_Systems]]===
Various systems exist to supply content, see the dedicated page [[Download_Systems]].


=Lobby client development=


==Useable lobby clients==
===Lobby clients:===


===SpringLobby===
===[[SpringLobby]]===
<font color="orange">cross-platform</font>,
<font color="orange">Linux, Windows, Mac </font>,
<font color="#00AAFF">C++</font>,
<font color="#00AAFF">C++</font>,
by <font color="#00CC00">BrainDamage</font> &
by <font color="#00CC00">Koshi, Braindamage, Abma and many others </font>
<font color="#00CC00">koshi</font>


SpringLobby is the official lobby client of spring and is bundled with the Spring engine in the installer. It uses the ''wxWidgets'' library. You can browse the sources and submit issues on its [http://springlobby.info/ website].
[https://github.com/springlobby/springlobby github: repository + issues]


===Zero-K===
===[[Chobby]]===
<font color="orange">Windows</font>,
<font color="orange">Windows</font>,
<font color="#00AAFF">Lua</font>,
by <font color="#00CC00">gajop, with major contributions from various game devs</font>
[https://github.com/Spring-Chobby/Chobby github: repository + issues]
=Zero-K systems=
===ZeroK Server===
<font color="orange">cross-platform</font>,
<font color="#00AAFF">C#</font>,
<font color="#00AAFF">C#</font>,
by <font color="#00CC00">Licho</font> & <font color="#00CC00">quantum</font>
by <font color="#00CC00">Licho</font>
 
Zero-K lobby server. Uses a different protocol. Source can be found at
https://github.com/ZeroK-RTS/Zero-K-Infrastructure/tree/master/ZkLobbyServer


[https://code.google.com/p/zero-k/ Zero-K project page]
===Zero-K Lobby===


===TASClient===
No longer uses the Spring lobby protocol
<font color="orange">Windows</font>,
<font color="#00AAFF">Delphi</font>,
by <font color="#00CC00">Satirik</font>


You can download the sources from the [http://springrts.com/svn/spring/Lobby/TASClient/ subversion repository] (svn://springrts.com/svn/spring/Lobby/TASClient/) and browse them on the [http://springrts.com/websvn/listing.php?repname=Spring&path=%2FLobby%2FTASClient%2F#_Lobby_TASClient_ websvn]. Latest binary version is always available here:
<font color="orange">Windows/Linux</font>,
http://springrts.com/dl/tasclient/TASClientLatest.7z
<font color="#00AAFF">C#</font>,
by <font color="#00CC00">Licho</font> & <font color="#00CC00">quantum</font>


[http://springrts.com/phpbb/viewtopic.php?f=12&t=18999 How to compile TASClient]
[https://github.com/ZeroK-RTS/Zero-K-Infrastructure/tree/master/ZeroKLobby Zero-K Lobby github]


[http://springrts.com/phpbb/viewtopic.php?f=14&t=19014 How to customize TASClient]




===NotaLobby===
=Legacy systems=
<font color="orange">cross-platform</font>,
<font color="#00AAFF">C++</font>,
by <font color="#00CC00">danil_kalina</font>, <font color="#00CC00">a1983</font>, <font color="#00CC00">TruePer</font>


[http://springrts.com/phpbb/viewtopic.php?f=64&t=27289 Forum thread]
==Legacy lobby clients==


From mostly functional, to WIP, abandoned or unusable. Apparently, its much harder to make a lobby client than most people think.


===flobby===
===flobby===
<font color="orange">Linux</font>,
<font color="orange">Linux</font>,
<font color="#00AAFF">C++</font>,
<font color="#00AAFF">C++</font>,
by <font color="#00CC00">cleanrock</font>
by <font color="#00CC00">cleanrock</font>, only maintained actively for use with the Zero-K lobbyserver.


[https://github.com/cleanrock/flobby github page]
[https://github.com/cleanrock/flobby github page]


==Work in progress or abandoned==
===Weblobby===
<font color="orange">cross-platform</font>,
<font color="#00AAFF">C++</font>,
<font color="#FF0000">unmaintained</font> (superceeded by Chobby)
 
[http://weblobby.springrts.com project site]
 
===[[TASClient]]===
<font color="orange">Windows</font>,
<font color="#00AAFF">Delphi</font>,
by <font color="#00CC00">Satirik</font>, <font color="#FF0000">unmaintained</font>


===Alphalobby===
===Alphalobby===
Line 65: Line 93:


Alphalobby is still very much work in progress. If you still wish to use it, source available from the [http://code.google.com/p/alphalobby/source/checkout mercurial repository], binary available on the [http://springfiles.com/spring/lobby-clients/alphalobby springfiles page].
Alphalobby is still very much work in progress. If you still wish to use it, source available from the [http://code.google.com/p/alphalobby/source/checkout mercurial repository], binary available on the [http://springfiles.com/spring/lobby-clients/alphalobby springfiles page].


===CheeseLobby===
===CheeseLobby===
<font color="orange">cross-platform</font>,
<font color="orange">cross-platform</font>,
<font color="#00AAFF">Java</font>,
<font color="#00AAFF">Java</font>,
by <font color="#00CC00">Cheesecan</font>
by <font color="#00CC00">Cheesecan</font>, <font color="#FF0000">unmaintained</font>


[http://springrts.com/phpbb/viewtopic.php?f=64&t=24905 forum thread]
[http://springrts.com/phpbb/viewtopic.php?f=64&t=24905 forum thread]


[https://github.com/jahwag/cheeselobby binaries and code]
[https://github.com/jahwag/OpenLobby binaries and code]
 


===QtLobby===
===QtLobby===
Line 82: Line 108:
<font color="#FF0000">unmaintained</font>
<font color="#FF0000">unmaintained</font>


[http://code.google.com/p/qtlobby/ project page]
[https://github.com/tizbac/qtlobby project page]


 
===Spring-PythonBotFramework===
===Weblobby===
online lobby client by CarRepairer
 
[http://springrts.com/phpbb/viewtopic.php?f=64&t=26414 forum thread]
 
=Libraries and frameworks=
 
==Spring-PythonBotFramework==
<font color="orange">cross-platform</font>,
<font color="orange">cross-platform</font>,
<font color="#00AAFF">Python</font>, by
<font color="#00AAFF">Python</font>, by
<font color="#00CC00">BrainDamage</font> & <font color="#00CC00">koshi</font>
<font color="#00CC00">BrainDamage</font> & <font color="#00CC00">koshi</font>, <font color="#FF0000">unmaintained</font>


A bot framework written in python. [https://github.com/renemilk/tasbot/wiki GitHub wiki]
A bot framework written in python. [https://github.com/renemilk/tasbot/wiki GitHub wiki]


==Go SpringLobbyClient==
===Go SpringLobbyClient===
<font color="orange">cross-platform</font>,
<font color="orange">cross-platform</font>,
<font color="#00AAFF">Go</font>
<font color="#00AAFF">Go</font>
<font color="#FF0000">unmaintained</font>


A simple client implementation of the lobby protocol in Go.
A simple client implementation of the lobby protocol in Go.
[https://github.com/Agon/go-slc/ project page]
[https://github.com/Agon/go-slc/ project page]


=Lobby server development=
==Legacy lobbyservers==
 
===SpringLS===
==SpringLS==
<font color="orange">cross-platform</font>,
<font color="orange">cross-platform</font>,
<font color="#00AAFF">Java</font>,
<font color="#00AAFF">Java</font>,
<font color="#00CC00">hoijui</font>
<font color="#00CC00">hoijui</font>


The longest-running lobby server, created by Betalord. You can fetch the sources through ''git''. Details can be found on the [http://github.com/spring/SpringLS development site].
Legacy lobby server, created by Betalord. Superceeded by uberserver in 2012. You can fetch the sources through ''git''. Details can be found on the [http://github.com/spring/SpringLS development site].
 
==UberServer==
<font color="orange">cross-platform</font>,
<font color="#00AAFF">Python</font>,
by <font color="#00CC00">aegis</font>


The primary lobby server currently running on springrts.com. All protocol commands in the primary documentation should be fully-functional and compatible between both uberserver and SpringLS. You can get more information and download uberserver at the [https://github.com/lunixbochs/uberserver github page]


[[Category: Lobbies]]
[[Category: Lobby]]

Latest revision as of 18:03, 24 December 2019

Development < Lobby Development

Live systems

Protocol

These are both updated once per day from the raw xml docs

Server:

Uberserver

cross-platform, Python, by aegis, abma, silentwings

  • The primary lobby server currently running on springrts.com. See the dedicated page on uberserver for more info.

Download_Systems

Various systems exist to supply content, see the dedicated page Download_Systems.


Lobby clients:

SpringLobby

Linux, Windows, Mac , C++, by Koshi, Braindamage, Abma and many others

github: repository + issues

Chobby

Windows, Lua, by gajop, with major contributions from various game devs

github: repository + issues


Zero-K systems

ZeroK Server

cross-platform, C#, by Licho

Zero-K lobby server. Uses a different protocol. Source can be found at https://github.com/ZeroK-RTS/Zero-K-Infrastructure/tree/master/ZkLobbyServer

Zero-K Lobby

No longer uses the Spring lobby protocol

Windows/Linux, C#, by Licho & quantum

Zero-K Lobby github


Legacy systems

Legacy lobby clients

From mostly functional, to WIP, abandoned or unusable. Apparently, its much harder to make a lobby client than most people think.

flobby

Linux, C++, by cleanrock, only maintained actively for use with the Zero-K lobbyserver.

github page

Weblobby

cross-platform, C++, unmaintained (superceeded by Chobby)

project site

TASClient

Windows, Delphi, by Satirik, unmaintained

Alphalobby

Windows, C, unmaintained

Alphalobby is still very much work in progress. If you still wish to use it, source available from the mercurial repository, binary available on the springfiles page.

CheeseLobby

cross-platform, Java, by Cheesecan, unmaintained

forum thread

binaries and code

QtLobby

cross-platform, C++, unmaintained

project page

Spring-PythonBotFramework

cross-platform, Python, by BrainDamage & koshi, unmaintained

A bot framework written in python. GitHub wiki

Go SpringLobbyClient

cross-platform, Go unmaintained

A simple client implementation of the lobby protocol in Go. project page

Legacy lobbyservers

SpringLS

cross-platform, Java, hoijui

Legacy lobby server, created by Betalord. Superceeded by uberserver in 2012. You can fetch the sources through git. Details can be found on the development site.