otavepto
638eb78f0f
use the new logger in all dll code base
2024-06-30 03:18:39 +03:00
otavepto
26b8baefa6
use utfcpp lib to convert utf8<->utf16 strings instead of Windows specific apis
2024-06-30 03:18:39 +03:00
otavepto
e03ed9e1cd
separate header file for OS detection
2024-06-30 03:18:39 +03:00
otavepto
92a38b2f2f
settings_parser: use multibyte std::string
2024-06-30 03:18:39 +03:00
otavepto
e35e2e5a4e
compare language value of steam_settings/achievements.json case-insensitive
2024-06-30 03:18:39 +03:00
otavepto
433dc405bd
gen_emu_config: make sure each line in supported languages is lowercase
2024-06-30 03:18:39 +03:00
otavepto
4b49edbf5e
improve usage of std::string_view, passing them as const ref is useless since they don't allocated anything and cheap to copy (no allocations)
2024-06-30 03:18:39 +03:00
otavepto
caea115cf7
update readmes + changlog & credits
2024-06-24 22:27:31 +03:00
otavepto
02432c7f8f
fix that comment
2024-06-23 19:16:44 +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
b67cb48f38
change default notification duration
2024-06-21 21:53:53 +03:00
otavepto
fcb40ac86d
allow specifying durations for each notification type
2024-06-20 21:49:22 +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
706422661a
wrap proto includes to avoid build warnings
2024-06-16 19:09:01 +03:00
otavepto
eb78b5bf0b
wrap mbedtls includes to avoid build warnings
2024-06-16 19:09:01 +03:00
otavepto
3bc609c9a3
move gamepad to libs/
2024-06-16 19:09:01 +03:00
otavepto
d1d5416d62
implement isteamgamestats
2024-06-16 19:08:44 +03:00
Detanup01
65521debe6
fix those requests
2024-06-14 19:10:12 +03:00
Detanup01
4390cc1616
isteamvideo001 interface added
2024-06-14 19:10:12 +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
c1cf889751
ensure binary mode for json read/write
2024-06-08 18:03:02 +03:00
otavepto
b75b5ee282
exit on missing interface instead of returning a pointer
2024-06-08 16:14:12 +03:00
otavepto
f2e9062242
refactor the PRINT_DEBUG, only one definition, and make the function name macro public
2024-06-07 20:20:41 +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
f7c7d79e0a
restore accidentally removed flag for ipv6 for SteamClient020 + VS warning fix + small refactor
2024-06-07 19:55:30 +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
663f1a9350
new option to disable overlay progress notifications
2024-06-06 23:19:13 +03:00
otavepto
a384994ac2
fix gameid decoding bug in matchmaking servers
2024-06-04 21:58:04 +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
f81ba95732
* common helper for killable threads + remove dedicated class for background thread
...
* avoid overriding SteamPath env var in `SteamAPI_GetSteamInstallPath()`
2024-06-04 21:58:04 +03:00
otavepto
d769cbe419
log crash dump messages
2024-06-02 21:24:55 +03:00
otavepto
ad84a60912
properly declare then define the damn export g_pSteamClientGameServer
, microsoft's compiler is dubious
2024-06-02 09:11:06 +03:00
otavepto
5def4c4148
fix api build error because of g_pSteamClientGameServer
(defined as export & initialized)
2024-06-02 08:28:17 +03:00
otavepto
e63dcc8811
do a sanity check when shutting down, some apps despite being a regular client (not a gameserver) will still call gameserver_shutdown()
2024-06-02 05:16:22 +03:00
otavepto
4333808646
also delete background thread instance!
2024-06-02 05:16:22 +03:00
otavepto
8022fc04f4
reduce code for deleting steamclient instances
2024-06-02 05:16:22 +03:00
otavepto
545bbd17da
spawn the background thread for gameservers as well
2024-06-02 05:16:22 +03:00
otavepto
86eb8aa2d0
refactor background thread into a separate .cpp file
2024-06-02 05:16:22 +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