Commit Graph

335 Commits (master)

Author SHA1 Message Date
Nemirtingas 22b52df279 Fix the disabled functions prototype 5 years ago
Nemirtingas 8c45ab2003 Rework inventory loading
More generic json loading allows to load a json from a specified folder rather than the "inventory" directory.
Also changed achievements location to <appid> root diectory
5 years ago
Nemirtingas f15b2b0458 Steam returns true even if the achievement is already set 5 years ago
Nemirtingas c60a763f68 Don't overwrite achievement date
Don't overwrite achievement date when setting the achievement and it was already set.
5 years ago
Nemirtingas 7ce278fc47 Merge branch 'master' into achievements_support 5 years ago
Mr_Goldberg 0a29ed5a9a
Implement a few functions in steam networking utils. 5 years ago
Nemirtingas 8d22fb72ae Merge branch 'master' into 'achievements_support'
# Conflicts:
#   dll/steam_remote_storage.h
5 years ago
Mr_Goldberg 736d1a9090
Make isteamutils call result functions respect callback delays. 5 years ago
Mr_Goldberg 1427a4bcef
More accurate steam remote storage behavior. 5 years ago
Mr_Goldberg bd921b0939
Add a way to disable all the networking functionality in the emulator. 5 years ago
soft as HELL 787cac47db Add delay to FileWriteAsync callback 5 years ago
soft as HELL 9508326732 Add validation to writes 5 years ago
Nemirtingas 846ed27397 Add a default inventory support
Put a file in <steam_api.dll directory>/steam_settings/default_items.json with all default items you want (same syntax as the inventory file)
5 years ago
Mr_Goldberg 75dd582dec
Fix crash when one of the lobby keys which was supposed to be an int was not an int. 5 years ago
Mr_Goldberg 5ed9a7aa77
Fix dumb bug. 5 years ago
Nemirtingas 5ad434e190 Merge branch 'master' into overlay_h 5 years ago
Nemirtingas 1545e375a2 Fix wrong broadcast addr on windows 5 years ago
Mr_Goldberg b77b4e2ef5
Fix older ActionOrigins functions. 5 years ago
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
5 years ago
Mr_Goldberg ee4722cb33
Activate the action set if there is only one present. 5 years ago
Mr_Goldberg 03a1627d07
SteamInput GetDigitalActionOrigins and GetAnalogActionOrigins implemented. 5 years ago
Mr_Goldberg 09704ae243
Fixed issue where GetAnalogActionData magnitude of joystick was always maximum. 5 years ago
Mr_Goldberg 663728edca
Allow action names to be used in more than one action set at the same time. 5 years ago
Mr_Goldberg 8b9e0e25ca
Forgot this in last commit. 5 years ago
Mr_Goldberg 2af93427fe
Initial Xinput ISteamInput/ISteamController support. 5 years ago
Mr_Goldberg 4db580d945
Add missing older steam api SteamUnifiedMessages() function. 5 years ago
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.
5 years ago
Nemirtingas 86b178f55b Fixed definition update not being called
Should update definition when inventory is requested and definition is not loaded
5 years ago
Nemirtingas dd13377be7 Added linux arch define 5 years ago
Nemirtingas 495bc957cd Added some os detection
Need to detect linux x86 or x64
5 years ago
Nemirtingas d9b9b990f3 Update settings_parser.cpp 5 years ago
Nemirtingas 7a59f48000 Merge branch 'master' into achievements_support 5 years ago
Nemirtingas 2365b50c38 Merge branch 'master' into overlay_h 5 years ago
Mr_Goldberg bca4bd6dc1
Added a way to configure stats and moved parser logic to other file. 5 years ago
Nemirtingas f1118030e8 Added the forgotten size update if copied less chars. 5 years ago
Nemirtingas abb26d402f Fix 5 years ago
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.
5 years ago
Nemirtingas ea4588f442 (WIP) achievements support
build is also WIP
5 years ago
Nemirtingas 7daf605511 Merge branch 'master' into overlay_h 5 years ago
Mr_Goldberg ced9b77afc
Tweaked auth delays. 5 years ago
Mr_Goldberg 06b4332187
Add some commented out code to disable https in winhttp. 5 years ago
Mr_Goldberg 0e17aeef76
Basic steamclient.dll emulation.
Build with STEAMCLIENT_DLL defined to build in steamclient.dll mode.
5 years ago
Mr_Goldberg e044205e71
Make encrypted ticket size more realistic. 5 years ago
Nemirtingas 8abd24ca54 Re-enabled auto join if overlay is not ready 5 years ago
Nemirtingas cb67853e45 Fixed build for 64bits 5 years ago
Nemirtingas 6224350142 Fixed compilation for windows 5 years ago
Nemirtingas f9ee123a05 Merge branch 'master' into overlay_h 5 years ago
Mr_Goldberg 1d19d49419
Increase return value of GetAppBuildId. 5 years ago
Nemirtingas 03d02b497b Merge branch 'master' into overlay_h 5 years ago
Mr_Goldberg 07af5737b4
Merge branch 'DLC-comments' of gitlab.com:Lyberta/goldberg_emulator 5 years ago
Nemirtingas 2930f12420 Merge branch 'master' into overlay_h 5 years ago
Mr_Goldberg 35860efa3a
Only set g_pSteamClientGameServer in steam gameserver init functions. 5 years ago
Lyberta b41517cd91 Added hash comments to DLC.txt 5 years ago
Nemirtingas f30b0c9fb2 Merge branch 'master' into overlay_h 5 years ago
Mr_Goldberg 35c59044fd
SteamGameServerClient should return NULL if the gameserver is not initialized. 5 years ago
Mr_Goldberg bf4847452e
SteamAPI_Shutdown actually does something now. 5 years ago
Mr_Goldberg f4ab249f36
Add a way to configure which leaderboards are seen by the game. 5 years ago
Nemirtingas 4f9e67d700 Support for chat message (WIP) 5 years ago
Nemirtingas 2a373bbf79 Now I set the invite instead of adding it.
You should send a lobby invite or a rich invite, but not both.
5 years ago
Nemirtingas 8fe7c2267a User must now accept invite 5 years ago
Nemirtingas 156bee1564 Invitation & Chat support (WIP) 5 years ago
Nemirtingas a1037e3bf2 size() returns a size_t. 5 years ago
Nemirtingas 884f147e1b Merge branch 'master' into overlay_h 5 years ago
Nemirtingas e6826d8ead Basic & Ugly implementation of overlay.
Overlay still WIP, don't look too much into the code.
I will do it better soon.
5 years ago
Mr_Goldberg 7939796680
Fix build. 5 years ago
Mr_Goldberg 26c5b7949f
Implemented some ugc remote storage functions related to fileshare. 5 years ago
Mr_Goldberg 8723dad025
Update to sdk 1.46 5 years ago
Nemirtingas a60a106daf Implementing overlay into existing code. 5 years ago
Mr_Goldberg bb9c516775
Fix crash in crazy taxi. 5 years ago
Mr_Goldberg 55835de708
Untested version of GetInstalledDepots. 5 years ago
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...
5 years ago
Mr_Goldberg 514f2ddbd9
Some small cleanups. 5 years ago
Mr_Goldberg 2a659043d3
Fix build. 5 years ago
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
5 years ago
Mr_Goldberg f56503fcd0
Merge branch 'issue_#5' of https://gitlab.com/Nemirtingas/goldberg_emulator into inventory_pr 5 years ago
Nemirtingas fb31aef9b2 Set items to static
Set items to static and call the json load only once.
5 years ago
Mr_Goldberg 66932785c3
Beggining of a actually working steam networking sockets implementation. 5 years ago
Mr_Goldberg e252f83e8a
Make auth stuff behave more like real steam. 5 years ago
Nemirtingas 7853451b01 Added buffer size check while populating it. 5 years ago
Mr_Goldberg 0677b8e2ff
Tweak some delays to get the game ignite working. 5 years ago
Nemirtingas 0b134e98a9 Added debug message 5 years ago
Nemirtingas 98c556d6dc atomic_bool is not copy_constructible 5 years ago
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
5 years ago
Nemirtingas 332c0479bb Moved json.hpp to its own folder. 5 years ago
Nemirtingas 573a01212b Switch to atomic_bool for thread synchronisation. 5 years ago
Nemirtingas 5c66c21f53 Modified Inventory to match steam's implementation 5 years ago
Nemirtingas 06f88d4687 Added the missing use cases
If pchPropertyName == NULL and/or pchValueBuffer == NULL
5 years ago
Mr_Goldberg f3e968b54c
SteamInternal_CreateInterface should return NULL if not called with "SteamClient" 5 years ago
Nemirtingas 0a9b950d2e Merge branch 'master' into issue_#5 5 years ago
Mr_Goldberg 6dd7f517e6
Fix last pull request. 5 years ago
Mr_Goldberg ba1591d8e7
Merge branch 'Nemirtingas/goldberg_emulator-issue_#14' 5 years ago
Mr_Goldberg aa9e3c0c46
Small improvements to last commit. 5 years ago
Nemirtingas 19659da6c2 Fixed crash on load.
Fixed dll crash on load by adding a check if the Json file exists or not.
5 years ago
Nemirtingas 5f67d359b3 Fixed typo because of merging 5 years ago
Nemirtingas bbf6a3b6ff Added partial inventory support.
For now, I load items and add them to the inventory and to the market.
5 years ago
Nemirtingas 5265382d9d Added Json item loader
Added Json item loader
5 years ago
Nemirtingas 38f05f2fc7 Added function definition to load item database.
Added function definition to load item database.
5 years ago
Nemirtingas 2039b04887 Added C++ Json support.
Added C++ Json template library.
Source: https://github.com/nlohmann/json
5 years ago
Nemirtingas 72d7d15adc Added the line to push dir name on linux 5 years ago
Nemirtingas a1d336bf56 Pass dir_name by reference
Passing dir_name by reference will save a copy constructor.
5 years ago
Nemirtingas 717808e796 Updated for the linux case. 5 years ago
Nemirtingas b034ee8781 Changed param source in strncpy
In strncpy its the destination size that should be in the 3rd parameter.
5 years ago
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.
5 years ago
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.
5 years ago
Nemirtingas 6d22c4989e Modified Sanitize
Modified Sanitize to allow all ANSI printable chars.
5 years ago
Nemirtingas 32b8a8b169 Update local_storage.cpp, replace_with string parameters should be const. (Fix build error on VisualStudio) 5 years ago
Mr_Goldberg 794469c4cf
Create lobby even if the run callbacks function is never run. 5 years ago
Mr_Goldberg c4e0c855df
Experimental build: Load luma ceg plugin dll if present. 5 years ago
Mr_Goldberg 1f79ca9231
Basic IsUserInSource implementation for the main lobby. 5 years ago
Mr_Goldberg 51a5e3bc27
Some steam networking accuracy improvements. 5 years ago
Mr_Goldberg 968cd6d601
Only call server request callback if not NULL. 5 years ago
Mr_Goldberg 9a9c3e1a4b
Fix remote folder so that directory structure is exactly like in real steam. 5 years ago
Mr_Goldberg 68b8e0241a
Add support for isteamgameserver 005-011 5 years ago
Mr_Goldberg 1717323cd7
Add delay to p2p session request callback to fix aoe2hd. 5 years ago
Mr_Goldberg 8daa896c86
Cleanup. 5 years ago
Mr_Goldberg cf05e58266
Add program to generate steam_interfaces.txt 5 years ago
Mr_Goldberg c20944ca0a
More accurate behavior. 5 years ago
Mr_Goldberg a36f6e8e68
Add support for setting app/DLC paths. 5 years ago
Mr_Goldberg fae4df7012
Fix custom broadcasts not resolving on windows. 5 years ago
Mr_Goldberg 147fc50be1
custom broadcasts file can now contain domains.
custom broadcasts can now be put in the steam_settings folder.
5 years ago
Mr_Goldberg 106d4025bb
Make the inventory result callback respect the result timeout. 5 years ago
Mr_Goldberg 2ba58d9f78
Fix build. 5 years ago
Mr_Goldberg 701eba17e8
Custom broadcasts file is more appropriate in:
Goldberg SteamEmu Saves/settings/custom_broadcasts.txt

Use C++ vector instead of C arrays.
5 years ago
Mr_Goldberg 9cdf99c63a
Merge branch 'Arkhist/goldberg_emulator-custom_broadcasts' into HEAD 5 years ago
Arkhist b9e2b5fa40 Added custom broadcasts file 5 years ago
Mr_Goldberg e3ddc8d89f
Very basic steam game coordinator emulation. 5 years ago
Mr_Goldberg 08a96883e7
Fix bug. 5 years ago
Mr_Goldberg 5af7508e2f
Add steam offline mode and change steam_appid.txt priority. 5 years ago
Mr_Goldberg 5cf841c603
Made some friends function behavior more accurate. 5 years ago
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.
5 years ago
soft as HELL 52cad2114d
Simplify default path creation 5 years ago
soft as HELL 1c19f418c6
Respect XDG_DATA_HOME 5 years ago
Mr_Goldberg b7b5f78e7f
Load all interface versions that matter from steam_interfaces.txt 5 years ago
Mr_Goldberg 06b0d1c67f
Fix build issue on latest vs build tools. 5 years ago
Mr_Goldberg d968c3e1b5
Initial commit. 5 years ago