Lobby Development: Difference between revisions

From Spring
Jump to navigationJump to search
Aegis (talk | contribs)
 
(55 intermediate revisions by 18 users not shown)
Line 1: Line 1:
[[Engine_Development|Development]] < {{FULLPAGENAME}}
[[Engine_Development|Development]] < {{FULLPAGENAME}}


=Lobby client development=
=Live systems=
There are currently three working public lobby clients available, and two in development.


==SpringLobby==
===Protocol===
* [https://springrts.com/dl/LobbyProtocol/ProtocolDescription.html Spring Lobby Protocol Description]
* [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]
 
===Server:===
 
===[[Uberserver]]===
<font color="orange">cross-platform</font>,
<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 clients:===
===[[SpringLobby]]===
<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>,
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
===Zero-K Lobby===
No longer uses the Spring lobby protocol
<font color="orange">Windows/Linux</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> & <font color="#00CC00">quantum</font>  


[https://code.google.com/p/zero-k/ Zero-K project page]
[https://github.com/ZeroK-RTS/Zero-K-Infrastructure/tree/master/ZeroKLobby 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===
<font color="orange">Linux</font>,
<font color="#00AAFF">C++</font>,
by <font color="#00CC00">cleanrock</font>, only maintained actively for use with the Zero-K lobbyserver.
 
[https://github.com/cleanrock/flobby github page]
 
===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===
<font color="orange">Windows</font>,
<font color="orange">Windows</font>,
<font color="#00AAFF">C</font>,
<font color="#00AAFF">C</font>,
by <font color="#00CC00">Axiomatic</font>
<font color="#FF0000">unmaintained</font>


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].


==TASClient==
===CheeseLobby===
<font color="orange">Windows</font>,
<font color="orange">cross-platform</font>,
<font color="#00AAFF">Delphi</font>,
<font color="#00AAFF">Java</font>,
by <font color="#00CC00">Satirik</font>
by <font color="#00CC00">Cheesecan</font>, <font color="#FF0000">unmaintained</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:
http://springrts.com/dl/tasclient/TASClientLatest.7z


[http://springrts.com/phpbb/viewtopic.php?f=12&t=18999 How to compile TASClient]
[http://springrts.com/phpbb/viewtopic.php?f=64&t=24905 forum thread]


[http://springrts.com/phpbb/viewtopic.php?f=14&t=19014 How to customize TASClient]
[https://github.com/jahwag/OpenLobby binaries and code]


==QtLobby==
===QtLobby===
<font color="orange">cross-platform</font>,
<font color="orange">cross-platform</font>,
<font color="#00AAFF">C++</font>,
<font color="#00AAFF">C++</font>,
<font color="#FF0000">unmaintained</font>
<font color="#FF0000">unmaintained</font>


Qt lobby is currently the fastest lobby available and is very stable. It uses the Qt library. Use its [http://code.google.com/p/qtlobby/ project page] to post issues, download or browse the sources.
[https://github.com/tizbac/qtlobby project page]
 
=Libraries and frameworks=


==Spring-PythonBotFramework==
===Spring-PythonBotFramework===
<font color="orange">cross-platform</font>,
<font color="orange">cross-platform</font>,
<font color="#00AAFF">Python</font>,
<font color="#00AAFF">Python</font>, by
<font color="#FF0000">unmaintained</font>
<font color="#00CC00">BrainDamage</font> & <font color="#00CC00">koshi</font>, <font color="#FF0000">unmaintained</font>


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


==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==
==Protocol==
===SpringLS===
* [http://springrts.com/dl/tasclient/ProtocolDescription.xml HTML] (may be out of date)
* [https://github.com/spring/LobbyProtocol/blob/master/ProtocolDescription.xml XML] (raw, always latest)
 
==Download Systems==
* [http://springrts.com/wiki/Dev:LobbyDownloadSystems Lobby Download Systems]
 
==TASServer==
<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">Betalord</font> &
<font color="#00CC00">hoijui</font>
<font color="#00CC00">hoijui</font>


The previous lobby server, created by Betalord, using PHP for the admin interface. You can fetch the sources through ''git''. Details can be found on the [http://github.com/spring/TASServer 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 TASServer. 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.