Updated: April 25, 2018
Without using too many superlatives, Cities Skylines is a great little game. Well, not little. It's a superb, rich, complex, and fun urban slash city building simulator, and the first game of its kind since SimCity 4 to actually stir a response in my proverbial loins. But it also a ravenous beast, and it chomps through system resources like there's no tomorrow.
Over the last year or so, I noticed a weird phenomenon - you play, and everything is fine, but then suddenly, you add a new road, train line or a subway section, or delete some buildings, and the game starts to lag. It begins running very slowly. There's no apparent reason for this. I spent a lot of time investigating, and I believe I've come up with a nice solution. It's witchcraft, which makes it even better.
Problem in more detail
So this is what happens. You play the game, say a city with 70K people with CPU and GPU utilization running at about 60% and 40%, respectively. You play at the lowest speed setting (one arrow), and under these conditions, the game "week" takes about 10 seconds (the green progress bar). Then, you build something, and the games turns syrupy. Even actions like zoom in and out start to stutter. You get very low FPS. You check system resources, and they seem to have gone down now - 30-40% CPU and 20% GPU. Your machine has not been starved, and there's no easy explanation.
I observed this problem on TWO different hosts, so I believe the issue is hardware and software agnostic. One host is a 2011 Windows 7 desktop, with a four-core i5 processor and an Nvidia GTX 960 card. The other gaming machine affected by this problem is my 2014 Windows 8 Lenovo IdeaPad Y50-70 laptop, with an eight-thread i7 processor and an Nvidia GTX 860M card. In both cases, this issue occurs - with different relative CPU and GPU values.
Reading online, I found literally hundreds of threads about this in different forums, and the same amount of recommendations. I admit that my own solution below is not going to be any less outrageous than the average response to this issue, but it is founded in careful observation, and a fully repeatable test case.
What I realized, first of all, is that the problem does NOT affect all my scenarios/saves. I loaded an old 2015 save from one of the early maps I played in Cities Skylines, and this one, despite having a supposedly more complex layout and a larger population than most other scenarios, it was running smoothly. Blistering fast, and without any excessive system usage. This was also a map created WITHOUT any mods.
This led me to two intermediate conclusions - this is most likely connected to the use of third-party mods, and my system is not starved or maxed out resource-wise. I have sufficient available processor and graphics bandwidth, and I should not focus any effort there.
The third conclusion is - yes, the more you play, the bigger and more complex your city becomes, the more resources you use. But, this is a linear effect, and it does not explain intermittent performance lags that do not correlate to usage (it actually goes down) or the sudden nature of when it manifests. So the focus is on the mods.
Mods wise, like probably many other people, I am using the 25-tile unlock thingie - All Areas purchaseable. I decided to turn it off. Lo and behold, on my next load, the supposedly slow game was running much faster. But still not as fast as it should. So I tinkered a bit more, going back to my old, clean save, and I realized that every time after I would load the old 2015 save, any subsequent load of newer maps would run fast. Like I said, witchcraft. Or in-game garbage collection or whatever.
The sequence of steps that I verified works (on two machines, multiple scenarios/saves, every time):
- Load your slow game, play for a few seconds, save it.
- Load an old game (only 3x3 tile area at most, created without any mods). Let it run for a few seconds.
- Load your new game again - and it will be running fast and without any lags.
The technical explanation that I have - without really knowing the details of the game's engine and architecture is as follows: the mods (any which, but in my case the tile unlock) introduce memory leaks that force the game engine to perform too many computations, bringing the game's execution to a crawl. This does not go away on its own. When you load a pristine map (that has no 25-tile logic it in), some of the memory allocations are cleared, and on next run of the new game, the engine works well.
This is my assumption, and I do not know if it's true. However, it works. And it is also the first deterministic recipe that I have. Most other suggestions offer a lot of helpful tips, but none of them are truly available as experiments (step 1, step 2, if then, etc).
Well, you have nothing to lose, so it's worth trying to see if this correlates to your performance lags. There's no damage or harm, you can save games with different names, and toggle the mods on/off as you see fit. When I need more areas, I would toggle the All Areas purchaseable on, buy, save, exit, then disable the mod, load the game again, save again, load the old one, and then the new one for the third time, and have a fast and lag-free experience. And BTW, this has NOTHING to do with Meltdown patches. The problem occurred way way before.
If you hate articles like this, I dig you. But then, I am forced to work with a closed system, and I am confident this little guide is not just empty nonsense. It is based on careful observation, it covers two independent systems, it's repeatable, and there's a very clear cause-effect link. People have always claimed that mods cause all sorts of issues and lags with the game, and I have indeed proven that. This does not mean you should not use them, but be aware of weird game logic traps.
I am glad that I had a pristine baseline to compare to - in fact, this is what you need in any scientific experiment. Without the baseline, I'd never really be able to ascertain what went wrong, only suffer. Cities Skylines is a fine title, and with a fresh breath of speed, it's even better. No more lag, and no more superstition around the 100K population limit. I am now well into the 100s, and things are flying. Try this tip, if it works, buy me a virtual beer or something. Take care.