Ensure you have the latest verion of BeatSaberModManager or ModAssistant
Launch the mod installer
Select the checkbox for Custom Platforms
Click Install
Ensure your game is patched with BSIPA (ModAssistant does this for you)
Place the CustomPlatforms.dll in your Beat Saber\Plugins directory
After a relaunch, your Beat Saber folder should look like this:
| Beat Saber
| Plugins
| CustomPlatforms.dll <--
| CustomPlatforms <--
| <.plat files> <--
| IPA
| Beat Saber.exe
| (other files and folders)
Visit the Platforms Menu page ingame to change your platform for different gamemodes
Place platforms (.plat) files in the "BeatSaber\CustomPlatforms" folder. Your installed platforms will be available after a few seconds. A possible source for platforms is ModelSaber.
There's a comprehensive guide at https://bsmg.wiki/models/platforms-guide.html written by Emma. The following are the basic steps:
Download the Unity project from Releases, unzip it.
Open the Unity project The project was created and tested in version 2019.3.15f1, other versions may not be supported.
Create an empty GameObject and attach a "Custom Platform" component to it. Fill out the fields for your name and the name of the platform. You can also toggle the visibility of default environment parts if you need to make room for your platform. Add an icon for your platform by importing an image, settings it to Sprite/UI in import settings, and dragging it into the icon field of your CustomPlatform
Create your custom platform as a child of this root object You can use most of the built-in Unity components, custom shaders and materials, custom meshes, animators, etc.
When you are finished, select the root object you attached the "Custom Platform" component to. In the inspector, click "Export". Navigate to your CustomPlatforms folder, and press save.
Share your custom platform with other players by uploading the Platforms' .plat file
git clone https://github.com/affederaffe/CustomPlatforms.git
./CustomPlatforms/Plugin/CustomFloorPlugin
direcory and create a CustomFloorPlugin.csproj.user
file, see the example belowPlugins
directory with e.g. VisualStudio or Jetbrains Rider and build the project<?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>