Basic Discord presence
The README lists basic Discord RPC as available. Direct RPC depends on a running Discord desktop client.
Use now: enable, launch, inspect, disable.Discord activity · checked August 1, 2026
Luczystrap can publish basic Roblox activity to a running Discord desktop client. Start with the game card only; add your Roblox identity or a join route only after you inspect what another person can see.
01 / Current contract
The current repository, recorded UI, and historical code answer different questions. This page keeps those evidence levels separate.
The README lists basic Discord RPC as available. Direct RPC depends on a running Discord desktop client.
Use now: enable, launch, inspect, disable.Public 1.3 code establishes the older experience, creator/server, timer, images, account and button behavior.
Use as a field map—not a 1.4.9 guarantee.Rule-based composition, privacy filters, and robust behavior when Discord is closed remain planned in the README.
Do not search for controls that have not shipped.02 / Privacy preview
This browser-only preview does not read or change Luczystrap or Discord. It illustrates the historical field boundaries.
Preview controls · no local access
by Creator
00:23 elapsed
Approx. server context
Discord says custom activity buttons appear only to other users. Use a second account or a trusted friend to verify the real card.
03 / Setup
The exact current labels may differ because 1.4.9 application source is not public. The December 2025 workflow and historical settings use this dependency order.
Sign in to the desktop client. Discord documents that direct Rich Presence over RPC does not work through web, mobile, or console clients.
Start from a clean session so the next activity belongs to one launch and one settings state.
Enable Activity tracking. Historical UI made Discord game activity depend on this master signal.
This is the basic presence switch. Leave server location and uptime off; historical UI treated them as separate optional lookups.
Leave Show account on profile and Allow activity joining off for the first test. Add one only after the base card passes.
Discord User Settings → Activity Sharing controls whether other people can see activity. Profile Privacy and per-server choices can narrow the audience further.
Reopen once and verify the switches persisted. If they reset, use the settings and mods diagnostic before testing Discord.
Wait until the experience fully joins. Then inspect the real Discord card from another account inside the audience you selected.
04 / Historical field map
These mappings come from public 1.3 code. Current 1.4.9 fields must be verified on your profile because its application source is unavailable.
The older implementation used the Roblox universe name as the main activity description.
Source: UniverseDetails.Data.NamePublic sessions showed the creator; private and reserved sessions used explicit server labels.
Source: ServerType + creatorThe card could show elapsed time and preserve the original start across teleports in one universe.
Source: TimeJoined / RootActivityA game thumbnail was large artwork; enabling account display could add Roblox avatar and identity text.
Source: Roblox thumbnail APIsThe historical presence added a link to the current Roblox place page.
Viewer-side buttonThe older join route depended on the joining control and server context. Keep it off by default.
Viewer-side actionHistorical activity tracking queried ipinfo.io. Geolocation is approximate and not required for presence.
External requestHistorical code used RoValra first-seen data as an estimate, not an authoritative Roblox clock.
External requestEvidence boundary: a field existing in 1.3 source does not prove the same endpoint, value, or reliability in closed-source 1.4.9. Inspect the current output.
05 / Privacy controls
Luczystrap decides what it attempts to publish. Discord decides whether and to whom activity is visible. The Roblox session determines what context exists.
| Control | What it exposes | Where to change it | How to verify |
|---|---|---|---|
| Show game activity | Basic game activity card and historical session context | Luczystrap → Integrations | Turn off, restart the session, and confirm the card clears.Required for presence |
| Show account on profile | Historical Roblox avatar, display name, and username | Luczystrap → Integrations | Leave off; inspect from another account for identity text.Recommended off first |
| Allow activity joining | A route another viewer may use to join the current server | Luczystrap → Integrations | Leave off; another viewer must see no Join server action.Recommended off first |
| Share my activity | Whether Discord shares activity at all | Discord → User Settings → Activity Sharing | Test with a viewer inside the chosen Friends/Servers audience. |
| Profile Privacy | Who can see activity as part of the full Discord profile | Discord → Data & Privacy → Profile Privacy | Test the exact audience; profile and activity controls are separate. |
| Server-specific activity | Visibility to members through that Discord server | Discord server → Privacy Settings | Remember friends or another shared server may still provide visibility. |
06 / Verification
Your own card is not sufficient: Discord documents that custom activity buttons are visible only to other users.
Launches Roblox and publishes the activity.
Checks what the selected audience actually receives.
Viewer B opens your profile before Roblox launches. Save no private IDs in the screenshot.
Wait for the Player log to report a completed join and for Discord to update.
Check every visible element, not just the presence of “Playing.”
The historical implementation cleared presence on game leave. Confirm the current card disappears or stops being live.
If needed, add account or joining—not both—then repeat the same viewer test.
07 / Signal diagnosis
The log wording below comes from historical public code; current 1.4.9 may phrase it differently. Preserve the current timestamps and first exception.
Player launches and joins an experience.
ActivityWatcher::StartPlace, universe, user, and time enter activity context.
SetCurrentGame · Place IDExperience details and optional account image are resolved.
UniverseDetails · UserDetailsThe local desktop RPC client accepts the connection.
Established connectionThe activity is sent and another viewer receives it.
Updating · Presence updatedLaunch Roblox through Luczystrap, confirm activity tracking stayed enabled, and inspect the Roblox log path. Use the settings diagnostic if the toggle resets.
Open Discord desktop—not web or mobile—restart Discord once, and look for the first RPC error or lost-connection line.
Check Discord Activity Sharing, Profile Privacy, the exact viewer audience, and whether another activity is taking precedence.
Turn off account and joining first, restart the Roblox session, and re-check from Viewer B. Disable presence entirely if the output cannot be constrained.
08 / Disable & clear
Disabling presence should not require uninstalling Luczystrap, clearing Discord data, or deleting Roblox.
End the active session so there is no new activity event while settings change.
Keep activity tracking only if another integration needs it; otherwise turn that master control off too.
Reopen and confirm the off state persisted.
If a stale card remains, restart both Discord and Luczystrap, then inspect the latest RPC cleanup or connection lines.
Attach a redacted Luczystrap log, timestamps, viewer result, and whether the card remained after both apps closed.
09 / FAQ
No for the documented RPC path. Discord says direct Rich Presence over RPC requires the running desktop client and does not work through its web, mobile, or console clients.
Historical public code could show the Roblox experience, creator or server type, elapsed session time, game artwork, an optional Roblox account, a game-page button, and an optional join-server button. Verify the current 1.4.9 card because its application source is not public.
Historical settings treated server location and uptime as separate optional activity-tracking lookups. Leave them off when you only want basic presence.
Historical Luczystrap controls separated game activity from showing the Roblox account. Leave Show account on profile off, then verify from another Discord account that no Roblox identity appears.
Turn off Allow activity joining in Luczystrap, restart the session, and inspect the card from another Discord account. Discord notes that activity buttons are visible only to other users.
Discord Activity Sharing and Profile Privacy affect who can see activity, and server-specific controls can narrow it further. Test with a friend or second account that is actually inside the audience you selected.
No reliable source establishes an FPS or latency benefit. Rich Presence publishes session context to Discord; disable it during a controlled performance test if you want to measure its small background overhead.
The current README lists the rule-based Presence Composer and robust fallback behavior as planned. This guide covers the narrower basic presence path.
10 / Evidence