Advanced Sessions Plugin

None of the steam subsystem files have commits from the past two months, so no, very unlikely anything has been changed.

Hello! Amazing work with the plugin. I’ve been eyeing this for months, and I finally get to tinker with it after having some base fundamentals down with tutorials and finally starting on my project.
I have a quick question though, does Advanced Voice aim to efficiently replace the existing voice functionality just like how Advanced Sessions replaces the need for the standard Session Blueprint? Also, Im going to dive into AdvancedFriendsGameInstance, is there any other purpose to it aside from enabling SteamFriend invites? Im seeing “Talking” signatures on the header files. Could you perhaps explain this?

Thank you for this plugin. You could easily sell this to the marketplace but the community is eternally grateful for you pushing to make this free and updated. Cheers

This plugin isn’t a replacement for anything, its an interface for accessing what is already there. The voice system is the engines voice system and the creating / finding sessions nodes are using the engines back end, they just expose more of it to BPs than the standard nodes do.

The friends instance is to provide the ability to join a lobby that the user has accepted an invite too (or join in friend in the overlay), you have to manually join the session and there is no current native engine method of BP users to be notified of this.

1 Like

Hi I notice that when joining a server , the controller does not seem to get his camera straight away , shows the level from a corner of the map , how can I fix it?

How can i test the game on Windows without Steam ? because when i test the game with a friend from different PC the session doesn’t show up

Hi , I hope this is the correct place to post about advanced sessions bugs, I am having trouble displaying the steam overlay for my project. It never seems to show up. I am using 4.26.2.

I have read to place the plugin into the engine plugins folders [so it brings up the steam overlay and connects with steam properly for newer engines] as opposed to the project plugins folder where it successfully packs.

Here is the error I get for placing into engine folder.
UATHelper: Packaging (Windows (64-bit)): ERROR: Missing precompiled manifest for ‘AdvancedSteamSessions’. This module was most likely not flagged for being included in a precompiled build - set ‘PrecompileForTargets = PrecompileTargetsType.Any;’ in AdvancedSteamSessions.build.cs to override.
PackagingResults: Error: Missing precompiled manifest for ‘AdvancedSteamSessions’. This module was most likely not flagged for being included in a precompiled build - set ‘PrecompileForTargets = PrecompileTargetsType.Any;’ in AdvancedSteamSessions.build.cs to override.

Summary

This text will be hidden

Any ideas?

You have it backwards, it should be at the project level currently, and where it is specifically has no effect on the overlay. The steam subsystem loading is what causes the overlay to appear, which is entirely seperate from the plugin, that is at the engine level and likely means that your config or your app ID are not correctly set.

ok thank you mortentral I will double check the defaultengine.config file and make sure it set to the correct app ID.

It turns out I had installed the simple text file called steam_appid.txt [which contains the app ID] in the wrong directory.

For all future users, make sure you install the text file in the folder next to the shipping game binary.exe [for example C:\WindowsNoEditor\YourProjectName\Binaries\Win64]

Thank you for all your support!

Can a (listen) server use a connecting player’s PlayerController and get their unique net id and use “Get Steam Friend Avatar”? I’m trying to display everyone’s names and avatars in a lobby but I’m having a real tough time with the clients. When I try to use “Get Steam Friend Avatar” on the server to get a client’s avatar, it fails.

But if I try to run “GetUniqueNetID” on the client, it returns a bad net id. So do I have to get the net ID on the server, send it to the client and have the client get the avatar and send it back to the server? That seems SUPER clunky if that’s the case…

Player controllers only exist on the owning client and the servers end, there is a playerstate array that you can access and get the unique net id from in order to load the avatars.

GetGameState->PlayerArray, then you can pull a pin off of that and my library has a “GetUniqueNetID” for the player state variable.

Worked great! Thanks!

Now my only problem is inviting through the steam friends list or joining sessions through steam friends doesn’t seem to do anything.

Chumble, I’m having the same problem, did you find a solution?

Edit: I found my problem.

My mistake was that I had a GameInstance BP that inherited from my own c++ GameInstance that inherited from AdvanceFriendsGameInstance, but I didn’t make a constructor using FObjectInitializer in my c++ GameInstance, so the delegates weren’t being bound by AdvanceFriendsGameInstance’s constructor.

Not yet. I’m trying to inherit from AdvanceFriendsGameInstance but my project wont build with that. It keeps telling me “Can’t open include file: ‘BlueprintDataDefinitions.generated.h’: No such file or directory”. Not sure what I’m missing.

If I make the child of AdvanceFriendsGameInstance in blueprint, it works fine. But I want to have the parent in C++

Please develop this plugin for UE5 also.

It’s right here: https://github.com//AdvancedSessionsPlugin/tree/UE5-Prerelease

1 Like

Thanks man.

Is there a AdvancedSessions sample project with everything included & covered by someone? If there is none yet, would someone be willing to provide one of his?

Like what? a complete project with hosting, joining, ready up, browsing, or something like that?

There’s also this one which might be slightly more stable, but don’t take my word for it I’m not the maintainer of this repo.

https://github.com//AdvancedSessionsPlugin/tree/UE5-ReleaseStaging

2 Likes

That would be for the 5.0 engine branch when building from source.

The EA branch is correct for what is in the launcher currently.