h1. How to play civ5 online toc. h2. Preamble Game is abandonware, civ5 netcode is shitty, we are a bunch of Russian (who speak english when there's somebody around who doesn't speak russian) Linux enthusiasts. You have to jump through a couple of hoops to get a successful networked Civ5 game running. h2. Statistics For now we store "match statistics":https://docs.google.com/spreadsheets/d/16vB8fjaObYuzVPrQamRALI8_bvE5PnU3is6s47qyoVM/edit#gid=0 in Google spreadsheet h2. Software h3. Vox populi We play using Vox Populi overhaul mod: [:https://dump.bitcheese.net/files/todidag/vp-12.20.1.7z]. Unfortunately, mod is Windows-only, so use Wine on Linux. To install mod, unarchive it into <civ folder>/Assets/DLC. Also, before changing your mods, clear My Documents/My Games/Sid Meier's Civilization 5/cache folder. h3. Linux tricks If you use manual installation, do bc. $ winetricks vcrun6 mfc42 otherwise the installer will crash right at the start. The installer might crash with a floating point error under latest versions of wine, e.g. under *wine-2.20*, available as *wine-staging* package on debian stretch. Use earlier version. It works fine under *wine-1.8.7*, available from *wine* package on debian stretch. However, game itself often does not work with wine 1.8.7, so switch versions back after installation. When I used @export LC_ALL=ru_RU.UTF-8@ to fix encoding problems in the installer, they were indeed fixed, but the installer crashed in the end. So I redid it with @export LC_ALL=C@, and it worked fine. Ignore broken encoding, just press continue whenever possible and choose *english* language when prompted with installation options. Older wine (~1.8.7) is known to fail to launch the game, use recent stable or staging [:https://wine-staging.com/installation.html] Run @wine CivilizationV@ to start the game. Running @winecfg@ and setting up a virtual desktop beforehand is advised. If the game complains about missing *libGL.so.1* and crashes at the very beginning, you need to install 32-bit opengl drivers that contain this file. On Debian Stretch if you are using nvidia do @sudo apt install libgl1-nvidia-glvnd-glx:i386@ (assuming you have already enabled multiarch). h2. Networking You need [:smacnet] because civ only works via LAN. Via LAN without packet loss. Netcode sucks. On linux, you might need to open /etc/hosts and replace line with localhost with bc. 192.168.7.XX localhost # 192.168.7.XX is your assigned IP We're sorry about your localhost-binding services. h2. Communication We use "XMPP":xmpp:smac@conference.bitcheese.net for text and "mumble":http://mumble.info for voice. Alternatively, some of us hang out in "civ5 discord":https://discord.gg/d53GVMr h2. How to host a game Saving after first slice of players moved will probably result in broken save, avoid it. If host cannot produce latest working savegame after a crash, they lose right to host next game. If host loses 3 rights to host, host is changed mid-game. Use pitboss mode, no events system (unbalanced). Preferred map is Terra. h2. Hybrid turns with corrections for warfare We play hybrid turns (simultaneous while no humans are at war, sequential otherwise). Because turns aren't sequential immediately, but only after turn ends, here are some additional rules to avoid simultaneous warfare, which is prone to luck and network shenanigans: # On turn N, right at the beginning, declare a war in voice/text chat. Declared one cannot make defensive pacts on next 2 turns. # On turn N+1 you MUST declare a war in-game (ctrl-click on portrait). On that turn you can't enter enemy territory or attack enemy units. # On turn N+2, when turns are sequential, actual hostilities can begin. If these rules are violated, game is reloaded to before the war save and the violator is anally denounced (and loses hosting right). *Exception*: when an AI asks you to declare war, you can skip the first phase.