> For the complete documentation index, see [llms.txt](https://docs.sfsolidsystems.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sfsolidsystems.com/sf-steam-online-sessions/overview.md).

# Overview

**Straight Forward Steam Sessions** is a lightweight, production-ready, and unopinionated Unreal Engine plugin designed to wrap Unreal's Online Subsystem (OSS) and Steam Online Subsystem into a clean, easy-to-use GameInstance Subsystem (`USFOSMultiplayerSessionsSubsystem`).

Built under the **Straight Forward Solid Systems** philosophy, it provides decoupled, modular building blocks: developers can create 1-click frictionless friend lobbies or build advanced server browsers with arbitrary custom metadata without touching C++.

***

## 🎯 Key Features

* 🌐 **Unopinionated & Flexible Hosting:** Host simple 1-click lobbies or pass custom metadata dictionaries (`CustomData`) such as map names, game modes, and custom modifiers.
* 🔍 **Custom Matchmaking & Search Filters:** Filter public sessions using `SearchFilters` or query global Steam lobbies with zero boilerplate.
* 👥 **Steam Friends & Overlay Invites:** Search exclusively for Steam friend games and open the native Steam Overlay friend invitation dialog with 1 click.
* 🖼️ **Steam Player Avatars (GC-Protected):** Fetch player Steam profile pictures directly into `UTexture2D` widgets for custom lobby menus, cached and safe against Garbage Collection.
* 🔄 **Async Event Delegates:** Dynamic multicast delegates for creation, discovery, friend search, joining, and destruction of sessions.
* ✈️ **Clean Server Travel:** Built-in helper to execute seamless server travel with `?listen` for all connected players.
* 🛡️ **Zero Bloat & Production Ready:** Cero unnecessary tick, fully event-driven, leak-free RAII memory management, and zero forced workflow restrictions.

***

## 📸 Blueprint API Visual Overview

![SF Steam Online Sessions - Blueprint Nodes Overview](https://3719058907-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcV1Pk81XtVqtdmLuSQlB%2Fuploads%2Fgit-blob-ef462e306bd97c2d7d40b58857273ef812999a6e%2Fsf-steam-sessions-blueprint-nodes.png?alt=media)

> \[!TIP] **Explore Nodes Directly in Unreal Engine:**\
> The entire organized Blueprint node graph pictured above is laid out inside the **Level Blueprint** of the included **`HowToUse`** showcase level (`/StraightForwardOnlineSessions/Levels/HowToUse`). You can open it in the editor to inspect, zoom in, and copy-paste nodes directly into your project.
