Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ///////////////////////////////////////////////////////////////////
- //things to add:
- //link/description for some admin tools, remote control, etc.
- //SteamCMD autoupdate
- //////////////////////////////////////////////////////////////////
- 1.) Introducrtion
- 2.) Preparation
- 2.1) Requirements
- 2.2) Downloading the server
- 3.) Lists of configs & "How to" configs
- 3.1) Complete cvarlist
- 3.2) Default map cycle files
- 3.3) Default map list
- 3.4) List of game mode names
- 3.5) Default server CFG files
- 3.6) List of useful directories & files
- 3.7) MOTD file
- 4.) Custom content
- 4.1) Custom maps
- 4.2) Custom theaters
- 4.3) Steam Workshop
- 4.4) External custom content hosting
- 5.) Making the server
- 5.1) Creating Server.cfg & server_<mode>.cfg
- 5.2) Matchmaking
- 5.3) Remote access
- 5.4) Server admin tools
- 6.) Updates
- //////////////////////////////////////////////////////////////////
- [h1]1.) Introduction[/h2]
- Ohai, I'm Arc and I am here to help You guys with Insurgency Dedicated server hosted at Your home (server settings can be used in rented server as well).
- First of all, the guide is based on Windows version of the server.
- Before we proceed to the next point I want to thanks to everyone who helped me, who did great job on their mods, namely Gnalvl/Dr Wholian? and Gypsy for their Theater scripts.
- Special thanks:
- daMacs for text corrections
- sparkie951 for text corrections and additional content
- Insurgency Dedicated Server is free tool so everybody can host their own server without need to rent one.
- [h2]2.) Preparation[/h2]
- What you will need:
- 2.1) Requirements
- COOP requirements (30 bots / 8 players)
- Up to 0.8GB RAM (normally 0.4-0.6, if some memory leak occur it goes higher), so be sure that you have at least 1GB free RAM
- Up to 125kBps (1Mbps) upload/download speed consumed, so be sure that you have more than that.
- Stable internet connection (best possible are Cable or Fiber Optic)
- PVP requirements (6v6):
- RAM recommendations stays the same, so at least 1GB free
- Up to 180kBps upload/download speed (and double for 24 players), again, be sure that you have more than that.
- If you have Overpowered PC (just like mine) You do not need to run server on dedicated machine (My PC rig is showed in my profile if You are interested).
- Next step is for those of you who are behind router.
- You need to port forward ports:
- [code]
- UDP 27000 to 27015 inclusive (Game client traffic)
- UDP 27015 to 27030 inclusive (Typically Matchmaking and HLTV)
- TCP 27015 (SRCDS Rcon port)
- [/code]
- Values are copied form https://support.steampowered.com/kb_article.php?ref=8571-GLVN-8711
- You can set your own server port if you want (described lately in guide), if so, be sure that you have it port forwarded as well.
- How to port forwarding: http://portforward.com/
- The next step is, assuming that you do not know that already, getting your public IP: http://www.whatismyip.com/ we will use it later in the guide.
- 2.2) Downloading the server
- Now pick your download tool, it's either Steam Client or SteamCMD, your call.
- Steam Client:
- Open your Steam Client and go to Library and pick "Tools" instead of usual "Games", find "Insurgency Dedicated Server" (not the MOD one) and download it. It's for free :)
- note: If you have server on same PC as your game, always start the server WITHOUT Steam Ccient running, otherwise you got error "game is already running" when you try to run game client.
- SteamCMD:
- Complete general guide is here:
- https://developer.valvesoftware.com/wiki/SteamCMD
- [code]
- Insurgency case:
- login anonymous
- force_install_dir <path>
- app_update 273410 validate
- quit
- [/code]
- Description:
- type "quit" (without a quotes) after it finishes downloading and validating.
- Insurgency Dedicated Server is free tool, so you can use "anonymous" as the login name and then enter: "force_install_dir" and instead of <path> type whole path to your desired folder (for example D:\Insurgency_Server\ ).
- Also, note if you are running more than one server instance do not simply copy one directory to the other
- as that does not allow the 2nd server to operate. Simply go back to the force_install_dir command, and enter the directory name and continue from there. If you want to run more than one server but under the same configuration then you can run them from the same directory. Make note, if you run 2 servers under the same config, they will have the same name.
- If something goes wrong, look at "Known issues" section of SteamCMD guide at link shown before.
- [h3]3.) Lists of configs & "How to" configs[/h3]
- I'll post here the list of what you can edit to make your server unique or corresponding to your feels.
- And "How to" as well.
- 3.1) Complete cvarlist
- I'll be updating it every update.
- http://pastebin.com/QyqJNNvK
- You can also generate cvarlist in Your server console, just type:
- cvarlist log cvarlist.txt
- 3.2)Default map cycle files
- http://pastebin.com/TDQfDAUe
- Again, you can make your own mapcycle file, you can name it whatever you want. How to make your own mapcycle file, here are some examples:
- Example for coop mapcycle:
- mapcycle_coop.txt
- contains:
- [code]
- sinjar_coop
- revolt_coop
- buhriz_coop
- [/code]
- and so on, one map name per line.
- Example of PVP mapcycle:
- mapcycle_PVP.txt
- [code]
- siege push
- revolt push
- panj firefight
- uprising firefight
- [/code]
- rule is the same, one map per line, except now we have "gamemode", see next step.
- 3.3) Default map list
- http://pastebin.com/3XP6UpbM
- There are at least 2 files for each map, sometimes 3 (maps downlaoded from Steam Workshop have TXT and NAV packed in BSP, so it comes only with BSP):
- [code]
- BSP file (main map file)
- TXT file (definition of supported mods)
- NAV file (Navigational file for bots/AI)
- [/code]
- For now, the default maps for Cooperation modes supports only 1 mode each map file, example _coop map supports only "Checkpoint", when _hunt supports only "Hunt" mode. It's little bit confusing because it's supposed to be like PVP maps (1 map file for multiple modes). Just remember _coop maps are Checkpoint, _hunt are for Hunt and you'll be fine. So far, every custom map follow the same rule ( _coop for "Checkpoint only).
- 3.4) List of game mode names
- http://pastebin.com/4fu26G23
- Not every map supports every mode, see <mapname>.txt (example: Siege.txt, Siege_coop.txt) for more info about supported modes.
- 3.5) Default server CFG files
- http://pastebin.com/WGDPYJiG
- There goes the very server settings. Those are Text files but with CFG as file extension (just create TXT file and rename TXT to CFG and you are done).
- First things first, the server loads CFG in !!specific!! order and you can make settings per-map or even per-gamemode:
- [code]
- server_<map>_<mode>.cfg // optional file for settings per-gamemode
- server_<map>.cfg // optional file for settings per-map
- server_<mode>.cfg // this is file which contains settings for specific mode
- server.cfg // this is your primary server config file containing global stuff like name of the server, logging, ban list and such
- [/code]
- Loaded from top to bottom (from most specific to most general).
- The list on pastebin contains default files, so "server_<mode>.cfg" only, other CFGs are made by Admins.
- Those cfgs are loaded by default, you do not need to specify them anywhere.
- If you want settings per map (or per gamemode) just create file with corresponding name to your desired mapname/gamemodename.
- Side note:
- server_cooperative.cfg
- server_sustained_combat.cfg
- server_tactical_operation.cfg
- These are !! NOT !! loaded by default and probably contains obsolete (non-functional) cvars.
- 3.6) List of useful directories & files
- [code]
- "..\insurgency" // this is our parent directory, there are mapcycles, our generated cvarlist, motd file (explained in next step), and other directories showed below
- "..\insurgency\cfg" // server config files directory
- "..\insurgency\cfg\mm_playlists.txt" // TXT file containing Matchmaking rules, explained later in this guide
- "..\insurgency\maps" // maps are in there
- "..\insurgency\maps\workshop" // here are maps dowloaded from workshop
- "..\insurgency\maps\<mapname>.txt" // text file containing supported gamemodes for specific map
- "..\insurgency\script\theater" // theater script directory, explained later in this guide
- "..\insurgency\custom" // folder for custom content (VPK format)
- "..\insurgency\custom\workshop" // here are mods downloaded from workshop
- "..\insurgency\logs" // server log text files, if it's logging enabled
- [/code]
- 3.7) MOTD file
- You can create Message of the day which will be displayed in map loading screen in client.
- simply make file named:
- motd.txt
- and that's it, this file will be loaded by default, if you want custom named you need to specify that file in server.cfg, more of that later in this guide.
- example of MOTD file:
- [code]
- Welcome in Arc's COOP server
- Admin: Arc
- Rules: <rules>
- Gamemodes: <gamemodes>
- [/code]
- You can put anything you want but keep it as short as possible because it's displayed only for few seconds before map loads.
- [h4]4.) Custom content[/h4]
- You can add custom maps, custom theater, skins, sounds, etc.
- 4.1) Custom maps
- Map download&install:
- www.insmaps.com or Steam Workshop
- Maps from insmaps.com are usually zipped (*.zip), extract it into "..\insurgency\maps" directory. It's same directory as for default maps.
- Maps downloaded from Workshop are located in "..\insurgency\maps\workshop" folder
- Then add map name to your desired mapcycle file. (example: anbar_coop, inside mapcycle_cooperative.txt)
- 4.2) Custom theaters
- Gameplay is specified in Theater (aka Scenario), it's script containing various specifications from supply point costs, weapon restrictions to whole new content in game.
- There are couple of theaters out there:
- http://steamcommunity.com/groups/gypsystuff/discussions/0/35222218695741306/
- By Gypsy
- http://www.playinsurgency.com/forums/topic/3794-gnalvls-realism-mod-v099/
- By Gnavl/Dr.Wholian?
- and some more.
- If you are interested in creating your own:
- http://www.playinsurgency.com/forums/topic/2547-messing-around-with-the-theater-system/
- Theater file (*.theater) belongs to "..\insurgency\script\theater" directory, if you do not have it and want custom theater, just create such directories.
- Gnavl's theater mod have VPK format and belongs to "..\insurgency\custom" directory
- 4.3)Steam Workshop
- Since patch from 10.9.2014 servers have support for Steam Workshop content.
- You can pick whatever mod from workshop you want, even collection of mods.
- Official Workshop guide:
- http://steamcommunity.com/sharedfiles/filedetails/?id=266580040&searchtext=workshop
- You need:
- +sv_workshop_enabled 1 on your server's command line (startup batch file).
- create:
- subscribed_file_ids.txt
- subscribed_collection_ids.txt
- in "..\insurgency\" directory
- and copy mod ID from mod's workshop link into one of those TXT (like in picture showed in official guide), depending on if your mod is collection or not. One ID per line.
- You can out source mods/cutom maps downloads for cient so it will not harm your connection. An it's highly recommended fopr non-workshop content.
- Before we proceed to next step:
- You do not need to upload mods acquired from workshop to ftp/external file hosting, they are downloaded in client directly from the Steam Workshop's cloud server.
- You can use external server for non-workshop content AND workshop support at the same time, it's flaweless :-)
- This step is only for those who want to use non-Workshop custom content:
- 4.4) External custom content hosting
- For example you can use Goolgle Drive for hosting such content, so it will not harm your connection. But beware, GDrive have only 15GB of space for free users.
- Guide:
- https://www.youtube.com/watch?v=FY2ZEkHzQhU
- It's not primary for Insurgency but the basics are the same.
- You need to adjust folder structure so it corresponds with Insurgency Server:
- [code]
- insurgency
- ---maps
- ---custom
- ---scripts
- ------theaters
- [/code]
- Depending on which content you want to share, put it to the corresponding folders on server and Gdrive.
- Then you need to set CVAR (Console Variable) sv_downloadurl "your_url_here" in server.cfg file (showed 2 steps below).
- Useful tool:
- BZIP2:
- This program is for file compressing (like WinRAR, WinZip, etc.) and it's very recommended (it saves you a lot of space in Gdrive).
- http://sourceforge.net/projects/gnuwin32/files/bzip2/1.0.5/bzip2-1.0.5-bin.zip/download?use_mirror=netcologne&download=
- Download, and unpack "bin" folder.
- You can compress all files with it (bsp, nav, txt, vpk, and so on), just grab all your custom content (for example: custom maps), copy & paste it in some folder, drag & drop all files over BZIP2.exe and it will compress all files into BZ2 archives (one file per archive), then you upload BZ2 files into your Google Drive.
- [h5]5.) Making the server[/h5]
- First of all you will need a startup batch file containing cvars needed for server to start properly.
- Create TXT file in same directory as SRCDS.exe is, then rename TXT file extension to BAT and put there at least following cvars:
- [code]
- @echo on
- start /abovenormal srcds.exe -game insurgency -console +maxplayers "n" +sv_lan 0 +map <mapname> <modname>
- Start server with this BAT file, not with SRCDS.exe itself.
- [/code]
- Explanation/Additions:
- [code]
- +maxplayers "n" // "n" stands for number of player/AI slots you will have at your disposal, maximum number is 48, minimum is 1
- +map <mapname> <modname> // example +map ministry skirmish, you do not need to specifi gamemode in coop for reason explained earlier in this guide. cooperation map example: +map ministry_coop
- +servercfgfile <your_server.cfg> // if you want custom named primary server CFG, specify it's name here (example: server_whatever.cfg), otherwise do not include
- -port <port_number> // if you want port other than default 27015/27016, if not, do not include
- [/code]
- 5.1)Creating Server.cfg & server_gamemode.cfg
- create a text file with name "server" and change file extension from TXT to CFG, open with notepad and edit, here are some examples of cvars which should be there:
- [code]
- hostname "your_server_name" // server name
- motdfile "motd.txt" // Message of the day file
- rcon_password "your_password" // remote console access password
- hostip x.x.x.x // public IP if you have multiple LAN cards or IPs
- sv_password "" // server password, not compatible with sv_playlist
- log on // enables/disables server logging, it will store all text which console prints into TXT files
- sv_logbans 1
- sv_logecho 1
- sv_logfile 1
- sv_log_onefile 1
- mp_allowNPCs 1
- sv_allowdownload 1 // Cvar needed if you have custom content on your server
- sv_allowupload 1 // Cvar needed if you have custom content on your server
- sv_downloadurl "your_url_here" // url for external file hosting server, Gdrive users must follow the video tutorial for the right url.
- sv_consistency 1 // forces consistency of file for client-server
- sv_pure 0 // settings for PURE server, -1 to 2, this cvars restricts client files (-1 means no restriction is in use, 2 means all files are restricted = no client side mods)
- sv_nwi_banlist 1
- exec banned_user.cfg
- exec banned_ip.cfg
- writeid
- writeip
- "mapcyclefile" "your_mapcycle.txt" // this cvar sets your mapcycle file
- [/code]
- And here are some optional cvars, you can put it here (so they will be global) or only into specific game modes, it's up to You:
- [code]
- "mp_friendlyfire" "1" // enables/disables friendly fire
- "mp_tkpunish" "2" // How to punish team killing ( 0 = none, 1 = warning, 2 = kill )
- "sv_vote_failure_timer" "10" // how many seconds before you can vote again after failed vote
- "sv_vote_issue_changegamemode_allowed" "0"
- "sv_vote_issue_changelevel_allowed" "1"
- "sv_vote_issue_nextlevel_allowextend" "1"
- "sv_vote_issue_nextlevel_round_count_delay" "0"
- "sv_vote_issue_kick_allowed" "1"
- "sv_vote_issue_botdifficulty_allowed" "0"
- "sv_vote_issue_botcount_allowed" "0"
- "sv_map_voting" "1" // enables/disables map voting
- "sv_vote_issue_nextlevel_choicesmode" "1" // enables/disables eng game map choice screen
- "mp_spectator_allow_chase" "0" // enables/disables chase cam for spectator (non functional)
- "mp_allowspectators" "1"
- "spec_allow_bots" "0" // enables/disables spectating of bots
- "sv_deadvoice" "1" // enabling this will allow the dead and living to VOIP each other
- "sv_deadchat" "1" // enabling this will allow the dead and living to chat text each other
- "sv_deadchat_team" "0" // is deadchat limited to just your team?
- "sv_alltalk" "0" // enables/disables voice chat between team sides (Insurgents/Security)
- "mp_voice_use_3d_voip" "1" // enables/disables 3D voice chat
- "sv_hud_deathmessages" "0" // death messages (kill feed)
- "sv_hud_scoreboard_show_kd" "1" // show k:d on scoreboard
- "sv_hud_targetindicator" "1" // show friendly player names/diamonds when looking at them
- "sv_weapon_manager_cleanup" "1" // enables/disables weapon manager (WM is responsible for cleaning dropped weapons and bodies)
- "sv_weapon_manager_drop_timer" "1200" // how many seconds will dropped weapons remain till they vanish
- "sv_weapon_manager_max_count" "50" // how many dropped weapons can be on map at a time
- "mp_coop_lobbysize" "6" // defines maximum players for coop modes, 1-8
- "mp_theater_override" "name_of_your_theater" //this cvar enables custom theaters
- "sv_playlist" "playlist_name" //choices are: "coop", "pvp", "custom", explained later in this guide
- [/code]
- Server_<mode>.cfg
- There is a server_<mode>.cfg file which contains per-gamemode settings, for example server_checkpoint.cfg:
- [code]
- "mp_maxgames" "1"
- "mp_maxrounds" "10"
- "mp_winlimit_coop" "1"
- "mp_roundtime" "900" // for Checkpoint gamemode this cvar is NOT round time, it's time till next objective is captured
- "mp_cp_capture_time" "30"
- "mp_cp_deteriorate_time" "0"
- "mp_supply_token_base" "10" // base supply points for players, both teams
- "mp_supply_token_bot_base" "18" // base supply points for bots
- "mp_supply_rate_losing_team_high" "3" // how many supply points will player earn on losing team as MVP
- "mp_supply_rate_losing_team_low" "1" // losing team non-mvp
- "mp_supply_rate_winning_team_high" "3" // wining team MVP
- "mp_supply_rate_winning_team_low" "1" // wining team non-MVP
- "ins_bot_count_checkpoint_min" "5" // a set bot number when 1 player is connected
- "ins_bot_count_checkpoint_max" "16" // a set bot number when 8 players are connected
- "ins_bot_count_checkpoint" "0" // a set bot count for Checkpoint. Bot number stays the same no matter of how many palyers are on server
- "ins_bot_count_checkpoint_default" "0" // this is the default bot count for Checkpoint that the server will reset to when hibernating
- [/code]
- Other optional CVARs:
- [code]
- "mp_supply_token_max" "50" // maximum supply points (base + earned)
- "mp_player_resupply_delay" "240" // how many seconds players need to wait till they can resupply
- "mp_timer_pregame" "0" // timer for the pre-game (before the game starts, usually after map change or on mp_restartgame 1)
- "mp_timer_preround" "10" // timer for the pre-round (before the round starts, usually after a previous round ends or on mp_restartround 1)
- "mp_timer_postround" "8" // 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_checkpoint_counterattack_always" "0"
- "bot_damage" "1" // the amount of damage bots give off compared to normal players 0-1 (in 0.1 increments), this is claimed as non functional since HUNT DLC update
- [/code]
- The same goes for other game modes, they have some cvars in their CFG files, but there are probably more cvars hidden in cvarlist so read it carefully.
- And as we explained before you can create server_mapname_modname.cfg or server_mapname.cfg and create whole variety of settings, rules are the same as for server_gamemode.cfg.
- Useful admin commands typed directly into the console:
- [code]
- map <mapname> <gamemode> // for example: map ministry push
- host_map // displays curent map on the server
- status // display current server status (connected players, ips, steam IDs, etc.)
- version // display current server version
- addip <minutes> <ipaddress> // this is for banning player by his/her IP address, if <minutes> set to 0 = permanent ban, example: addip 60 12.23.34.45 (banned for hour)
- banid <minutes> <id> // same as addip but this time for Steam ID, example: banid 60 STEAM_1:0:11111111
- [/code]
- Every cvar mentioned in cvarlist can be put directly into the console.
- Side note:
- There is one thing called "commenting" you can see it within my guide as "// <note>", the server will ignore everything past "//" in that line
- You can comment cvars as well (so you do not need to delete them), example:
- [code]
- //sv_downloadurl
- sv_consistency 1
- [/code]
- sv_downloadurl is commented and server will ignore whole line, sv_consistency is still in use.
- 5.2) Matchmaking
- You can set your server up into Matchmaking mode, which have certain rules that are forced and others which can be changed.
- mm_playlist.txt contains this set of rules(do not ever modify this file, just look):
- http://pastebin.com/i9yVv3vM
- "Forced" cvars:
- Such settings in your Server cfgs will be ignored (example: sv_password <password> )
- If you want non-modded server, pick "PVP" or "COOP" (depending on which modes you want), if you want mods in your server (including maps !) or mixed coop/pvp modes, you need to set sv_playlist "custom".
- More info about matchmaking here:
- http://steamcommunity.com/app/222880/discussions/2/558746089590579609/
- 5.3) Remote access
- If you have your server on dedicated machine (or in datacentre, or rented, whatever) you can access to it by RCON.
- You have set your rcon_password in server.cfg, so, if you are in game client, bring on Client Console and type this:
- rcon_password <your_rcon_password>
- rcon status // this will display server status and add you to the exception of auto kick for afking
- rcon <cvar> // if you want to change any cvar you need to put "rcon" before you can type that cvar, example: rcon mp_maxrounds 10
- 5.4) Server admin tools
- SourceMod:
- Sourcemod is all-kind of admin tool, powered by user scripts (plugins) it can do almost anything on the server.
- Installing:
- https://wiki.alliedmods.net/Installing_SourceMod
- All documentations:
- https://wiki.alliedmods.net/index.php/Category:SourceMod_Documentation
- Plugins:
- http://www.sourcemod.net/plugins.php?cat=0&mod=-1&title=&author=&description=&search=1
- LAST NOTE: Every server update is overwriting default named mapcycle files, server cfgs and such, so if you modified some of the stuff like that, be sure that you have made a copy in safe folder.
- Preserve your configs!
- Also, you can visit our group for admins:
- http://steamcommunity.com/groups/inshosters
- [h6]6.) Updates[/h6]
- [template]
- 8.9.2014: Nothing new
- 9.9.2014: New maps, modified cvars
- 10.9.2014: Hotfix, new cvars
- [/template]
Add Comment
Please, Sign In to add comment