===== Supported Operating Systems =====
* Linux
* FreeBSD
\\
\\
\\
===== Required Dependencies =====
^ Name ^ Description ^ Download page URL ^ Ubuntu Package ^ ArchLinux Package ^
| GCC/G++ | Gnu C Compiler with C++ support | [[http://gcc.gnu.org/|Homepage]] | build-essential | base-devel |
| CMake | Build system | [[http://www.cmake.org/cmake/resources/software.html|Download]] | cmake | cmake |
| GeoIP (optional) | IP address to country lookup database | [[http://www.maxmind.com/app/c|Download]] | libgeoip-dev | geoip |
| SQLite3 | Database engine | [[http://www.sqlite.org/download.html|Download]] | libsqlite3-dev | sqlite |
| ZLib | Data compression library | [[http://zlib.net/|Homepage]] | zlib1g-dev | zlib |
| Git | Open source version control system | [[https://git-scm.com/|Homepage]] | git | git |
| MySQL (optional) | Open source database | [[http://www.mysql.fr/downloads/mysql/|Download]] | libmysqlclient-dev | libmariadbclient |
| OpenSSL | Open source implementation of SSL/TLS | [[http://www.openssl.org/source/|Download]] | libssl-dev | openssl |
| Boost | Provides free peer-reviewed portable C++ source libraries. | [[http://www.boost.org/|Homepage]] | libboost-all-dev | boost |
===== Download the Source Code =====
svn checkout http://suckerserv.googlecode.com/svn/trunk/ suckerserv
But suckerserv is no more updated on google code, the new commits are made on github, so to download that new one :
git clone https://github.com/SuckerServ/suckerserv.git
===== Build and Install =====
cd suckerserv/suckerserv-v5
chmod +x compile.sh
./compile.sh
===== Configuration =====
The server configuration file exists at **//conf/server.conf//**.
=== Main Server Variables ===
^ Name ^ Default Value ^ Description ^
| servername | "SuckerServ-v5" | A name to identify your server that will appear on the server browser |
| serverip | "0.0.0.0" | Game server listen address |
| serverport | 28785 | Game server listen port |
| publicserver | 1 | Register the server on the sauerbraten.org masterserver to appear on the server list |
| maxclients | 8 | Maximum number of client connections |
| specslots | 0 | Switch to 1 to increase maxclients for each spectators |
| reserved_slots | 1 | Number of reserved slots for admin |
| reserved_slots_password | "" | Password for reserved slots without giving admin privilege |
| motd | "" | Message Of The Day, sent on player connection |
| admin_password | "" | Used to gain admin status in-game by typing /setmaster . (See alternative: [[en:suckerserv:auth|Authkey authentification]]) |
| master_password | "" | Used to gain master status in-game by typing /setmaster . Only useful if /setmaster 1 isdisallowed (See alternative: [[en:suckerserv:auth|Authkey authentification]]) |
| server_password | "" | Used to prevent player connection without giving a password |
| intermission_time | 30000 | Time to wait at intermission before loading next map |
| ctf_teamkill_penalty | true | Toggles wether teamkilling the flagrunner disallow the teamkiller from stealing the flag |
=== Game Customization Variables ===
^ Name ^ Default Value ^ Description ^
| default_gamemode | "ffa" | The game mode used for the first game |
| default_game_on_empty | 1 | Switch back to default game mode when the server goes empty |
| allowed_gamemodes | | List of acceptable game modes that players can vote for |
| allow_mapvote | 1 | Ban map voting by setting this var to 0 |
| use_best_map_size | 0 | Next map is chosen for its appropriate size based on the number of players |
| use_server_random_maprotation | 0 | Next map is randomly chosen |
| mapvote_disallow_unknown_map | 1 | Disallow map votes for maps not found in the current game-mode's map rotation list |
The map rotation lists are located in **//conf/maps.conf//** and **//conf/new_maps.conf//**
[[en:suckerserv:exemple|Server Configuration Exemples]]
===== Startup and Shutdown =====
./bin/server
To immediately shutdown the server:
./bin/server stop
===== Support =====
If you're having any problems installing or configuring SuckerServ feel free to drop by our IRC channel at **#suckerserv** on the **Gamesurge** IRC network and we'll help you out (**#suckerserv@irc.gamesurge.net**), or our Jabber room at **[[http://jappix.piernov.org/?r=suckerserv|suckerserv@salons.piernov.org]]**.