← Portfolio YASP v1.8.1
Steamworks · Unreal Engine 5.6 → 5.8 · Blueprint + C++

Yet Another
Steam Plugin

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.

Get YASP Explore the API Documentation
184 PRIMARY NODES8 SERVICES1 ENTRY POINTFREE FOR INDIES
ENTRY POINT Get Steam YASP
184
Primary API nodes
8
Contextual services
1
Entry point
0
Reasons your Blueprint menu should show 500 unrelated Steam nodes at once

Counts come from the compiling v1.8.1 headers. The Advanced and Legacy APIs add hundreds of functions on top of that.

01 · The pitch

Why another one

Yes, there are already dozens.
But this one is free :)

The free complete Steamworks integration plugin: Steam API, multiplayer, Blueprint and C++.

  • 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.
Licensing

Free for hobbyists, students and indie developers. The professional license is intentionally cheap (currently around $10) 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.

02 · Design principle

Simple does not mean limited

Steamworks is huge. Your Blueprint graph doesn't have to be. Your node menu stays readable because YASP exposes one entry point and eight typed services. You drag from the service pin you need, and the search only shows the nodes that belong to it.

Get Steam YASP. Pick a system. Do the thing.

03 · Intention-oriented API

You say what you want to do

Steamworks is low-level by design, so hosting a game means assembling a workflow out of a dozen independent calls. YASP adds an Unreal-friendly layer on top of it: you fill in one config struct, call one node, and read the result when the async output fires.

Low-level approach
request lobby listadd filterscreate lobbyset lobby metadataconfigure networkingconfigure presenceconfigure voicehandle callbacks
YASP
ENTRYGet Steam YASP SERVICEMultiplayer ASYNCHost Game

One compact Game Config covers the lobby, its metadata, networking, optional voice, host migration and Rich Presence. If you want matchmaking instead of hosting, that is Quick Play, and it takes the same kind of config.

04 · Primary API

One entry point. Eight services.

Every card opens its documentation branch
05 · Three API levels

Primary, Advanced, Legacy

A normal game can do every common Steam integration task inside the Primary API, so it is where you should stay. The Advanced API is there for the days you deliberately want a low-level Steamworks primitive, and the Legacy API keeps older Blueprints compiling.

Recommended

PRIMARY API

High-level nodes organised by what you are trying to do: 184 of them behind one entry point and eight typed services. This is how you normally use YASP.

Occasional

ADVANCED API

Fine Steamworks control for a low-level primitive or a specialised feature that has no high-level workflow. Nothing is hidden from you.

Compatibility

LEGACY API

The older lower-level API. It stays in the plugin so existing project Blueprints keep working after an update.

06 · Coverage

How big is it, actually

Grouped by what you would actually ship. Everything below goes through the Primary API documented on this site.

07 · Blueprint experience

Three nodes, one feature

Every chain below comes from the Primary API documentation. Drag from the service pin, pick your node, and wire the result into your UI.

Blueprint

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.

C++

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.

Steamworks is complicated. Using it doesn't have to be.

Yet another Steam plugin. Hopefully the last one you need.

Get YASP Read the docs