Sid Meier's Civilization VI

Sid Meier's Civilization VI

View Stats:
This topic has been locked
Jaerv Aug 2, 2022 @ 2:43am
36
21
4
19
7
3
3
2
2
38
I actually may have fixed my crashes/end turn freezing...
Or let's say I'm cautiously optimistic that I did.
I recently set out on the quest to finally find out what's causing the game to constantly crash/freeze for me and my wife and pretty much everyone I know in rl who's playing the game.
Here's a link to the post where I'm describing my autoplay testing method:
https://steamcommunity.com/app/289070/discussions/0/3464975177697999473/?ctp=3#c3453716250586673098

After some further testing it became pretty obvious that the game became more unstable the more official content I activated. The crashes don't seem to be caused by some specific DLC, but by the number of additional content.
That fact and the reports of other players on the internet made me think that there's probably something wrong with the game's multithreading implementation. The more content has to be calculated, the higher the chance for something to go wrong if the MT is wonky.
It would also explain the unpredictability of the crashes and why folks with lower end systems don't experience as many problems. The game determines the level of MT according to the hardware and thus it wouldn't be as heavily multithreaded on their machines.

Next I looked for a way to restrict the level of MT done by the game and found a setting in the AppOptions.txt file in the ...\Documents\My Games\Sid Meier's Civilization VI directory that seems to do the trick.

After I changed the line "MaxJobThreads -1" to "MaxJobThreads 1" the crashes stopped for me. Completely.
EDIT: After some further testing and feedback from other players, it seems that to achieve the best stability, the values for MaxGameCoreThreads, GameCoreReserveThreads, MaxGameCoreUnitMovementThreads and MaxGameCoreTradeRouteThreads should be set to 1 as well.
Also, make sure to start a new game to avoid issues with savegame corruption.

You could try setting them to a higher value, but for me the only 100% stable setting was 1.
The game still seems to run multithreaded, but if I understand it correctly this setting allows the game only to use one single thread per job.

I have now run 17 autoplay games on both our machines together without any issues beyond turn 400 with all DLC content enabled. Before the change this was next to impossible, the game would crash/freeze every single time before turn 100.
Fingers crossed it stays that way.

Performance, at least on our systems, is still ok. Loading times got longer, but turn times and fps are perfectly fine so far. Your mileage may vary.

TLDR:
There seems to be something wrong with the game's multithreading, which most likely causes the crashes.

Try setting the values for MaxJobThreads, MaxGameCoreThreads, GameCoreReserveThreads, MaxGameCoreUnitMovementThreads and MaxGameCoreTradeRouteThreads from -1 to 1 in the AppOptions.txt file in your ...\Documents\My Games\Sid Meier's Civilization VI directory, thus restricting the game's use of MT.
Give it a go, if possible with a new game to avoid issues due to savegame corruption.


IMPORTANT EDIT:
Kevin_H did a very good in-depth analysis of the game's multithreading related inner workings. He also posted a guide detailing which settings to use according to your hardware. So if this works for you, but you're unhappy with the game's performance or loading times, take a look at his post:
https://steamcommunity.com/app/289070/discussions/0/3453716776424294825/?ctp=10#c5733664933459216548


On Linux, the file is located in the .local/share/aspyr-media/Sid Meier's Civilization VI directory under the home folder, .
A big thank you to rgx107 for this information!

I know this solution is far from perfect, but until 2K/Firaxis finally manage to fix their code, it's possibly the best we got.
At least I can finally play the damn game now. :D
Last edited by Jaerv; Aug 14, 2022 @ 5:14am
Originally posted by antoca:
This guide is not actual since december update. Now it only hurts performance. Return your settings to default!
< >
Showing 1-15 of 415 comments
Jaerv Aug 2, 2022 @ 3:08am 
Something I forgot to mention:
The game seems to be equally stable in DX11 and DX12 mode for me now. Performance, however, is significantly better with DX12.
TheCr33pur Aug 2, 2022 @ 5:35am 
Originally posted by Jaerv:
Something I forgot to mention:
The game seems to be equally stable in DX11 and DX12 mode for me now. Performance, however, is significantly better with DX12.

Its also depend on your video cards, some are better at DirectX12 and some arent. Also depending on your resolution too. If make the game same resolution as your desktop, it would be best.

I cant make out the rest, only thing i can think of is that game launcher, running in the background. Wish there a way to disabled it. Anyway i gave up playing this some months ago, cause it was too unplayable for my taste.
Jaerv Aug 2, 2022 @ 5:38am 
Originally posted by TheCr33pur:
Originally posted by Jaerv:
Something I forgot to mention:
The game seems to be equally stable in DX11 and DX12 mode for me now. Performance, however, is significantly better with DX12.

Its also depend on your video cards, some are better at DirectX12 and some arent. Also depending on your resolution too. If make the game same resolution as your desktop, it would be best.

I cant make out the rest, only thing i can think of is that game launcher, running in the background. Wish there a way to disabled it. Anyway i gave up playing this some months ago, cause it was too unplayable for my taste.

Did you actually read the OP?
It would be great if you'd give my method a test run.
grognardgary Aug 2, 2022 @ 7:05am 
Originally posted by Jaerv:
Or let's say I'm cautiously optimistic that I did.
I recently set out on the quest to finally find out what's causing the game to constantly crash/freeze for me and my wife and pretty much everyone I know in rl who's playing the game.
Here's a link to the post where I'm describing my autoplay testing method:
https://steamcommunity.com/app/289070/discussions/0/3464975177697999473/?ctp=3#c3453716250586673098

After some further testing it became pretty obvious that the game became more unstable the more official content I activated. The crashes don't seem to be caused by some specific DLC, but by the number of additional content.
That fact and the reports of other players on the internet made me think that there's probably something wrong with the game's multithreading implementation. The more content has to be calculated, the higher the chance for something to go wrong if the MT is wonky.
It would also explain the unpredictability of the crashes and why folks with lower end systems don't experience as many problems. The game determines the level of MT according to the hardware and thus it wouldn't be as heavily multithreaded on their machines.

Next I looked for a way to restrict the level of MT done by the game and found a setting in the AppOptions.txt file in the ...\Documents\My Games\Sid Meier's Civilization VI directory that seems to do the trick.

After I changed the line "MaxJobThreads -1" to "MaxJobThreads 1" the crashes stopped for me. Completely.
You could try setting it to a higher value, but for me the only 100% stable setting was 1.
The game still seems to run multithreaded, but if I understand it correctly this setting allows the game only to use one single thread per job.

I have now run 17 autoplay games on both our machines together without any issues beyond turn 400 with all DLC content enabled. Before the change this was next to impossible, the game would crash/freeze every single time before turn 100.
Fingers crossed it stays that way.

Performance, at least on our systems, is still ok. Loading times got longer, but turn times and fps are perfectly fine so far. Your mileage may vary.

TLDR:
There seems to be something wrong with the games multithreading, which most likely causes the crashes.
Try setting "MaxJobThreads -1" to "MaxJobThreads 1" in the AppOptions.txt file in your ...\Documents\My Games\Sid Meier's Civilization VI directory, thus restricting the game's use of MT.
Give it a try.

EDIT: If this setting alone doesn't work for you, try setting MaxGameCoreThreads,
GameCoreReserveThreads, MaxGameCoreUnitMovementThreads and
MaxGameCoreTradeRouteThreads to 1 as well, in order to further limit the game's multithreading.




I know this solution is far from perfect, but until 2K/Firaxis finally manage to fix their code, it's possibly the best we got.
At least I can finally play the damn game now. :D
Excellent work sir. It is great to see some one on here who actually goes out of their way to solve problems instead of just griping their asses off and waiting for developer to fix it for them.
Private Peas Aug 2, 2022 @ 8:52am 
Just wanna say that you've cracked it. I was running Civ 6 for years on an old GTX 1080 @1080p with no probs. Recently upgraded to 3080ti and 4k@120 monitor and was crashing every few minutes, even at 1440p. After reading and implementing your solution it's been running for 4 hours maxed out without crashing. Thankyou sir.
Jaerv Aug 2, 2022 @ 9:39am 
@grognardgary: Thank you very much! I really hope it'll help some people.


@Private Peas: That's great! I'm very happy it works for you. Thanks for letting us know!
Spartak Aug 2, 2022 @ 10:09am 
If this fixes YNAMP's Giant Earth map... joining topic to follow
Originally posted by Jaerv:
Or let's say I'm cautiously optimistic that I did.
I recently set out on the quest to finally find out what's causing the game to constantly crash/freeze for me and my wife and pretty much everyone I know in rl who's playing the game.
Here's a link to the post where I'm describing my autoplay testing method:
https://steamcommunity.com/app/289070/discussions/0/3464975177697999473/?ctp=3#c3453716250586673098

After some further testing it became pretty obvious that the game became more unstable the more official content I activated. The crashes don't seem to be caused by some specific DLC, but by the number of additional content.
That fact and the reports of other players on the internet made me think that there's probably something wrong with the game's multithreading implementation. The more content has to be calculated, the higher the chance for something to go wrong if the MT is wonky.
It would also explain the unpredictability of the crashes and why folks with lower end systems don't experience as many problems. The game determines the level of MT according to the hardware and thus it wouldn't be as heavily multithreaded on their machines.

Next I looked for a way to restrict the level of MT done by the game and found a setting in the AppOptions.txt file in the ...\Documents\My Games\Sid Meier's Civilization VI directory that seems to do the trick.

After I changed the line "MaxJobThreads -1" to "MaxJobThreads 1" the crashes stopped for me. Completely.
You could try setting it to a higher value, but for me the only 100% stable setting was 1.
The game still seems to run multithreaded, but if I understand it correctly this setting allows the game only to use one single thread per job.

I have now run 17 autoplay games on both our machines together without any issues beyond turn 400 with all DLC content enabled. Before the change this was next to impossible, the game would crash/freeze every single time before turn 100.
Fingers crossed it stays that way.

Performance, at least on our systems, is still ok. Loading times got longer, but turn times and fps are perfectly fine so far. Your mileage may vary.

TLDR:
There seems to be something wrong with the games multithreading, which most likely causes the crashes.
Try setting "MaxJobThreads -1" to "MaxJobThreads 1" in the AppOptions.txt file in your ...\Documents\My Games\Sid Meier's Civilization VI directory, thus restricting the game's use of MT.
Give it a try.

EDIT: If this setting alone doesn't work for you, try setting MaxGameCoreThreads,
GameCoreReserveThreads, MaxGameCoreUnitMovementThreads and
MaxGameCoreTradeRouteThreads to 1 as well, in order to further limit the game's multithreading.




I know this solution is far from perfect, but until 2K/Firaxis finally manage to fix their code, it's possibly the best we got.
At least I can finally play the damn game now. :D
Dude, you just completed 2K QA job with excellence. Located a root cause, reproduced, managed to provide stable workaround. I wish they had some people in staff like you. Take my points as reward, least i could do.
Last edited by Ашот Ваншот; Aug 2, 2022 @ 10:48am
Jaerv Aug 2, 2022 @ 11:05am 
Originally posted by Ашот Ваншот:
Dude, you just completed 2K QA job with excellence. Located a root cause, reproduced, managed to provide stable workaround. I wish they had some people in staff like you. Take my points as reward, least i could do.

Ha, thanks man!
Usually not exactly my area of expertise. :D
Last edited by Jaerv; Aug 2, 2022 @ 11:06am
ApolloDukes Aug 2, 2022 @ 1:48pm 
Interesting. You seem to have made many of the same conclusions I made trying to track down what is causing this issue. I'll have to give this a try tonight and see how it goes but it sounds like you might have nailed down the issue.
ApolloDukes Aug 2, 2022 @ 2:44pm 
Just sped through 150 turns and this fix seems legit. No issues at all with all DLC installed and before this I could never make it to turn 100. I need to test more but this topic should be pinned so others having problems can find it easily. Great work sir, you are a hero to many
Last edited by ApolloDukes; Aug 2, 2022 @ 2:52pm
Harajii Aug 2, 2022 @ 6:13pm 
Have given this a try, doesn't work for me. Tried setting all thread counts to 1, game still crashes when I try to load/resume game. This game ran flawless for years, nfi what has changed but since coming back to it this week it is unplayable. What a shame.
Jaerv Aug 3, 2022 @ 12:47am 
@poppadux: Thank you! I'm glad it seems to work for you. Keep on testing!

@Harajii: Sorry to hear that. This sounds like a different issue, though. I've never had any problems with loading/resuming a game. I've only ever had crashes/freezes during turn computation. Could be a bad save file?
Last edited by Jaerv; Aug 3, 2022 @ 12:48am
ApolloDukes Aug 3, 2022 @ 3:04am 
Originally posted by Jaerv:
@poppadux: Thank you! I'm glad it seems to work for you. Keep on testing!

If I had any doubt before, I'm almost 100% sure now that this is the fix. Started adding mods back in last night and managed to make it 300 turns on a huge modded map with 50 civs in the game with no issues before calling it quits for the night.
Jaerv Aug 3, 2022 @ 3:16am 
Originally posted by poppadux:
If I had any doubt before, I'm almost 100% sure now that this is the fix. Started adding mods back in last night and managed to make it 300 turns on a huge modded map with 50 civs in the game with no issues before calling it quits for the night.

Awesome. :D
Thanks a lot for the feedback!
< >
Showing 1-15 of 415 comments
Per page: 1530 50

Date Posted: Aug 2, 2022 @ 2:43am
Posts: 415