Commit Graph

1073 Commits

Author SHA1 Message Date
bitsynth
5a7fa86310 fix Age of Empires 2: Definitive Edition
this game expects the current app to exist as a owned DLC. if not true, the game will only load the "Return of Rome" game mode, if that DLC is owned, or load the base game with most options disabled if it is not
2024-03-17 01:15:08 +02:00
otavepto
6611c73448 fix that printf warning 2024-03-16 11:09:28 +02:00
otavepto
55e75655b0 update chnagelog 2024-03-16 10:55:59 +02:00
otavepto
db07e4aadf in Steam_Utils::IsAPICallCompleted initialize the pFailed param to false 2024-03-16 07:14:04 +02:00
otavepto
325631e1fd * run SteamAPI_ManualDispatch_Init() only once
* don't run callbacks background thread when calling Steam_BGetCallback()
2024-03-16 05:43:44 +02:00
otavepto
28f097c9c1 log when adding callresult 2024-03-16 05:41:05 +02:00
otavepto
37261bedb8 * don't run callbacks in steam_utils::runframe()
* initialize a param in steam_utils::isapicompleted()
2024-03-16 05:20:40 +02:00
otavepto
09979e8eca add a param to prevent running the callbacks background thread, for manual dispatch 2024-03-16 05:19:04 +02:00
otavepto
7700cd5dda log message 2024-03-15 15:40:33 +02:00
otavepto
3dbfbb76b1 * refactor steam_utils into a separate cpp file
* call RunCallbacks() inside Steam_Utils::RunFrame()
2024-03-15 02:43:59 +02:00
otavepto
0becc74280 note for later 2024-03-15 00:03:41 +02:00
otavepto
af237639d5 * initially attempt to load the icons of all achievements, this will slow things down at startup,
but avoids having to load the achievement icon during gameplay which causes micro-stutter
2024-03-15 00:03:41 +02:00
otavepto
0b86464374 * load the icons of a single achievement each overlay callback invokation, will slow things down during startup
but this avoids having to load the achievement icon during gameplay which causes micro-stutter

* avoid loading and resizing the achievement icon each time it's unlocked

* Local_Storage: avoid allocating buffers unless `stbi_load()` was successfull
2024-03-15 00:03:41 +02:00
otavepto
37426bac82 allow notifications of these types to steal input focus:
notification_type_message
notification_type_invite
2024-03-15 00:03:41 +02:00
otavepto
4d2e14be3f manage overlay cursor input/clipping and internal frame processing in a better way 2024-03-15 00:03:41 +02:00
otavepto
1518075b17 spelling 2024-03-11 01:40:47 +02:00
otavepto
b7c986f47c * prevent notifications that do not require interaction from stealing focus
* check for success when creating the overlay popup window

* make notifications background less transparent, for easier visibility

* show hidden achievement description in the overlay if it was unlocked

* don't fail loading both achievement icons, locked and unlocked, if eihter one of them wasn't loaded but the other was
2024-03-09 23:17:27 +02:00
otavepto
2020c514d1 prefix a debug message 2024-03-09 13:47:59 +02:00
otavepto
c96b8f9935 don't show notifications or run overlay callbacks when it's not ready + refactor a private function 2024-03-09 04:19:38 +02:00
otavepto
d448535021 stop frame processing on exit 2024-03-08 22:19:12 +02:00
otavepto
5447940ed1 revert back the original behavior of starting the detector immediately when the renderer detector initial delay = 0 2024-03-08 22:10:04 +02:00
otavepto
896dfd736f revert the initial delay for the overlay renderer detector back to 0 2024-03-08 21:28:17 +02:00
otavepto
ddea56abf6 added missing note in changelog 2024-03-08 18:31:56 +02:00
otavepto
00564c9a4d use abbreviated name for windows resources 2024-03-08 18:31:40 +02:00
otavepto
b440b578ad fix linux build 2024-03-08 18:13:29 +02:00
otavepto
022943fd1f forgot the default value! 2024-03-08 18:13:29 +02:00
otavepto
875e3e4859 allow changing the font glyph spacing 2024-03-08 18:13:29 +02:00
otavepto
65edb7081a allow controlling the renderer detector timeout via a config file 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
a83d55707b update changelog 2024-03-08 18:13:29 +02:00
otavepto
3b5fea61f3 disable char8_t to be able to use u8"" strings in a normal manner for overlay translations 2024-03-08 18:13:29 +02:00
otavepto
df9cc93028 add builtin fonts to properly render all languages 2024-03-08 18:13:29 +02:00
otavepto
3f09a4c929 spicify float literal 2024-03-08 18:13:29 +02:00
otavepto
42a5c14ec3 allow -j 1 for build scripts 2024-03-08 18:13:29 +02:00
otavepto
450f46c92c * allow popup windows to take focus
* refactoring private/public functions names
2024-03-08 18:13:29 +02:00
otavepto
b66555afbd use u8"" strings for overlay translations 2024-03-08 18:13:29 +02:00
otavepto
0dd755df84 decrease the default overlay hook delay to 3 sec 2024-03-08 18:13:29 +02:00
otavepto
827f8a472a refactoring + make fonts variables static 2024-03-08 18:13:29 +02:00
otavepto
d3c4026447 fix default notification height + a potential crash when creating notification table during exit 2024-03-08 18:13:29 +02:00
otavepto
99d689118e central function to take care of frame/input processing 2024-03-08 18:13:29 +02:00
otavepto
9a73720825 * check for ImGui context before initializing it, otherwise it might crash some games like Antichamber when you alt+tab during initialization
* ignore all overlay requests if it's not ready
* when unlocking an achievement, only load it's icon if that was specified in the json
* restore the code for ImGui font builder, this is needed to load the glyphs for all languages
* revert the code which loads the achievements info even if the overlay wasn't ready
2024-03-08 18:13:29 +02:00
otavepto
d347ebafd3 update release readme + add new example file for overlay hook delay 2024-03-08 18:13:29 +02:00
otavepto
5df75be04b attempt to load the locked achievement icon from the json key icongray if the normal one failed, adding compatibility with older format 2024-03-08 18:13:29 +02:00
otavepto
4d23a859f3 * new config file overlay_hook_delay_sec.txt to control the initial delay for the overlay's renderer detector
* send the value of the `accept_overlay_invites` to settings_server too!
2024-03-08 18:13:29 +02:00
otavepto
c50ac8fa71 some debug messages 2024-03-08 18:13:29 +02:00
otavepto
6a5fbf2b7d formatting 2024-03-08 18:13:29 +02:00
otavepto
c19fc81e84 * revert the previous change and force-display a mouse cursor inside the overlay, Truberbrook and others won't show a cursor in the overlay by default
* attempt to fix the crash when closing the app, use global object with bigger life time and avoid local states

* attempt to fix usage of invalid/outdated window size when displaying notifications

* lock overlay mutex everywhere to avoid sync problems

* lock global emu mutex in the relevant places when using client APIs

* only change the ImGui ini and round corner settings once
2024-03-08 18:13:29 +02:00
otavepto
66d1fab36f fix building ingame overlay dep (System) on CI 2024-03-08 18:13:29 +02:00
otavepto
1ecae283d8 verbose CI 2024-03-08 18:13:29 +02:00
otavepto
66d7b6a125 missing packages for CI 2024-03-08 18:13:29 +02:00