Monster Hunter World does not properly detect the number of CPU cores, one main thread dedicated to anti-debug code
AUGUST 27, 2018 JOHN PAPADOPOULOS 7 COMMENTS
Modder Kaldaien has
announced that he will no longer develop his Special-K mod for Monster Hunter World, stating that Capcom’s anti-debug code seriously messes things up for modders. Not only that, but the modder has discovered some pretty interesting details about how the engine handles and uses its cores, and these findings could potentially explain why the game is so CPU-heavy bound.
According to the modder, Monster Hunter World is currently unable to properly detect the number of CPU cores that PC gamers have in their systems. The game’s logic assumes that everyone has a 32-core processors and scales its threads accordingly, even though some gamers can only have CPUs with only 4 or 8 cores/threads.
Furthermore, Kaldaien claimed that one main thread is dedicated solely to its “anti-debug code” and that 25% of the entire CPU workload is simply overhead from all the threads that can be generated (something we’ve already covered).
The game’s anti-debug code is so strict that it may potentially impact the game’s performance. As Kaldaien
claimed:
“I’m just going to leave it at that for now. I have found and defeated the mechanism they use to prevent debugger breakpoints (was causing kernel-mode bottlenecks and lower performance). I also can plainly see what looks like an intentional design using AK to corrupt critical sections and crash the game when you attempt to mod it. I worked around that (Slightly)”
Unless Capcom decides to remove its anti-debug code, Kaldaien will no longer be working on his Special-K mod for Monster Hunter World. Whether Denuvo or Capcom is at fault here for this anti-debug code remains a mystery.