Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
I started to feel the impact on the simulation speed at around 150k inhabitants. When my city was "finished" at about 360k inhabitants, the simulation speed was around 10-20% speed and also got stuck from time to time. In terms of FPS, however, everything always ran smoothly.
https://steamcommunity.com/sharedfiles/filedetails/?id=3079911231
Typical slowdowns seem to happen around peak rush hours when traffic is worst.
What makes most difference are densities- high density you can have 2x more population and it will lag less than half the population but only low density.
Colossal Order, in their infinate game-creator wisdom, made the game compatible only with 64-bit systems. But then, they only used 32-bit integer registers, meaning they limited the ability of calcualtions to 32-bit integers, which is a hard limit of 2,147,483,648. If any calculation exceeds that number, it will be ignored, limited to 2,147,483,648, or cause a crash.
They could have used int64, with a limit of 18,446,744,073,709,551,615.
But why?
Because calculating while limited to 32-bit integers means the game will have to calculate twice if any number or the total of the calculation is over 2,147,483,648. Not to mention the limitation of 32-bit over 64-bit anyway.
So why make the game playable only on 64-bit?
The engine demands it. That's all. Even if you don't use 64-bit integers.
So they could have done a simple 'find and replace' to get rid of int32 calls, or they could have just programmed from the beginning. But they changed engines about 2/3 of the way through development. Brilliant.
But we press on regardless!
https://steamcommunity.com/app/949230/discussions/0/3877095833488828718/
We don't need more than 2 billion citizens. Not to mention, without having a look at the code, I don't think anyone has confirmed the data type used for citizen count. Regardless, 32 bit is fine. The reason they use int instead of a larger data type is to conserve memory. Regardless, the game runs horrendously slow after 300k+ pop, so forget about 10 million, much less a billion or even two billion citizens. The datatype/int max value isn't even the issue.
The program has to be told the re-mapping is being done so it can re-map addresses accurately, and that is basically a plug-in less than 1MB in size.
The real reason CO used 64-bit and made it absolutely mandatory was to keep the bandwidth between the GPU, RAM and CPU as wide open as possible. On a 32-bit system, this game would not run even one-tenth as fast and the graphics would be impossible.
In fact, this might be one of the very first games ever to take advantage of PCIe 4. If CO wants to do the work, they could. The game could theoretically benefit so much from PCIe4 that it would be worth the work to do it.
Id assume they figured no ones computer could actually get to those numbers is why.
You have a ddr5 on a 5800x? I highly doubt that, you have ddr4