40 Commits

Author SHA1 Message Date
Detanup01
a8bebdde0a
Merge pull request #7 from otavepto/patch-game-stats-csv
Allow saving stats from `ISteamGameStats` to .csv files
2024-08-18 20:53:05 +02:00
a
08f2bc36e0 helper function to str replace substr 2024-08-18 05:05:53 +03:00
a
0868b639ef remove unused helper functions 2024-08-18 04:47:03 +03:00
a
3d328662f9 * properly cleanup changed reg keys + fix regquery usage bug (sizeof vs countof)
* change steam paths in HKCU
2024-08-03 16:57:30 +03:00
otavepto
fd0126ee25 change Steam_Apps::SetDlcContext() according to review notes by universal963 2024-07-07 02:39:21 +03:00
otavepto
7f940079d1 * update the method of reading json to be less wasteful + get path as const ref whe loading json
* fix vs warnings in gamestats interface
* refactor logger slightly
2024-07-07 02:39:21 +03:00
otavepto
2556db1f84 use keyword auto for simplicity and avoiding false positive results when searching via ctrl+f 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
15bc66a1da object based logger 2024-06-30 03:18:39 +03:00
otavepto
dcd3713b3c pe_helpers: use multibyte std::string + write null terminator when injecting dll (not needed but to be safe) 2024-06-30 03:18:39 +03:00
otavepto
00f1268e31 helper function to convert between utf-8 and utf-16 2024-06-30 03:18:39 +03:00
otavepto
efc062f6be move remove_file() inside common helpers 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
e213a44c55 fix linux compilation 2024-06-08 02:56:58 +03:00
otavepto
627e9df708 fix the linux condition 2024-06-08 02:19:34 +03:00
otavepto
35f4b9c6d7 proper helper function to get utc time 2024-06-07 19:49:57 +03:00
otavepto
e57daf02d0 helper function to generate rand num 2024-06-06 23:19:13 +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
72f25c7b3b fix compilation of cold client loader on msys2 2024-06-02 05:15:45 +03:00
otavepto
452b781fc0 fix some compiler warnings for dos_stub 2024-06-02 05:15:45 +03:00
otavepto
8be6efcfc2 allow loading .ini file with the same name as the cold client loader exe name 2024-05-08 00:30:23 +03:00
otavepto
47d48829a9 validate nt-header signature 2024-05-06 23:29:17 +03:00
otavepto
e2980d100e * use std::filesystem::u8path to support utf-8
* don't sanitize paths in settings_parser since it removes the colon ':', preventing the usage of absolute paths on Windows like 'C:\aa\bb'
2024-04-28 19:44:56 +03:00
otavepto
aa53202022 some refactoring 2024-04-20 01:09:55 +02:00
otavepto
c9f6bc8487 fix overload ambiguity 2024-04-14 18:47:12 +02:00
otavepto
9221465e57 use string_view in common helpers 2024-04-14 14:40:49 +02:00
otavepto
484fc2a982 * set these env vars for a more accurate emulation:
- `SteamAppUser`
  - `SteamUser`
  - `SteamClientLaunch`
  - `SteamEnv`
  - `SteamPath`
2024-04-13 17:35:10 +02:00
otavepto
f423b07eef * common function to do case insensitive compare
* some const + ref in different places
* some logs, comments & refactoring
2024-04-01 19:23:55 +02:00
otavepto
16a241599f updated stub drm patterns (for v2) and added a workaround for older variants 2024-03-18 03:32:37 +02:00
otavepto
b440b578ad fix linux build 2024-03-08 18:13:29 +02:00
otavepto
88203b5c6f * fixed a bug in settings parser where lines with single characters would be completely removed when stripped of spaces
* refactored and moved all helper functions into the relevant helpers source file
2024-03-08 18:13:29 +02:00
otavepto
018d4aa2c1 sloppy code is problematic! (at least verify PE signature) 2024-02-13 02:27:09 +02:00
otavepto
2c428e071a make sure mod path, if relative, would be relative to the lib itself + return utf8 string 2024-01-25 17:06:45 +02:00
otavepto
5db4636cf1 updated changelog 2024-01-24 23:11:11 +02:00
otavepto
6249d7ca4d * attempt to auto detect mods with the same behavior as if they were defined in mods.json, for an easier config
* new function in local storage to get list of folders at root level, given some path

* use last week epoch as the default time for mods dates (created, added, etc...)

* UGC: some params checks according to SDK docs for CreateQueryXXX() functions

* fixed some mistakes
2024-01-20 18:46:43 +02:00
otavepto
0d1e54e9a2 * a working impl to bridge ugc/remote_storage as suggested by Detanup01
* edits by Kola124 + other changes in the settings parser

* random ugc mod handle at object creation

* file size using std::filesystem + fix warnings + some print + arg validation
2024-01-20 18:46:43 +02:00
otavepto
e2cb2e0f38 allow specifying a load order via a file called load_order.txt inside the root of the dlls to inject folder + updated readmes 2024-01-19 04:28:03 +02:00
otavepto
91aac61e23 a working stub patcher + lots of changes to cold client loader 2024-01-19 04:28:03 +02:00
otavepto
0590f6d2f6 more helpers 2024-01-19 04:28:03 +02:00
otavepto
705a1b925a added helper functions + restructure folders 2024-01-19 04:28:03 +02:00