Advanced Session Plugin(Steam) - Get Steam Friend Avatar error

Hi. I have a problem with the Advanced Session Plugin. When I use node “Get Steam Friend Avatar” my widget breaks and does not display information. When I disable node everything is fine. Has anyone encountered this problem? UE 5.4.3


I had similar issue, then realized, I have to call same function again in order for avatar info to be displayed properly. And not just again right away, but after some time, like 0.2 secs. Then I realized this is just a symptom of an issue, and my issue is, I haven’t requested friends info before requesting avatar. For Steam I used this code (this included myself if I wanted to display my avatar)

void UYourClass::RequestFriendsInfo(const FString& UniqueNetId, PlayerAvatarSize AvatarSize)
{
	if (SteamAPI_Init())
	{
		const uint64 Int64Id = FCString::Atoi64(*UniqueNetId);
		SteamFriends()->RequestUserInformation(Int64Id, false);
	}
}

But, you cannot just call this, you should first get onLoginComplete using this

		const IOnlineIdentityPtr Identity = OnlineSubsystem->GetIdentityInterface();
				
		if (Identity != nullptr)
		{
			Identity->OnLoginCompleteDelegates->AddUObject(this, &UYourClass::OnLoginComplete);
			Identity->AutoLogin(0);
		}

This is all if you need your own Avatar. If you need your friends avatar, you need to get friends list, then request their info using UniqueNetId’s you get in that list. And, when info is received, then you can request avatar. This was the only way my avatars started to work properly.

Workaround is to call this multiple times (not in Tick, but with custom timer function) until you get the info. But this is hacky workaround.

Im actually have timer function but on container level


So this is single friend widget which im add to container


So i need another timer function inside single friend widget?

I would check if GetAndStoreFriendsList returns everything as expected, aswel as if it retreives friends info, which I belive it does. But, at least for me, it is really hard to understand what is going on here. As I mentioned already, I had issue with Steam Sessions, so I decided to go to C++ where I rewrote all the functions to get the avatars myself.

There is also one more downside to Advanced Steam Sessions, it will tie yo to the Steam. So, if you decide to port your game to console, or GOG, you will be in a heap of a trouble. Don’t ask how I know :D. I would always suggest to do it yourself in C++.

Also, don’t test it in the list, try it on only one element first. And when you see avatar there, it will be easier then :).

Did you follow this video, if not, maybe you can try it: https://www.youtube.com/watch?v=Z6dGcSmDUyc