Saturday, August 20, 2016

How to Set Up a Civilization V Server

2K Game's instructions on how to set up a Civ V server are unfortunately lacking. While the instructions will get you on right path to initially getting the server SDK running, you will be plagued with crashes and errors. After over a week of trying to figure out how to correctly configure a Civ server, I decided to make my own guide. Let me be the first to welcome all of you die hard Civ V fans, and those that are waiting for the two expansions packs to be released for Civ VI so you can actually play the game.

I like to play Civ with my friends, unfortunately we are not all able to play at the same time. Online play without hosting your own server means that other players cannot connect and disconnect at will, which can be a problem if you like to take breaks and play a game that can span over a few days. This mode we are going to set up is called Pitboss mode and offers players the most versatility and control when playing online with friends. Below you will find the steps to get started.

Installing for the first time:

1. Ensure that network port 27016 is open to UDP communication on the server's router. Consult your router manual for instructions. The dedicated server does not use Steam's NAT punch-through facilities, so turn on port forwarding.
2. We're going to skip the email settings for now, and come back to that later.
3. Install Sid Meier's Civilization V SDK. This can be found in the Tools section of your Steam Library.
4. Launch Sid Meier's Civilization V SDK.Make sure that *everything* successfully installs. One problem I experienced early on was that the specific version of .NET Framework was not installing successfully; I was getting an error message every time it tried to install. In that case there ended up being an issue with my installation of Windows and I had to reformat.
5. Select Dedicated Server from the SDK Launcher. Once Civ boots successfully you can exit out of the game for now.

Running a Pitboss game without crashing:

- Run in windowed mode at a lower resolution. Also turn down all graphics to their minimum setting.
- Leave the game on the player list; no map view. After all looking at the map would be cheating.
- Use the Server specific launcher in the SDK menu. 
- Run Steam in offline mode.
- Sometimes players ending their turn wont be recognized server side until the game window is put into focus on the computer you're using.
- On default windows update will restart your computer at 3AM. You will need to configure this so that you don't need to restart your game every other morning or so.

Setting up email notifications: 

The instructions for setting up an email notification on 2K's forums are correct. However you will still have to change some settings in Gmail once you have followed the steps provided. After getting the server options set up in the SDK you will need to log into Gmail and go to Settings>Forwarding and POP/IMAP. Here you need to disable IMAP.

After that you will need to go to the My Account page for your Google account (NOT Gmail, but the Google account itself). From there you need to go to My Account>Sign-in and Security>Connected Apps and Site and then turn on the option that says Allow Less Secure Apps. Otherwise when the turn bot goes to do its thing, you will just get an email instead saying that an unsecure app is trying to access your Gmail. This most likely happens because the emails sent out by your server are unencrypted.

This is what a turn notification looks like:

The game name reflects my frustration of dealing with over a week of server crashes.
Since the SDK tends to crash when Steam is in online mode, Steam notifications aren't really an option. As a result getting email notification on your phone is probably the best way to go about turn notifications as of right now.

Joining a pitboss game:

If you encounter a bug where a player or two are getting "error joining multiplayer session" it is probably because they don't have some small chunk of DLC that the game was hosted with. In this case it's best to remove that DLC option from the settings menu, even if you aren't using it. Otherwise the game may boot into vanilla Civ. The easiest way to tell if this happens is if you get the loading screen in the background that looks like the Atlas statue, and on game start you wont see tourism or faith.

If you listed your game as private other players will need to type in your IP and hit enter to connect. Otherwise if you are playing on a computer behind the same router or network as the server you will be be able to find the game listed under local network.