Standalone PS5 payload for compressing, unpacking, validating, repairing, and moving ShadowMountPlus-mounted games from a simple web UI.
Game Compressor is made for the day-to-day workflow after your games are already mounted through ShadowMountPlus: pick a title, choose an action, and let the PS5 do the work. The app keeps long operations running on the console even if the browser window is closed.
- Compress mounted game folders or images into FF-PFSC output.
- Choose PFS or exFAT output when compressing.
- Automatically build APR Emu
ampr_emu.indexbefore compressing APR titles. - Manually run
Build AMPR Indexon a folder when you only want to refresh the APR index. - Validate compressed games and repair detected PFSC block issues when possible.
- Uncompress compressed games back to folder/app form.
- Move supported titles between internal storage and USB storage.
- Track progress, speed, estimated remaining time, and operation history.
- Keep operations running on the PS5 even if the browser tab closes.
- Install or refresh a PS5 home-screen launcher tile:
Game Compressor / PSGC50001 -> http://127.0.0.1:5910/
The PS5 home-screen tile opens the Game Compressor web UI in the browser. It is not the compression worker itself. Compression, validation, repair, move, and uncompress jobs continue on the PS5 if you close the browser window or reopen the tile later.
APR Emu titles need an ampr_emu.index file and the correct ShadowMountPlus
read-only image settings when they are run from internal SSD. Game Compressor
handles those details for the common workflows:
- To compress a folder-format APR Emu game from USB and run it from internal
SSD, plug in the USB drive, select the title, and choose
Compress. Game Compressor buildsampr_emu.indexusing the same workflow asbuild_ampr_index.py, writes the ShadowMountPlus read-only and sector-size settings, creates the.ffpfscimage, mounts it, and validates the mounted image byte-for-byte against the original. - If the compressed game stutters and you still want it on internal SSD, open
the secondary action menu, choose
Uncompress, then selectexFAT. The ShadowMountPlus settings andampr_emu.indexare already in place, so Game Compressor leaves them unchanged and creates an uncompressed exFAT image. - If you already know the game should stay uncompressed, open the secondary
action menu, choose
Make Image, then selectexFATandInternal SSD. Game Compressor detects the APR Emu title, builds or refreshesampr_emu.index, applies the read-only ShadowMountPlus settings, and creates the uncompressed image. - If you already have an exFAT image and
ampr_emu.indexexists, useSet Read Onlyfrom the secondary action menu to apply the ShadowMountPlus read-only settings for that image.
The only unsupported automatic case is an existing exFAT image with no
ampr_emu.index. For that case, run the game once from external USB without
read-only settings so APR Emu can create its index, confirm the game starts,
then copy it to internal SSD and use Set Read Only.
Non-APR titles keep the normal compression path. When APR indexing is performed,
the selected game screen and operation history show APR indexed.
- A PS5 homebrew environment capable of running payload ELFs.
- ShadowMountPlus latest version, installed and managing mounted titles.
- KStuff Lite 1.07 Beta or later.
- Payload Manager or another
method to launch
game-compressor.elf.
This project assumes you already understand the risks of running PS5 homebrew payloads. Keep backups of important data and test with non-critical titles first.
Set PS5_PAYLOAD_SDK to your local SDK path, then run make:
export PS5_PAYLOAD_SDK=/path/to/ps5-payload-sdk
makeThe build output is:
game-compressor.elf
Generated build outputs are intentionally ignored by git:
build/
gen/
game-compressor.elf
Copy the built ELF to your PS5 payload folder. A typical Payload Manager path is:
/data/pldmgr/payloads/game-compressor/game-compressor.elf
This repo also includes Payload Manager metadata in:
payload-manager/game-compressor.elf.json
If you rebuild the ELF, update that JSON checksum before publishing or redistributing it.
- Make sure ShadowMountPlus has mounted one or more games.
- Launch
game-compressor.elffrom Payload Manager or your payload loader. - Open the web UI:
http://<PS5_IP>:5910/
- Pick a game from the left sidebar.
- Use the primary action:
- Folder/image titles show
Compress. - Compressed titles show
Validate and Repair.
- Folder/image titles show
- For compression, choose either
PFSorexFATwhen prompted. - Use the secondary action menu for supported actions such as:
Build AMPR IndexUncompressMove to USBMove to Internal SSD
- Use the History button to review previous operations.
The app remembers the last game you viewed using a browser cookie, so reopening the UI returns to that title when it is still available.
If you close the browser window during an operation, open the Game Compressor
tile again or go back to http://<PS5_IP>:5910/ to see the current job.
Mounted games are shown automatically. Game Compressor also scans known game storage folders, including:
/data/homebrew
/data/etaHEN/games
/mnt/ext0
/mnt/ext0/homebrew
/mnt/ext0/etaHEN/games
/mnt/ext1
/mnt/ext1/homebrew
/mnt/ext1/etaHEN/games
/mnt/usb0 through /mnt/usb7
/mnt/usb0/homebrew through /mnt/usb7/homebrew
/mnt/usb0/etaHEN/games through /mnt/usb7/etaHEN/games
Game Compressor should only be launched when you need to compress, validate, repair, move, or unpack games. After your games are compressed and you no longer need the web UI, it is preferred that Game Compressor is no longer running.
Use the terminate button in the top bar when you are done. Game Compressor removes its home-screen tile, stops the payload, and leaves a final screen telling you to exit the browser window.
- Launcher installation is nonfatal. If it fails, the web UI can still be used
directly from
http://<PS5_IP>:5910/. - Payload operations are owned by the PS5-side worker, not the browser tab.
- Compression and repair workflows can take a long time on large titles.
Created by Juma Sayeh.
Tested by Osama Abualia.
Built on and inspired by work from:
- PSBrew/MkPFS
- Drakmor's ShadowMountPlus,
APR Emu, and
build_ampr_index.pywork, which Game Compressor builds on for mounted-title support and PS5-sideampr_emu.indexgeneration.
Made with love in Palestine.
This is homebrew software for experimental PS5 workflows. Use it at your own risk. The project is not affiliated with Sony, PlayStation, or any game publisher.