Skip to content

About

An application that runs alongside DeSmuME in the background to provide rich presence for activity on discord.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Latest commit

 

History

14 Commits

Folders and files

Repository files navigation

RPC-DeSmuME

image

Shows what game you're playing on DeSmuME as your Discord status, including how long you've been playing. Works even if DeSmuME isn't the focused window.

Windows only.

What it does

Once running, it watches for a DeSmuME window and reads the ROM name from the title bar. When it finds one, it sets your Discord activity to show the game name and a running timer. If you close DeSmuME, it clears the status.

Requirements

  • Windows
  • Node.js 18 or newer
  • Discord desktop app (has to be running locally, not just the web app)
  • DeSmuME

Setup

  1. Clone this repo and install dependencies:

    npm install
    
  2. Run it:

    npm start
    

Open DeSmuME with a ROM loaded, and your Discord status should update within a few seconds.

No Discord application setup needed, this uses a shared Application ID baked into the project.

Troubleshooting

If npm install fails, it's most likely node-window-manager failing to build its native Windows bindings. Make sure you're on a supported Node version (18+) and standard x64 Windows. ARM64 Windows or unusual Node setups haven't been tested.

Notes on ROM name detection

This reads the ROM name out of DeSmuME's window title by splitting on the pipe character (DeSmuME 0.9.13 x64 SSE2 | Game Name). If a future DeSmuME version changes that format, parseRomName in index.js will need updating to match.

Adding an icon

If you want an icon next to your status, upload one in the Discord Developer Portal under Rich Presence > Art Assets, give it a key name, and set LARGE_IMAGE_KEY in index.js to match. Note this only works if you swap in your own Application ID, since the shared one uses assets already uploaded to its own Discord application.

Known limitations

  • Only tested on Windows
  • Only reports the ROM name, not in-game details (no per-game state like "in battle" or map name)
  • If DeSmuME's title format changes in a future version, detection may break until the regex is updated

Contributing

Pull requests welcome, especially for better title parsing or supporting other emulators.

About

An application that runs alongside DeSmuME in the background to provide rich presence for activity on discord.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages