Legacy GM GM Studio 1.4999 - Argh, need help with updating Steam leaderboards

Okay, I am sending a persons live gold amount as the 10 richest players in my game.. but I can't figure out how to do what I want and need with my game.

The problem is the Steam leaderboards shows your highest value of an variable and what I need and want it to do is show the most current value of a variable.

So if John Smith accumulates 1,000 gold, my game uploads his gold as 1,000 gold. Cool. He's the richest person in my game at that moment.

But now John Smith gets ganked by another player and has only 25 gold. I need to update that on the leaderboards, but the leaderboards won't update the value to 25 since it's not higher than his previous 1,000 gold! Is there anyway to overirde the leaderboard with a lower score or value?

Not with the current implementation of the Steam API in GameMaker. Looking at the actual API it doesn't look like it's possible even if you wanted to make an extension to use the current Steamworks API functions: https://partner.steamgames.com/doc/api/ISteamUserStats#functions
Thanks. I'm looking at all the other Steam functions. Is there any way I could use the Steam stats functions to do what I want to do, and show the 10 richest players in the game at any given moment? Like could I use the the steam_set_stat or anything else to sort everyones current variable for their balance and display it or something? Probably not huh? IDK


You could set something like this up on your own web server, it's not too difficult to do. And has the advantages that you can customize it exactly how you want and release the title on platforms other than Steam, such as GOG/Epic/Mobile/Consoles.

Steam is handy, but using it is restrictive, as it means your game features won't work with any ports, and cross-platform interaction isn't possible.

But yes, to my knowledge leaderboards can never be updated with worse values. And stats might be difficult, as I believe each user only has access to their own stats, not the stats of anyone else (steam_get_stats for instance only returns your own stats), so making a leaderboard with Steam stats would be difficult.
I mean, you could do it with your own separate database setup unrelated to Steam (you can host databasing for free at https://en.altervista.org/ to begin with). However, it's going to be difficult to prevent cheating without doing a lot of server-side work to maintain the integrity of the game data (this goes for whether you do it within the Steam environment or not).