• You use an Adblocker to hide advertisements. This type of program makes it difficult to keep this website up and running, since displaying advertisements is the only way to pay for hosting. Would you like to make an exception for this site? We promise that you will not be bothered by the advertisements.
  • Get upgrade the account to (Anti-ads Super Silver or Gold, Titanium - LifeTime for free and no yearly!) ----> "Click".
  • Check out: DKS-Discord
  • Forum - DKS is an English speaking community. If you reply to a thread using non-English languages(French/Spanish/etc), staff will review your post and may delete it.
Forum - DKS

Tutorial Applying 60fps/720p/Stable-30fps patches to Elden Ring

shapnil

DKS Member
DKS Member
Jun 28, 2018
43
46
0


Requirements:
1. FakePkgTools v3.87 by CyB1K
Link: github [dot] com/CyB1K/PS4-Fake-PKG-Tools-3.87/archive/refs/heads/main.zip
2. SelfUtil by dmiller423 & RetroGamer74
Link: github [dot] com/RetroGamer74/selfutil/releases/download/0.1/SelfUtil.exe
3. py-patcher by illusion0001
Link: github [dot] com/illusion0001/py-patcher-bin/releases/download/1.64/py-patch-windows.zip
4. Following dll files:
msvcp140d.dll, vcruntime140d.dll & ucrtbased.dll
Link: wikidll [dot] com
If you have 64bit windows, then get both the 32bit & 64bit versions of all three. So, total 6 dll files. Put the 64bit files in "C:\Windows\System32\" folder & the 32bit files in "C:\Windows\SysWOW64\" folder.
If you have 32bit windows, then only get the 32bit versions of all three & put them in "C:\Windows\System32\" folder.
(Make sure to restart your PC for the dlls to register)
5. (Optional?) Get the Microsoft Visual C++ 2015-2019 Redistributable Package. I dunno if it's needed or not, as I already had it installed in my PC.

Note: I know PS4 Patch Builder by MW is a much better way to do this, but I couldn't get Elden Ring to work with it. So, I went for the manual method.
Now, there are 2 cases. Either you wanna apply the patches on base game (a.k.a v1.00) or you wanna do that for the update (a.k.a v1.05). I'm giving instructions for both.

Preparation:
Files:
> base.pkg
> upd_v1.05.pkg
> upd_v1.05_9.00.pkg
> backport.pkg (v1.00's backport)
Obviously, the update file with "9 00" in its name is for FW9.00 & without "9 00" is for FW<9.00 (backport). So get whichever one's for your FW.
Extract FakePkgTools to a folder. Put SelfUtil.exe in that folder too for convenience. Extract py-patcher to another folder.

For v1.05 :

Step 1:
> Open orbis-pub-chk.exe
> Drag-n-drop upd_v1.05.pkg or upd_v1.05_9.00.pkg in there.
> Click Extract Files. Put passcode as all zero (32 zeros). Click Extract. Put a desired empty folder in Output Directory. Check Selected all files and directories. This will check all files. Click Start. After 100% completion, close & close.

Step 2:
> You now have 2 folders, Image0 and Sc0. Move everything from Sc0 to Image0\sce_sys.
> Delete Sc0.
> Rename Image0 to CUSA28863-patch.

Step 3:
> Inside CUSA28863-patch there's eboot.bin file. Drag'n'drop this eboot.bin on selfutil.exe.
> This will create eboot.elf. You can now delete eboot.bin.
> Now rename eboot.elf to eboot.bin. This eboot.bin is a decrypted version of the previous eboot.bin you just deleted.

Step 4:
> Open py-patch.exe. Press y to download database.
> Drag'n'drop the decrypted eboot.bin & press enter.
> Select Pick file from folder: patch0.
> Select the one with EldenRing-Orbis.yml.
> Press space to select the ones you want, for example you want 60fps & 720p, so only select those two and BE SURE to select the ones with Game version 01.05. DON'T select the ones with Game version 01.00. Finally press enter.
(If you want 1080p @ Stable 30fps, then only select the "30fps for base" patch.)
(If you're on ps4pro, then you only have "1080p for pro" patch, which lowers the resolution from 1800p to 1080p, which gives closer to 60fps framerate.)

> This will create a new folder named eboot.bin-patched, inside it there'll be a new eboot.bin file. You can now delete the previously decrypted eboot.bin & move/copy this new patched eboot.bin to CUSA28863-patch folder.

Step 5:
> Open gengp4_patch.exe. File->Open-> select CUSA28863-patch folder.
> Click Generate .GP4. It'll take some time now, wait patiently.
> When it says Done, click Save .GP4. Save this gp4 (let's say CUSA28863-patch.gp4) file to your desired location.

Step 6:
> Open orbis-pub-gen.exe. File->Open-> select CUSA28863-patch.gp4.
> Click Setting icon (upper left). Goto Patch tab. In Application package select base.pkg. Click OK.
> Click Build icon (upper right). Check Skip the digest calculation.
> In output path, select desired name/location of patched pkg. Click Build.
> If you've done everything correctly, hopefully you won't get any [Error], only [Warn]. Warnings are ignoreable. Finally the waiting game, especially at 84%. It might look stuck at 84% but it WILL complete, be patient. After 100% completion, close all.

Step 7:
> Install base.pkg in your PS4.
> Install the newly created patched.pkg.
> Enjoy 720p@60fps evidenced by slightly blurry image & smoother framerate.


For v1.00:

There are 2 cases for this. 1) Your ps4 FW is lower than 9.00 or 2) Your ps4 FW is 9.00.
If you're on lower than 9.00FW, then you have the backport.pkg file to work with, alongside base.pkg.
But if you're on 9.00FW, then you only have the base.pkg to work with. backport.pkg doesn't install in 9.00FW ps4.

If you're on lower than 9.00FW, then simply follow the steps as stated in For v1.05. Only difference is, in Step-1 use the backport.pkg instead of upd_v1.05.pkg/upd_v1.05_9.00.pkg. And in Step-4, select the ones with Game version 01.00, NOT Game version 01.05.

If you're on 9.00FW, then some things are slightly different.
Step 1:
> Open orbis-pub-chk.exe.
> Drag-n-drop base.pkg in there.
> Click Extract Files. Put passcode as all zero (32 zeros). Click Extract. Put a desired empty folder in Output Directory. Check these 4 things -
1. All files in Sc0
2. Image0\eboot.bin file
3. All files in Image0\sce_sys
4. All files in Image0\sce_module
(Do not just check the folders, you have to check the files inside the folders as well, or else you'll only extract empty folders.)
> Click Start. After 100% completion, close & close.

And then Steps 2, 3, 4, 5 are same as above. Just in Step-4, BE SURE to select the ones with Game version 01.00, NOT Game version 01.05.

Step 5.5 (after Step 5):
> Goto CUSA28863-patch\sce_sys folder.
> Drag'n'drop the file param.sfo onto orbis-pub-sfo.exe.
> You'll see the value of Application Version (APP_VER) is written as 01.00. Change it to 01.01. File->Save, & close.

And then Steps 6, 7 are same as above.

---The End---
To people who are experienced & knowledgeable about this stuff, let me know if I made any mistake. I am a noob & I basically just made this because I myself was having trouble getting the patches to work. Hopefully this article helps those like me.
 
Last edited:

patch

Fire Member
DarkSoftware Silver
Jun 13, 2018
66
139
0
lol ok sorry I re-read the tut... nevermind

EDIT: thank you followed your tut and everything works fine :)
 
Last edited:
  • Like
Reactions: shapnil

sl3ge

Fire Member
DKS Member
Mar 13, 2018
96
98
0
Requirements:
1. FakePkgTools v3.87 by CyB1K
Link: github [dot] com/CyB1K/PS4-Fake-PKG-Tools-3.87/archive/refs/heads/main.zip
2. SelfUtil by dmiller423 & RetroGamer74
Link: github [dot] com/RetroGamer74/selfutil/releases/download/0.1/SelfUtil.exe
3. py-patcher by illusion0001
Link: github [dot] com/illusion0001/py-patcher-bin/releases/download/1.64/py-patch-windows.zip
4. Following dll files:
msvcp140d.dll, vcruntime140d.dll & ucrtbased.dll
Link: wikidll [dot] com
If you have 64bit windows, then get both the 32bit & 64bit versions of all three. So, total 6 dll files. Put the 64bit files in "C:\Windows\System32\" folder & the 32bit files in "C:\Windows\SysWOW64\" folder.
If you have 32bit windows, then only get the 32bit versions of all three & put them in "C:\Windows\System32\" folder.
5. (Optional?) Get the Microsoft Visual C++ 2015-2019 Redistributable Package. I dunno if it's needed or not, as I already had it installed in my PC.

Note: I know PS4 Patch Builder by MW is a much better way to do this, but I couldn't get Elden Ring to work with it. So, I went for the manual method.
Now, there are 2 cases. Either you wanna apply the patches on base game (a.k.a v1.00) or you wanna do that for the update (a.k.a v1.05). I'm giving instructions for both.

Preparation:
Files:
> base.pkg
> upd_v1.05.pkg
> upd_v1.05_9.00.pkg
> backport.pkg (v1.00's backport)
Obviously, the update file with "9 00" in its name is for FW9.00 & without "9 00" is for FW<9.00 (backport). So get whichever one's for your FW.
Extract FakePkgTools to a folder. Put SelfUtil.exe in that folder too for convenience. Extract py-patcher to another folder.

For v1.05 :

Step 1:
> Open orbis-pub-chk.exe
> Drag-n-drop upd_v1.05.pkg or upd_v1.05_9.00.pkg in there.
> Click Extract Files. Put passcode as all zero (32 zeros). Click Extract. Put a desired empty folder in Output Directory. Check Selected all files and directories. This will check all files. Click Start. After 100% completion, close & close.

Step 2:
> You now have 2 folders, Image0 and Sc0. Move everything from Sc0 to Image0\sce_sys.
> Delete Sc0.
> Rename Image0 to CUSA28863-patch.

Step 3:
> Inside CUSA28863-patch there's eboot.bin file. Drag'n'drop this eboot.bin on selfutil.exe.
> This will create eboot.elf. You can now delete eboot.bin.
> Now rename eboot.elf to eboot.bin. This eboot.bin is a decrypted version of the previous eboot.bin you just deleted.

Step 4:
> Open py-patch.exe. Press y to download database.
> Drag'n'drop the decrypted eboot.bin & press enter.
> Select Pick file from folder: patch0.
> Select the one with EldenRing-Orbis.yml.
> Press space to select the ones you want, for example you want 60fps & 720p, so only select those two and BE SURE to select the ones with Game version 01.05. DON'T select the ones with Game version 01.00. Finally press enter.
> This will create a new folder named eboot.bin-patched, inside it there'll be a new eboot.bin file. You can now delete the previously decrypted eboot.bin & move/copy this new patched eboot.bin to CUSA28863-patch folder.

Step 5:
> Open gengp4_patch.exe. File->Open-> select CUSA28863-patch folder.
> Click Generate .GP4. It'll take some time now, wait patiently.
> When it says Done, click Save .GP4. Save this gp4 (let's say CUSA28863-patch.gp4) file to your desired location.

Step 6:
> Open orbis-pub-gen.exe. File->Open-> select CUSA28863-patch.gp4.
> Click Setting icon (upper left). Goto Patch tab. In Application package select base.pkg. Click OK.
> Click Build icon (upper right). Check Skip the digest calculation.
> In output path, select desired name/location of patched pkg. Click Build.
> If you've done everything correctly, hopefully you won't get any [Error], only [Warn]. Warnings are ignoreable. Finally the waiting game, especially at 84%. It might look stuck at 84% but it WILL complete, be patient. After 100% completion, close all.

Step 7:
> Install base.pkg in your PS4.
> Install the newly created patched.pkg.
> Enjoy 720p@60fps evidenced by slightly blurry image & smoother framerate.

For v1.00:

There are 2 cases for this. 1) Your ps4 FW is lower than 9.00 or 2) Your ps4 FW is 9.00.
If you're on lower than 9.00FW, then you have the backport.pkg file to work with, alongside base.pkg.
But if you're on 9.00FW, then you only have the base.pkg to work with. backport.pkg doesn't install in 9.00FW ps4.

If you're on lower than 9.00FW, then simply follow the steps as stated in For v1.05. Only difference is, in Step-1 use the backport.pkg instead of upd_v1.05.pkg/upd_v1.05_9.00.pkg. And in Step-4, select the ones with Game version 01.00, NOT Game version 01.05.

If you're on 9.00FW, then some things are slightly different.
Step 1:
> Open orbis-pub-chk.exe.
> Drag-n-drop base.pkg in there.
> Click Extract Files. Put passcode as all zero (32 zeros). Click Extract. Put a desired empty folder in Output Directory. Check these 4 things -
1. All files in Sc0
2. Image0\eboot.bin file
3. All files in Image0\sce_sys
4. All files in Image0\sce_module
(Do not just check the folders, you have to check the files inside the folders as well, or else you'll only extract empty folders.)
> Click Start. After 100% completion, close & close.

And then Steps 2, 3, 4, 5 are same as above. Just in Step-4, BE SURE to select the ones with Game version 01.00, NOT Game version 01.05.

Step 5.5 (after Step 5):
> Goto CUSA28863-patch\sce_sys folder.
> Drag'n'drop the file param.sfo onto orbis-pub-sfo.exe.
> You'll see the value of Application Version (APP_VER) is written as 01.00. Change it to 01.01. File->Save, & close.

And then Steps 6, 7 are same as above.

---The End---
To people who are experienced & knowledgeable about this stuff, let me know if I made any mistake. I am a noob & I basically just made this because I myself was having trouble getting the patches to work. Hopefully this article helps those like me.

Hi, First of all thanks for sharing.
I have a question,
Why need to us selfutil.exe to decrypt the eboot.bin?
Where as i saw modded warfare video he dont need selfutil.exe to decrypt,
he just use HXDeditor to edit the eboot.bin
https://www [dot] youtube.com/watch?v=OCj6AaTi5hc&t 8min35sec
 

shapnil

DKS Member
DKS Member
Jun 28, 2018
43
46
0
@sl3ge , py-patcher won't work with encrypted eboot.bin. So, you need to decrypt it first, so that py-patcher won't give errors.
 
  • Like
Reactions: sl3ge

ceevee

DKS Member
DKS Member
Jul 2, 2018
8
5
0
Just wanted to say thanks for making this easy tutorial. I haven't tried it yet, but I've been following several of illusion0001's fantastic PS4 patches for awhile. THANKS!
 
  • Like
Reactions: shapnil

Jackfavvv

Legendary Member
Uploader
Dec 19, 2018
293
2,325
1
Need to mention a few things if you are using selfutil by Znullptr & RetroGamer_74.

- Microsoft Visual C++ 2015 doesn't provide the three files listed

- If you have a 64bit system, the files still goes into System32, not SysWOW64.
(Already tested by running the app with none of the listed files present in SysWOW64 on my x64 OS)

- Here are the three files(x64) for your convenience:

They all go in the directory of C:\Windows\System32


As well as all the apps that you'll need all in one package:
 
Last edited:

shapnil

DKS Member
DKS Member
Jun 28, 2018
43
46
0
@Jackfavvv , Thank you for providing a direct link to the dll files.
(There are 32bit AND 64bit versions of the three files. Which is why I said to put the 64bit versions in System32 & 32bit versions in SysWOW64, to avoid confusion. I'm guessing if anyone accidentally puts 32bit versions in System32, it won't work (in case of x64 OS))
 
  • Like
Reactions: Jackfavvv

Jackfavvv

Legendary Member
Uploader
Dec 19, 2018
293
2,325
1
@Jackfavvv , Thank you for providing a direct link to the dll files.
(There are 32bit AND 64bit versions of the three files. Which is why I said to put the 64bit versions in System32 & 32bit versions in SysWOW64, to avoid confusion. I'm guessing if anyone accidentally puts 32bit versions in System32, it won't work (in case of x64 OS))
Well normally SysWOW64 handles x64 files and System32 handles x32 files, however this is a different case.
I don't have a 32bit OS, but the files I provided are all you need to run SelfUtil on a x64 OS to avoid confusion and redundancy.
Appreciate your contributions.
 
  • Like
Reactions: shapnil

Leolapi4

Fire Member
DKS Member
Sep 8, 2020
57
24
0
Thanx! Where have ya been yesterday? I have spent 3 hours to figure it out by myself.
 

FateNightroad

DKS Member
DKS Member
Sep 5, 2021
14
10
0
Need to mention a few things if you are using selfutil by Znullptr & RetroGamer_74.

- Microsoft Visual C++ 2015 doesn't provide the three files listed

- If you have a 64bit system, the files still goes into System32, not SysWOW64.
(Already tested by running the app with none of the listed files present in SysWOW64 on my x64 OS)

- Here are the three files(x64) for your convenience:

They all go in the directory of C:\Windows\System32


As well as all the apps that you'll need all in one package:

Thanks, jack for providing all the necessary files, saves me the trouble of searching and extracting them one by one.
 

shapnil

DKS Member
DKS Member
Jun 28, 2018
43
46
0
@Jackfavvv , I think you uploaded the uncompiled selfutil by dmiller423. Correct me if i'm wrong but isn't it supposed to be the compiled exe by Retrogamer74? (The uncomplied exe didn't work for me)
 

Jackfavvv

Legendary Member
Uploader
Dec 19, 2018
293
2,325
1
@Jackfavvv , I think you uploaded the uncompiled selfutil by dmiller423. Correct me if i'm wrong but isn't it supposed to be the compiled exe by Retrogamer74? (The uncomplied exe didn't work for me)
Are you sure you extracted the file's contents correctly? The selfutil.exe is supposed to be in the directory of selfutil\x64\Debug. Unless it has something to do with you running a x32 OS.

UPDATE: Just checked, it's not the one from your link, so most likely uncomplied, however I tested everything first a and made sure everything still works before I unloaded the files. Did you download the selfutil folder and all of it's contents or did you just pull out the selfutil.exe?
 
Last edited:

shapnil

DKS Member
DKS Member
Jun 28, 2018
43
46
0
@Jackfavvv , There are 2 selfutil.exe files. One (258 KB) by dmiller423 which is inside selfutil\x64\Debug folder, and one (85KB) by Retrogamer74 which is found on his github as a standalone file.
dmiller's one gives me an error (yes I extracted all the contents, not only the exe), but retrogamer's one works flawlessly for me.
But anyways, people have both options. if one doesn't work they can try the other one.
 

Jackfavvv

Legendary Member
Uploader
Dec 19, 2018
293
2,325
1
@Jackfavvv , There are 2 selfutil.exe files. One (258 KB) by dmiller423 which is inside selfutil\x64\Debug folder, and one (85KB) by Retrogamer74 which is found on his github as a standalone file.
dmiller's one gives me an error (yes I extracted all the contents, not only the exe), but retrogamer's one works flawlessly for me.
But anyways, people have both options. if one doesn't work they can try the other one.
I just tested the one that you linked. Apparently it requires vcruntime140_1.dll(probably more) a dll file that wasn't listed in your guide. This is rather strange for the both of us since we are getting different results.SelfUtil_TEST.png
 

shapnil

DKS Member
DKS Member
Jun 28, 2018
43
46
0
@Jackfavvv , which is why I also said to get the 2015-2022 Redist pack. I already had the pack installed (which should include vcruntime140_1.dll), so I'm assuming that's why I didn't get the error. The first commenter on this thread also got it working.
 

ScrimReaper

DKS Member
DKS Member
Dec 28, 2021
1
0
0
does this patch have english language
 

shapnil

DKS Member
DKS Member
Jun 28, 2018
43
46
0
does this patch have english language
Yes...? I applied the patch and I'm playing the game at english.