SilkRoomUtils
Room loading utilities for Silksong (BepInEx).
About this mod Author’s original text
SilksongRooms: shareable room loader
This repo includes a template (content/SilksongRooms) that ships a reusable room loader and a tiny integrator. It lets any mod load room JSON files (*.room.json) and Unity AssetBundles.
Highlights:
- Drop rooms in BepInEx/plugins//Rooms/ and they get picked up automatically by the SilksongRooms plugin.
- Other mods can register their own Rooms folders at runtime via a simple API.
Use from another mod:
using BepInEx;
using SilksongRooms._1;
[BepInDependency("io.github.silksongrooms__1")]
[BepInPlugin("your.guid.here", "Your Mod", "1.0.0")]
public class YourMod: BaseUnityPlugin
{
private void Awake()
{
var myRooms = System.IO.Path.Combine(BepInEx.Paths.PluginPath, Info.Metadata.Name, "Rooms");
RoomsApi.RegisterRoomsFolder(myRooms);
// Or single file:
// RoomsApi.RegisterRoomJson(System.IO.Path.Combine(myRooms, "my_room.room.json"));
}
}
Install & use Install: BepInEx plugin
- The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
- Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
- Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
- Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.
Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file.
Install these first, or the mod will not work: