UE 4.7-P4: Blueprints and Steamworks

Hey guys,

I noticed that since the 4.6 version there’s been more and more support for multiplayer and Steam SDK in Blueprint. Atleast, that’s what I’ve read :wink: But no matter what I search for, I can not find a tutorial of sorts of Steam and Blueprint.
Could anyone explain me how to integrate the Steam SDK for UE’s Blueprint?

For example, I’ve got a blueprint node ‘Create Session’, how can I connect that to the Steam services and how can I then use the node ‘Find Sessions’?

I think I’ll be able to figure the rest out myself, as soon as I have an example.
Thanks!

Hi Serellyn,

To use Steam with Blueprints, you’ll need to follow the steps in this document, but if your project is Blueprint-only, you can skip the “Module Setup” section. Once the SDK and your .ini file are set up, the Blueprint session nodes will automatically use Steam as the underlying service.

We plan on releasing a sample that uses these nodes soon.

Thanks Ryan, do you have any indication on when ‘soon’ is? Days? Weeks? Months? Valve times ? :wink:

Sorry, I don’t have any more details.

I believe I have successfully installed the steam sdk into my project however it is not properly working… When I package the game I don’t get any errors saying “WARNING steam sdk could not be found” or anything and when I play the packaged game I get the steam overlay, I can even host a game, however on one can find the game unless I have port 27015 open. I’m sure everyone says the point of using the steam sdk was to avoid having to port forward isn’t it? If so what might I be doing wrong, it seems quite a specific problem, any ideas why this might be happening? I can upload the project files if that would help.

I am using the “Find sessions” and “Create sessions” nodes with the same setup as in the Shootout example, is this how I should be doing it for use with steam? or should I be finding the sessions differently?

Ah I didn’t realize you could skip that stage, I added code to my project just so I could add that “dynamically load modals” bit. Since my project is entirely blueprint based and I’m using the launcher version of the engine should I try get rid of the code from the project? or would this make on difference?

Hello Cheesy Dragon :wink:
I’ve been testing my little project with Steam integrated. I’ve build the package and send it to a friend. When I host my friend can join, when he hosts I can join. So we don’t have any problems connecting. I’m also using “find and create sessions”… Are you testing on appID 480?

yes I am, why? is this likely to be the problem?

I did get this in my log, any idea what it means? It doesn’t say error or warning so I thought nothing of it before but maybe this is the problem?

LogModuleManager: Shutting down and abandoning module OnlineSubsystem (17)
LogOnline:Display: STEAM: OnlineSubsystemSteam::Shutdown()
LogOnline:Display: Unloading online subsystem: Steam
LogOnline:Display: STEAM: OnlineSubsystemSteam::Shutdown()

The other thing I have noticed is in the packaged game under Engine / Binaries / ThirdParty / Steamworks / Steamv132 / Win64 I only have this one file: “steam_api64.dll” should I have all four of the files from the engines steamwroks folder in here? is so would it work if I just past them in?

  • The app ID should be just fine, I’m using it too. It was just out of curiosity.

  • I do have all 4 of the files in there, so that might be a slight issue but I’m not sure. You should try placing them all 4.
    About the log you’re getting, it does not say much other than the Steam module is shutting down. Not why it is shutting down, so that doesn’t help either :wink:

Also, if you’ve upgraded your project from 4.8 to 4.9, double check the files in the 4.9 map structure. You might be pasting it into 4.8 by mistake or something, I had that once, took me a day to figure out why it didn’t work…

Yes I did upgrade recently, so I will check that, I thought they were all in there though by default now? I tried pasting the other 3 files into my packaged game, I haven’t tested it properly yet but I think that might have fixed it because for the first time I got another game that wasn’t my’n came up in my server browser.

You know the engine has all the steam files in there set up perfectly be default now? Can I just leave them how they are since all the codes are set up right, they are a few sub versions out of date (132 vs 134) but that shouldn’t matter, should it? As I said all the scripts refers to the version thats in there already (132) so its just whether Steam accepts them.

Should be okay :slight_smile: