Bloodborne, one of the most acclaimed games of this generation of consoles, is the result of the collaboration between From Software and Sony. It’s an epic gothic-themed adventure, full of lore, with deep but brutally challenging gameplay. For us at Digital Foundry, the game only disappoints from a technical standpoint.
The 30fps frame rate is implemented with little success and there has never been a fix for the PS4 Pro to have 60fps. With these premises, we have followed with great interest the work of Lance McDonald, who listed his attempts to hack the Bloodborne code on hardware debugging to allow full frame rate. The published video shows McDonald’s extremely close to the target. But what is the story behind this business?
Before continuing, it should be noted that the 60fps patch for Bloodborne does not work on PlayStation 4 commercial consoles, and anyone interested should have hacked or debugged consoles, which are not publicly available. Our interest was to check the behavior of this hack, to understand how it would translate into an official patch.
We spoke at length with McDonald’s to understand how he achieved such a result, after which we worked with him to test a series of resolutions and performances in order to have a clearer picture of how the From Sofware engine works. Obviously, these tests are not only necessary for Bloodborne, but also to understand how the souls of the same developer would spin at 60 frames per second. Obviously, we were wondering if the same hack could easily extend to Dark Souls programmed to shoot at 30fps.
Understanding why this is such a critical issue is essential. In an ideal world, games designed for living room screens would all run at 60 frames per second, so one frame for every Hz refresh of the TV, with the lowest possible latency. But the time it takes to create modern game engines makes this often impossible, so games can run twice as long. Using 30fps instead of 60fps we have 33.3ms frame time instead of 16.7ms but due to constant persistence of each frame the image still looks fluid.
The From Sofware engine is broken from this perspective, as its 30fps sync doesn’t sync at all with all display updates. The 30 fps of the motor is displayed on the screen when ready, at 16.7 ms, 33.3 ms, or 50 ms. This is what we generally refer to as “bad cadence” and its inconsistency gives the illusion that the game is running at a slower speed.
Before we talk about hacking Bloodborne to shoot at 60 frames per second, we need to ask ourselves the following question: Can the From engine be changed to sync 30 frames per second with the display? In practice, can each image last on a 33.3 ms screen? According to Lance McDonald, such a change would require a major overhaul of the entire engine. Admittedly, only one fix could not succeed in this enterprise: it is also a question of changing the logic of the game, the physics of the clothes: all the synchronization variables inside the engine are synchronized with the number of images and not with another refresh to display it. This means that it’s not possible to get a smooth, smooth frame rate of 30fps, and the only way around that is to pump the gameplay to 60fps.
This issue occurs when the engine is heavily coded for frame counting, but McDonald’s helped itself by reviewing Dark Souls 3. From Software released a PC version of the game that runs at over 30 frames per second, and which was also considered the basis for making the PS4 Pro patch, which ran at 1080p with the frame rate unlocked. Lance McDonald discovered that the basic engine mechanics were the same in Bloodborne and Dark Souls 3, and therefore the solution found for Bloodborne could be reused for the previous game as well.
Simply removing the 30fps limit wouldn’t have helped much, as all other aspects of the game’s schedule are designed for a 30fps performance level, and therefore take the game to 60fps. . would have doubled its speed. The solution was therefore more difficult: essentially, where the timing in the game of Bloodborne was limited to 1/30 frames, Dark Souls 3 adapted the cap of 30 frames per second to the current frame counter. McDonald’s followed the same strategy with Bloodborne, changing 108 different timing variables. Bloodborne was now spinning unlocked, with correct play timing. But this small victory brought new challenges.
First of all, there is the graphics component. Bloodborne’s resources, engine, and gameplay are calibrated for 1080p30. Unlocking the frame rate allows the game to run in a window between 30 and 40 frames per second. So in theory, running on PS4, the game should behave pretty much like Dark Souls 3. But the problem is, Bloodborne was programmed on a previous PS4 SDK that didn’t have support for Pro, implying that the game cannot benefit from the additional benefits. Power. The only way to go for better performance was to hack the boost mode code on Pro hardware. There’s a performance boost, but it doesn’t even hit 60 fps.
The interesting thing is that the engine Bloodborne is working on supports various native resolutions, including 720p, 900p, and 1080p. On basic PS4, the lower the resolution, the higher the frame rate. But the hope of getting stuck at 720p60 was shattered, as the best performance results were between 40 and 50 fps. Keep in mind that this engine was designed to run on standard PS4 at 30 frames per second. Bloodborne spends a lot of cycles diffusing textures and decompressing environmental data as you move through landscapes. The faster you travel, the more the load on the processor increases, which decreases the frame rate.
This all brings us back to the boost mode of the PS4 Pro. What’s absurd is that after years we still don’t know exactly how it works, we can only make assumptions based on measurable results, and our conclusions match Patched Bloodborne. First off, it looks like the higher clock that the PS4 Pro processor is capable of is fully utilized in boost mode, and proof of that is the near disappearance of frame drops in Bloodborne at 720p. However, the situation is not completely resolved, as fast movement can have a severe impact on performance, but it is the best Bloodborne experience possible, with most of the 60fps game scenes stuck.
At 1080p with the frame rate unlocked, there is only a small performance advantage over the base PS4, which will follow our observations on boost mode. Even if you take advantage of the full clock power of the processor, we believe that only half of the graphics delcore of the PS4 Pro is used, even if it runs at 911 MHz instead of 800 MHz. In short, there is + 14% performance available, and if in Bloodborne the game would run at 35fps, that means it would hit 39fps. However, the 900p is a happy medium that doesn’t give us great results because at some point we will find ourselves limited on the CPU or GPU.
The conclusions drawn from the Bloodborne experiment at 60 frames per second are fascinating but at the same time disarming. Despite the fact that we need a boosted PS4 and 720p resolution, the game benefits greatly. The gameplay is much smoother not only compared to 30fps, but also because those 30fps weren’t in sync well.
The original game was great, but the “upgade” is something magical. But the conclusions from the McDonald’s hack experiment show that even if the game received a patch for PS4 Pro, we would have heavy CPU limits, although at least we could go beyond the 720p resolution at which this hack limits us. Based on what was seen in Dark Souls 3 and Sekiro: Shadows Die Twice, the overall experience still wouldn’t be satisfactory.
That said, the tests performed here indicate a great opportunity for Sony. The new PlayStation 5 hardware offers full backward compatibility with the PS4, and the new and powerful Zen 2 cores would solve the performance issues of poor Jaguar cores. But if it’s possible for a third-party developer to patch a game, it should be relatively easy for Sony / From Software to do the same. You might even get some big bonuses, like native 4K.
The opportunities of this game with the arrival of the next generation are decidedly tempting for users, but it will be necessary to see if Sony will benefit from a return to the code of the game, especially if the rumors concerning the arrival of a full remake of Demon’s Soul for PS5, they will prove to be well founded.