a
ee5c2bb4f9
allow disabling the internal functionality which reports an achievement progress for stats that are tied to achievements
2024-08-03 21:16:49 +03:00
otavepto
e35e2e5a4e
compare language value of steam_settings/achievements.json case-insensitive
2024-06-30 03:18:39 +03:00
otavepto
6ee0628750
add a new option save_only_higher_stat_achievement_progress
and enable it by default toa void progress spam from stats which are tied to an achievement
2024-06-23 19:16:44 +03:00
otavepto
ace1a591e5
in Steam_User_Stats::ResetAllStats()
reset progress
only if it was defined in the original schema
2024-06-23 19:16:44 +03:00
otavepto
6bf45a35e2
avoid a scenario where progress might exist but not max_progress is user data
2024-06-23 19:16:44 +03:00
otavepto
de03379602
add an option to allow the game to change unknown stats
2024-06-23 19:16:44 +03:00
otavepto
0e47a2bd73
revert sharing progress with gameserver, pointless
2024-06-19 15:09:19 +03:00
otavepto
cd21b54e6b
* always trigger UserStatsStored_t and UserAchievementStored_t callbacks in Steam_User_Stats::IndicateAchievementProgress() even if value wasn't updated, games my halt otherwise
...
* return false in Steam_User_Stats::GetAchievementProgressLimits() if the achievement has no progress
* share progress info with gameservers
2024-06-19 15:09:19 +03:00
otavepto
aa791b5256
* remove invalid condition when resetiing stats, only write to disk and share with gameserver if value isn't already the default
...
* try-catch access to progress and max_progress durong construction since they throw exception for achievements with no progress, making them standalone/safe
2024-06-19 15:09:19 +03:00
otavepto
9e15af4ec8
fix the conditions for progress indication + remove invalid code when resetting stats
2024-06-19 15:09:19 +03:00
otavepto
0e7c4fef8b
clear achievement progress in Steam_User_Stats::ResetAllStats()
2024-06-08 18:04:36 +03:00
otavepto
bb57733a8a
ensure all default values are added to a user achievement on load
2024-06-08 18:04:10 +03:00
otavepto
2cd5f15376
allow the achievement clear function to reflect the status in the overlay
2024-06-07 19:57:14 +03:00
otavepto
06189e303f
don't allow achievement trigger to propagate its error to next lines, this allows ahievements to be initialzied properly
2024-06-07 19:56:35 +03:00
otavepto
57846cb133
fix more VS warnings
2024-06-06 23:19:13 +03:00
otavepto
05b6ccdcf8
implement the other overload of Steam_User_Stats::GetAchievementProgressLimits()
2024-06-06 23:19:13 +03:00
otavepto
9ee40181b1
* allow test achievement to include a progress randomly
...
* allow showing the progress indicator in the achievement notifications, not only in the achievements list
* don't play sound when showing progress notifications
* disable progress notifications if the setting in the .ini was set
2024-06-06 23:19:13 +03:00
otavepto
c28a1f1f52
fix more VS2022 warnings
2024-06-04 21:58:04 +03:00
otavepto
5268683850
* make the overlay object oriented, that way when app shutdown then re-init steam api it would hold its own local state, avoiding racing troubles
...
* return early if the overlay was disabled without locking
* remove external checks for the disable_overlay flag, check for it inside the overlay code
2024-06-04 21:58:04 +03:00
otavepto
ba1de0165d
refactor steam_client a little + create setters/getters instead of directly modifying fields
2024-06-02 05:16:22 +03:00
otavepto
10f1e89736
fix a buffer overrun in Steam_User_Stats::UpdateAvgRateStat
2024-06-02 05:15:45 +03:00
schmurger
7b37cdd181
Use integer instead of floats for achievement progress.
2024-05-21 19:29:20 +03:00
schmurger
5aa1e2d08d
Initialize user achievement stats correctly
2024-05-21 19:29:20 +03:00
schmurger
e30cc2957f
Removed update_achievement_progress function
2024-05-21 19:29:20 +03:00
schmurger
6b26ca1b4c
Fix build
2024-05-21 19:29:20 +03:00
schmurger
b0cffd485b
Added realtime progress update
2024-05-21 19:29:20 +03:00
schmurger
4e8f2505b5
Add achievement progress
2024-05-21 19:29:20 +03:00
otavepto
e5d1a8bda7
separate .h/.cpp files
2024-05-03 03:33:46 +03:00
otavepto
f315bec961
more callbacks
2024-04-11 14:08:04 +02:00
otavepto
4d895b63b0
more accurate implementation for callbacks and call results in UserStats
and GameServerStats
interfaces
2024-04-11 06:40:29 +02:00
otavepto
8576d149d3
remove functions names prefixes in debug logs
2024-04-06 08:30:08 +02:00
otavepto
0672139f46
properly implement Steam_User_Stats::ResetAllStats()
2024-04-01 19:23:55 +02:00
otavepto
51197c5348
allow user_stats to send data immediately via config file
2024-04-01 19:23:55 +02:00
otavepto
0ed6dc6808
prefer udp when sending leaderboards
2024-04-01 19:23:55 +02:00
otavepto
e143a6dd82
* new function in networking to send to all gameservers only
...
* broadcast user stats with gameservers only
2024-04-01 19:23:55 +02:00
otavepto
04e7a7d476
opt-in sharing leaderboards instead of opt-out
2024-04-01 19:23:55 +02:00
otavepto
93172e642e
allow disabling the new options via config files
2024-04-01 19:23:55 +02:00
otavepto
a36cadbf12
allow empty board entries, don't force and entry for current user
2024-04-01 19:23:55 +02:00
otavepto
4d03c5b402
fix a memory leak
2024-04-01 19:23:55 +02:00
otavepto
d8a91edcf5
only accept leaderboards updates from the same appid
2024-04-01 19:23:55 +02:00
otavepto
caa9401369
* for gameserver_stats & user_stats: distinguish between stats update requests from server and client, avoiding a scenario where a client would overwrite another client's stats
...
* fixed linux compilation error
2024-04-01 19:23:55 +02:00
otavepto
d2f23fbea5
share leaderboards scores with connected players, adjust players ranks locally, and sort entries as needed by the game
2024-04-01 19:23:55 +02:00
otavepto
4809a7565c
* separate the config file disable_leaderboards_create_unknown.txt
...
* some refactoring
2024-03-26 23:48:57 +02:00
otavepto
b6c7df40b6
* implemented the missing interface ISteamGameServerStats
, allowing game servers to exchange user stats with players
...
* add rmCallback() to networking
* refactor gameserver_stats into a separate .cpp file
2024-03-26 21:39:52 +02:00
Mr_Goldberg
db2a803cf7
A few improvements to the overlay merge request.
...
NO_OVERLAY define becomes EMU_OVERLAY which enables the overlay instead of disabling it.
disable_overlay.txt moved to steam_settings.
2020-01-19 12:55:14 -05:00
Nemirtingas
c8028d6a98
Update steam_user_stats.cpp
2019-12-09 06:35:33 +00:00
Nemirtingas
02ef03b3f2
Fix my_master build
2019-11-08 15:59:29 +01:00
Nemirtingas
a318e04959
Merge branch 'master' into my_master
2019-11-08 15:58:54 +01:00
Nemirtingas
ce79df1c26
Added customizable notification
...
Notification can have a type depending on what to show.
2019-11-08 15:52:38 +01:00