FusionFriends
Save Fusion friends once and join their hosted or listed lobbies without entering codes. Test build; requires Fusion and BoneLib.
By TungTungTeam
| Date uploaded | a day ago |
| Version | 0.1.0 |
| Download link | TungTungTeam-FusionFriends-0.1.0.zip |
| Downloads | 464 |
| Dependency string | TungTungTeam-FusionFriends-0.1.0 |
This mod requires the following mods to function
Lakatrazz-Fusion
A multiplayer mod for BONELAB, taking advantage of its physical interaction.
Preferred version: 1.14.2bonelib-BoneLib
A BONELAB mod for making life easier for other mod creators.
Preferred version: 3.2.2README
Fusion Friends 0.1.0 — test build
Save a Fusion player once, then select their name to join without retyping lobby codes.
This build targets PC VR using SteamVR and standalone Quest using Proxy SteamVR / Fusion Helper. It compiled against Fusion 1.14.2 and BoneLib 3.2.2. Both devices need working Fusion, BoneLib, their existing code-mod loader, and separate Steam identities. This is a code mod DLL, not a mod.io item.
Thunderstore Mod Manager
This ZIP follows Thunderstore's package format. To use it privately, each PC user can choose Settings → Import local mod in their BONELAB profile and select this ZIP. The declared dependencies are Fusion 1.14.2 and BoneLib 3.2.2; this package contains only FusionFriends.dll. Keep your existing compatible loader and Fusion setup.
For a manual or standalone Quest installation, follow the steps below. Uploading the ZIP is separate from installing it; the mod remains a test build without live headset validation.
Install on each device
- Fully close BONELAB.
- Extract the ZIP. Put only
Mods/FusionFriends.dllinto the existing code-modModsfolder used by that device's working Fusion installation, alongsideLabFusion.dllandBoneLib.dll. - Start BONELAB through your usual modded launch method. On Quest, keep Fusion Helper running as usual. Open BoneMenu → Fusion Friends.
On your PC, the checked profile is Thunderstore Mod Manager's BONELAB → Default. Open that profile's folder to find its Mods folder. On standalone Quest, use the code-mod folder that already contains the Quest's Fusion DLL. Do not put this DLL in the game's mod.io/content Mods folder. This package does not include or replace Fusion, BoneLib, the loader, or Fusion Helper.
Add each other once
- Join the same Fusion lobby using your usual method for this first meeting.
- Each of you opens Fusion Friends → Add from lobby and selects Add: [the other person's name].
- The list saves separately on each device. Both people should do this so either person can join the other later.
Join later
Open Saved friends → [friend's name] and choose:
- Join current lobby: searches the available lobby listings for that person's saved Steam identity, even if they are a guest in someone else's listed lobby. It then asks Fusion to join the host of that lobby.
- Join hosted lobby: connects directly to your friend's Steam identity when they are hosting. This also covers a private lobby that your friend hosts. They must actually be online and hosting; an unavailable person can time out through Fusion's normal connection process.
Switching away from a current lobby asks for confirmation. Leaving a lobby you host disconnects its other players. A connection request is not a successful-join notification; Fusion handles the actual connection and errors.
Limits
- This is an uninstalled test build. The real PC build and managed logic checks passed; PC VR gameplay, Quest loader/runtime, and two-device joining have not been tested.
- Following a friend into someone else's private or unlisted lobby needs an invitation or code from that lobby's host. This prototype cannot discover that lobby.
- Friends-only lobbies still require the host's actual Steam friendship with your Fusion account. On Quest, that means the Steam account used by Fusion Helper. Saving a name here does not add a Steam friend.
- Normal Fusion limits remain: full, locked, incompatible, banned, or loading lobbies can reject the connection.
- "No listed lobby found" does not prove your friend is offline. Listings can also be delayed. Searches run when requested, rather than tracking friends continuously.
- On Quest, let Fusion's regular lobby browser finish its search before using Join current lobby. Fusion Helper has a shared request slot. This mod prevents its own searches from overlapping; if a search stalls, log out and back into Fusion, or restart BONELAB/Fusion Helper before retrying.
- Each saved entry uses a stable numeric platform identity, not a display-name match. The menu does not verify which real person owns an account; select the friend you already recognize in your shared lobby.
Saved list and removal
The mod stores FusionFriends/friends.json under the code-mod loader's UserData directory on each device. It keeps the previous valid save as friends.json.bak. Do not send your personal friends.json with the mod; your friend should create their own list.
Use Remove saved friend to remove an entry. Reload saved file reloads a file you have intentionally restored or edited. If a list is corrupt or has an unsupported format, the mod preserves it and blocks further saves. Close BONELAB and preserve both files before attempting recovery from the .bak copy.
To uninstall, close BONELAB and remove only FusionFriends.dll from that device's code-mod Mods folder. The saved list can stay for later reuse. This mod changes no existing Fusion settings or other mods.
Source and build
The separate source ZIP contains the implementation and managed test harnesses, without any game or third-party DLLs.
dotnet build FusionFriends.csproj -c Release -p:TreatWarningsAsErrors=true -p:BONELAB_PROFILE='C:\path\to\your\BONELAB\profile'
dotnet run --project tests\FusionFriends.CoreTests.csproj -c Release
dotnet run --project runtime-tests\RuntimeTests.csproj -c Release
Production targets .NET 6 for the loader. The host test harnesses use .NET 10 and controlled substitutes for the game and networking; they do not establish IL2CPP, headset, network, or Quest compatibility.