- Aug 11, 2019
This is a Windows application created by Shiningami for the PS4, firmware 5.05. This program is a game debugger and memory scanner. It is used to create mods for your PS4 games.
**Please take note** After you attach this program, you cannot close your app or close the program or turn your PS4 off without detaching it.
This post is just to provide a download link and explain where it came from and what it does, as well as explain how to navigate it.
When you first open the program, you will see this.
First thing you want to do, enable HEN. Second, you want to run "Bin Loader" and enter your PS4 IP address inside the text box found here.
You can find your PS4 IP by going
System Information > IP Address.
Once the payload is injected successfully, you will receive a notification on your PS4 that looks like this > .
Now that we have enable HEN and injected our Payload using the button on Reaper. You can now launch the game you want to create mods for.
Once your game is fully loaded like so
You can now attach Reaper using the button. If successfully attached to the game process, you will see this notification on your PS4 .
Reaper should then look like... .
Next up, find a value you want to search for. I am going to use the ammo in my weapon's clip for this tutorial.
As you see, I have 10 bullets inside of my clip. . To scan for this value of 10. We need to open the Memory Scanner on Reaper(which is titled, "Scanner, Memory Scanner Tool"). If you have clicked on the button I have just displayed, you will now see this tab on your tab row. .
So you see the "Select All" checkbox in the top left of that picture. Go ahead and check that box. This will check all the boxes to the left.
Once that is done. You can now edit the drop down box that by default says, "4 bytes".
Byte - One hex value. Example - 01 = 1. 0A = 10.
2 bytes - 2 hex value. Example - 0001 = 1. 0100 = 256.
4 bytes - 4 hex value. Example - 00000001 = 1. 00010000 = 65536.
8 bytes - 8 hex value. Example - 0000000000000001 = 1. 0001000000000000 = 281474976710656.
Float - 4 hex value. Difference between a Float and a 4 byte... 4 byte is a whole number, whereas a float can be whole or decimal. Typically in a game, if you are looking for health and you don't see a number on-screen but you have a health bar or your screen turns red. It could be a 4 byte... but if your health moves on it's own(auto-regeneration), then it will most likely be a float because that number is floating and most games use decimals for self-moving values like health auto-regen.
Double - Double is a decimal as well as a float, except the number is not floating on it's own like a float does.
String - A string is regular text like you see in this sentence. You can use this to find dev menus, menu text, built-in functions such a God Mode in Call of Duty.
HEX - HEX is hex. You can this if you are not sure if your value is in big-endian. Big-endian is when your hex is reversed. Instead of ff000000 it will be 0000ff00. It swaps the first 2 bytes with the last 2 bytes.
So given the information I just provided on bytes, my value is 10. So typically we would want to scan "byte" because it is less than or equal to the max hex value for a single byte being... 255. The max a bye can go is FF. They count like this.. 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F. Then it start with the first number and starts counting up the 2nd again. 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F. F is the highest letter so the max is... FF. But if you have 2 bytes... the max is FFFF, which equals 65535.
We are going to go ahead and select "byte". Now moving onto the next drop down... . I am scanning for 10 exactly on my first scan, so I want to leave it on "Exact Value". If you are not sure of the value but you think, no matter what it is higher than the value of 10, just not sure exactly the specific value. You will scan "Bigger Than". Same thing with "Smaller Than" except the opposite. If you know your value is somewhere between 2 values. My ammo is 10 so I could just scan a "Between Value" and type 9 for the smaller value and type 11 for my larger value. If you are not sure of your value at all, you scan Unknown Initial Value. This will not read the value box I am going to show below, so it does not matter what is written inside of it.
So leaving that on "Exact Value", let's take a look at the value box. . The Hex checkbox is if you want to scan for your value in the form of HEX. So you see currently there is a "0" in the box. My ammo count is currently 10. So we want to type 10 in that box instead of 0. Like so. Now we want to hit "First Scan", located beside your value box. then click "Ok" on the pop-up box.
Please note: These scans are slow. Especially when scanning unknown initial value and typically the 2nd scan takes longer than the 1st. PS4 Cheater uses jkpatch and scans faster. But that's requiring you to inject 2 payloads(jkpatch + ps4debug). I do not recommend mixing payloads but some games are so big, it's not the worst thing in the world if you do to save some time.
Once my first scan is complete, I will see a ton of results because the number is low and very common within the game's memory. If I were to scan for a value of 12345678, it would probably leave me with 2 results. A real value and a display value. How to tell which is which? A real value when changed, if I change my ammo to 99 and then shoot, if it doesn't go down to 98 or to the max clip size, then it is probably the display value. Meaning the value probably just went down to 9. You cannot do anything with a display value so go ahead and get rid of it.
My scan finished with 0 results and it reminded me about this game. In this particular game, my ammo is not as displayed on screen so I am just going to continue this tutorial with a different value on an item in my inventory. It is still ammo, just not in my clip.
So you can see my ammo is 34. I scanned for this value and have saved the real value result.
When you get your results down to a small amount, start double clicking the rows to add them to the tab, "CHT Legacy".
Should look like this. Here you can edit the Value by double clicking on the number. I am going to change this to 99.
Like so. Now let's take a look at my ammo.
You can see it is now 99. I am going to reload to see if it drops to either... 98, 50(max), or 33. If it is 33. That means it is a display value and it does not actually change the amount of ammo in that stack.
I reloaded twice, now I have 97 so it is in-fact, the real value.
This completes the memory scanning tutorial. The rest is going to be about ASM where I have created a section for. So for ASM help, please head there If I need to add anything to this, please let me know.