fix compatibility with upstream fork, re-enabling auto-merge functionality

also corrected Mr_Goldberg's name in some .md files
This commit is contained in:
alex47exe 2024-08-03 23:21:56 +01:00
parent a37feca3e1
commit 32eaea9cdf
11 changed files with 256 additions and 134 deletions

View File

@ -6,7 +6,7 @@ This experimental build of the emulator:
* Can load extra dlls in memory via `LoadLibraryW()` * Can load extra dlls in memory via `LoadLibraryW()`
Mr.Goldberg's note: Mr_Goldberg's note:
> In this folder is an experimental build of the emulator with code that hooks a few windows socket functions. It should block all connections from the game to non-LAN IPs. This means the game should work without any problems for LAN play (even with VPN LAN as long as you use standard LAN IPs 10.x.x.x, 192.168.x.x, etc...) > In this folder is an experimental build of the emulator with code that hooks a few windows socket functions. It should block all connections from the game to non-LAN IPs. This means the game should work without any problems for LAN play (even with VPN LAN as long as you use standard LAN IPs 10.x.x.x, 192.168.x.x, etc...)
> It likely doesn't work for some games but it should work for most of them > It likely doesn't work for some games but it should work for most of them
@ -14,7 +14,7 @@ Mr.Goldberg's note:
> Since this blocks all non LAN connections doing things like hosting a cracked server for people on the internet will not work or connecting to a cracked server that's hosted on an internet IP will not work > Since this blocks all non LAN connections doing things like hosting a cracked server for people on the internet will not work or connecting to a cracked server that's hosted on an internet IP will not work
## Why ? ## Why ?
Mr.Goldberg's note: Mr_Goldberg's note:
> Lots of games seem to connect to analytics services and other crap > Lots of games seem to connect to analytics services and other crap
> Blocking the game from communicating with online IPs without affecting the LAN functionality of this emu is a pain if you try to use a firewall > Blocking the game from communicating with online IPs without affecting the LAN functionality of this emu is a pain if you try to use a firewall

View File

@ -2,8 +2,8 @@
This tool discovers people playing on the network using this emu and lets you launch your game with parameters that will connect you to their games. This tool discovers people playing on the network using this emu and lets you launch your game with parameters that will connect you to their games.
## Why ? ## Why ?
Mr.Goldberg's note: Mr_Goldberg's note:
> This is necessary for some games (like stonehearth). It will also let you join games with lobbies that are not public. > This is necessary for some games (like Stonehearth). It will also let you join games with lobbies that are not public.
> Steam has something called rich presence (the connect key) that lets games tell your friends what command line parameters to run your game with to join their game. > Steam has something called rich presence (the connect key) that lets games tell your friends what command line parameters to run your game with to join their game.

View File

@ -16,7 +16,7 @@ https://gitlab.com/Mr_Goldberg/goldberg_emulator
5. Copy the the example files `.\steam_settings.EXAMPLE\configs.xxx.EXAMPLE.ini` and paste them inside your own `steam_settings` folder, then remove `.EXAMPLE` from their name 5. Copy the the example files `.\steam_settings.EXAMPLE\configs.xxx.EXAMPLE.ini` and paste them inside your own `steam_settings` folder, then remove `.EXAMPLE` from their name
Mr.Goldberg's note: Mr_Goldberg's note:
> If the game has DRM (other than Steamworks) you need to remove it first > If the game has DRM (other than Steamworks) you need to remove it first
--- ---

View File

@ -4,15 +4,20 @@
[app::general] [app::general]
# by default the emu will report a 'non-beta' branch when the game calls 'Steam_Apps::GetCurrentBetaName()' # by default the emu will report a 'non-beta' branch when the game calls 'Steam_Apps::GetCurrentBetaName()'
# if 1, makes the game/app think we're playing on a beta branch # 1=make the game/app think we're playing on a beta branch
# default=0
is_beta_branch=0 is_beta_branch=0
# the name of the current branch - this must also exist in 'branches.json' # the name of the current branch, this must also exist in 'branches.json'
# otherwise it'll be ignored and the default 'public' branch will be used # otherwise will be ignored by the emu and the default 'public' branch will be used
# default=public
branch_name=public branch_name=public
[app::dlcs] [app::dlcs]
# report all DLCs as unlocked; some games check for 'hidden' DLCs, hence this should be set to 1 in that case # 1=report all DLCs as unlocked
# however, other games detect emus by querying for a fake/bad DLC, hence this should be set to 0 in that case # 0=report only the DLCs mentioned
# some games check for 'hidden' DLCs, hence this should be set to 1 in that case
# but other games detect emus by querying for a fake/bad DLC, hence this should be set to 0 in that case
# default=1
unlock_all=0 unlock_all=0
# format: ID=name # format: ID=name
# 1234=DLCNAME # 1234=DLCNAME

View File

@ -3,78 +3,118 @@
# ################################################################################ # # ################################################################################ #
[main::general] [main::general]
# generate new app auth ticket # 1=generate newer version of Auth ticket, used by some modern apps/games
# default=0
new_app_ticket=1 new_app_ticket=1
# generate/embed GC token inside new app ticket # 1=generate/embed Game Coordinator token inside the new Auth ticket
# default=0
gc_token=1 gc_token=1
# pretend the app is running on a steam deck # 1=pretend the app is running on a Steam Deck
# default=0
steam_deck=0 steam_deck=0
# enable avatar functionality # 1=enable avatar functionality
# default=0
enable_account_avatar=0 enable_account_avatar=0
# prevent Steam_User_Stats::FindLeaderboard() from always succeeding and creating the unknown leaderboard # 1=prevent 'Steam_User_Stats::FindLeaderboard()' from always succeeding and creating the unknown leaderboard
# default=0, not recommended to change it # not recommended to enable this
# default=0
disable_leaderboards_create_unknown=0 disable_leaderboards_create_unknown=0
# by default, the emu will only save/update stats defined in 'stats.txt', unknown stats requested or updated by the game will be rejected # the emu will only save/update stats defined by the user, unknown stats requested or updated by the game will be rejected
# set this to 1 to allow unknown stats # 1=allow unknown stats to be saved/updated
# default=0
allow_unknown_stats=0 allow_unknown_stats=0
# if 0, whenever a game updates a stat which is tied to an achievement progress, the emu will save that stat progress immediately # the emu has an internal extra functionality which reports an achievement progress when a stat that's tied to an achievement is updated
# some games will update the stat very frequently (with lower & higher values) resulting in a spam of disk writes or overlay notifications # also the progress is saved to disk (usual local storage folder for the current appid) so that external applications can watch these updates
# set this to 1 to save stat progress only on higher progress value, thus avoiding spam of disk writes or overlay notifications # 1=enable this functionality
# this has no impact on the stat itself, only the achievement progress of a stat tied to an achievement progress # only used internally for a stat that's tied to an achievement, the normal achievement progress requests made by the game are not impacted
# also, this has no impact on the functions which directly change stats, achievements, or achievements progress # some applications tie many stats to achievements, and update these stats very frequently, causing a spam of disk writes and overlay popups
# in that case you can disable this functionality (set the value to 0), but the stat progress won't be saved or displayed in the overlay
# default=1
stat_achievement_progress_functionality=1
# whenever a game updates a stat which is tied to an achievement progress, the emu will save that progress immediately
# but some games will update the stat very frequently (with lower & higher values) resulting in a spam of disk writes or overlay notifications
# 0=save any stat achievement progress value (higher or lower)
# 1=save stat achievement progress value only if it is higher than the current one
# this has no impact on the stat itself, only the achievement progress
# also has no impact on the functions which directly change stats, achievements, or achievements progress
# default=1
save_only_higher_stat_achievement_progress=1 save_only_higher_stat_achievement_progress=1
# synchronize user stats/achievements with game servers as soon as possible instead of caching them until the next call to `Steam_RunCallbacks()` # 1=synchronize user stats/achievements with game servers as soon as possible instead of caching them until the next call to 'Steam_RunCallbacks()'
# default=0, not recommended to change it # not recommended to enable this
# default=0
immediate_gameserver_stats=0 immediate_gameserver_stats=0
# use the proper type of the server list (internet, friends, etc...) when requested by the game # 1=use the proper type of the server list (internet, friends, etc...) when requested by the game
# otherwise, the emu will always return the type 'LAN server' # 0=always return the type of the server list as 'LAN server'
# default=0, not recommended to change it # not recommended to enable this
# default=0
matchmaking_server_list_actual_type=0 matchmaking_server_list_actual_type=0
# grab the server details for match making using an actual server query # 1=grab the server details for match making using an actual server query
# default=0, not recommended to change it # 0=use the info from the local network messages shared between client/server
# not recommended to enable this, currently breaks some games
# default=0
matchmaking_server_details_via_source_query=0 matchmaking_server_details_via_source_query=0
# very basic crash logger/printer # very basic crash logger/printer
# this is intended to debug some annoying scenarios, and best used with the debug build of the emu # this is intended to debug some annoying scenarios, and best used with the debug build of the emu
crash_printer_location=./EMU_CRASHES.txt # default=
crash_printer_location=./path/relative/to/dll/crashes.txt
[main::connectivity] [main::connectivity]
# prevent hooking OS networking APIs and allow any external requests # 1=prevent hooking OS networking APIs and allow any external requests
# only used by the experimental builds on Windows # only used by the experimental builds on **Windows**
disable_lan_only=1 # default=0
# disable all steam networking interface functionality - this won't prevent games/apps from making external requests disable_lan_only=0
# 1=disable all Steam networking interface functionality
# this won't prevent games/apps from making external requests
# networking related functionality like lobbies or those that launch a server in the background will not work # networking related functionality like lobbies or those that launch a server in the background will not work
# default=0
disable_networking=0 disable_networking=0
# change the UDP/TCP port the emulator listens on, you should probably not change this because everyone needs to use the same port or you won't find yourselves on the network # change the UDP/TCP port the emulator listens on, you should probably not change this because everyone needs to use the same port or you won't find yourselves on the network
# default=47584
listen_port=47584 listen_port=47584
# pretend steam is running in offline mode; some games that connect to online servers might only work if the steam emu behaves like steam is in offline mode # 1=pretend Steam is running in offline mode, mainly affects the function 'ISteamUser::BLoggedOn()'
# Some games that connect to online servers might only work if the Steam emu behaves like Steam is in offline mode
# default=0
offline=0 offline=0
# prevent sharing stats and achievements with any game server, also disables the interface ISteamGameServerStats # 1=prevent sharing stats and achievements with any game server, this also disables the interface 'ISteamGameServerStats'
# default=0
disable_sharing_stats_with_gameserver=0 disable_sharing_stats_with_gameserver=0
# do not send server details to the server browser, only works for game servers # 1=do not send server details to the server browser, only works for game servers
# default=0
disable_source_query=0 disable_source_query=0
# enable sharing leaderboards scores with people playing the same game on the same network # 1=enable sharing leaderboards scores with people playing the same game on the same network
# not ideal and synchronization isn't perfect
# default=0
share_leaderboards_over_network=0 share_leaderboards_over_network=0
# prevent lobby creation in steam matchmaking interface # 1=prevent lobby creation in the Steam matchmaking interface
# default=0
disable_lobby_creation=0 disable_lobby_creation=0
# attempt to download external HTTP(S) requests made via Steam_HTTP::SendHTTPRequest() inside "steam_settings/http/" # 1=attempt to download external HTTP(S) requests made via 'Steam_HTTP::SendHTTPRequest()' inside 'steam_settings/http/' folder
# make sure to: # make sure to:
# * set disable_lan_only=1 # * set disable_lan_only=1
# * set disable_networking=0 # * set disable_networking=0
# this will **not** work if the app is using native/OS web APIs # this will **not** work if the app is using native/OS web APIs
download_steamhttp_requests=1 # default=0
download_steamhttp_requests=0
############################################ ############################################
# mostly workarounds for specific problems # # mostly workarounds for specific problems #
############################################ ############################################
[main::misc] [main::misc]
# force SetAchievement() to always return true # 1=force 'ISteamUserStats::SetAchievement()' to always return true
# this is a workaround for some games that otherwise won't work
# default=0
achievements_bypass=0 achievements_bypass=0
# force the function Steam_HTTP::SendHTTPRequest() to always succeed # force the function 'Steam_HTTP::SendHTTPRequest()' to always succeed
# default=0
force_steamhttp_success=0 force_steamhttp_success=0
# env var SteamOverlayGameId breaks Steam Input when the game is added to Steam as a non-steam game # env var 'SteamOverlayGameId' breaks Steam Input when the game is added to Steam as a non-steam game
disable_steamoverlaygameid_env_var=1 # 1=don't write this env var, allowing Steam Input to work
# add many Steam apps to the list of owned DLCs and the emu's list of installed app IDs, useful for many Source-based games # default=0
disable_steamoverlaygameid_env_var=0
# 1=add many Steam apps to the list of owned DLCs and the emu's list of installed app IDs
# useful for many Source-based games
# https://developer.valvesoftware.com/wiki/Steam_Application_IDs # https://developer.valvesoftware.com/wiki/Steam_Application_IDs
# https://developer.valvesoftware.com/wiki/Dedicated_Servers_List # https://developer.valvesoftware.com/wiki/Dedicated_Servers_List
# default=0
enable_steam_preowned_ids=0 enable_steam_preowned_ids=0

View File

@ -6,34 +6,44 @@
# ################################################################################ # # ################################################################################ #
[overlay::general] [overlay::general]
# enable the experimental overlay, might cause crashes # 1=enable the experimental overlay, might cause crashes
enable_experimental_overlay=1 # default=0
enable_experimental_overlay=0
# amount of time to wait before attempting to detect and hook the renderer (DirectX, OpenGL, Vulkan, etc...) # amount of time to wait before attempting to detect and hook the renderer (DirectX, OpenGL, Vulkan, etc...)
# default=0 # default=0
hook_delay_sec=0 hook_delay_sec=0
# timeout for the renderer detector # timeout for the renderer detector
# default=15 # default=15
renderer_detector_timeout_sec=15 renderer_detector_timeout_sec=15
# disable the achievements notifications # 1=disable the achievements notifications
# default=0
disable_achievement_notification=0 disable_achievement_notification=0
# disable friends invitations and messages notifications # 1=disable friends invitations and messages notifications
# default=0
disable_friend_notification=0 disable_friend_notification=0
# disable showing notifications for achievements progress # 1=disable showing notifications for achievements progress
# default=0
disable_achievement_progress=0 disable_achievement_progress=0
# disable any warning in the overlay # 1=disable any warning in the overlay
# default=0
disable_warning_any=0 disable_warning_any=0
# disable the bad app ID warning in the overlay # 1=disable the bad app ID warning in the overlay
# default=0
disable_warning_bad_appid=0 disable_warning_bad_appid=0
# disable the local_save warning in the overlay # 1=disable the local_save warning in the overlay
# default=0
disable_warning_local_save=0 disable_warning_local_save=0
[overlay::appearance] [overlay::appearance]
# load custom TrueType font from an absolute or relative path # load custom TrueType font from a path, it could be absolute, or relative
# relative paths will be looked up inside the local folder 'steam_settings/fonts' first, # relative paths will be looked up inside the local folder 'steam_settings/fonts/' first,
# if not found, it will be looked up inside the global folder 'GSE Settings/settings/fonts' # if that wasn't found, it will be looked up inside the global folder 'GSE Saves/settings/fonts/'
#Font_Override=Roboto-Medium.ttf # default=
# global font size - for built-in font, multiple of 16 is recommended, e.g. 16, 32, etc Font_Override=Roboto-Medium.ttf
Font_Size=16.0 # global font size
# for built-in font, multiple of 16 is recommended, e.g. 16 32...
# default=16.0
Font_Size=20.0
# achievement icon size # achievement icon size
Icon_Size=64.0 Icon_Size=64.0
@ -50,26 +60,26 @@ Notification_A=1.0
# notifications corners roundness # notifications corners roundness
Notification_Rounding=10.0 Notification_Rounding=10.0
# horizontal (x) and vertical (y) margins for the notifications # horizontal (x) and vertical (y) margins for the notifications
Notification_Margin_x=5.0 Notification_Margin_x=5.0
Notification_Margin_y=5.0 Notification_Margin_y=5.0
# duration of notification animation in seconds - set to 0 to disable # duration/timing for various notification types (in seconds)
# duration of notification animation in seconds. Set to 0 to disable
Notification_Animation=0.35 Notification_Animation=0.35
# duration of achievement progress indication # duration of achievement progress indication
Notification_Duration_Progress=6.0 Notification_Duration_Progress=6.0
# duration of achievement unlocked # duration of achievement unlocked
Notification_Duration_Achievement=6.0 Notification_Duration_Achievement=7.0
# duration of friend invitation # duration of friend invitation
Notification_Duration_Invitation=8.0 Notification_Duration_Invitation=8.0
# duration of chat message # duration of chat message
Notification_Duration_Chat=4.0 Notification_Duration_Chat=4.0
# format for the achievement unlock date/time, limited to 79 characters # format for the achievement unlock date/time, limited to 79 characters
# if the output formatted string exceeded this limit, the built-in format will be used # if the output formatted string exceeded this limit, the builtin format will be used
# look for the format here: https://en.cppreference.com/w/cpp/chrono/c/strftime # look for the format here: https://en.cppreference.com/w/cpp/chrono/c/strftime
# default=%Y/%m/%d - %H:%M:%S
Achievement_Unlock_Datetime_Format=%Y/%m/%d - %H:%M:%S Achievement_Unlock_Datetime_Format=%Y/%m/%d - %H:%M:%S
# main background when you press shift+tab # main background when you press shift+tab

View File

@ -4,10 +4,14 @@
[user::general] [user::general]
# user account name # user account name
account_name=goldberg # default=gse orca
# Steam64 format account_name=gse orca
# your account ID in Steam64 format
# if the specified ID is invalid, the emu will ignore it and generate a proper one
# default=randomly generated by the emu only once and saved in the global settings
account_steamid=76561197960287930 account_steamid=76561197960287930
# the language reported to the app/game # the language reported to the app/game
# this must exist in 'supported_languages.txt', otherwise it will be ignored by the emu
# look for the column 'API language code' here: https://partner.steamgames.com/doc/store/localization/languages # look for the column 'API language code' here: https://partner.steamgames.com/doc/store/localization/languages
# default=english # default=english
language=english language=english
@ -18,10 +22,12 @@ ip_country=US
[user::saves] [user::saves]
# when this is set, it will force the emu to use the specified location instead of the default global location # when this is set, it will force the emu to use the specified location instead of the default global location
# path could be absolute, or relative to the location of the .dll/.so, leading and trailing whitespaces are trimmed # path could be absolute, or relative to the location of the .dll/.so
# leading and trailing whitespaces are trimmed
# when this option is used, the global settings folder is completely ignored, allowing a full portable behavior # when this option is used, the global settings folder is completely ignored, allowing a full portable behavior
#local_save_path=GSE Saves # default=
# name of the default global folder used to store save data, leading and trailing whitespaces are trimmed local_save_path=./path/relative/to/dll
# name of the base folder used to store save data, leading and trailing whitespaces are trimmed
# only useful if 'local_save_path' isn't used
# default=GSE Saves # default=GSE Saves
saves_folder_name=GSE Saves saves_folder_name=GSE Saves

View File

@ -4,15 +4,20 @@
[app::general] [app::general]
# by default the emu will report a 'non-beta' branch when the game calls 'Steam_Apps::GetCurrentBetaName()' # by default the emu will report a 'non-beta' branch when the game calls 'Steam_Apps::GetCurrentBetaName()'
# if 1, makes the game/app think we're playing on a beta branch # 1=make the game/app think we're playing on a beta branch
# default=0
is_beta_branch=0 is_beta_branch=0
# the name of the current branch - this must also exist in 'branches.json' # the name of the current branch, this must also exist in 'branches.json'
# otherwise it'll be ignored and the default 'public' branch will be used # otherwise will be ignored by the emu and the default 'public' branch will be used
# default=public
branch_name=public branch_name=public
[app::dlcs] [app::dlcs]
# report all DLCs as unlocked; some games check for 'hidden' DLCs, hence this should be set to 1 in that case # 1=report all DLCs as unlocked
# however, other games detect emus by querying for a fake/bad DLC, hence this should be set to 0 in that case # 0=report only the DLCs mentioned
# some games check for 'hidden' DLCs, hence this should be set to 1 in that case
# but other games detect emus by querying for a fake/bad DLC, hence this should be set to 0 in that case
# default=1
unlock_all=0 unlock_all=0
# format: ID=name # format: ID=name
# 1234=DLCNAME # 1234=DLCNAME

View File

@ -3,78 +3,118 @@
# ################################################################################ # # ################################################################################ #
[main::general] [main::general]
# generate new app auth ticket # 1=generate newer version of Auth ticket, used by some modern apps/games
# default=0
new_app_ticket=1 new_app_ticket=1
# generate/embed GC token inside new app ticket # 1=generate/embed Game Coordinator token inside the new Auth ticket
# default=0
gc_token=1 gc_token=1
# pretend the app is running on a steam deck # 1=pretend the app is running on a Steam Deck
# default=0
steam_deck=0 steam_deck=0
# enable avatar functionality # 1=enable avatar functionality
# default=0
enable_account_avatar=0 enable_account_avatar=0
# prevent Steam_User_Stats::FindLeaderboard() from always succeeding and creating the unknown leaderboard # 1=prevent 'Steam_User_Stats::FindLeaderboard()' from always succeeding and creating the unknown leaderboard
# default=0, not recommended to change it # not recommended to enable this
# default=0
disable_leaderboards_create_unknown=0 disable_leaderboards_create_unknown=0
# by default, the emu will only save/update stats defined in 'stats.txt', unknown stats requested or updated by the game will be rejected # the emu will only save/update stats defined by the user, unknown stats requested or updated by the game will be rejected
# set this to 1 to allow unknown stats # 1=allow unknown stats to be saved/updated
# default=0
allow_unknown_stats=0 allow_unknown_stats=0
# if 0, whenever a game updates a stat which is tied to an achievement progress, the emu will save that stat progress immediately # the emu has an internal extra functionality which reports an achievement progress when a stat that's tied to an achievement is updated
# some games will update the stat very frequently (with lower & higher values) resulting in a spam of disk writes or overlay notifications # also the progress is saved to disk (usual local storage folder for the current appid) so that external applications can watch these updates
# set this to 1 to save stat progress only on higher progress value, thus avoiding spam of disk writes or overlay notifications # 1=enable this functionality
# this has no impact on the stat itself, only the achievement progress of a stat tied to an achievement progress # only used internally for a stat that's tied to an achievement, the normal achievement progress requests made by the game are not impacted
# also, this has no impact on the functions which directly change stats, achievements, or achievements progress # some applications tie many stats to achievements, and update these stats very frequently, causing a spam of disk writes and overlay popups
# in that case you can disable this functionality (set the value to 0), but the stat progress won't be saved or displayed in the overlay
# default=1
stat_achievement_progress_functionality=1
# whenever a game updates a stat which is tied to an achievement progress, the emu will save that progress immediately
# but some games will update the stat very frequently (with lower & higher values) resulting in a spam of disk writes or overlay notifications
# 0=save any stat achievement progress value (higher or lower)
# 1=save stat achievement progress value only if it is higher than the current one
# this has no impact on the stat itself, only the achievement progress
# also has no impact on the functions which directly change stats, achievements, or achievements progress
# default=1
save_only_higher_stat_achievement_progress=1 save_only_higher_stat_achievement_progress=1
# synchronize user stats/achievements with game servers as soon as possible instead of caching them until the next call to `Steam_RunCallbacks()` # 1=synchronize user stats/achievements with game servers as soon as possible instead of caching them until the next call to 'Steam_RunCallbacks()'
# default=0, not recommended to change it # not recommended to enable this
# default=0
immediate_gameserver_stats=0 immediate_gameserver_stats=0
# use the proper type of the server list (internet, friends, etc...) when requested by the game # 1=use the proper type of the server list (internet, friends, etc...) when requested by the game
# otherwise, the emu will always return the type 'LAN server' # 0=always return the type of the server list as 'LAN server'
# default=0, not recommended to change it # not recommended to enable this
# default=0
matchmaking_server_list_actual_type=0 matchmaking_server_list_actual_type=0
# grab the server details for match making using an actual server query # 1=grab the server details for match making using an actual server query
# default=0, not recommended to change it # 0=use the info from the local network messages shared between client/server
# not recommended to enable this, currently breaks some games
# default=0
matchmaking_server_details_via_source_query=0 matchmaking_server_details_via_source_query=0
# very basic crash logger/printer # very basic crash logger/printer
# this is intended to debug some annoying scenarios, and best used with the debug build of the emu # this is intended to debug some annoying scenarios, and best used with the debug build of the emu
# default=
crash_printer_location=./EMU_CRASHES.txt crash_printer_location=./EMU_CRASHES.txt
[main::connectivity] [main::connectivity]
# prevent hooking OS networking APIs and allow any external requests # 1=prevent hooking OS networking APIs and allow any external requests
# only used by the experimental builds on Windows # only used by the experimental builds on **Windows**
# default=0
disable_lan_only=1 disable_lan_only=1
# disable all steam networking interface functionality - this won't prevent games/apps from making external requests # 1=disable all Steam networking interface functionality
# this won't prevent games/apps from making external requests
# networking related functionality like lobbies or those that launch a server in the background will not work # networking related functionality like lobbies or those that launch a server in the background will not work
# default=0
disable_networking=0 disable_networking=0
# change the UDP/TCP port the emulator listens on, you should probably not change this because everyone needs to use the same port or you won't find yourselves on the network # change the UDP/TCP port the emulator listens on, you should probably not change this because everyone needs to use the same port or you won't find yourselves on the network
# default=47584
listen_port=47584 listen_port=47584
# pretend steam is running in offline mode; some games that connect to online servers might only work if the steam emu behaves like steam is in offline mode # 1=pretend Steam is running in offline mode, mainly affects the function 'ISteamUser::BLoggedOn()'
# Some games that connect to online servers might only work if the Steam emu behaves like Steam is in offline mode
# default=0
offline=0 offline=0
# prevent sharing stats and achievements with any game server, also disables the interface ISteamGameServerStats # 1=prevent sharing stats and achievements with any game server, this also disables the interface 'ISteamGameServerStats'
# default=0
disable_sharing_stats_with_gameserver=0 disable_sharing_stats_with_gameserver=0
# do not send server details to the server browser, only works for game servers # 1=do not send server details to the server browser, only works for game servers
# default=0
disable_source_query=0 disable_source_query=0
# enable sharing leaderboards scores with people playing the same game on the same network # 1=enable sharing leaderboards scores with people playing the same game on the same network
# not ideal and synchronization isn't perfect
# default=0
share_leaderboards_over_network=0 share_leaderboards_over_network=0
# prevent lobby creation in steam matchmaking interface # 1=prevent lobby creation in the Steam matchmaking interface
# default=0
disable_lobby_creation=0 disable_lobby_creation=0
# attempt to download external HTTP(S) requests made via Steam_HTTP::SendHTTPRequest() inside "steam_settings/http/" # 1=attempt to download external HTTP(S) requests made via 'Steam_HTTP::SendHTTPRequest()' inside 'steam_settings/http/' folder
# make sure to: # make sure to:
# * set disable_lan_only=1 # * set disable_lan_only=1
# * set disable_networking=0 # * set disable_networking=0
# this will **not** work if the app is using native/OS web APIs # this will **not** work if the app is using native/OS web APIs
download_steamhttp_requests=1 # default=0
download_steamhttp_requests=0
############################################ ############################################
# mostly workarounds for specific problems # # mostly workarounds for specific problems #
############################################ ############################################
[main::misc] [main::misc]
# force SetAchievement() to always return true # 1=force 'ISteamUserStats::SetAchievement()' to always return true
# this is a workaround for some games that otherwise won't work
# default=0
achievements_bypass=0 achievements_bypass=0
# force the function Steam_HTTP::SendHTTPRequest() to always succeed # force the function 'Steam_HTTP::SendHTTPRequest()' to always succeed
# default=0
force_steamhttp_success=0 force_steamhttp_success=0
# env var SteamOverlayGameId breaks Steam Input when the game is added to Steam as a non-steam game # env var 'SteamOverlayGameId' breaks Steam Input when the game is added to Steam as a non-steam game
# 1=don't write this env var, allowing Steam Input to work
# default=1
disable_steamoverlaygameid_env_var=1 disable_steamoverlaygameid_env_var=1
# add many Steam apps to the list of owned DLCs and the emu's list of installed app IDs, useful for many Source-based games # 1=add many Steam apps to the list of owned DLCs and the emu's list of installed app IDs
# useful for many Source-based games
# https://developer.valvesoftware.com/wiki/Steam_Application_IDs # https://developer.valvesoftware.com/wiki/Steam_Application_IDs
# https://developer.valvesoftware.com/wiki/Dedicated_Servers_List # https://developer.valvesoftware.com/wiki/Dedicated_Servers_List
# default=0
enable_steam_preowned_ids=0 enable_steam_preowned_ids=0

View File

@ -6,7 +6,8 @@
# ################################################################################ # # ################################################################################ #
[overlay::general] [overlay::general]
# enable the experimental overlay, might cause crashes # 1=enable the experimental overlay, might cause crashes
# default=1
enable_experimental_overlay=1 enable_experimental_overlay=1
# amount of time to wait before attempting to detect and hook the renderer (DirectX, OpenGL, Vulkan, etc...) # amount of time to wait before attempting to detect and hook the renderer (DirectX, OpenGL, Vulkan, etc...)
# default=0 # default=0
@ -14,25 +15,34 @@ hook_delay_sec=0
# timeout for the renderer detector # timeout for the renderer detector
# default=15 # default=15
renderer_detector_timeout_sec=15 renderer_detector_timeout_sec=15
# disable the achievements notifications # 1=disable the achievements notifications
# default=0
disable_achievement_notification=0 disable_achievement_notification=0
# disable friends invitations and messages notifications # 1=disable friends invitations and messages notifications
# default=0
disable_friend_notification=0 disable_friend_notification=0
# disable showing notifications for achievements progress # 1=disable showing notifications for achievements progress
# default=0
disable_achievement_progress=0 disable_achievement_progress=0
# disable any warning in the overlay # 1=disable any warning in the overlay
# default=0
disable_warning_any=0 disable_warning_any=0
# disable the bad app ID warning in the overlay # 1=disable the bad app ID warning in the overlay
# default=0
disable_warning_bad_appid=0 disable_warning_bad_appid=0
# disable the local_save warning in the overlay # 1=disable the local_save warning in the overlay
# default=0
disable_warning_local_save=0 disable_warning_local_save=0
[overlay::appearance] [overlay::appearance]
# load custom TrueType font from an absolute or relative path # load custom TrueType font from a path, it could be absolute, or relative
# relative paths will be looked up inside the local folder 'steam_settings/fonts' first, # relative paths will be looked up inside the local folder 'steam_settings/fonts/' first,
# if not found, it will be looked up inside the global folder 'GSE Settings/settings/fonts' # if that wasn't found, it will be looked up inside the global folder 'GSE Saves/settings/fonts/'
#Font_Override=Roboto-Medium.ttf # default=
# global font size - for built-in font, multiple of 16 is recommended, e.g. 16, 32, etc Font_Override=
# global font size
# for built-in font, multiple of 16 is recommended, e.g. 16 32...
# default=16.0
Font_Size=16.0 Font_Size=16.0
# achievement icon size # achievement icon size
@ -50,26 +60,26 @@ Notification_A=1.0
# notifications corners roundness # notifications corners roundness
Notification_Rounding=10.0 Notification_Rounding=10.0
# horizontal (x) and vertical (y) margins for the notifications # horizontal (x) and vertical (y) margins for the notifications
Notification_Margin_x=5.0 Notification_Margin_x=5.0
Notification_Margin_y=5.0 Notification_Margin_y=5.0
# duration of notification animation in seconds - set to 0 to disable # duration/timing for various notification types (in seconds)
# duration of notification animation in seconds. Set to 0 to disable
Notification_Animation=0.35 Notification_Animation=0.35
# duration of achievement progress indication # duration of achievement progress indication
Notification_Duration_Progress=6.0 Notification_Duration_Progress=6.0
# duration of achievement unlocked # duration of achievement unlocked
Notification_Duration_Achievement=6.0 Notification_Duration_Achievement=7.0
# duration of friend invitation # duration of friend invitation
Notification_Duration_Invitation=8.0 Notification_Duration_Invitation=8.0
# duration of chat message # duration of chat message
Notification_Duration_Chat=4.0 Notification_Duration_Chat=4.0
# format for the achievement unlock date/time, limited to 79 characters # format for the achievement unlock date/time, limited to 79 characters
# if the output formatted string exceeded this limit, the built-in format will be used # if the output formatted string exceeded this limit, the builtin format will be used
# look for the format here: https://en.cppreference.com/w/cpp/chrono/c/strftime # look for the format here: https://en.cppreference.com/w/cpp/chrono/c/strftime
# default=%Y/%m/%d - %H:%M:%S
Achievement_Unlock_Datetime_Format=%Y/%m/%d - %H:%M:%S Achievement_Unlock_Datetime_Format=%Y/%m/%d - %H:%M:%S
# main background when you press shift+tab # main background when you press shift+tab
@ -109,4 +119,3 @@ PosInvitation=top_right
# position of chat messages # position of chat messages
PosChatMsg=top_center PosChatMsg=top_center
# ############################# # # ############################# #

View File

@ -4,10 +4,14 @@
[user::general] [user::general]
# user account name # user account name
account_name=goldberg # default=gse_user
# Steam64 format account_name=gse_user
# your account ID in Steam64 format
# if the specified ID is invalid, the emu will ignore it and generate a proper one
# default=randomly generated by the emu only once and saved in the global settings
account_steamid=76561197960287930 account_steamid=76561197960287930
# the language reported to the app/game # the language reported to the app/game
# this must exist in 'supported_languages.txt', otherwise it will be ignored by the emu
# look for the column 'API language code' here: https://partner.steamgames.com/doc/store/localization/languages # look for the column 'API language code' here: https://partner.steamgames.com/doc/store/localization/languages
# default=english # default=english
language=english language=english
@ -18,9 +22,12 @@ ip_country=US
[user::saves] [user::saves]
# when this is set, it will force the emu to use the specified location instead of the default global location # when this is set, it will force the emu to use the specified location instead of the default global location
# path could be absolute, or relative to the location of the .dll/.so, leading and trailing whitespaces are trimmed # path could be absolute, or relative to the location of the .dll/.so
# leading and trailing whitespaces are trimmed
# when this option is used, the global settings folder is completely ignored, allowing a full portable behavior # when this option is used, the global settings folder is completely ignored, allowing a full portable behavior
#local_save_path=GSE Saves # default=
# name of the default global folder used to store save data, leading and trailing whitespaces are trimmed local_save_path=
# name of the base folder used to store save data, leading and trailing whitespaces are trimmed
# only useful if 'local_save_path' isn't used
# default=GSE Saves # default=GSE Saves
saves_folder_name=GSE Saves saves_folder_name=GSE Saves