release-2024_6_12(1)
-
Detanup01 Add
premake
build scripts, allowing the project to be built with different toolsets with ease on different platforms.
For example the project could be built withVisual Studio
on Windows, or via themake
tool on Linux -
schmurger Add progress bar to the achievements in the overlay, only for achievements that are not earned yet.
Also implement notifications for these progress indications (whenever the game indicates a new progress).
You can disable the achievement progress notifications viadisable_achievement_progress
insideconfigs.overlay.ini
-
schmurger Implement the function
Steam_User_Stats::GetAchievementProgressLimits()
-
Detanup01 Add missing interfaces
ISteamScreenshot
v001
andv002
Also fix lots of build warnings in Visual Studio -
Third-party dependencies could now be built with a
premake
script, offering more flexibility.
For example you can choose to extract or build certain libraries only, you can also build 32-bit or 64-bit separately
Check the updated readme
And re-clone the repo recursively again!
-
Enable controller support by default for the regular API library
-
Fix an old buffer overrun bug in
Steam_User_Stats::UpdateAvgRateStat()
-
Fix an old bug in the shutdown functions, now they will refuse incorrect requests like the original API library, solving a crash in some games
-
Restore a missing export
g_pSteamClientGameServer
for the API library, removed by mistake -
Avoid overriding
SteamPath
environment variable inSteamAPI_GetSteamInstallPath()
-
Fix
gameid
decoding bug in matchmaking servers when usinglibssq
(source server query) -
Enhance the overlay shutdown sequence, making it able to handle rapid init/shutdown sequence, fixing a crash in some games
-
For Windows
ColdClientLoader
: allow loading.ini
file with the same name as the loader
Example: If the loader is namedgame_cold_loader.exe
, then it will first try to loadgame_cold_loader.ini
, if that doesn't exist, it will fallback toColdClientLoader.ini
-
Add missing callback in
Steam_UGC::RequestUGCDetails()
-
Re-implement the way the background thread is spawned & terminated to fix its cleanup sequence + spawn it for gameservers as well
-
Corrected callback vs call result in
Steam_Apps::RequestAllProofOfPurchaseKeys()
-
The emu will now terminate the process and generate a file called
EMU_MISSING_INTERFACE.txt
(beside the library) if an app requested a missing interface -
Reduce binaries sizes on Linux by avoiding
-Wl,--whole-archive
and using-Wl,--start-group -lmylib1 -lmylib2 ... -Wl,--end-group
instead on all libraries, allowing the linker to go back and forth between them to resolve missing symbols -
Restore accidentally removed flag for ipv6, for
SteamClient020
-
Make the test achievement in the overlay include a random progress
-
Add new button to the overlay
toggle user info
to show/hide user info, also make user info hidden by default -
Make all overlay popups toggleable, clicking its button another time will hide or show the popup, depending on its previous state
-
Allow
Steam_User_Stats::ClearAchievement()
to reflect the status in the overlay -
Initial support for building with
MSYS2
on Windows.
This is still highly experimental and non-functional, this is more of tech demo at the moment
The original SDK is created asMSVC
library, and all games on Windows link with it.
MinGW toolchain has a completely different ABI and the output binary will not work -
Deprecated and removed the special Git branches
ci-build-*
, they were intended for automation but no longer maintained