SpongeMods-SpongePEAKLobby icon

SpongePEAKLobby

Public lobby browser for PEAK, with host-set lock codes so a lobby can be hidden from browsers while friends and anyone with the code can still join.

Last updated 7 hours ago
Total downloads 50
Total rating 0 
Categories
Dependency string SpongeMods-SpongePEAKLobby-1.0.0
Dependants 1 other package depends on this package

This mod requires the following mods to function

BepInEx-BepInExPack_PEAK-5.4.75301 icon
BepInEx-BepInExPack_PEAK

BepInEx pack for PEAK. Preconfigured and ready to use.

Preferred version: 5.4.75301
SpongeMods-SpongePEAKCore-1.0.0 icon
SpongeMods-SpongePEAKCore

Shared foundation for Sponge PEAK mods: logging, config, reflection caching and patch hosting. Not a standalone mod.

Preferred version: 1.0.0
SpongeMods-SpongePEAKLib-1.0.0 icon
SpongeMods-SpongePEAKLib

Modding API for PEAK, and a Mods tab in the game's own settings menu for toggling any installed mod's features.

Preferred version: 1.0.0

README

SpongePEAKLobby

A public lobby browser for PEAK, with lock codes so you can be findable by the people you want without being findable by everyone.

Press F6 (rebindable) to open it.

Features

Every feature can be switched off individually, in the config file or in the game's Settings > Mods tab.

Feature Default What it does
LobbyBrowser on Browse public lobbies, publish your own, or lock it with a code so only people who have the code can find it.

The problem

PEAK only ever creates friends-only or private Steam lobbies, so there is no public lobby list in the vanilla game. Browser mods add one, but that is all-or-nothing: either strangers can find you, or friends-of-friends cannot.

A lock code is the setting in between.

Lock codes

Set a code on your lobby, say ABC123, and share it with whoever you want to play with. Your lobby then:

  • does not appear in any lobby browser, including this one and other mods';
  • does appear for anyone who types ABC123;
  • stays joinable by Steam invite and through your friends list, exactly as before.

So a friend can bring a friend, and nobody browsing a public list ever sees you.

Codes are case-insensitive and ignore surrounding spaces, so abc123 and ABC123 pasted from a Discord message both work.

What "hidden" actually means

It means hidden from lobby browsers. Steam still shows your lobby to your own Steam friends in their friends list, because that is a different mechanism and turning it off would break the thing the lock code exists to allow.

It is also obfuscation, not security. The code is stored on the lobby as a hash rather than in plain text, so somebody who obtains your lobby ID cannot simply read it. But codes are short, and anyone determined enough could guess one. The goal is "randoms browsing a list do not find you", not "resists someone targeting you specifically".

Why it genuinely hides, rather than pretending to

Steam performs the filtering on its own servers. A locked lobby carries no public listing tag, so a browser searching for public lobbies never receives it at all. There is nothing hidden locally for a modified browser to reveal.

Browsing

With no code entered, you see normal public lobbies. This interoperates with the tag Isotope-PEAKLobbyBrowser uses, so lobbies published by either mod appear in both.

Host migration

If the host leaves and someone else is promoted, the new host re-publishes the lock, so the lobby stays exactly as hidden as it was. Without that the lock would linger as stale data owned by a player who is no longer there.

No plugin blacklist

This mod will never disable itself because of which other mods you have installed. If it ever refuses to run, it will say why in the log and the reason will be technical.

Part of a family

Requires SpongePEAKCore and SpongePEAKLib. It is deliberately its own mod: it is the only one that touches Steam matchmaking, and a problem there should not be able to take a bundle of unrelated fixes down with it.

License

Free to use, stream, and include in modpacks. No attribution needed for any of that.

Attribution is only required if you decompile it and reuse the code. Please do not reupload it elsewhere or sell it.

Full terms in LICENSE.

Keybinds

Key Opens Setting
F6 Lobby browser BrowserKey

All rebindable, in the config file or in Settings > Mods.

There is also a LOBBY BROWSER button on the main menu, which is usually where you want it: that is the point at which you are choosing a game to join.

Configuration

Every setting is in BepInEx/config/com.sponge.peaklobby.cfg, or in the game's own Settings > Mods tab.

Lobby

Setting Type Default What it does
BrowserKey key F6 Opens the lobby browser.
LockCode text `` Your lobby's lock code. While set, your lobby is hidden from lobby browsers and can only be found by someone who types this exact code. Invites and the Steam friends list still work. Leave blank for no lock.
PublishPublicly on/off false List your lobby in public browsers so strangers can join. Ignored while a lock code is set, since a locked lobby is by definition not publicly listed.
LobbyBrowser on/off true Browse public lobbies, publish your own, or lock it with a code so only people who have the code can find it.