Goobwabber / MultiplayerExtensions

A Beat Saber mod that expands multiplayer functionality.
Other
488 stars 174 forks source link

MultiplayerExtensions (Steam/PC-Only) Build

A Beat Saber mod which aims to improve the multiplayer experience.

THIS MOD DOES NOT ENABLE CUSTOM SONGS.

Features

Installation

  1. Ensure you have the required mods.
  2. Download the MultiplayerExtensions file listed under Assets Here.
    • Optionally, you can get a development build by downloading the file listed under Artifacts Here (pick the topmost successful build).
    • You must be logged into GitHub to download a development build.
  3. Extract the zip file to your Beat Saber game directory (the one Beat Saber.exe is in).
    • The MultiplayerExtensions.dll (and MultiplayerExtensions.pdb if it exists) should end up in your Plugins folder (NOT the one in Beat Saber_Data).
  4. Optional: Edit Beat Saber IPA.json (in your UserData folder) and change Debug -> ShowCallSource to true. This will enable BSIPA to get file and line numbers from the PDB file where errors occur, which is very useful when reading the log files. This may have a slight impact on performance.

Lastly, check out other mods that work well with MultiplayerExtensions!

Requirements

These can be downloaded from BeatMods or using Mod Assistant. Do NOT use any of the DLLs in the Refs folder, they have been stripped of code and will not work.

Reporting Issues

Contributing

Anyone can feel free to contribute bug fixes or enhancements to MultiplayerExtensions. GitHub Actions for Pull Requests made from GitHub accounts that don't have direct access to the repository will fail. This is normal because the Action requires a Secret to download dependencies.

Building

Visual Studio 2019 with the BeatSaberModdingTools extension is the recommended development environment.

  1. Check out the repository
  2. Open MultiplayerExtensions.sln
  3. Right-click the MultiplayerExtensions project, go to Beat Saber Modding Tools -> Set Beat Saber Directory
    • This assumes you have already set the directory for your Beat Saber game folder in Extensions -> Beat Saber Modding Tools -> Settings...
    • If you do not have the BeatSaberModdingTools extension, you will need to manually create a MultiplayerExtensions.csproj.user file to set the location of your game install. An example is showing below.
  4. The project should now build.

    Testing

    MultiplayerExtensions and other multiplayer mods may not work without a compatible private server to play on. The only one at this point in time is BeatTogether, which comes in the form of it's Master and Dedicated servers. If you are looking to update this mod to a newer version, these servers will also need to be up to date and working for that version. You can gain access to their private beta by donating on their patreon. Alternatively, you can set up your own cluster.

Example csproj.user File:

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <BeatSaberDir>Full\Path\To\Beat Saber</BeatSaberDir>
  </PropertyGroup>
</Project>

Donate

You can support development of MultiplayerExtensions by donating at the following links:

Related Mods