The Horizon Zero Dawn PC port launched a few days ago and fans have been wondering about why it crashes so often – one person took a closer look, and wasn’t happy with what they found.
The news comes from Reddit, where an anonymous programmer shared their findings after investigating the game’s “dump files.”
“So, as a programmer myself, I took the liberty to investigate the dump files myself,” they wrote. “Let’s say that the result is not very… promising.”
The poster goes on to include an image of a line from the game’s code, which was screenshotted at the exact point it crashed.
“What this piece of code means is that the computer is trying to write the value in the right to the memory address in the left, the problem is, the memory specified doesn’t exist,” they wrote. “The program is trying to directly access address 0, this will ALWAYS crash the game, and this is also a big NO.”
“I have no idea how this happened, the program having a hardcoded 0 as a memory address is clearly how poorly made this was, no well-made code (or just average really) would try to access 0 as a memory address, could’ve been a compiler bug, but I highly doubt it,” they added.
They went on to make a couple of edits after other people began to engage with the post, both of which came to the same conclusions.
“After a little while investigating in a disassembler, I found 166 lines of the same instruction,” the edited post reads. “They are used primarily in memory handling and some unremoved (for some reason) debug functions.”
“I have removed these instructions (noped them) and well, the game crashes less,” it continues. “It’s far from a actual fix, I can’t fix graphical issues, but at least it crashes every 30 minutes now, not 5.”
The post concludes by stating that this is clearly a debug build and shouldn’t have been shipped. If you’re curious, you can check out some Horizon Zero Dawn gameplay for yourself.
Although fans were initially excited about how good the game looked, constant crashes and performance issues quickly superseded that enthusiasm. These issues are, as the Reddit post points out, relatively well explained by the fact this port could still have aspects of a debug build attached to it.