Commit Graph

624 Commits

Author SHA1 Message Date
d9b9b990f3 Update settings_parser.cpp 2019-08-26 17:55:31 +00:00
22c32c46b6 Forgot this. 2019-08-26 13:49:18 -04:00
7a59f48000 Merge branch 'master' into achievements_support 2019-08-26 19:45:58 +02:00
9b178146c4 Cleaned a bit hooks and added sanity checks. 2019-08-26 19:36:07 +02:00
2365b50c38 Merge branch 'master' into overlay_h 2019-08-26 19:32:06 +02:00
bca4bd6dc1 Added a way to configure stats and moved parser logic to other file. 2019-08-26 13:01:45 -04:00
1d920c538a Christsnatcher .bat improvements. 2019-08-26 13:01:00 -04:00
d0251b0b01 Some kind of DX12 hook 2019-08-26 16:46:56 +02:00
8e07dd0c6b Changed window detection. 2019-08-26 16:38:21 +02:00
dd530e80b1 Now passing to hooks device object.
Added Base_Hook::get_lib_name to track what renderer is hooked for overlay.
Objects used to detect renderer type are now also used to hook the rendering functions. So we don't have to build another device.
Updated VTables for DX12.
2019-08-26 16:38:01 +02:00
cd8c5fc2ea Fixed memory leak 2019-08-25 21:22:25 +02:00
1d525c77c1 Updated examples
Should not push a commit when you're tired.
2019-08-25 09:35:34 +02:00
f1118030e8 Added the forgotten size update if copied less chars. 2019-08-25 00:29:05 +02:00
9c04ce6a81 Delete CMakeLists.txt 2019-08-24 22:22:01 +00:00
751e780579 Delete build_curl.sh 2019-08-24 22:21:27 +00:00
abb26d402f Fix 2019-08-24 18:10:56 +02:00
21e08ed220 Achievements support & inventory customization.
Added achievements support. Achievements are saved like real steam, see your inventory directory.(like items, uses a .json, tool can be used to dump achievements from steam public api).
You will need a public apikey. (See https://steamcommunity.com/dev)
Reworked item support to split inventory items to defined items.
2019-08-24 17:42:39 +02:00
46f2199cd2 Added examples 2019-08-24 17:34:06 +02:00
13acbb3d94 Reworked generate_game_infos. 2019-08-24 17:33:39 +02:00
42a22dd4bb Don't free objects with shutdown
Some games don't like to free the DX objects after the game has shut down.
2019-08-21 21:52:08 +02:00
4db2b6528c Changed window detection code.
GetModuleHandle(NULL) get the exe handle. Sometimes the window couldn't be found because the window wasn't created in the .exe but in a dll. Thats why I list all dll HANDLES and try to find the main window handle.
2019-08-21 21:50:59 +02:00
b17e3b7be3 Added win static build for curl 2019-08-21 21:35:41 +02:00
ea4588f442 (WIP) achievements support
build is also WIP
2019-08-21 20:52:36 +02:00
0fa2d82c67 Fixed overlay on x64
They are not longer available with GetWindowLong. There is a new function GetWindowLongPtr.
GWLP* must be used.
2019-08-21 10:46:58 +02:00
5a0653d080 Refactor dx device creation
Find the game's window instead of using the foreground window.
2019-08-20 23:27:17 +02:00
dc7480c633 Better compatibility for dx10 and 11 2019-08-20 08:27:50 +02:00
8757f4a548 Fixed ressource leaks. 2019-08-19 19:51:35 +02:00
c99628a88a Added hook retry.
Handed hook detection to a thread that can then retry.
With that, don't need to wait for loadLibrary.
Will remove all those commented functions in another version.
2019-08-19 18:57:55 +02:00
5893b69d1f Partially working DX12 overlay
DX12 hook seems ok, there are some bugs remaining.
ImGui setup for DX12 doesn't work.
2019-08-19 18:56:15 +02:00
3c83e08d34 Fix the last frame before not showing overlay
The last frame was sending inputs to the game window, making the game receive a <TAB>.
2019-08-18 17:49:47 +02:00
ca0ef4380a Moved hooks calls and added hook retry
With that change, I no longer re-hook rendering functions as Hook_Manager::FoundRenderer removes all hooks and then we hook the true functions in the renderer specialization.
Added a retry count.
2019-08-18 17:12:57 +02:00
5b0306dccc Moved window hooks to its own class
Every class has a job. Overlay is to show an overlay not to hook windows functions.
Hook_Manager's job is to manage hooks and should not contain a reference to the overlay. (It should not contains any reference to directX or OpenGL either but I'll see that later... Maybe)
This makes the overlay code much cleaner and "could" be used in Linux as well.
2019-08-18 16:22:07 +02:00
f096a2d8a2 Use LoadLibrary instead of LoadModule
LoadLibrary increase the reference count to the library. So we make sure this library is still loaded when we shut down the hook.
2019-08-18 16:19:28 +02:00
fdeb5912d3 Try to Disable all inputs when overlay is on 2019-08-18 14:29:08 +02:00
7daf605511 Merge branch 'master' into overlay_h 2019-08-18 12:30:51 +02:00
ced9b77afc Tweaked auth delays. 2019-08-17 18:15:18 -04:00
06b4332187 Add some commented out code to disable https in winhttp. 2019-08-17 18:03:21 -04:00
0e17aeef76 Basic steamclient.dll emulation.
Build with STEAMCLIENT_DLL defined to build in steamclient.dll mode.
2019-08-17 18:02:15 -04:00
e044205e71 Make encrypted ticket size more realistic. 2019-08-17 18:00:31 -04:00
757dc479e4 Removed inline 2019-08-16 19:32:32 +02:00
5d4b4371f3 Fixed everything that I've forgot 2019-08-16 19:21:30 +02:00
d06fbba104 Added error handling when hook fails 2019-08-16 19:10:12 +02:00
71d3e301c2 Added Winmm (Wav Play) 2019-08-16 18:33:51 +02:00
1b37e837a1 Notification sound when something happen 2019-08-16 18:31:56 +02:00
7b53134512 Initialize overlay after full initialization of UI. 2019-08-16 18:30:55 +02:00
05f3fa09b3 Better compatibility for DX10 & DX11
Create a NULL Device (We only need it to retrieve its vtable)
2019-08-16 18:29:49 +02:00
d7f6d254eb Added static glew to build scripts 2019-08-16 11:27:07 +02:00
cb0e1dff25 Added opengl32 lib and declared glew as static 2019-08-16 11:11:13 +02:00
78ffbc6571 Added ImGui wildcard escape 2019-08-16 10:42:43 +02:00
2792793bf3 Only call overlay related functions if it is ready
Continue to receive friends notifications, so if the overlay becomes ready we already have the list of friends.
2019-08-16 10:37:45 +02:00