Uberserver: Difference between revisions
| Line 12: | Line 12: | ||
with springlobby type this as admin user into the server window: | with springlobby type this as admin user into the server window: | ||
SETLATESTSPRINGVERSION | SETLATESTSPRINGVERSION 100.0 | ||
to make it persistent, | to make it persistent, edit /home/lobby/uberserver/args.txt: | ||
--latestspringversion 100.0 | |||
= Offline LAN server = | = Offline LAN server = | ||
Revision as of 23:12, 15 July 2015
uberserver is a lobbyserver written in python for spring lobby clients.
its currently used as the main lobby server running at lobby.springrts.com port 8200.
see https://github.com/spring/uberserver for more details
uberserver currently doesn't work on windows/osx, any help is welcome!
see https://github.com/spring/uberserver/issues/70
set spring version
with springlobby type this as admin user into the server window:
SETLATESTSPRINGVERSION 100.0
to make it persistent, edit /home/lobby/uberserver/args.txt:
--latestspringversion 100.0
Offline LAN server
This is not really the official way but I started an offline LAN server on my Lubuntu 15.04 doing this:
First, download the latest uberserver:
wget https://github.com/spring/uberserver/archive/master.zip unzip master.zip cd uberserver-master
If you will be offline, the public IP check crashes the server. This should disable it:
sed -i "s#urlopen('http://springrts.com/lobby/getip.php').read()#'8.8.8.8'#" DataHandler.py
If you want to skip user registration and accepting the Terms of Use (it's your server after all), these ugly hacks should help:
You can check https://github.com/spring/uberserver/issues/16 first to see if it's officially supported by now.
sed -i "s#allowed = False#allowed = True#" protocol/Protocol.py sed -Ei "s#(def in_LOGIN.*)#\1\n\t\tself.userdb.legacy_register_user(username, password, client.ip_address, client.country_code)#" protocol/Protocol.py sed -i "s#(client.access == 'agreement'#(client.access == 'agreement_disabled'#" protocol/Protocol.py
Then install the required Python modules (geo IP stuff is not needed when on a LAN and/or offline) and start the server:
sudo apt-get install python-sqlalchemy python-pycryptopp python-twisted ./server.py
After that you can just launch a lobby client, connect to localhost (or the IP address of the server) with any username and password (empty might not work; didn't test) and you should be able to play.
You can see the expected output here (except that the packages were already installed): http://pastebin.com/ZTZzL1M9
The line "[0] Successfully logged in static user <ChanServ>" takes a few seconds while the server initializes its database.
The two last lines should appear when your lobby client connects.