mirror of
https://github.com/SirHumza/orbisRPC.git
synced 2026-10-06 08:00:34 +02:00
pretty README with hero art and badges
This commit is contained in:
1 parent
a24eef3199
commit
4518894553
3 files changed
+59
-40
No files matched your search
@@ -11,6 +11,7 @@ config/config.ps4.json
|
||||
plugin/build/
|
||||
tests/test_utils
|
||||
config/icons/
|
||||
!config/icons/logo.png
|
||||
|
||||
# installer artifacts
|
||||
*.pkg
|
||||
|
||||
@@ -1,62 +1,80 @@
|
||||
# orbisRPC — Discord Rich Presence for the PS4
|
||||
<p align="center">
|
||||
<img src="config/icons/logo.png" width="420" alt="orbisRPC">
|
||||
</p>
|
||||
|
||||
A background daemon that runs **entirely on your jailbroken PS4** and posts
|
||||
what you're playing to your Discord profile — game name, cover art, elapsed
|
||||
timer. No PC, no phone bridge at runtime. v1.0.0.
|
||||
<p align="center">
|
||||
<a href="https://github.com/SirHumza/orbisRPC/releases/tag/v1.0.0"><img src="https://img.shields.io/badge/version-1.0.0-ffd800?style=flat-square" alt="version"></a>
|
||||
<img src="https://img.shields.io/badge/PS4-GoldHEN-003791?style=flat-square" alt="PS4 GoldHEN">
|
||||
<img src="https://img.shields.io/badge/Discord-Rich%20Presence-5865F2?style=flat-square" alt="Discord">
|
||||
<img src="https://img.shields.io/badge/tables-none-brightgreen?style=flat-square" alt="no tables">
|
||||
</p>
|
||||
|
||||
## Install (5 minutes, one try)
|
||||
<p align="center"><b>Discord Rich Presence for the jailbroken PS4 — every game, zero setup.</b><br>
|
||||
A background daemon that lives entirely on your console and posts what you're
|
||||
playing to Discord: name, cover art, timer. No PC at runtime.</p>
|
||||
|
||||
1. Install `OrbisRPC-Setup-1.0.0.pkg` (Releases page) via Package Installer.
|
||||
2. Open **orbisRPC Setup** on the home screen.
|
||||
3. Say Yes: it copies the daemon everywhere loaders look, checks WiFi,
|
||||
asks for your Discord token, saves it, and starts the daemon.
|
||||
4. Launch a game. Watch Discord.
|
||||
---
|
||||
|
||||
After a reboot, re-jailbreak, then enable AutoRun for `orbisrpc` in
|
||||
GoldHEN's payload menu — it starts itself on every jailbreak from then on.
|
||||
## Install (5 minutes)
|
||||
|
||||
1. Grab `OrbisRPC-Setup-1.0.0.pkg` from the
|
||||
[Releases page](https://github.com/SirHumza/orbisRPC/releases/tag/v1.0.0)
|
||||
and install it with Package Installer.
|
||||
2. Open **orbisRPC Setup** → say Yes. It installs the daemon, checks WiFi,
|
||||
saves your Discord token, and starts everything.
|
||||
3. Launch a game. Watch Discord.
|
||||
|
||||
After a reboot: re-jailbreak, then enable AutoRun for `orbisrpc` in GoldHEN's
|
||||
payload menu once — it starts itself on every jailbreak after that.
|
||||
|
||||
## What you get
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
| 🎮 **Any game, no lists** | Names resolve from your console's own database — CUSA, PPSA, indies, all covered with zero per-game setup. |
|
||||
| 🖼️ **Real cover art** | Game art served per title, PlayStation logo when idle. |
|
||||
| ⏱️ **True timers** | Survive reconnects and restarts, resume across quick game switches. |
|
||||
| 🧠 **Self-learning** | First-seen titles are remembered, so later boots resolve instantly. |
|
||||
| 🔄 **Self-updating** | Signed daemon updates with boot rollback. No reinstall treadmill. |
|
||||
| 📦 **One-tap installer** | Setup PKG: install → WiFi check → token → running. |
|
||||
|
||||
## How it works
|
||||
|
||||
```
|
||||
PS4 (GoldHEN) Discord
|
||||
+----------------------------------+ +------------------+
|
||||
| orbisRPC daemon (payload) | | your profile |
|
||||
| sandbox scan -> CUSA id | TLS | Playing Spider- |
|
||||
| app.db -> display name | <--> | Man — 1h 23m |
|
||||
| art pack/CDN -> mp: cover | | [cover] [timer] |
|
||||
+----------------------------------+ +------------------+
|
||||
┌─────────────────────────┐ ┌──────────────────┐
|
||||
│ orbisRPC daemon │ TLS │ your profile │
|
||||
│ sandbox scan → game ID │ ◄──► │ Playing Game │
|
||||
│ app.db → display name │ │ [cover] [timer] │
|
||||
└─────────────────────────┘ └──────────────────┘
|
||||
```
|
||||
|
||||
- **Detection:** the running game's `/mnt/sandbox` mount + eboot fast-switch
|
||||
+ 2-poll debounce. No tables, no per-game setup — any title works.
|
||||
- **Names:** system app.db (SQLite, read-only) → local files → Sony TMDB
|
||||
live → raw ID fallback. First authoritative hit self-learns into config.
|
||||
- **Home:** PlayStation logo tile with "On PS4" when idle.
|
||||
- Full design: `docs/DAEMON.md`. Installer: `docs/INSTALLER.md`.
|
||||
Symptoms table: `docs/TROUBLESHOOTING.md`.
|
||||
Details: [`docs/DAEMON.md`](docs/DAEMON.md) · [`docs/INSTALLER.md`](docs/INSTALLER.md) ·
|
||||
[`docs/TROUBLESHOOTING.md`](docs/TROUBLESHOOTING.md) ·
|
||||
[`docs/PRODUCTION.md`](docs/PRODUCTION.md)
|
||||
|
||||
## Config (`/data/orbisRPC/config.json`)
|
||||
## Config
|
||||
|
||||
Only `token` is required (your Discord user session token). Everything else
|
||||
has working defaults: `presence_state`, `home_art`, `poll_interval_s`,
|
||||
`application_id`, `debug`, plus the self-learned `titles` map (hands off —
|
||||
the daemon maintains it).
|
||||
Only `token` (your Discord user session token) is required —
|
||||
`/data/orbisRPC/config.json`. Everything else ships working: presence text,
|
||||
home art, poll interval, plus the self-learned `titles` map (hands off).
|
||||
|
||||
## Building
|
||||
|
||||
Daemon + tools: `./scripts/build_sdk.sh` (needs `ps4-payload-sdk`).
|
||||
Installer PKG: `make -f installer/Makefile`
|
||||
(`OO_PS4_TOOLCHAIN`, llvmshim — no brew). Host tests:
|
||||
`make -C tests test && make -C tests asan`, contracts:
|
||||
`python3 tests/e2e_consumer.py`.
|
||||
```bash
|
||||
./scripts/build_sdk.sh # daemon payload (needs ps4-payload-sdk)
|
||||
make -f installer/Makefile # Setup PKG (OpenOrbis toolchain, llvmshim)
|
||||
make -C tests test # host unit tests
|
||||
make -C tests asan # ASan/UBSan
|
||||
python3 tests/e2e_consumer.py # contracts + linkage gate
|
||||
```
|
||||
|
||||
## Safety
|
||||
|
||||
A user session token grants full account access: never share the config,
|
||||
never commit a real token. Token use for presence is against Discord's ToS
|
||||
(Standard practice for headless presence tools; risk is yours — see docs).
|
||||
A user session token grants full account access — never share the config,
|
||||
never commit a real token. Token-based presence is against Discord's ToS
|
||||
(standard practice for headless presence tools; risk is yours).
|
||||
|
||||
## License
|
||||
|
||||
Project license to be finalized (MIT vs GPL). No GPL source is copied into
|
||||
this tree; the OpenOrbis toolchain it builds against is GPL-3.0.
|
||||
To be finalized (MIT vs GPL). No GPL source is copied into this tree.
|
||||
Binary file not shown.
Reference in new issue
Block a user