promotional bannermobile promotional banner
premium banner

PresenceJS

Experimental
Discord Rich Presence for Forge 1.20.1 with deep KubeJS customization hooks.

Description

PresenceJS

PresenceJS adds Discord Rich Presence to Minecraft Forge 1.20.1 with powerful KubeJS hooks for fully custom client-side presence.

Features:

  • Deep KubeJS customization for client-side scripts
  • Built-in default presence for menus, singleplayer, and multiplayer
  • Change activity details, state, type, images, timestamps, and buttons
  • Pure Java Discord RPC backend with no native JNI dependency

Example KubeJS script:

PresenceJSEvents.build(event => {
  const presence = event.getPresence()
  const context = event.getContext()

  presence.setClientId('123456789012345678')
  presence.setDetails('Playing Minecraft')
  presence.setState(context && context.getSingleplayer() ? 'Singleplayer world' : 'In-game')
  presence.setLargeImage(PresenceJS.image('minecraft', 'Minecraft 1.20.1'))
  presence.setSmallImage(PresenceJS.image('kubejs', 'Customized with KubeJS'))
  presence.setButtons([
    PresenceJS.button('Download Pack', 'https://example.com'),
    PresenceJS.button('Join Discord', 'https://discord.gg/example')
  ])
})