Commit Graph

220 Commits (48ea1da91f2236c633ece2c75fb83e877ec5d253)

Author SHA1 Message Date
Nemirtingas 5ad434e190 Merge branch 'master' into overlay_h 2019-09-20 13:26:34 +02:00
Nemirtingas 1545e375a2 Fix wrong broadcast addr on windows 2019-09-20 13:12:42 +02:00
Mr_Goldberg b77b4e2ef5
Fix older ActionOrigins functions. 2019-09-20 06:14:08 -04:00
Nemirtingas 6c19056fbb Change inventory files place.
inventory is now in %appdata%/goldberg.../<appid>/inventory just like remote and stats.
It is also affected by the local_save.txt
2019-09-18 14:54:09 +02:00
Mr_Goldberg ee4722cb33
Activate the action set if there is only one present. 2019-09-14 18:32:26 -04:00
Mr_Goldberg 03a1627d07
SteamInput GetDigitalActionOrigins and GetAnalogActionOrigins implemented. 2019-09-14 17:24:05 -04:00
Mr_Goldberg 09704ae243
Fixed issue where GetAnalogActionData magnitude of joystick was always maximum. 2019-09-12 07:21:11 -04:00
Mr_Goldberg 663728edca
Allow action names to be used in more than one action set at the same time. 2019-09-11 09:08:05 -04:00
Mr_Goldberg 8b9e0e25ca
Forgot this in last commit. 2019-09-10 23:58:27 -04:00
Mr_Goldberg 2af93427fe
Initial Xinput ISteamInput/ISteamController support. 2019-09-10 14:54:54 -04:00
Mr_Goldberg 4db580d945
Add missing older steam api SteamUnifiedMessages() function. 2019-09-07 10:35:55 -04:00
Mr_Goldberg 58083e0863
Started work on a real avatars implementation.
Fix issue where since the image ids changed for
every get avatar call mudrunner would keep allocating
memory indefinitely.
2019-09-07 09:39:41 -04:00
Nemirtingas 86b178f55b Fixed definition update not being called
Should update definition when inventory is requested and definition is not loaded
2019-09-01 21:33:29 +02:00
Nemirtingas dd13377be7 Added linux arch define 2019-09-01 20:47:46 +02:00
Nemirtingas 495bc957cd Added some os detection
Need to detect linux x86 or x64
2019-09-01 20:46:55 +02:00
Nemirtingas d9b9b990f3 Update settings_parser.cpp 2019-08-26 17:55:31 +00:00
Nemirtingas 7a59f48000 Merge branch 'master' into achievements_support 2019-08-26 19:45:58 +02:00
Nemirtingas 2365b50c38 Merge branch 'master' into overlay_h 2019-08-26 19:32:06 +02:00
Mr_Goldberg bca4bd6dc1
Added a way to configure stats and moved parser logic to other file. 2019-08-26 13:01:45 -04:00
Nemirtingas f1118030e8 Added the forgotten size update if copied less chars. 2019-08-25 00:29:05 +02:00
Nemirtingas abb26d402f Fix 2019-08-24 18:10:56 +02:00
Nemirtingas 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
Nemirtingas ea4588f442 (WIP) achievements support
build is also WIP
2019-08-21 20:52:36 +02:00
Nemirtingas 7daf605511 Merge branch 'master' into overlay_h 2019-08-18 12:30:51 +02:00
Mr_Goldberg ced9b77afc
Tweaked auth delays. 2019-08-17 18:15:18 -04:00
Mr_Goldberg 06b4332187
Add some commented out code to disable https in winhttp. 2019-08-17 18:03:21 -04:00
Mr_Goldberg 0e17aeef76
Basic steamclient.dll emulation.
Build with STEAMCLIENT_DLL defined to build in steamclient.dll mode.
2019-08-17 18:02:15 -04:00
Mr_Goldberg e044205e71
Make encrypted ticket size more realistic. 2019-08-17 18:00:31 -04:00
Nemirtingas 8abd24ca54 Re-enabled auto join if overlay is not ready 2019-08-16 00:12:11 +02:00
Nemirtingas cb67853e45 Fixed build for 64bits 2019-08-14 18:54:38 +02:00
Nemirtingas 6224350142 Fixed compilation for windows 2019-08-14 18:11:00 +02:00
Nemirtingas f9ee123a05 Merge branch 'master' into overlay_h 2019-08-12 16:47:58 +02:00
Mr_Goldberg 1d19d49419
Increase return value of GetAppBuildId. 2019-08-12 10:40:16 -04:00
Nemirtingas 03d02b497b Merge branch 'master' into overlay_h 2019-08-06 12:14:51 +02:00
Mr_Goldberg 07af5737b4
Merge branch 'DLC-comments' of gitlab.com:Lyberta/goldberg_emulator 2019-08-05 18:34:50 -04:00
Nemirtingas 2930f12420 Merge branch 'master' into overlay_h 2019-08-04 21:00:43 +02:00
Mr_Goldberg 35860efa3a
Only set g_pSteamClientGameServer in steam gameserver init functions. 2019-08-04 14:36:28 -04:00
Lyberta b41517cd91 Added hash comments to DLC.txt 2019-08-04 14:10:22 +00:00
Nemirtingas f30b0c9fb2 Merge branch 'master' into overlay_h 2019-08-04 11:11:40 +02:00
Mr_Goldberg 35c59044fd
SteamGameServerClient should return NULL if the gameserver is not initialized. 2019-08-03 19:00:31 -04:00
Mr_Goldberg bf4847452e
SteamAPI_Shutdown actually does something now. 2019-08-03 18:58:23 -04:00
Mr_Goldberg f4ab249f36
Add a way to configure which leaderboards are seen by the game. 2019-08-03 18:55:08 -04:00
Nemirtingas 4f9e67d700 Support for chat message (WIP) 2019-08-03 12:58:48 +02:00
Nemirtingas 2a373bbf79 Now I set the invite instead of adding it.
You should send a lobby invite or a rich invite, but not both.
2019-08-02 23:01:24 +02:00
Nemirtingas 8fe7c2267a User must now accept invite 2019-08-02 13:02:20 +02:00
Nemirtingas 156bee1564 Invitation & Chat support (WIP) 2019-08-02 11:16:30 +02:00
Nemirtingas a1037e3bf2 size() returns a size_t. 2019-08-01 19:08:09 +02:00
Nemirtingas 884f147e1b Merge branch 'master' into overlay_h 2019-08-01 15:56:43 +02:00
Nemirtingas e6826d8ead Basic & Ugly implementation of overlay.
Overlay still WIP, don't look too much into the code.
I will do it better soon.
2019-08-01 15:47:47 +02:00
Mr_Goldberg 7939796680
Fix build. 2019-07-31 10:25:05 -04:00
Mr_Goldberg 26c5b7949f
Implemented some ugc remote storage functions related to fileshare. 2019-07-31 10:01:55 -04:00
Mr_Goldberg 8723dad025
Update to sdk 1.46 2019-07-28 09:02:09 -04:00
Nemirtingas a60a106daf Implementing overlay into existing code. 2019-07-25 23:33:28 +02:00
Mr_Goldberg bb9c516775
Fix crash in crazy taxi. 2019-07-20 14:45:50 -04:00
Mr_Goldberg 55835de708
Untested version of GetInstalledDepots. 2019-07-20 14:45:37 -04:00
Nemirtingas d2fba40cb4 Small improvements
Its always better to reserve memory when we can for a vector. Also, STL implements a lot of algorithms, its better to use them in case someday you need to change it to something alike. Like reversing the copy, use transform instead, etc...
2019-07-18 22:21:55 +02:00
Mr_Goldberg 514f2ddbd9
Some small cleanups. 2019-07-17 15:55:12 -04:00
Mr_Goldberg 2a659043d3
Fix build. 2019-07-17 13:54:23 -04:00
Mr_Goldberg 59a9fcee0d
Some cleanups.
Load items json only if there's an inventory request.

Launch callbacks only when loading is done.

Copy over original unformatted json.hpp
2019-07-17 13:25:35 -04:00
Mr_Goldberg f56503fcd0
Merge branch 'issue_#5' of https://gitlab.com/Nemirtingas/goldberg_emulator into inventory_pr 2019-07-17 13:22:35 -04:00
Nemirtingas fb31aef9b2 Set items to static
Set items to static and call the json load only once.
2019-07-17 17:28:39 +02:00
Mr_Goldberg 66932785c3
Beggining of a actually working steam networking sockets implementation. 2019-07-15 20:00:52 -04:00
Mr_Goldberg e252f83e8a
Make auth stuff behave more like real steam. 2019-07-15 10:07:34 -04:00
Nemirtingas 7853451b01 Added buffer size check while populating it. 2019-07-14 22:47:33 +02:00
Mr_Goldberg 0677b8e2ff
Tweak some delays to get the game ignite working. 2019-07-14 16:25:16 -04:00
Nemirtingas 0b134e98a9 Added debug message 2019-07-14 22:24:56 +02:00
Nemirtingas 98c556d6dc atomic_bool is not copy_constructible 2019-07-14 21:01:42 +02:00
Nemirtingas 3273b1482b steam_items.json renamed
steam_items.json has been renamed to items.json and now lives in steam_settings beside the steam_api.dll
2019-07-14 20:53:20 +02:00
Nemirtingas 332c0479bb Moved json.hpp to its own folder. 2019-07-14 20:51:47 +02:00
Nemirtingas 573a01212b Switch to atomic_bool for thread synchronisation. 2019-07-14 20:51:23 +02:00
Nemirtingas 5c66c21f53 Modified Inventory to match steam's implementation 2019-07-14 19:22:30 +02:00
Nemirtingas 06f88d4687 Added the missing use cases
If pchPropertyName == NULL and/or pchValueBuffer == NULL
2019-07-12 22:26:45 +02:00
Mr_Goldberg f3e968b54c
SteamInternal_CreateInterface should return NULL if not called with "SteamClient" 2019-07-12 15:54:26 -04:00
Nemirtingas 0a9b950d2e Merge branch 'master' into issue_#5 2019-07-12 21:04:11 +02:00
Mr_Goldberg 6dd7f517e6
Fix last pull request. 2019-07-12 11:26:07 -04:00
Mr_Goldberg ba1591d8e7
Merge branch 'Nemirtingas/goldberg_emulator-issue_#14' 2019-07-12 11:25:22 -04:00
Mr_Goldberg aa9e3c0c46
Small improvements to last commit. 2019-07-10 08:03:40 -04:00
Nemirtingas 19659da6c2 Fixed crash on load.
Fixed dll crash on load by adding a check if the Json file exists or not.
2019-07-09 15:07:10 +02:00
Nemirtingas 5f67d359b3 Fixed typo because of merging 2019-06-25 15:53:00 +02:00
Nemirtingas bbf6a3b6ff Added partial inventory support.
For now, I load items and add them to the inventory and to the market.
2019-06-25 15:10:33 +02:00
Nemirtingas 5265382d9d Added Json item loader
Added Json item loader
2019-06-25 15:04:09 +02:00
Nemirtingas 38f05f2fc7 Added function definition to load item database.
Added function definition to load item database.
2019-06-25 15:03:23 +02:00
Nemirtingas 2039b04887 Added C++ Json support.
Added C++ Json template library.
Source: https://github.com/nlohmann/json
2019-06-25 14:59:40 +02:00
Nemirtingas 72d7d15adc Added the line to push dir name on linux 2019-06-19 18:43:14 +02:00
Nemirtingas a1d336bf56 Pass dir_name by reference
Passing dir_name by reference will save a copy constructor.
2019-06-19 18:39:14 +02:00
Nemirtingas 717808e796 Updated for the linux case. 2019-06-18 10:55:17 +02:00
Nemirtingas b034ee8781 Changed param source in strncpy
In strncpy its the destination size that should be in the 3rd parameter.
2019-06-18 00:25:56 +02:00
Nemirtingas e54072918f Added check on directory in Local_Storage::file_exists
Added check on directory in Local_Storage::file_exists.
Added check in get_filenames_recursive if last char is the path separator (some use cases were adding a path separator even if there were already one).

In base.h, added check on s and r, that will avoid an out-of-range vector exception on Visual Studio, same for network.cpp.
2019-06-17 23:08:23 +02:00
Nemirtingas b093ca90d3 Fix issue #14
This commit fixes game crash in ETS2.
The parameter order is wrong, 1st param is what to replace and 2nd param is with what to replace.
2019-06-16 15:14:21 +02:00
Nemirtingas 6d22c4989e Modified Sanitize
Modified Sanitize to allow all ANSI printable chars.
2019-06-16 12:10:51 +02:00
Nemirtingas 32b8a8b169 Update local_storage.cpp, replace_with string parameters should be const. (Fix build error on VisualStudio) 2019-06-08 08:45:09 +00:00
Mr_Goldberg 794469c4cf
Create lobby even if the run callbacks function is never run. 2019-06-01 13:11:27 -04:00
Mr_Goldberg c4e0c855df
Experimental build: Load luma ceg plugin dll if present. 2019-05-30 12:59:53 -04:00
Mr_Goldberg 1f79ca9231
Basic IsUserInSource implementation for the main lobby. 2019-05-30 07:58:03 -04:00
Mr_Goldberg 51a5e3bc27
Some steam networking accuracy improvements. 2019-05-30 07:56:00 -04:00
Mr_Goldberg 968cd6d601
Only call server request callback if not NULL. 2019-05-26 13:46:43 -04:00
Mr_Goldberg 9a9c3e1a4b
Fix remote folder so that directory structure is exactly like in real steam. 2019-05-23 09:35:12 -04:00
Mr_Goldberg 68b8e0241a
Add support for isteamgameserver 005-011 2019-05-20 12:35:55 -04:00
Mr_Goldberg 1717323cd7
Add delay to p2p session request callback to fix aoe2hd. 2019-05-17 14:15:12 -04:00
Mr_Goldberg 8daa896c86
Cleanup. 2019-05-17 14:13:48 -04:00
Mr_Goldberg cf05e58266
Add program to generate steam_interfaces.txt 2019-05-15 08:24:39 -04:00
Mr_Goldberg c20944ca0a
More accurate behavior. 2019-05-11 14:44:06 -04:00
Mr_Goldberg a36f6e8e68
Add support for setting app/DLC paths. 2019-05-09 08:10:03 -04:00
Mr_Goldberg fae4df7012
Fix custom broadcasts not resolving on windows. 2019-05-08 16:31:23 -04:00
Mr_Goldberg 147fc50be1
custom broadcasts file can now contain domains.
custom broadcasts can now be put in the steam_settings folder.
2019-05-08 15:43:25 -04:00
Mr_Goldberg 106d4025bb
Make the inventory result callback respect the result timeout. 2019-05-03 21:54:32 -04:00
Mr_Goldberg 2ba58d9f78
Fix build. 2019-05-03 09:09:06 -04:00
Mr_Goldberg 701eba17e8
Custom broadcasts file is more appropriate in:
Goldberg SteamEmu Saves/settings/custom_broadcasts.txt

Use C++ vector instead of C arrays.
2019-05-03 08:50:10 -04:00
Mr_Goldberg 9cdf99c63a
Merge branch 'Arkhist/goldberg_emulator-custom_broadcasts' into HEAD 2019-05-03 07:02:48 -04:00
Arkhist b9e2b5fa40 Added custom broadcasts file 2019-04-22 14:09:21 +02:00
Mr_Goldberg e3ddc8d89f
Very basic steam game coordinator emulation. 2019-04-21 16:48:32 -04:00
Mr_Goldberg 08a96883e7
Fix bug. 2019-04-21 16:47:54 -04:00
Mr_Goldberg 5af7508e2f
Add steam offline mode and change steam_appid.txt priority. 2019-04-21 16:47:45 -04:00
Mr_Goldberg 5cf841c603
Made some friends function behavior more accurate. 2019-04-16 17:59:03 -04:00
Mr_Goldberg fb7c8ea35b
Make lobby_connect work on Linux.
Fix a bug with it not finding rich presence.

Code is all open source now so no need to ship the lobby connect source in the release.
2019-04-16 17:58:08 -04:00
soft as HELL 52cad2114d
Simplify default path creation 2019-04-16 07:46:40 +03:00
soft as HELL 1c19f418c6
Respect XDG_DATA_HOME 2019-04-15 19:25:54 +03:00
Mr_Goldberg b7b5f78e7f
Load all interface versions that matter from steam_interfaces.txt 2019-04-14 08:40:09 -04:00
Mr_Goldberg 06b0d1c67f
Fix build issue on latest vs build tools. 2019-04-13 12:29:32 -04:00
Mr_Goldberg d968c3e1b5
Initial commit. 2019-04-13 12:21:56 -04:00