Difference between revisions of "Servers"
(→See also: Added list of useful console commands to "See Also") |
Perihelion (talk | contribs) (Cleaned up the article.) |
||
Line 1: | Line 1: | ||
− | {{ | + | Like all multiplayer games based on Valve's Source Engine, [[Team Fortress 2]] uses a {{w|client-server model}}. The client is the copy of the game running on a player's computer, while the server is the software which players connect to. There are currently several thousand Team Fortress 2 servers running worldwide. |
− | + | A server is responsible for many aspects of Team Fortress 2 gameplay. It responds to players' actions by updating their respective locations and states (e.g. firing a weapon) before determining an appropriate response (e.g. dealing damage to a target) and then broadcasting the results to the players (e.g. displaying a damage dealt value). The server also handles events that are not controlled by players (e.g. map time, [[Sentry Gun]] behaviour, etc.). | |
− | |||
− | |||
== Benefits == | == Benefits == | ||
− | Instead of | + | Instead of joining an existing server, players can opt to create their own servers to host the game. This can allow the host player to set the [[map]] rotation, determining which particular maps and subsequent [[game mode]]s are played. Additionally, other built in settings can be altered, such as gravity, class slot limit, [[Highlander]] limitations and so on. Custom [[mods|modifications]] may also be installed on the server to provide alternate gameplay. |
== Types == | == Types == | ||
Line 12: | Line 10: | ||
=== Listen/Local server === | === Listen/Local server === | ||
− | A Listen Server is a basic server running within a player's TF2 client. It can be easily created through selecting the Create Server button at the main menu. Other players can connect to the server, but the | + | A Listen Server is a basic server running within a player's TF2 client. It can be easily created through selecting the Create Server button at the main menu. Other players can connect to the server, but the overhead of running a regular client on the same system will often strain the host player's hardware. These types of servers are best suited to LAN-based events. |
=== Dedicated server === | === Dedicated server === | ||
{{see also|Dedicated server configuration}} | {{see also|Dedicated server configuration}} | ||
− | A | + | A Dedicated Server is a standalone server that does not require Steam to run. Dedicated servers are preferred due to decreased overhead, among other factors. Additionally, many dedicated servers are run on high-end hardware in {{w|data center}}s, providing high performance and fast, reliable connections to players, which can seldom be guaranteed on residential connections. |
== Requirements == | == Requirements == | ||
Line 25: | Line 23: | ||
=== Dedicated server === | === Dedicated server === | ||
− | * '''Linux''' (x86 or amd64) running | + | * '''Linux''' (x86 or amd64) running {{w|glibc}} 2.3.2 or later. |
* '''FreeBSD''' (x86 or amd64) running the Linux compatibility code in the kernel and a recent base Linux system from the ports collection. | * '''FreeBSD''' (x86 or amd64) running the Linux compatibility code in the kernel and a recent base Linux system from the ports collection. | ||
* '''Windows''' 2000 and later. | * '''Windows''' 2000 and later. |
Revision as of 17:58, 9 July 2011
Like all multiplayer games based on Valve's Source Engine, Team Fortress 2 uses a Template:W. The client is the copy of the game running on a player's computer, while the server is the software which players connect to. There are currently several thousand Team Fortress 2 servers running worldwide.
A server is responsible for many aspects of Team Fortress 2 gameplay. It responds to players' actions by updating their respective locations and states (e.g. firing a weapon) before determining an appropriate response (e.g. dealing damage to a target) and then broadcasting the results to the players (e.g. displaying a damage dealt value). The server also handles events that are not controlled by players (e.g. map time, Sentry Gun behaviour, etc.).
Contents
Benefits
Instead of joining an existing server, players can opt to create their own servers to host the game. This can allow the host player to set the map rotation, determining which particular maps and subsequent game modes are played. Additionally, other built in settings can be altered, such as gravity, class slot limit, Highlander limitations and so on. Custom modifications may also be installed on the server to provide alternate gameplay.
Types
There are 2 types of servers that can be run using the Source engine.
Listen/Local server
A Listen Server is a basic server running within a player's TF2 client. It can be easily created through selecting the Create Server button at the main menu. Other players can connect to the server, but the overhead of running a regular client on the same system will often strain the host player's hardware. These types of servers are best suited to LAN-based events.
Dedicated server
A Dedicated Server is a standalone server that does not require Steam to run. Dedicated servers are preferred due to decreased overhead, among other factors. Additionally, many dedicated servers are run on high-end hardware in Template:Ws, providing high performance and fast, reliable connections to players, which can seldom be guaranteed on residential connections.
Requirements
While GSPs (Game Server Providers) generally use high-end dedicated hardware to run game servers, anybody can create a server by using a computer running:
Listen server
- Mac OS X 10.5.8 or 10.6.3 and higher meeting the game's requirements.
- Windows XP and higher meeting the game's requirements.
Dedicated server
- Linux (x86 or amd64) running Template:W 2.3.2 or later.
- FreeBSD (x86 or amd64) running the Linux compatibility code in the kernel and a recent base Linux system from the ports collection.
- Windows 2000 and later.
Update history
- Linux Dedicated Server beta release.
- The affinity of the main thread is not set explicitly for dedicated servers. This will properly load balance multiple instances of the dedicated server running on a multi-processor machine. The affinity is still set to CPU 1 for clients and listen servers.
- Removed mp_friendlyfire cvar for servers. Team Fortress 2 breaks in a number of ways if this is on.
- Fixed rare server crash due to data corruption in networking.
- Fixed server crash related to Spy Sappers.
- Extra options added to 'Game' tab in "Create server" menu option.
- Improved startup network initialization to catch issues with server firewalls popping up in the background.
- Fixed issues on Dustbowl and Hydro that could occur when a server emptied in the middle of a round.
- Fixed honeypot server problems.
- Added sv_pure to the server, currently defaults to off. Type "sv_pure" in the console to get the full description.
- Added server log entries for: Round_Start, Round_Setup_Begin, Round_Setup_End, Round_Overtime, Round_SuddenDeath, Round_Stalemate, Round_Win, Round_Length, Mini_Round_Selected, Mini_Round_Start, Mini_Round_Win, and Mini_Round_Length.
- Server log entries for Round_Win and level changes will now detail the team scores and player counts.
- Updated server log entries for flag captures to detail the number of captures and the tf_flag_caps_per_round value.
- Fixed Windows dedicated server running in -console mode moves its window to the front instead of the back upon startup.
- Fixed Windows dedicated server bug (in -console mode) where typing anything in the console window was slow and tedious.
- Fixed an error when updating name of 32nd player on server.
- Sudden death mode is now a server option (a convar) and defaults to OFF.
- Fixed an rcon/console command that could cause server crashes.
- Fixed a rare crash that can happen when a player being healed leaves the server suddenly.
- Added the ability for servers to have map-specific .cfg files in the cfg folder.
- Added player position data to server logging of events (player_death, player_builtobject, teamplay_flag_event, object_destroyed, teamplay_point_captured, teamplay_capture_blocked).
- Added "nextlevel" server cvar. If set to a valid map name, server will change to that map during the next changelevel.
- Added server log entry for buildings destroyed by their owner.
- Game server will now try 32 sequential ports to start up on if they are all originating on the same machine. Previously it would stop at 10.
- Fixed server crash with mp_forcecamera set to 1 (reverted to pre-release behavior).
- Servers can now specify metatags describing the custom rules they've adopted.
- Added options for servers who want to become custom games: Disable Critical hits (tf_weapon_criticals), eliminate respawn times (mp_disable_respawn_times), and raise maxplayers above 24.
- Made several improvements to server-side stat reporting (not related to individual player stats).
- Fixed "-maxplayers" on the command line not correctly setting the maxplayers value for the server.
- Removed sv_alltalk from the list of convars that affect custom server tags.
- Fixed servers with maxplayers <= 24 that are running SourceTV having the "increased_maxplayers" tag added for their server.
- Fixed Linux dedicated server map load problems on certain Athlon processors.
- Fixed Linux build not handling FCVAR_REPLICATED and FCVAR_NOTIFY cvars correctly.
- Plugged an exploit where the server could send executable code to the client.
- Added mp_stalemate_at_timelimit ConVar for server admin to allow SuddenDeath when mp_timelimit hits on non-Valve maps.
- Fixed problem that was preventing some dedicated servers from uploading gamestats.
- Fixed Linux dedicated server crash on map change.
- Fixed clients being able to trigger sv_soundscape_printdebuginfo on the server.
- Fixed potential "nuke" exploit in rcon subsystem.
- Fixed _resetgamestats command causing server crash.
- Improved connection logic to help servers that aren't automatically reconnecting to Steam.
- Fixed setinfo exploit that allowed restricted convars to be set while connected to a server.
- Fixed "sensitivity" ConVar not capping the upper value which sometimes caused a server crash.
- Added client/server version check on client connect.
- Fixed a case where servers could get stuck in an infinite loop while spawning bots.
- Improved the version mismatch error message received when connecting to a server with a different version than your client.
- Fixed a server crash exploit caused by malformed network packets.
February 24, 2011 Patch (Community Map Pack Update)
- Fixed another server crash exploit caused by malformed network packets.
- [Undocumented] Fixed trades only displaying one of the items traded to the server.
March 10, 2011 Patch (Shogun Pack)
- Added check to prevent multiplayer servers from transmitting 1 as their maxplayers value to connecting clients.
- Fixed clients being able to use particle exploits on sv_pure servers.
- Fixed a server crash caused by the server triggering a nextlevel vote.
- Fixed a server crash caused by using the Half-Zatoichi to hit someone not holding a weapon.
- Fixed a server crash that could occur if TFBots were used across map changes.
- Replay publishing system will try to do a rename for local HTTP mode but will manually copy and delete the file if the rename fails, which can happen if the source and destination are on different volumes.
- Fixed threading issues on Linux, which was causing major lag spikes.
- Fixed replay data cleanup system, which cleans up stale data at the end of each round. This asynchronous operation can be explicitly invoked by executing a replay_docleanup command on the server.
- Replay
- Fixed a server lockup during data cleanup
- Fixed a server crash caused by a mismatched items schema.
- Fixed a few server crashes caused by the replay system
- Fixed a server crash caused by the vote system
- Fixed a server crash caused by the replay system
- Fixed a server crash caused by disguising Spies
- Fixed a server crash on startup caused by writing to the console
- Fixed a server crash triggered during entity cleanup
- Added a server console message when a player is sent to the server via the matchmaking system
See also
External links
- Source Dedicated Server on the Valve Developer Community
- Setting up a Steam Source Dedicated Server – Steam Support Site