Yeah. Another one.
Except this one is free. :)
Complete Steamworks integration for Unreal Engine: multiplayer, lobbies, matchmaking, dedicated servers, voice, friends, presence, overlay, achievements, stats, leaderboards, Steam Cloud, Workshop and mod loading, Inventory, Steam Input, DLC, screenshots and Timeline.
Simple API. Not limited capability.
Your node menu has no reason to show every Steamworks primitive at once.
163 = 8 typed service getters + 155 Primary actions, generated from the documentation dataset. Hundreds of lower-level capabilities sit underneath, in the Helpers and Advanced layers.
The free complete Steamworks integration plugin: Steam API, multiplayer, Blueprint and C++. Yes, there are already dozens. But this one is free :)
I don't want to pay for a Steam plugin.
I don't want my friends, or anyone short on budget, to pay for one either.
I needed something that covers what Steam actually offers, for my own projects.
Competing with established Steam plugins is probably a terrible business plan anyway.
Primary API means outcomes, not plumbing. A Primary node describes the result you actually want — not the Steamworks callback you would otherwise have gone looking for. Host Game means the lobby exists, the listen server is up, the level is loaded and other players can connect. Join Game means the player is in the game. Install Mod means the mod is usable. Success means the workflow finished.
Get Steam YASP. Pick what you want. Do the thing.
Host Game now means host the game. Wild concept, apparently.
Four pins, set directly. No preset to look up first, no config object to assemble — the decisions that matter stay visible in your graph. Everything rarer lives in an optional Options struct.
Most Steam plugins stop at the lobby and leave you to wire the Unreal side yourself. YASP takes the connection all the way into Unreal's own networking stack — and then gets out of the way.
Steam discovery, invitations and connection setup: creating or finding the lobby, resolving the host, opening the SteamSockets route and travelling the client into the server.
Everything after that. Replicated Actors, Pawns, Character Movement, RPCs, PlayerControllers, PlayerStates and GameMode server logic behave exactly as they do in a stock Unreal project.
Set Replicates and Replicate Movement on your Character and movement replicates. That is the whole trick.
YASP does not replace Unreal replication with a layer of its own — it connects Steam to the one you already know.
Click a service to open its branch, click it again to fold it back, then click a node to read its pins. Search with ⌘K. This is the real documentation, running right here.
Every card opens its branch in the documentation.
A normal game ships entirely inside the Primary API, so that is where you should stay. Below it, nothing is hidden: Helpers hold the presets and shortcuts, the Advanced API keeps every low-level Steamworks primitive available, and the Legacy API keeps older Blueprints compiling. The Primary API got smaller in 1.0 because plumbing moved down a layer — not because capability went away.
Nodes named after what you are trying to do: 163 of them behind one entry point and eight typed services. This is how you normally use YASP.
Presets, config builders and convenience shortcuts. Useful once you know what you want — never something you have to learn first.
Fine Steamworks control for a low-level primitive or a specialised feature that has no high-level workflow. Nothing is hidden from you.
The older lower-level API. It stays in the plugin so existing project Blueprints keep working after an update.
Grouped by what you would actually ship. Everything below goes through the Primary API documented on this site, with hundreds of lower-level capabilities underneath it when you need them.
Every chain below comes from the Primary API documentation, and every one of them is a finished outcome rather than a first step. Drag from the service pin, pick your node, wire the result into your UI.
Every Primary node is Blueprint-visible and typed, so you know what you are wiring before you wire it. Pure nodes read state. Immediate nodes act and return a result. Async nodes start a Steam workflow and complete through success and failure outputs.
YASP is a C++ plugin with a Blueprint surface on top, so the same subsystem and typed services are available from code. The exact signatures live in the headers shipped with the release.
Short version: the Primary API was cleaned, not cut. Nothing was deleted — plumbing moved down a layer.
The whole plugin. Every service, every node, no cut-down edition and no watermark in your build.
COMING SOON ON FABThe professional license is intentionally cheap because I'm still a developer and money remains quite useful in this terrible world 🥸. If a professional studio ships with it commercially, a little support is appreciated.
Pricing and license terms are indicative and may change before release. The license text published with the plugin is the one that applies.
163 Primary nodes. Thankfully, you don't have to look at all of them.
Need the raw Steamworks plumbing? It's still there.
READ THE DOCS →