sorry that no one answered your question. The point is:
There really is no big tutorials series on this subject yet, but:
You can have a look at the ShooterGame Project. It is using the OnlineSubsystem. You just need to know that you aren’t really using SteamFunction but the Engine is “transforming” them if you have Steam enabled. So if you have Steam Enable and you have your “OnlineSubsystem” variable, you can call everything you want. Still there are some things that are unique to the Steam subsystem.
Have a look at the ShooterGame Example avaiable in the Launcher. They use the OnlineSubsystem with OnlineSessions etc which is running with and without Steam depending on Steam being available or not.
To get steam into your project have a look at this:
Maybe you don’t have the Unreal Engine inside C:\Program Files\ , but the rest should be the same. The next thing is:
I don’t think you have version Steamv129a at the moment. You will have something newer. Either you make sure you change every version number correctly (for example in the Steamworks.build.cs, which is located in the Folder mentioned above (not sdk but Steamworks). Or you change every folder to 129a instead of the version number they should have. I have a newer version but still used 129a because i got some problems with that.
After you set up all you folders correctly, you shouldn’t get the ERROR anymore. Please delete every code you added to test Steamworks. Only use a fresh Project and only add the necessary folders and codelines. Because i can’t work with some ERROR you get from writing too much code that we don’t need to set steamworks up.
While you are doing this, i am searching for the Automation Folder. Can’t find it either.
dont be disappointed, i can tell you steam is working fine in 4.6.1 if you set it up right…
also steam overlay is only visible if you launch the game or play as standalone process also in the cooked project of course.
follow the instructions of rama carefully! and epic did a great job, because its nearly a drop in thing… everything is prepared except some files from steam sdk
if you are using the binary, all you have to do is to drop in the steam sdk in the third parties folder in source directory.
then make those changes in your build file and engine.ini exactly as rama mentioned and it will work!
you have to use the “exec console command” and then send “open steam.##STEAMID##:7777” replace ##STEAMID## with the steamid or you can extract some code from the shooter example and make it callable from blueprint for the required server travel and get connection string if you are using blueprints
I got my game working with the steam sdk, however only I could host the game which makes me think you need to be port forwarded to host even using the steam sdk, does this mean I’ve done it wrong?, I have a bunch of ports open for other games so I’m assuming its using one of those instead of doing NAT punching like it is supposed to be able to do.
I am using a modified version of the shootout example for the join / host system, is there anything I need to add to the blueprints to make this use steams NAT punching because at the moment it doesnt seem to be, the steam sdk is properly installed and running though, im sure of that. where you mention STEAMID is that the one which is 480 by default, until you go for greenlight?