This requires programming to create a blueprint node that can do so.
This documentation talks about the Game Overlay.
https://partner.steamgames.com/documentation/game_overlay
You don’t need any callbacks or call results from steam to trigger them, so if you follow this guide, you should get an idea on how to create a blueprint node to bring the steam overlay, and to set the steam web browser to a specific url.
Look at First Step with Steam.
I’d do some changes to prevent crashes.
From
if (SteamAPI_Init())
{
const char* name = SteamFriends()->GetPersonaName();
GEngine->AddOnScreenDebugMessage(-1, 5, FColor::Red, name);
}
to
if (SteamFriends() != nullptr) //Check that the Steam Pointers are initialized previously
{
FString SteamName = SteamFriends()->GetPersonaName();
UE_LOG(LogSteamworks, Log, TEXT("Steam Name of User: %s"), *SteamName);
}
I read somewhere that SteamAPI_Init() will try to recreate steam when you read it, so just checking the steam pointers are populateed should be enough. I think.
UE_LOG doesnt depend on the editor and is much better to print logs of what you are doing.
From the Steam API, what you are looking for is this
SteamFriends()->ActivateGameOverlay("Community"); //const char *pchDialog //Check the Steam Api for more Options.
Or
SteamFriends()->ActivateGameOverlayToWebPage("https://www.unrealengine.com"); //const char *pchURL
How to create a blueprint Library.
If you want to pause the game when the steam overlay comes up, it’s more complicated, and involves more programming, but luckily for you, I struggled with that for a month and a half, and after I won, I wrote a throrough guide on how to achieve this.
Hope this helps.