xgaming.configs
ins
9 files

Insurgency Server Config

server.cfg for the original Insurgency (Source) dedicated servers — competitive INSMod and co-op Hunt mode ready.

Config files

comp.playlist
// Official NWI playlist
// See example.playlist for documentation/format guide

"playlist"
{
	"name"					"#Playlist_Comp"
	"description"				"#Playlist_Comp_Desc"
	
	"require_maxplayers_min"		"10"	// Min player slots required for this playlist
	"require_maxplayers_max"		"10"	// Max player slots required for this playlist
	
	"allowed_maps"
	{
		"ministry"				"firefight"
		"market"				"firefight"
		"uprising"				"firefight"
		"heights"				"firefight"
		"revolt"				"firefight"
		"district"				"firefight"
		"siege"					"firefight"
		"verticality"				"firefight"
		"panj"					"firefight"
		"station"				"firefight"
	}
	
	// recommended settings but can be changed
	"cvars"
	{
		"mp_tkpunish"				"1"	// How to punish team killing ( 0 = none, 1 = warning, 2 = kill )
		"sv_hud_targetindicator"		"1"	// show friendly player names when looking at them
		"mp_timer_pregame"			"10"	// timer for the pre-game
		"mp_timer_preround"			"15"	// timer for the pre-round
		"mp_timer_postround"			"15"	// timer for the post-round
		"mp_timer_postgame"			"10"	// timer for the post-game
		"mp_voice_use_3d_voip"			"1"	// disabling this will turn off the 3d voip system and allow all players to hear one another
	}
	
	"forced_cvars"
	{
		"sv_pure"				"2"
		"sv_hud_scoreboard_show_score_dead"	"0"
		"mp_theater_override"			"default_comp"
		"mp_player_spotting"			"0"	// client replicated
		"sv_hq_messages_allowed"		"0"
		"mp_winlimit"				"6"
		"mp_switchteams_each_round"		"5"
		"mp_maxgames"				"1"
		"mp_maxrounds"				"11"
		"mp_switchteams_reset_supply"		"1"
		"mapcyclefile"				"mapcycle_comp.txt"
		"ins_bot_quota"				"0"
		"mp_teams_auto_join"			"0"	// when enabled, players are automatically assigned to a team on join
		"mp_teams_unbalance_limit"		"2"	// the amount of player difference between each team the server considers to be imbalanced
		"mp_autoteambalance"			"1"	// should the server auto balance the teams if they are imbalanced?
		"mp_minteamplayers"			"3"	// min players on each team to start the match
		"sv_deadtalk"				"0"	// enabling this will allow the dead and living to chat text each other
		"sv_deadtalk_team"			"1"	// is deadchat limited to just your team?
		"sv_deadvoice"				"1"	// enabling this will allow the dead and living to VOIP each other
		"sv_vote_issue_changegamemode_allowed"	"0"	// no changegamemode
		"sv_nwi_banlist"			"1"	// global ban list
		"sv_hud_deathmessages"			"0"	// death messages
		"sv_hud_deathmessages_spectator"	"1"
		"sv_alltalk"				"0"
		"mp_voice_use_3d_voip"			"1"
		"mp_friendlyfire_damage"		"1"
		"mp_spectator_allow_chase"		"0"
		"mp_supply_token_base"			"7"	// starting supply
		
		"host_timescale"			"1.0"
		
		"firefight"
		{
			"mp_roundtime"				"180"
			"mp_cp_capture_time"			"20"
			"mp_cp_speedup_rate"			".33"
			"mp_supply_rate_losing_team_high"	"0"
			"mp_supply_rate_losing_team_low"	"0"
			"mp_supply_rate_winning_team_high"	"0"
			"mp_supply_rate_winning_team_low"	"0"
		}
	}
	
	"filters"
	{
		// Minimum player count filter, removing this key will remove this filter.
		"players"
		{
			"min"					"0"	// Minimum slider value
			"max"					"9"
		}
		
		"tags"
		{
			"nofriendlyfire"
			{
				"invert"				"1"
				"default"				"2"
			}
			
			"deathmsgs"
			{
				"default"				"2"
			}
		}
	}
}
coop_elite.playlist
// Official NWI playlist
// See example.playlist for documentation/format guide

"playlist"
{
	"name"					"#Playlist_Elite_Coop"
	"description"				"#Playlist_Elite_Coop_Desc"
	
	"require_maxplayers_min"		"24"	// Min player slots required for this playlist
	
	"allowed_maps"
	{
		"sinjar_coop"				"checkpoint"
		"revolt_coop"				"checkpoint"
		"buhriz_coop"				"checkpoint"
		"market_coop"				"checkpoint"
		"heights_coop"				"checkpoint"
		"contact_coop"				"checkpoint"
		"district_coop"				"checkpoint"
		"ministry_coop"				"checkpoint"
		"siege_coop"				"checkpoint"
		"tell_coop"				"checkpoint"
		"district_hunt"				"hunt"
		"heights_hunt"				"hunt"
		"ministry_hunt"				"hunt"
		"uprising_hunt"				"hunt"
		"panj_hunt"				"hunt"
		"peak_hunt"				"hunt"
		"verticality_hunt"			"hunt"
		"sinjar_hunt"				"hunt"
		"contact_hunt"				"hunt"
		"market_hunt"				"hunt"
		"buhriz_hunt"				"hunt"
		"revolt_hunt"				"hunt"
		"station_hunt"				"hunt"
		"market_survival"			"survival"
		"district_survival"			"survival"
		"heights_survival"			"survival"
		"sinjar_survival"			"survival"
		"verticality_survival"			"survival"
		"verticality_outpost"			"outpost"
		"peak_outpost"				"outpost"
		"market_outpost"			"outpost"
		"sinjar_outpost"			"outpost"
		"panj_outpost"				"outpost"
		"heights_outpost"			"outpost"
	}
	
	"cvars"
	{
		"mp_friendlyfire"			"1"	// friendly fire
		"mp_tkpunish"				"1"	// How to punish team killing ( 0 = none, 1 = warning, 2 = kill )
		"sv_hud_deathmessages"			"0"	// death messages
		"sv_hud_targetindicator"		"1"	// show friendly player names when looking at them
		"mp_timer_preround"			"15"	// timer for the pre-round (before the round starts, usually after a previous round ends or on mp_restartround 1)
		"mp_timer_postround"			"15"	// timer for the post-round (after the round starts)
		"mp_timer_postgame"			"10"	// timer for the post-game (at the end of a game / map rotation)
		"mp_timer_pregame"			"10"	// timer for the pre-game (before the game starts, usually after map change or on mp_restartgame 1)
		"sv_deadvoice"				"0"	// enabling this will allow the dead and living to VOIP each other
		"sv_deadtalk"				"0"	// enabling this will allow the dead and living to chat text each other
		"sv_deadtalk_team"			"1"	// is deadchat limited to just your team?
		"mp_coop_lobbysize"			"8"	// lobby size
		"mp_coop_min_bots"			"8"	// number of bots when there is 1 player on the server
		"mp_coop_max_bots"			"24"	// number of bots when there are 8 players on the server
		"bot_damage"				"0.6"	// the amount of damage bots give off compared to normal players
		"mp_voice_use_3d_voip"			"1"	// disabling this will turn off the 3d voip system and allow all players to hear one another
		"sv_vote_issue_changegamemode_allowed"	"0"	// no changegamemode
		
		"checkpoint"
		{
			"ins_bot_count_checkpoint_max" 	"24" // adjusts maximum number of bots in Checkpoint to 24 from 16
		}
	}
	
	"forced_cvars"
	{
		"mp_theater_override"			"elite"
		"mp_minteamplayers"			"1"	// min players on each team to start the match
		"sv_nwi_banlist"			"1"	// global ban list
		"host_timescale"			"1.0"
	}
	
	"filters"
	{
		// Minimum player count filter, removing this key will remove this filter.
		"players"
		{
			"min"					"0"	// Minimum slider value
			"max"					"7"	// Maximum slider value
		}
	}
}
coop_hardcore.playlist
// Official NWI playlist
// See example.playlist for documentation/format guide

"playlist"
{
	"name"					"#Playlist_Hardcore_Coop"
	"description"				"#Playlist_Hardcore_Coop_Desc"
	
	"require_maxplayers_min"		"24"	// Min player slots required for this playlist
	
	"allowed_maps"
	{
		"sinjar_coop"				"checkpoint"
		"revolt_coop"				"checkpoint"
		"buhriz_coop"				"checkpoint"
		"market_coop"				"checkpoint"
		"heights_coop"				"checkpoint"
		"contact_coop"				"checkpoint"
		"district_coop"				"checkpoint"
		"ministry_coop"				"checkpoint"
		"siege_coop"				"checkpoint"
		"tell_coop"					"checkpoint"
		"district_hunt"				"hunt"
		"heights_hunt"				"hunt"
		"ministry_hunt"				"hunt"
		"uprising_hunt"				"hunt"
		"panj_hunt"					"hunt"
		"peak_hunt"					"hunt"
		"verticality_hunt"			"hunt"
		"sinjar_hunt"				"hunt"
		"contact_hunt"				"hunt"
		"market_hunt"				"hunt"
		"buhriz_hunt"				"hunt"
		"revolt_hunt"				"hunt"
		"station_hunt"				"hunt"
		"market_survival"			"survival"
		"district_survival"			"survival"
		"heights_survival"			"survival"
		"sinjar_survival"			"survival"
		"verticality_survival"		"survival"
		"verticality_outpost"		"outpost"
		"peak_outpost"				"outpost"
		"market_outpost"			"outpost"
		"sinjar_outpost"			"outpost"
		"panj_outpost"				"outpost"
		"heights_outpost"			"outpost"
	}
	
	"cvars"
	{
		"mp_friendlyfire"			"1"	// friendly fire
		"mp_tkpunish"				"1"	// How to punish team killing ( 0 = none, 1 = warning, 2 = kill )
		"sv_hud_deathmessages"		"0"	// death messages
		"sv_hud_targetindicator"	"1"	// show friendly player names when looking at them
		"mp_timer_preround"			"15"	// timer for the pre-round (before the round starts, usually after a previous round ends or on mp_restartround 1)
		"mp_timer_postround"		"15"	// timer for the post-round (after the round starts)
		"mp_timer_postgame"			"10"	// timer for the post-game (at the end of a game / map rotation)
		"mp_timer_pregame"			"10"	// timer for the pre-game (before the game starts, usually after map change or on mp_restartgame 1)
		"sv_deadvoice"				"1"	// enabling this will allow the dead and living to VOIP each other
		"sv_deadtalk"				"1"	// enabling this will allow the dead and living to chat text each other
		"sv_deadtalk_team"			"1"	// is deadchat limited to just your team?
		"mp_coop_lobbysize"			"8"	// lobby size
		"mp_coop_min_bots"			"8"	// number of bots when there is 1 player on the server
		"mp_coop_max_bots"			"24"	// number of bots when there are 8 players on the server
		"bot_damage"				"0.6"	// the amount of damage bots give off compared to normal players
		"mp_voice_use_3d_voip"		"1"	// disabling this will turn off the 3d voip system and allow all players to hear one another
		"sv_vote_issue_changegamemode_allowed"	"0"	// no changegamemode
		"ins_bot_difficulty"		"2"	// bot difficulty default
		
		"checkpoint"
		{
			"ins_bot_count_checkpoint_max" 	"24" // adjusts maximum number of bots in Checkpoint to 24 from 16
		}
	}
	
	"forced_cvars"
	{
		"mp_theater_override"			"hardcore"
		"mp_minteamplayers"			"1"	// min players on each team to start the match
		"sv_nwi_banlist"			"1"	// global ban list
		"host_timescale"			"1.0"
		
		"checkpoint"
		{
			"mp_supply_token_base"			"20"	// 20 supply to start
		}
		
		"outpost"
		{
			"mp_supply_token_base"			"20"	// 20 supply to start	
		}
		
		"hunt"
		{
			"mp_supply_token_base"			"20"	// 20 supply to start	
		}
		
		"survival"
		{
			"mp_supply_token_base"			"2"	
		}
	}
	
	"filters"
	{
		// Minimum player count filter, removing this key will remove this filter.
		"players"
		{
			"min"					"0"	// Minimum slider value
			"max"					"7"	// Maximum slider value
		}
	}
}
coop.playlist
// Official NWI playlist
// See example.playlist for documentation/format guide

"playlist"
{
	"name"					"#Playlist_Coop"
	"description"				"#Playlist_Coop_Desc"
	
	"require_maxplayers_min"		"24"	// Min player slots required for this playlist
	
	"allowed_maps"
	{
		"sinjar_coop"				"checkpoint"
		"revolt_coop"				"checkpoint"
		"buhriz_coop"				"checkpoint"
		"market_coop"				"checkpoint"
		"heights_coop"				"checkpoint"
		"contact_coop"				"checkpoint"
		"district_coop"				"checkpoint"
		"ministry_coop"				"checkpoint"
		"siege_coop"				"checkpoint"
		"tell_coop"				"checkpoint"
		"district_hunt"				"hunt"
		"heights_hunt"				"hunt"
		"ministry_hunt"				"hunt"
		"uprising_hunt"				"hunt"
		"panj_hunt"				"hunt"
		"peak_hunt"				"hunt"
		"verticality_hunt"			"hunt"
		"sinjar_hunt"				"hunt"
		"contact_hunt"				"hunt"
		"market_hunt"				"hunt"
		"buhriz_hunt"				"hunt"
		"revolt_hunt"				"hunt"
		"station_hunt"				"hunt"
		"market_survival"			"survival"
		"district_survival"			"survival"
		"heights_survival"			"survival"
		"sinjar_survival"			"survival"
		"verticality_survival"			"survival"
		"verticality_outpost"			"outpost"
		"peak_outpost"				"outpost"
		"market_outpost"			"outpost"
		"sinjar_outpost"			"outpost"
		"panj_outpost"				"outpost"
		"heights_outpost"			"outpost"
	}
	
	"cvars"
	{
		"mp_friendlyfire"			"1"	// friendly fire
		"mp_tkpunish"				"1"	// How to punish team killing ( 0 = none, 1 = warning, 2 = kill )
		"sv_hud_deathmessages"			"0"	// death messages
		"sv_hud_targetindicator"		"1"	// show friendly player names when looking at them
		"mp_timer_preround"			"15"	// timer for the pre-round (before the round starts, usually after a previous round ends or on mp_restartround 1)
		"mp_timer_postround"			"15"	// timer for the post-round (after the round starts)
		"mp_timer_postgame"			"10"	// timer for the post-game (at the end of a game / map rotation)
		"mp_timer_pregame"			"10"	// timer for the pre-game (before the game starts, usually after map change or on mp_restartgame 1)
		"sv_deadvoice"				"0"	// enabling this will allow the dead and living to VOIP each other
		"sv_deadtalk"				"0"	// enabling this will allow the dead and living to chat text each other
		"sv_deadtalk_team"			"1"	// is deadchat limited to just your team?
		"mp_coop_lobbysize"			"6"	// lobby size
		"mp_coop_min_bots"			"5"	// number of bots when there is 1 player on the server
		"mp_coop_max_bots"			"18"	// number of bots when there are 8 players on the server
		"ins_bot_count_checkpoint_max" "24"	// maximum number of bots for checkpoint
		"bot_damage"				"0.6"	// the amount of damage bots give off compared to normal players
		"mp_voice_use_3d_voip"			"1"	// disabling this will turn off the 3d voip system and allow all players to hear one another
		"sv_vote_issue_changegamemode_allowed"	"0"	// no changegamemode
	}
	
	"forced_cvars"
	{
		"mp_theater_override"			""
		"mp_minteamplayers"			"1"	// min players on each team to start the match
		"sv_nwi_banlist"			"1"	// global ban list
		"host_timescale"			"1.0"
	}
	
	"filters"
	{
		// Minimum player count filter, removing this key will remove this filter.
		"players"
		{
			"min"					"0"	// Minimum slider value
			"max"					"7"	// Maximum slider value
		}
	}
}
custom.playlist
// Empty playlist enforcing no maps/cvars, this will not appear in the main menu,
// this is for server owners who wish to have stats recorded but not use an existing playlist.

"playlist"
{
	"name"					""
	"description"				""
	
	"allowed_maps"
	{
	}
	
	"cvars"
	{
	}
	
	"forced_cvars"
	{
	}
	
	"filters"
	{
	}
}
example.playlist
// Example playlist demonstrating the format and default values.

"playlist"
{
	"name"					"Example Playlist"
	"description"				"An example of an Insurgency playlist file."
	
	// Optional: Maxplayer requirements.
	// Servers running this playlist must have a maxplayers value between
	// require_maxplayers_min and require_maxplayers_max to operate.
	"require_maxplayers_min"		"1"
	"require_maxplayers_max"		"49"
	
	// A list of maps that this playlist must be played on.
	// If no maps are included, this playlist will have no map restrictions.
	"allowed_maps"
	{
		// "mapname" "gamemode"
		// eg: "station" "push"
	}
	
	// Recommended convars, will be applied but are not enforced and
	// can be changed by server operators.
	"cvars"
	{
		// "CVAR"										"VALUE"
		
		"ambush"	// Gamemode specific cvars
		{
			// "CVAR"									"VALUE"
		}
	}
	
	// Enforced convars, these will be unchangable.
	"forced_cvars"
	{
		// "CVAR"										"VALUE"
		
		"ambush"	// Gamemode specific cvars
		{
			// "CVAR"									"VALUE"
		}
	}
	
	// Defines the filters available to players searching for a game.
	"filters"
	{
		// Minimum player count filter, removing this key will remove this filter.
		"players"
		{
			"min"					"0"	// Minimum slider value, defaults to 0
			"max"					"64"	// Maximum slider value, defaults to require_maxplayers_max value
		}
		
		// Per-tag filtering, each filter is given a 3-state button to require/exclude specific tags
		// Example tags: no3dvoip, notargetindicator, deathmsgs, nofriendlyfire, deadchat, deadvoice, teamtalk (alltalk disabled), fullscoreboard (kd on scoreboard)
		// Values: 0 = Exclude, 1 = Include, 2 = Ignore
		"tags"
		{
			// "tag name"
			// {
			// "default"	"value" // Value (0-2): Default state of this button
			// "ignorable"	"1" // Boolean, can this filter opt out of tag filtering. Default 1
			// "invert"	"0" // Boolean, an inverted filter will REQUIRE a tag when crossed out and EXCLUDE a tag when ticked. Default 0
			// }
		}
	}
}
pvp_sustained.playlist
// Official NWI playlist
// See example.playlist for documentation/format guide

"playlist"
{
	"name"					"#Playlist_PVP_Sustained"
	"description"				"#Playlist_PVP_Sustained_Desc"
	
	"require_maxplayers_max"		"32"	// Max player slots required for this playlist
	
	"allowed_maps"
	{
		"district"				"strike"
		"market"				"strike"
		"verticality"				"strike"
		"panj"					"strike"
		"heights"				"strike"
		"station"				"push"
		"station"				"occupy"
		"station_night"				"push"
		"station_night"				"occupy"
		"tell"					"push"
		"tell_night"				"push"
		"panj"					"push"
		"panj_night"				"push"
		"market"				"push"
		"market_night"				"push"
		"sinjar"				"push"
		"sinjar_night"				"push"
		"peak"					"push"
		"peak_night"				"push"
		"heights"				"push"
		"heights_night"				"push"
		"buhriz"				"push"
		"buhriz_night"				"push"
		"district"				"push"
		"district_night"			"push"
		"siege"					"push"
		"revolt"				"push"
		"revolt_night"				"push"
		"verticality"				"push"
		"verticality_night"			"push"
		"panj"					"skirmish"
		"panj_night"				"skirmish"
		"market"				"skirmish"
		"market_night"				"skirmish"
		"heights"				"skirmish"
		"heights_night"				"skirmish"
		"district"				"skirmish"
		"district_night"			"skirmish"
		"siege"					"skirmish"
		"contact"				"skirmish"
		"peak"					"skirmish"
		"peak_night"				"skirmish"
		"ministry"				"skirmish"
		"ministry_night"			"skirmish"
		"revolt"				"skirmish"
		"revolt_night"				"skirmish"
		"verticality"				"skirmish"
		"verticality_night"			"skirmish"
		"uprising"				"occupy"
		"uprising_night"			"occupy"
		"panj"					"occupy"
		"panj_night"				"occupy"
		"market"				"occupy"
		"market_night"				"occupy"
		"peak"					"occupy"
		"peak_night"				"occupy"
		"heights"				"occupy"
		"heights_night"				"occupy"
		"district"				"occupy"
		"district_night"			"occupy"
		"siege"					"occupy"
		"buhriz"				"occupy"
		"buhriz_night"				"occupy"
		"ministry"				"occupy"
		"ministry_night"			"occupy"
		"revolt"				"occupy"
		"revolt_night"				"occupy"
		"tell"					"occupy"
		"tell_night"				"occupy"
		"verticality"				"occupy"
		"verticality_night"			"occupy"
	}
	
	// recommended settings but can be changed
	"cvars"
	{
		"mp_friendlyfire"			"1"	// friendly fire
		"mp_tkpunish"				"1"	// How to punish team killing ( 0 = none, 1 = warning, 2 = kill )
		"sv_hud_deathmessages"			"0"	// death messages
		"sv_hud_targetindicator"		"1"	// show friendly player names when looking at them
		"mp_timer_pregame"			"10"	// timer for the pre-game (before the game starts, usually after map change or on mp_restartgame 1)
		"mp_timer_preround"			"15"	// timer for the pre-round (before the round starts, usually after a previous round ends or on mp_restartround 1)
		"mp_timer_postround"			"15"	// timer for the post-round (after the round starts)
		"mp_timer_postgame"			"10"	// timer for the post-game (at the end of a game / map rotation)
		"mp_voice_use_3d_voip"			"1"	// disabling this will turn off the 3d voip system and allow all players to hear one another
		"mapcyclefile"				"mapcycle_sustained_combat.txt"
	}
	
	"forced_cvars"
	{
		"mp_theater_override"			""
		"ins_bot_quota"				"0"	// if set higher than 0, the server will add this many bots to each team
		"mp_teams_auto_join"			"1"	// when enabled, players are automatically assigned to a team on join
		"mp_teams_unbalance_limit"		"1"	// the amount of player difference between each team the server considers to be imbalanced
		"mp_autoteambalance"			"1"	// should the server auto balance the teams if they are imbalanced?
		"mp_minteamplayers"			"1"	// min players on each team to start the match
		"sv_deadtalk"				"0"	// enabling this will allow the dead and living to chat text each other
		"sv_deadtalk_team"			"1"	// is deadchat limited to just your team?
		"sv_deadvoice"				"0"	// enabling this will allow the dead and living to VOIP each other
		"sv_vote_issue_changegamemode_allowed"	"0"	// no changegamemode
		"sv_nwi_banlist"			"1"	// global ban list
		"mp_supply_token_base"			"10"	// force to 10 starting supply, too many are changing this
		"host_timescale"			"1.0"
		
		"occupy"
		{
			"mp_occupy_bonus_wave"			"1"
			"mp_wave_count_perteam"			"5"
			"mp_wave_capture_increment"		"1"
			"mp_wave_dpr_perteam"			"0.2"
			"mp_respawnwavetime_min"		"20"
			"mp_respawnwavetime_max"		"30"
			"mp_cp_capture_time"			"15"
			"mp_supply_rate_winning_team_high"	"2"
			"mp_supply_rate_losing_team_high"	"2"
			"mp_supply_rate_winning_team_low"	"1"
			"mp_supply_rate_losing_team_low"	"1"
		}
		
		"skirmish"
		{
			"mp_wave_count_perteam"			"3"
			"mp_wave_capture_increment"		"1"
			"mp_wave_dpr_perteam"			"0.2"
			"mp_respawnwavetime_min"		"20"
			"mp_respawnwavetime_max"		"30"
			"mp_cp_capture_time"			"30"
			"mp_supply_rate_winning_team_high"	"2"
			"mp_supply_rate_losing_team_high"	"2"
			"mp_supply_rate_winning_team_low"	"1"
			"mp_supply_rate_losing_team_low"	"1"
		}
		
		"push"
		{
			"mp_wave_count_attackers"		"5"
			"mp_wave_count_defenders"		"15"
			"mp_wave_capture_increment"		"5"
			"mp_wave_dpr_attackers"			"0.2"
			"mp_wave_dpr_defenders"			"0.2"
			"mp_respawnwavetime_min"		"20"
			"mp_respawnwavetime_max"		"35"
			"mp_cp_capture_time"			"30"
			"mp_supply_rate_winning_team_high"	"2"
			"mp_supply_rate_losing_team_high"	"2"
			"mp_supply_rate_winning_team_low"	"1"
			"mp_supply_rate_losing_team_low"	"1"
		}
	}
	
	"filters"
	{
		// Minimum player count filter, removing this key will remove this filter.
		"players"
		{
			// Default min/max values are 0 to require_maxplayers_max-1
		}
		
		"tags"
		{
			"nofriendlyfire"
			{
				"invert"				"1"
				"default"				"2"
			}
			
			"fullscoreboard"
			{
				"default"				"2"
			}
			
			"deathmsgs"
			{
				"default"				"2"
			}
		}
	}
}
pvp_tactical.playlist
// Official NWI playlist
// See example.playlist for documentation/format guide

"playlist"
{
	"name"					"#Playlist_PVP_Tactical"
	"description"				"#Playlist_PVP_Tactical_Desc"
	
	"require_maxplayers_max"		"24"	// Max player slots required for this playlist
	
	"allowed_maps"
	{
		"station"				"firefight"
		"station"				"ambush"
		"station_night"				"firefight"
		"station_night"				"ambush"
		"tell"					"ambush"
		"tell_night"				"ambush"
		"panj"					"firefight"
		"panj_night"				"firefight"
		"uprising"				"firefight"
		"market"				"firefight"
		"market_night"				"firefight"
		"heights"				"firefight"
		"heights_night"				"firefight"
		"district"				"firefight"
		"district_night"			"firefight"
		"siege"					"firefight"
		"contact"				"firefight"
		"peak"					"firefight"
		"peak_night"				"firefight"
		"sinjar"				"firefight"
		"sinjar_night"				"firefight"
		"ministry"				"firefight"
		"ministry_night"			"firefight"
		"revolt"				"firefight"
		"revolt_night"				"firefight"
		"uprising"				"firefight"
		"uprising_night"			"firefight"
		"verticality"				"firefight"
		"verticality_night"			"firefight"
		"market"				"ambush"
		"market_night"				"ambush"
		"siege"					"ambush"
		"contact"				"ambush"
		"revolt"				"ambush"
		"revolt_night"				"ambush"
		"verticality"				"ambush"
		"verticality_night"			"ambush"
		"contact"				"elimination"
		"district"				"elimination"
		"heights"				"elimination"
		"market"				"elimination"
		"panj"					"elimination"
		"peak"					"elimination"
		"verticality"				"elimination"
		"revolt"				"elimination"
		"sinjar"				"elimination"
		"station"				"elimination"
		"tell"					"elimination"
	}
	
	// recommended settings but can be changed
	"cvars"
	{
		"mp_friendlyfire"			"1"	// friendly fire
		"mp_tkpunish"				"1"	// How to punish team killing ( 0 = none, 1 = warning, 2 = kill )
		"sv_hud_deathmessages"			"0"	// death messages
		"sv_hud_targetindicator"		"1"	// show friendly player names when looking at them
		"mp_timer_pregame"			"10"	// timer for the pre-game (before the game starts, usually after map change or on mp_restartgame 1)
		"mp_timer_preround"			"15"	// timer for the pre-round (before the round starts, usually after a previous round ends or on mp_restartround 1)
		"mp_timer_postround"			"15"	// timer for the post-round (after the round starts)
		"mp_timer_postgame"			"10"	// timer for the post-game (at the end of a game / map rotation)
		"mp_voice_use_3d_voip"			"1"	// disabling this will turn off the 3d voip system and allow all players to hear one another
		"mapcyclefile"				"mapcycle_tactical_operations.txt"
	}
	
	"forced_cvars"
	{
		"mp_theater_override"			""
		"ins_bot_quota"				"0"	// if set higher than 0, the server will add this many bots to each team
		"mp_teams_auto_join"			"1"	// when enabled, players are automatically assigned to a team on join
		"mp_teams_unbalance_limit"		"1"	// the amount of player difference between each team the server considers to be imbalanced
		"mp_autoteambalance"			"1"	// should the server auto balance the teams if they are imbalanced?
		"mp_minteamplayers"			"1"	// min players on each team to start the match
		"sv_deadtalk"				"0"	// enabling this will allow the dead and living to chat text each other
		"sv_deadtalk_team"			"1"	// is deadchat limited to just your team?
		"sv_deadvoice"				"0"	// enabling this will allow the dead and living to VOIP each other
		"sv_vote_issue_changegamemode_allowed"	"0"	// no changegamemode
		"sv_nwi_banlist"			"1"	// global ban list
		"mp_supply_token_base"			"10"	// force to 10 starting supply, too many are changing this
		"host_timescale"			"1.0"
		
		"ambush"
		{
			"mp_supply_rate_losing_team_high"	"0"
			"mp_supply_rate_losing_team_low"	"0"
			"mp_supply_rate_winning_team_high"	"0"
			"mp_supply_rate_winning_team_low"	"0"
		}
		
		"firefight"
		{
			"mp_supply_rate_losing_team_high"	"0"
			"mp_supply_rate_losing_team_low"	"0"
			"mp_supply_rate_winning_team_high"	"0"
			"mp_supply_rate_winning_team_low"	"0"
		}
	}
	
	"filters"
	{
		// Minimum player count filter, removing this key will remove this filter.
		"players"
		{
			// Default min/max values are 0 to require_maxplayers_max-1
		}
		
		"tags"
		{
			"nofriendlyfire"
			{
				"invert"				"1"
				"default"				"2"
			}
			
			"fullscoreboard"
			{
				"default"				"2"
			}
			
			"deathmsgs"
			{
				"default"				"2"
			}
		}
	}
}
server.cfg
// ****************************************************************************
// Ingurgency
// Config - server.cfg
// Date - 06/12/2023
// ****************************************************************************

// hostname - Hostname for server.
hostname "SERVERNAME"

// rcon_password - remote console password.
rcon_password "ADMINPASSWORD"

// sv_password - Server password for entry into multiplayer games.
sv_password ""

// map - Start playing on specified map.
map "embassy_coop checkpoint"

// mapcyclefile - Name of the .txt file used to cycle the maps on multiplayer servers
mapcyclefile "mapcycle.txt"

// sv_lan - Server is a lan server ( no heartbeat, no authentication, no non-class C addresses ).
sv_lan 0

// sv_logfile - Log server information in the log file.
sv_logfile 1

// sv_logbans - Log server bans in the server logs.
sv_logbans 1

// sv_voiceenable - Enable voice communications.
sv_voiceenable 1

// sv_alltalk - Players can hear all other players, no team restrictions.
sv_alltalk 0

// sv_allowupload - Allow clients to upload customizations files.
sv_allowupload 1

// sv_allowdownload - Allow clients to download files.
sv_allowdownload 1

// sv_downloadurl - Location from which clients can download missing files.
sv_downloadurl ""

// ......................... Matchmaking Playlists ......................... //
// info: Selecting a playlist will allow the server to show up in matchmaking.
// Playlists use predefined settings and mapcycle.

// You do not need to select a mapcycle as the server will cycle though the
// predefined playlist mapcycle.
//
// If you want to change the predefined playlist mapcycle you can create a
// custom mapcycle but only with maps from the playlist mapcycle.
//
// You can also create your own custom playlists.
// http://steamcommunity.com/sharedfiles/filedetails/?id=461776759

// "nwi/comp"
// "nwi/coop"
// "nwi/coop_elite"
// "nwi/coop_hardcore"
// "nwi/pvp_sustained"
// "nwi/pvp_tactical"
//
sv_playlist "nwi/coop"

// ............................... Map Cycles ............................... //
// info: There are several predefined mapcycles available that are listed below.
// You can also create your own custom mapcycle.

// "mapcycle.txt" - by default this contains the most popular options
// "mapcycle_all.txt" - all possible map/mode combinations for PvP
// "mapcycle_ambush.txt" - all ambush (VIP) maps
// "mapcycle_attackdefend.txt" - push & strike maps
// "mapcycle_checkpoint.txt" - all checkpoint maps
// "mapcycle_comp.txt" - firefight & elimination maps
// "mapcycle_conquer.txt" - conquer gamemode
// "mapcycle_cooperative.txt" - survival, coop, hunt maps
// "mapcycle_firefight.txt" - all firefight maps
// "mapcycle_flashpoint.txt" - all flashpoint maps
// "mapcycle_hunt.txt" - all hunt maps
// "mapcycle_infiltrate.txt" - all infiltrate (CTF) maps
// "mapcycle_objrespawn.txt" - all firefight & flashpoint featuring respawning for completing objectives
// "mapcycle_occupy.txt" - all occupy maps
// "mapcycle_practice.txt"
// "mapcycle_push.txt" - all push maps
// "mapcycle_singlelife.txt" - strike & ambush single life modes
// "mapcycle_skirmish.txt" - all skirmish maps
// "mapcycle_strike.txt" - all strike maps
// "mapcycle_survival.txt" - all survival maps
// "mapcycle_sustained_combat.txt"
// "mapcycle_tactical_operations.txt"
// "mapcycle_workshop.txt" - used by Workshop system
//
//mapcyclefile "mapcycle.txt"

// .......................... Coop Mode Settings ............................ //
// info: Settings for all cooperative gamemodes

// mp_coop_lobbysize - Size of coop lobby
mp_coop_lobbysize 6

// mp_coop_min_bots - The number of bots used for 1 player.
mp_coop_min_bots 5

// mp_coop_max_bots - Maximum number of bots allowed on the server.
mp_coop_max_bots 18

// ........................... Voting Settings .............................. //

// sv_allow_votes - Allow voting?
sv_allow_votes 1

// sv_map_voting - Is map voting enabled?
sv_map_voting 1

// sv_vote_allow_spectators - Allow spectators to vote?
sv_vote_allow_spectators 0

// sv_vote_failure_timer - A vote that fails cannot be re-submitted for this long
sv_vote_failure_timer 300

// sv_vote_issue_botcount_allowed - Can people hold votes to change AI count?
sv_vote_issue_botcount_allowed 1

// sv_vote_issue_botcount_min_population - The voting population required to pass a bot count vote
sv_vote_issue_botcount_min_population 0.55

// sv_vote_issue_botcount_min_ratio - What ratio of the votes needs to be yes to pass? (1.0 = All votes need to be yes)
sv_vote_issue_botcount_min_ratio 0.5

// sv_vote_issue_botdifficulty_allowed - Can people hold votes to change AI difficulty?
sv_vote_issue_botdifficulty_allowed 1

// sv_vote_issue_botdifficulty_min_population - The voting population required to pass a next level vote
// min. 0.1 max. 1
sv_vote_issue_botdifficulty_min_population 0.55

// sv_vote_issue_botdifficulty_min_ratio - What ratio of the votes needs to be yes to pass? (1 = All votes need to be yes)
// min. 0 max. 1
sv_vote_issue_botdifficulty_min_ratio 0.5

// sv_vote_issue_changegamemode_allowed - Can people hold votes to change the gamemode?
sv_vote_issue_changegamemode_allowed 0

// sv_vote_issue_changelevel_allowed - Can people hold votes to change levels?
sv_vote_issue_changelevel_allowed 1

// sv_vote_issue_changelevel_wait - If enabled, wait until the end of the round to change levels
sv_vote_issue_changelevel_wait 1

// sv_vote_issue_kick_allowed - Can people hold votes to kick players from the server?
sv_vote_issue_kick_allowed 1

// sv_vote_issue_kick_other_team - Can we kick the other team?
sv_vote_issue_kick_other_team 0

// sv_vote_issue_nextlevel_allowed - Can people hold votes to set the next level?
sv_vote_issue_nextlevel_allowed 1

// sv_vote_issue_nextlevel_allowextend - Allow players to extend the current map?
sv_vote_issue_nextlevel_allowextend 0

// sv_vote_issue_nextlevel_choicesmode - Present players with a list of maps to choose from?
sv_vote_issue_nextlevel_choicesmode 1

// Not allowed to vote for a nextlevel if one has already been set
sv_vote_issue_nextlevel_prevent_change 1

// sv_vote_issue_nextlevel_round_count_delay - How many rounds before map voting can begin
sv_vote_issue_nextlevel_round_count_delay 1

// sv_vote_issue_nextlevel_min_population - The voting population required to pass a next level vote
sv_vote_issue_nextlevel_min_population 0.55

// sv_vote_issue_nextlevel_min_ratio - How strong does the yes vote need to be to win? (2.0 = 2x more voters)
sv_vote_issue_nextlevel_min_ratio 0.5

// sv_vote_issue_restart_game_allowed - Can people hold votes to restart the game?
sv_vote_issue_restart_game_allowed 1

// sv_vote_issue_restart_round_allowed - Can people hold votes to restart the round?
sv_vote_issue_restart_round_allowed 1

// sv_vote_issue_scramble_teams_allowed - Can people hold votes to scramble the teams?
sv_vote_issue_scramble_teams_allowed 1

// sv_vote_issue_switch_teams_allowed - Can people hold votes to switch the teams?
sv_vote_issue_switch_teams_allowed 1

// sv_vote_kick_ban_duration_cheating - How long should a kick ban last for if a player is kicked for hacking? (minutes)
sv_vote_kick_ban_duration_cheating 240

// sv_vote_kick_hack_min_population - The voting population required to kick a person for hacking
sv_vote_kick_hack_min_population 0.60

// sv_vote_kick_hack_min_ratio - What ratio of the votes needs to be yes to pass? (1 = All votes need to be yes)
sv_vote_kick_hack_min_ratio 0.66

// sv_vote_kick_ban_duration_idle - How long should a kick vote ban someone from the server? (in minutes)
sv_vote_kick_ban_duration_idle 0

// sv_vote_kick_idle_min_population - The voting population required to kick a person for being idle
sv_vote_kick_idle_min_population 0.20

// sv_vote_kick_idle_min_ratio - What ratio of the votes needs to be yes to pass? (1 = All votes need to be yes)
sv_vote_kick_idle_min_ratio 0.5

// sv_vote_kick_ban_duration_teamkilling - How long should a kick ban last for if a player is kicked for team killing? (minutes)
sv_vote_kick_ban_duration_teamkilling 10

// sv_vote_kick_tk_min_population - The voting population required to kick a person for team killing
sv_vote_kick_tk_min_population 0.25

// sv_vote_kick_tk_min_ratio - What ratio of the votes needs to be yes to pass? (1 = All votes need to be yes)
sv_vote_kick_tk_min_ratio 0.66

// sv_vote_kick_ban_duration_trolling - How long should a kick ban last for if a player is kicked for trolling? (minutes)
sv_vote_kick_ban_duration_trolling 60

// sv_vote_kick_troll_min_population - The voting population required to kick a person for trolling
sv_vote_kick_troll_min_population 0.40

// sv_vote_kick_troll_min_ratio - What ratio of the votes needs to be yes to pass? (1 = All votes need to be yes)
sv_vote_kick_troll_min_ratio 0.66

// sv_vote_kick_min_players - The minimum number of players needed on the server to start a vote kick
sv_vote_kick_min_players 4

// sv_vote_kick_min_voters - Minimum number of vote attempts required to start an actual vote
sv_vote_kick_min_voters 3

// sv_vote_min_population - The voting population required
sv_vote_min_population 0.55

// sv_vote_min_ratio - What ratio of the votes needs to be yes to pass? (1 = All votes need to be yes)
sv_vote_min_ratio 0.55

What these settings mean

Quick reference for the 11 most important keys in this Insurgency config. Hover or tap any key to see what it controls — useful when you're tuning a server for the first time and don't want to grep through the upstream wiki.

Core
2 settings
hostname
Server name shown in the in-game browser. Keep it under 64 characters and avoid colour codes if you want clean Steam listings.
sv_password
Optional join password. Empty string means a public server.
Network
4 settings
sv_lan
1 forces LAN-only mode (no Steam heartbeat). Set 0 for any internet-facing server.
sv_allowupload
1 lets clients upload custom sprays. Disable to mitigate inappropriate content / exploits.
sv_allowdownload
1 lets clients download missing maps / models from the server. Slow — better to pair with sv_downloadurl.
sv_downloadurl
Fast-DL HTTP URL for clients to fetch missing assets. Massively faster than Source's built-in trickle download.
Voice
2 settings
sv_voiceenable
Master switch for in-game voice chat. 1 enabled, 0 disabled server-wide.
sv_alltalk
1 lets dead players hear the living and both teams hear each other. Off by default for competitive integrity.
RCON
1 setting
rcon_password
Remote console password. Use a long random string — Source RCON is unencrypted, so anyone sniffing your wire can grab it if it's weak.
Logging
2 settings
sv_logfile
1 writes log lines to disk in addition to stdout.
sv_logbans
1 logs ban / kick events. Always on for any moderated server.

More tactical fps configs

Skip the setup. Host Insurgency with XGamingServer.

Spin up a managed Insurgency server with one click. Backups, mods, control panel and DDoS protection included.