The Witcher 2: Assassins of Kings Enhanced Edition

The Witcher 2: Assassins of Kings Enhanced Edition

codebunny Dec 19, 2021 @ 2:04am
W2 refuses to run on 32 core CPU - the solution
Some fortunate gamers own a 16c/32t CPU but The Witcher 2 does not like 32+ cores and stucks up on the Wolf Head Medallion. For some reason it perfectly runs on 31 cores. How to do that:

- Start Steam normally
- Set CPU affinity of Steam in Task Manager:
- - Expand Steam (32 bit) application, Right-click on 'Steam', and select 'go to details'
- - Right-click on 'steam.exe' there and select 'set affinity'
- - Deselect 1 core, for example CPU 31 and click OK
- Start The Witcher 2 normally - enjoy the game

What happens is that for whatever reason The Witcher 2 runtime locks up on a 32 core CPU. Setting the core affinity directly for witcher2.exe when it's already started does not work. When setting the core affinity of Steam, launching any other game inherits the affinity of its parent process.

There are solutions on the Internet that ask you to run the game in Admin mode - do NOT use that.

Rather try launching the Steam application via a shortcut with affinity options, or make a launcher for witcher2 directly.

Example commands:
start /AFFINITY 0x7FFFFFFF <your Steam directory>steam.exe
start /AFFINITY 0x7FFFFFFF <your witcher2 game directory>\bin\witcher2.exe

EDIT: Both start Steam with the requested affinity, and subsequently any game game with the same inherited affinity. 0x7FFFFFFF stands for 31 cores, 0xFFFF stand for 16 cores and so on.

EDIT2: The game itself is multi-threaded and does not exactly use a specific core count, nor is it limited to use less cores, or anything like that. When it runs it uses roughly 40 threads that are somehow spread across 4-5 cores which really depends on how fast the CPU is. I let the game run on just 4 core affinity (0xF), 8 cores (0xFF), 16 cores (0xFFFF) not difference - it just works. If you have an 8 core CPU try setting the affinity option to 0x7F to reduce the max core affinity count to 7 cores, or even 0xF to use only 4 cores. Which is virtually the same as disabling SMT altogether. I believe there is some division error in the threading facility that manages the game's multi-threading pipeline. Somehow it can't handle the max core count presented by the OS.

I hope this helps. I know no other workaround that actually works. Not sure about the GOG version, but launching the witcher2.exe with the affinity option should work also.
Last edited by codebunny; Dec 19, 2021 @ 5:16am
< >
Showing 1-4 of 4 comments
ngapa Dec 22, 2021 @ 9:17am 
thank you !
Osceptrus Dec 26, 2021 @ 12:35pm 
Setting affinity for Witcher worked for me by doing both the launcher and exe in this manner:

From others messages, this works for me to limit # of cores. Not too hard actually:

1. start the launcher, -> CTRL+ALT+DELETE to go to task manager
2. in processes tab, right click on the launcher app and select "Go to details"
3. the details tab will open up, then right click on the app again and select "Set affinity"
4. uncheck all the cores except 0,1,2,3 then close task manager.

This will get the launcher running. Then go back to task manager and repeat the same steps for the witcher.exe and the game will start.

When you are done the game and exit, the cores are all reset, so when you want to play again, just repeat this again. Doesn't take too long.
Einzelganger Dec 28, 2021 @ 1:51pm 
same issue with 16c 32t, fix worked, ta.
gencman May 16, 2024 @ 4:09pm 
I'm really shocked, worked for me with Assassin's Creed 1, using 5950x with an Arc A770 and the whole time thinking, it must be the GPU or Windows 11 making trouble!

Many thanks for your help guys, I was looking for a solution since days (or weeks?), while trying the whole compatibility, admin rights, network and firewall acrobatics. Have even bought AC1 on Steam, GOG and UBiConnect as well, because of that, thinking maybe a platform related problem... so dumb :)
< >
Showing 1-4 of 4 comments
Per page: 1530 50

Date Posted: Dec 19, 2021 @ 2:04am
Posts: 4