ps5dbg-scanner
A cross-platform "Cheat Engine for PS5" built on the
ps5dbglibrary. Scan a game's memory, narrow down to the values you care about, then freeze or edit them — from any OS, no Windows required.
ps5dbg-scanner is a desktop GUI for the classic memory-editor loop:
- Pick the foreground app (or any process) on your jailbroken PS5.
- First scan — find all addresses holding a value (e.g. your current gold = 1000).
- Next scan — change the value in-game, then narrow the survivor list (now it's 1050 → only addresses that went from 1000 → 1050).
- Repeat until you have a handful of candidates, then freeze or edit the value.
It uses ps5debug-NG's server-resident turbo scan, so survivors live on the PS5 and narrow scans are fast even when the first scan returns hundreds of thousands of hits.
Runs anywhere Python 3.10+ runs (Linux, macOS, Windows) with no extra runtime dependencies beyond ps5dbg (tkinter ships with Python).
Why it exists
Every existing PS5 memory scanner is Windows-only (PS_Trainer_Viewer, the PS4-era PS4CheaterNeo). Mac and Linux users have nothing. ps5dbg-scanner is the cross-platform answer — built on the ps5dbg library, which implements the full ps5debug-NG wire protocol.
Install
pip install ps5dbg-scanner
# or
pipx install ps5dbg-scanner
# then run
export PS5_HOST=192.168.1.10 # your PS5's LAN IP
ps5dbg-scanner
Requires a PS5 running ps5debug-NG reachable on your LAN.
Quick start
- Launch the app:
ps5dbg-scanner - Enter your PS5's IP, click Connect.
- Pick the target from the dropdown (the foreground app is marked
▶). - Choose a value type (u32 is the common case for game state) and scan type.
- Enter the current value, click First Scan.
- Change the value in-game, enter the new value, click Next Scan.
- Repeat until the survivor count is small.
- Right-click a row → Freeze (lock it) or Edit value.
Features
- Value scan across u8/u16/u32/u64, i8/i16/i32/i64, float, double.
- Scan types: exact, bigger/smaller, increased/decreased, changed/unchanged, unknown-initial-value.
- Server-resident narrow loop — survivors stay on the PS5; no re-upload per scan.
- Virtualized results table — scrolls smoothly through millions of hits.
- Freeze values at a fixed number (the classic "infinite health" — re-written 10×/sec).
- Edit any survivor's value directly.
- Foreground-app detection — pick the running game with one click.
How it works
┌─────────────────────────────────────────────┐
│ tkinter GUI (UI thread only) │
│ Connection panel Scan panel Results │
└──────────────────┬──────────────────────────┘
│ worker threads (blocking I/O off the UI thread)
▼
┌─────────────────┐
│ ps5dbg library │ ← PyPI: pip install ps5dbg
└────────┬────────┘
│ TCP wire protocol (port 744)
▼
┌─────────────────┐
│ PS5 (jailed) │
│ ps5debug-NG │
└─────────────────┘
All blocking network calls run off the UI thread; results are marshaled back via root.after. The scan engine uses the turbo-resident path so narrow scans stay fast at scale.
Requirements
- Python 3.10+ (tkinter ships with standard CPython).
- ps5dbg ≥ 0.1.0 (auto-installed as a dependency).
- Console any PS5 running ps5debug-NG with the turbo-scan family advertised.
Roadmap
- v0.2 — core scanner: value scan → narrow → freeze/edit (this release, alpha)
- v0.3 — hex viewer pane, AOB pattern scanner, bookmark/address-list manager
- v0.4 — debugger UI (breakpoints/registers) on top of ps5dbg's
DebugSession
Contributions welcome — see AGENTS.md for architecture and conventions.
Acknowledgments
- ps5dbg — the library this is built on.
- OpenSourcereR-dev/ps5debug-NG — the debugger payload and wire protocol.
- etaHEN — the HEN chain that loads it.
License
GPL-3.0-only — matching ps5dbg and ps5debug-NG.
Metadata
Release files for ps5dbg-scanner 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ps5dbg_scanner-0.2.1.tar.gz | 18.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ps5dbg_scanner-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 36.2 kB
Release files / ps5dbg_scanner-0.2.1.tar.gz
| Download URL | ps5dbg_scanner-0.2.1.tar.gz |
|---|---|
| Size | 18.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
40cd71c45b12a7a86d78607d9adb6e42c6cb76704437457e3730f1ba2adc1f53
|
|
BLAKE2b-256 checksum How to use checksums |
d4a8e30b660c32d53f6dd0b29d9299f64f0500b20c9ab5986322d48bb44d6b8d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.0
|
Release files / ps5dbg_scanner-0.2.1-py3-none-any.whl
| Download URL | ps5dbg_scanner-0.2.1-py3-none-any.whl |
|---|---|
| Size | 17.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
30013494b9cad9342bef46aad9481b452040961097e4523978ed1234da247464
|
|
BLAKE2b-256 checksum How to use checksums |
9483690121a0db5c3211dccbf023319e7632165f14f8ad3e333a6943cf363857
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.0
|