Steam achievements not being given to clients, only server

Hi everyone,

I have an issue with my game’s steam achievements. I’m using a simple (player hosts a lobby, clients join the lobby) system.

The steam achievements I have work on the server-side (as in the player hosting the lobby gets all the achievements properly), but clients don’t get it.

My current setup for giving achievements is the following:

A server-executed event verifies that the player obtained an achievement. Once verified, it sends the achievement name to an event in the player bp which is run on owning client.

From there, an event is called in the game instance to give the player the achievement.

(Screenshots for reference)

I haven’t been able to find any documentation or other people reporting a similar issue so I can’t tell if it’s just me missing something very simple :sob:.

Any help appreciated!

Hey @RpgSlayer707 hope everything is good.

Achievements work through the OnlineSubsystemSteam, which is handled independently on each client.

This means that achievements triggered on the server-side (Listen Server Player) will only be unlocked for that player.

To unlock achievements for all players, you can perform a Multicast RPC and execute GiveAchievement on all clients. This way, all players will receive the achievement properly.

Hey @BRGDemianLopez sorry for the late reply.

Do you mean set the “Give Achievement” event in the player class to multicast? I believe I tried that and it had the same effect.

Also, I haven’t tested it yet but could it be related to the controller? Should I pass the server’s view of all the player’s controllers instead of getting the controller from the client side?

It’s worth noting that unless your using two machines to test your online play, only one of them will actually properly bind to steam, for friends achievements etc,

When launching through the editor and you select 2+ players only one will actually be connected to steam despite them being able to join the server still, and only in standalone/Packaged game

Everything you’ve shown here looks fairly sound