RPCS3

From Emulation General Wiki
Jump to navigation Jump to search
RPCS3
RPCS3-Logo.png
Original developer(s) DH, Hykem
Current developer(s) RPCS3 Team
Latest version 0.0.18 Alpha[N 1]
Active Yes
Platform(s) Windows
Linux
BSD
Architecture(s) x86_64
Emulates PlayStation 3, PlayStation Classics (PSN versions)
Compatibility ⅔ playable
Website RPCS3.net
Support ($) Patreon
Programmed in C++
License GNU GPLv2
Source code GitHub
BIOS/Keys Required

RPCS3 is an open-source PlayStation 3 emulator/debugger written in C++ for Windows and Linux. It is the only emulator that can run commercial games, with over 2,000 considered playable. It also supports the PS3's internal PlayStation 1 emulator through the PlayStation Classics digital re-releases.

Download[edit]

Windows Linux FreeBSD Latest builds
Official Firmware needed.

Overview[edit]

RPCS3's end-goal is for its developers to experiment, research, and educate on the topic of PlayStation 3 emulation that can be performed on compatible devices and operating systems.[1] As it is under active development, it does not have a stable release.

History[edit]

RPCS3 began on May 23, 2011 as an experimental project by DH and Hykem (who beta-tested and coded for JPCSP in 2008). They initially hosted the project on Google Code, and eventually moved it to GitHub later in its development, making the repository publicly available in June of 2012. AlexAltea joined in late summer 2013 and worked on several components of the emulator, maintaining the codebase up until early 2015. DH left the project in mid-2016, turning his attention to the PlayStation 4 with the similarly named RPCS4. Hykem was pushed out of the scene in mid-2016 due to drama behind the scenes.[2]

After getting small homebrew apps working, the emulator could load the intros to some games with sound,[3] as well as play some portions of Disgaea 3 and The Guided Fate Paradox, but with heavy graphical glitches and no sprites.[4] Successive improvements brought with it the ability to play lightweight titles like After Burner Climax with almost no glitches.[5] After getting Persona 5 working, Atlus infamously sent the developers an erroneous DMCA takedown notice to help inforce a timed-exclusivity agreement with Sony,[6] creating a Streisand effect of spotlighting RPCS3 as a viable PS3 emulator.

For a long time, it was commonly thought that the original firmware files could only be extracted from a modded PS3, which would have greatly increased the barrier to entry. However, one of the developers discovered all the libraries were actually bundled with each system update, and that the emulator could include the ability to extract the files. Nekotekina opened a Patreon campaign in 2017, with kd-11 joining not long after. In June 2018, after a few improvements and fixes, most PlayStation 1 Classic titles became playable.[7] Only the PSN re-releases work; no discs can be loaded into the PS1 emulator yet.

Today, RPCS3 is able to play almost two thirds of the PS3's commercial library from start to finish. Emulating most games is demanding on hardware, though work has been done to reduce the requirements.

Enhancements[edit]

RPCS3 has (or works with) some enhancements for gameplay, such as:

Asynchronous Shader Recompilation
Compiles shaders as the game runs, allowing for virtually stutter free performance at the cost of objects and textures popping into existence as you play. It only gives a tiny performance boost - a powerful computer and further optimizations from the emulator will be needed to get the more demanding titles to run at full speeds like 30 FPS or 60 FPS. Many demanding games may utilize multiple secondary cores plus the primary core of the PS3's CPU so parallelization techniques will be needed, perhaps running on a user's GPU or 8-core and better CPU.
ReShade
A third-party suite that hooks into the renderer. Makes many games appear more vibrant or saturated, particularly more pronounced in those with dull textures like the Tales of series, Naruto series, and other anime-based titles.

Setting up[edit]

Installing the firmware[edit]

RPCS3 uses the original system firmware libraries to interface with the games, such as Bluetooth, PlayStation Eye, and so on.

You can extract them from the official update files that Sony distributes through their website. Download the file, then in RPCS3 go to File -> Install Firmware, and select the downloaded update file.

Installing games and updates[edit]

The game's serial should be present in the folder or archive name, the download page, and/or the PARAM.SFO file. If it's a retail game, it has the ID on the bottom side edge of the game's case. An internet search for InsertGameNameHere + Region ID should turn it out. It's also important that each game's files and folders are all placed under a single folder named as the correct region ID.

For Blu-ray Disc games, i.e. retail games:

  • File layout: PS3_GAME folder, PS3_DISC.sfb, PS3_UPDATE folder (not required)
  • Game ID starts with a B. First-party Sony games use BC, while third-party games use BL. For example: BCAS20071 (Demon's Souls Asia retail), BLUS31197 (Drakengard 3 USA retail).
  • May be dumped through a CFW-enabled PS3, using select compatible Blu-ray drives on PC, or acquired from someone else.
  • Game folders for retail games can be put under the \dev_hdd0\disc or anywhere really... except the folder used for digital games (\dev_hdd0\game) because some games write there causing really bad conflicts. To open games, use File/Boot Game.

For PSN games, i.e. digital versions downloaded from the PlayStation Store:

  • File layout: TROPDIR folder, USRDIR folder, ICON0.png, PARAM.sfo, etc.
  • Game ID starts with a N, for example NPEB02436 (Persona 5 EUR digital)
  • May be dumped through a CFW-enabled PS3, Sony's own poorely secured servers (PSNdl then psnpkgdecryptor-extractor), or acquired from someone else.
  • May come as a PKG file. RPCS3 has an Install .PKG option to install these.
  • Game folders for digital games must be placed under \dev_hdd0\game, as intended by design on real hardware. Using the Install .pkg option does that automatically for you.

Paid digital releases require a .RAP license file to decrypt a few important files before they can be booted.

  • Maybe dumped from the \dev_hdd0\home\00000001\exdata directory of a CFW-enabled PS3, or included alongside the download you got from someone else. That someone else might not include the .RAP file, and instead give a "fix" with the pre-decrypted files. In that case, you might have to install the PKG file first (or all of them, if there are multiple ones) and then copy and overwrite the "fix" files to your game folder.
  • If your source doesn't include a RAP or crack instructions, either it's replaced beforehand or it's actually useless. The last resort can be to try searching for a fix for the specific release.
  • Must be placed under \dev_hdd0\home\00000001\exdata\

Game and software updates are handled exactly like PSN games.

  • Installed using the Install .PKG option
  • The update will be placed in the game or software folder that corresponds to the correct region ID.
  • Take care to use the same region for the base game and the update, otherwise there's a potential risk of irreversible damage to your installed game dumps.

Files under the .66600x extensions are split files that accommodate for the 4-gigabyte file size limit on volumes formatted as FAT32; the PS3 does not support other types of filesystems that pass this limit, such as NTFS or the ext family. Use a tool like PS3merge to recombine these files.

Updating RPCS3[edit]

Note that RPCS3's official Discord server can also be a good resource for bringing up issues or learning about major breakthroughs or updates if any further information is required.

Windows[edit]

Newer versions of RPCS3 feature an automatic update checker. The emulator will automatically check for updates when loaded, and will prompt you to update if a new version is detected.

Linux[edit]

RPCS3 is compiled to AppImages using Azure. To update RPCS3, download the latest build, and replace your previous AppImage with the new one. Reenable executable permissions if they were disabled during the update. Most file managers can let you change it from their properties window.

Basic troubleshooting[edit]

Issues are to be expected since the emulator is still early (even though the project was started in 2011).

Audio stutter[edit]

Cannot be completely eliminated in most cases, but you can at least try to mitigate it by playing around with the "Preferred SPU Thread" setting as well as the "lower SPU thread priority" and "Bind SPU thread" to secondary core settings.

In addition, manually adjusting the priority and affinity of the RPCS3 process can affect it independently of the other internal settings. On Windows, this is done via the Task Manager. On Linux, CLI and GUI tools exist like System Monitor and Task Manager that can change the priority. It varies by distribution. This can influence audio stutter and performance in general but especially for Ryzen users.

Unavailable setting(s)[edit]

If you can't find a specific setting in RPCS3, you could be using an old build, and should probably update it.

Locked PSN demos[edit]

Some PSN titles use an .EDAT file to differentiate between "trial" and "full version" states rather than a .RAP file; these games are often referred to as "c00" games, stemming from the c00 folder in their installation which contains parameters for the full version. This can cause issues with unlocking certain titles, with a notorious example being Castlevania: Harmony of Despair. If a title utilizing an .EDAT file will not unlock its full version, renaming the .EDAT to .RAP will usually unlock as intended.

Netplay[edit]

RPCS3 uses RPCN for netplay, which emulates some P2P matchmaking servers for PS3 games. Only a few titles are supported, but more are expected. See this compatibility list.

Notes[edit]

  1. The developers are currently treating version increments as milestones, not as stable builds.

References[edit]

External links[edit]