Counter-Strike: Source Guide

💡 ...CREATE SERVER (built-in listen server) over the Internet... ©️ for Counter-Strike: Source

💡 …CREATE SERVER (built-in listen server) over the Internet… ©️

Overview

The config may also be used for dedicated servers, but this is for people who just wanna play with their friends for fun without messing with all that dedicated server stuff…

Introduction

For all new users here it’s required to mention that ‘listen server’ (the built-in one) works differently than ‘dedicated server’ (the standalone one), thus the performance may be lower (it also deppends on your machine’s specs and the net speeds of course), mainly because you’re gonna use the same machine for hosting and for playing simultaneously.

There are also some settings that are reserved for dedicated servers only, in example:

host_timer_spin_ms
and
mp_scrambleteams_auto

…but most of the server admins never even bother with these.

There are also some settings that will work better when used as a launch parameters,
but it’s still good to have’em added into the configuration file, in example:

sv_clockcorrection_msecs
and
sv_lan

…one of the screenshots in the ‘Configuration’ section will show you where the launch parameters should be placed.

Configuration

Whith my config file (listenserver.cfg) presented further in this section, you don’t need to set anything in the GUI (graphic user interface) shown at the picture below – you can use it to select the initial map though:

1) Make sure that all required ports are open on your router/firewall (if you own a private/external IP you can skip this step) [XXXX-XXXXX means a range]:

TCP: 27014-27050, 27015-27030, 27036-27037
UDP: 1200, 3487, 4379-4380, 27000-27031, 27036

If you don’t know how to forward the ports read this short instruction:

[link] .

2) As mentioned in the ‘Introduction’ section, here you can see where to put the launch parameters:

…to see how many players your connection can handle see the table below
(uplink = upload speed):

for internet connections (bits per second) use:

128k uplink = 2 players
256k uplink = 4 players
320k uplink = 6 players
512k uplink = 9 players
768k uplink = 14 players
1024k uplink = 19 players
1140k uplink = 21 players
1708k uplink = 32 players (max)

3) Create a new file named listenserver.cfg (not listenserver.cfg.txt) in:

SteamsteamappscommonCounter-Strike Sourcecstrikecfg,

copy all settings listed below, paste’em all inside the newly created file, then save it (Ctrl+S):

// server name
hostname “Counter-Strike: Source Server”

// server settings
sv_password “”
sv_visiblemaxplayers -1
decalfrequency 30
mp_friendlyfire 1
mp_footsteps 1
mp_autoteambalance 1
mp_limitteams 1
mp_flashlight 1
mp_autokick 1
mp_tkpunish 1
mp_hostagepenalty 5
mp_allowspectators 1
mp_chattime 10 // seconds for chatting on map end

sv_turbophysics 1 // allows pushing and jumping on objects
sv_bounce 0 // objects bouncing multiplier
sv_max_usercmd_future_ticks 8 // prevents speed hacks
sv_competitive_minspec 0
sv_allowminmodels 1
sv_allow_color_correction 1
sv_allow_voice_from_file 0
sv_allow_votes 1
sv_disablefreezecam 0 // “1” disables players’ death-cam
sv_enablebunnyhopping 0
sv_allow_wait_command 0 // “0” blocks some advanced scripts
sv_hudhint_sound 1 // “0” disables the sound
sv_ignoregrenaderadio 0
sv_enableboost 0 // i.e. when a player jumps on a jumping player
sv_nowinpanel 0
sv_nomvp 0
sv_nostats 0 // “1” disables achievements and statistics
sv_nonemesis 0
sv_motd_unload_on_dismissal 1 // default: “0”
sv_use_steam_voice 1
mp_scrambleteams_auto 0 // for dedicated server only
mp_scrambleteams_auto_windifference 3

phys_timescale 1
phys_pushscale 1

sv_pushaway_max_force 1000 // requires sv_turbophysics “1”
sv_pushaway_hostage_force 20000
sv_pushaway_force 30000
sv_pushaway_clientside 0 // “0”=off (def), “1”=only localplayer, “2”=all players
sv_maxvelocity 3500 // for moving objects per axis
sv_legacy_grenade_damage 0
sv_client_predict 1

sv_lan 0
sv_region -1
sv_contact “” // admin’s e-mail
sv_tags “” // separated with commas
sv_downloadurl “” // to use with external FTP server

sv_alltalk 0
sv_voiceenable 1
sv_pausable 0
sv_cheats 0
sv_pure 0 // “2” blocks custom materials/models
sv_consistency 1
sv_allowupload 1
sv_allowdownload 1
sv_maxspeed 320
sv_accelerate 5
sv_airaccelerate 10
sv_stopspeed 75
sv_backspeed 0
sv_friction 4
sv_wateraccelerate 10
sv_stepsize 18
sv_rollspeed 200
sv_rollangle 0
sv_restrict_aspect_ratio_fov 1 // “0”=off, “1”=for windowed mode, “2”=always
sv_timeout 65

// round specific settings
mp_spawnprotectiontime 5 // in seconds
mp_freezetime 3 // in seconds
mp_roundtime 3 // in minutes
mp_startmoney 800
mp_c4timer 35 // in seconds
mp_timelimit 45 // time for the map in minutes
mp_fraglimit 0
mp_maxrounds 0
mp_winlimit 0
mp_playerid 0 // “0”=all names, “1”=teammates, “2”=no names

// spectator settings
mp_forcecamera 0
sv_specnoclip 1
sv_specaccelerate 5
sv_specspeed 3

// net settings
sv_minrate 30000
sv_maxrate 50000
sv_client_cmdrate_difference 0
sv_mincmdrate 66
sv_maxcmdrate 66
sv_minupdaterate 66
sv_maxupdaterate 66
sv_clockcorrection_msecs 0 // shortens interp latency (def=”60″)
sv_client_min_interp_ratio 1
sv_client_max_interp_ratio 2
host_timer_spin_ms 0 // for dedicated server only
sv_namechange_cooldown_seconds 30
sv_max_connects_sec_global 0
sv_max_connects_sec 2.0
sv_max_queries_sec 3.0

// bot configuration
bot_quota 4
bot_quota_mode fill
bot_difficulty 2 // “0”=easy, “1”=normal, “2”=hard, “3”=expert
bot_chatter radio // or: “off”, “normal”, “minimal”
bot_join_after_player 0
bot_defer_to_human 0
bot_allow_rogues 0
bot_auto_follow 0
bot_auto_vacate 1
bot_prefix “[BOT]”
bot_walk 0
bot_join_team any
bot_eco_limit 2000
bot_allow_grenades 1
bot_allow_pistols 1
bot_allow_rifles 1
bot_allow_sub_machine_guns 1
bot_allow_shotguns 1
bot_allow_snipers 0
bot_allow_machine_guns 1

// logging
log off
sv_logbans 1
sv_logecho 1
sv_logfile 1
sv_log_onefile 0

// files to execute
exec banned_user.cfg
exec banned_ip.cfg

ALMOST ALL VARIABLES ARE AT THEIR DEFAULTS, THE MOST URGENT ONES THAT’VE BEEN CHANGED ARE THE NET SETTINGS AND sv_turbophysics CHANGED FROM “0” TO “1”.

For the description of each setting check the link below or type each one (without a value) in the game’s developer console (you can enable it with another launch parameter +con_enable 1 and then toggle it with tylde key [ ~ ] or [ ` ] under the [Esc]):

[link]

Playing with your friends

To change the map while you’re playing, just use the console, remembering that it shows you all the valid cvars and commands while you’re typing’em, where the , [up] and [down] arrow keys are completing’em for you, so you don’t need to type, or remember their whole names:



When you want to make your server private, set sv_password in the config file (or in the console, or as a launch parameter), then give it to your friends.

If the default 27015 port is used, your friends don’t need to specify it in the connect console command, so the example with sv_password 12345 will look like this:

connect 123.345.567.789; password 12345

After you’ve done everything and somehow nobody’s able to connect to your server, try to use the launch parameters again to set your external IP manually, which you can look up here:

[link]

The -port parameter is needed only when you wanna use a different port than the default 27015, example of the entire launch parameters’ line with external IP and the custom 27018 port will look like this:

-novid -ip 123.345.567.789 -port 27018 +sv_lan 0 +sv_clockcorrection_msecs 0 +maxplayers 18 +con_enable 1

with the upper example your friends will need to use the defined IP:PORT to add it to the serverbrowser’s favorites, or to use it with the console’s connect command:

connect 123.345.567.789:27018
or
connect 123.345.567.789:27018; password 12345 (with the password)
or
connect 123.345.567.789 (if no port or password has been specified)

Best regards and have Fun…

SteamSolo.com