You are viewing a potentially older version of this package. View all versions.
Quartz-FusionPresence-1.0.1 icon

FusionPresence

Posts to a Discord webhook when you join, host or leave a Fusion lobby, with the map, player count and who's in the lobby.

By Quartz
Date uploaded 2 days ago
Version 1.0.1
Download link Quartz-FusionPresence-1.0.1.zip
Downloads 38
Dependency string Quartz-FusionPresence-1.0.1

This mod requires the following mods to function

bonelib-BoneLib-3.2.2 icon
bonelib-BoneLib

A BONELAB mod for making life easier for other mod creators.

Preferred version: 3.2.2
Lakatrazz-Fusion-1.14.2 icon
Lakatrazz-Fusion

A multiplayer mod for BONELAB, taking advantage of its physical interaction.

Preferred version: 1.14.2

README

Fusion Presence

Posts to a Discord webhook whenever you join, host, or leave a Fusion lobby.

Example post

Each post carries the lobby name, the current map, the live player count, and who's in there with you. Works with modded maps — the level title and barcode come from whatever's actually loaded, not a hardcoded list.

Useful if you run a Fusion community and want a channel that shows when someone's lobby is live, or if you just like having a log of where you've been playing.


Setup

  1. In Discord: Server Settings → Integrations → Webhooks → New Webhook, then copy the URL.
  2. In game: BoneMenu → Fusion Presence → Webhook → Set URL, paste it with the VR keyboard, then press Save URL.
  3. Press Send test message. The status line right underneath tells you whether it landed.

That's it. Join a lobby and a post appears.

The menu never redisplays the full URL — it's a credential, so only the last six characters are shown.

What gets posted

Event Default
You join a lobby on
You start hosting on
You leave on
A player joins or leaves off
The lobby changes map on

Player join/leave is off by default because it's chatty. When on, a burst of joins is debounced into one post rather than spamming the channel.

Everything in the message is individually toggleable under Message Contents: your own name, the player list, nicknames, permission levels, the level barcode, and the lobby join code.

Things worth knowing

The join code is off by default. Anyone who can read the channel your webhook posts to could use it to walk into your lobby. Turn it on only if that channel is private.

Other players' names are included. They're visible to anyone in the lobby already, but they're going somewhere those players didn't choose. If that matters for where your webhook points, turn off Player list — the lobby name, map and headcount still work.

Nothing is sent until you configure a URL. There's no default endpoint and nothing phones home. The only address this mod ever contacts is the one you type in.

Notes

  • No HTTP touches the game thread. Posts go through a queue drained by a background thread, so a slow or dead webhook can't cost you a frame in VR.
  • Requests are spaced out and back off automatically on Discord's rate limit.
  • The join post is deliberately delayed a few seconds so the host's lobby info has arrived first — otherwise you'd get a blank lobby name and a player count of 1. Tunable under Timing.
  • Names and lobby titles are stripped of rich text and escaped before sending, so someone with colour tags in their name can't mangle your posts.
  • Settings live in UserData/MelonPreferences.cfg under [FusionPresence] if you'd rather edit them outside VR. Don't paste that file anywhere — your webhook URL is in it.
  • There's a flat-JSON mode if you want to point this at your own endpoint instead of Discord.

Requirements

  • BONELAB Patch 6
  • MelonLoader
  • BoneLib
  • Fusion

Fusion is a soft dependency — the mod loads and the menu works without it, it just has nothing to report.

Credits

Made by Quartz.

CHANGELOG

Changelog

1.0.1

  • Fixed: the webhook URL wasn't saving. BoneMenu's string element doesn't fire its callback when the keyboard submits, so the typed URL was dropped unless you happened to click the element a second time. There's now an explicit Save URL button, and the value is read directly from the element.
  • Fixed: toggles didn't persist. Settings were only written on a clean exit, so a crash or alt-F4 reverted everything you'd changed. Every toggle now saves the moment you flip it.
  • Fixed: long level barcodes wrapped mid-word in the embed. The barcode is now its own full-width field.
  • Added Diagnostics → Dump settings to log for troubleshooting. It omits the webhook URL.

1.0.0

  • Initial release.
  • Posts to a webhook on lobby join, host, leave, roster change and map change.
  • Discord embed and flat-JSON payload modes.
  • BoneMenu configuration: webhook URL, per-event toggles, message contents, timing, diagnostics.
  • Background send queue with rate-limit backoff; nothing HTTP touches the game thread.