About
DiscordPulse is a Blueprint-first Unreal Engine plugin for Discord Rich Presence.
Architecture
The runtime API is centered on:
UDiscordPresenceSubsystemOne subsystem exists per active Game Instance. It owns:
- Discord Social SDK runtime loading and unloading
- Discord client state
- Automatic callback polling
- Desired and accepted activity state
- Pending incoming join requests
- Blueprint events and error state
Design Goals
- Work in Blueprint-only and C++ projects
- Keep SDK lifecycle management inside Unreal's subsystem model
- Avoid manual callback nodes and timers
- Fail clearly without crashing when Discord is unavailable
- Package runtime dependencies through Unreal Build Tool
- Keep migration fields available while documenting unsupported behavior
Current Scope
DiscordPulse focuses on:
- Rich Presence
- Activity images, timestamps, parties, and buttons
- Join secrets
- Incoming join requests
- Blueprint and C++ lifecycle/error APIs
It is not a general wrapper for every Discord Social SDK feature.
Supported Environment
Windows 64-bit on Unreal Engine 5.7 is the primary verified target.
macOS and Linux build paths exist, but require compatible Discord SDK binaries and project-specific verification.
Third-Party Software
Discord Social SDK files are third-party redistributables and remain subject to Discord's terms. Included open-source notices are stored under:
Source/ThirdParty/DiscordSocialSDK/License-Notices.txtLicense
DiscordPulse source is covered by the repository's LICENSE.