This might be cased by the EOS overlay have not been updated to the latest version.
Overlay codes are managed by Epic Games Launcher, so you should update it to the latest from “Settings”, and try it again.
Just wanted to add, that I’m getting the exact same error when I try to reopen the project.
It does compile, but launching the packaged build also results in an error: "Assertion failed: IsValid() [File:Runtime\Core\Public\Templates/SharedPointer.h] [Line: 890]
Updating EOS in the Epic Games Launcher Settings didn’t help and I also tried with a fresh install both for the launcher and engine on another system (both windows 10) and got the same issue.
Able to reproduce the issue and found that the CacheDir default value and the DefaultArtifactName in being blank (not matching the Artifacts entry, was causing the problem. (DefaultEngine.INI) [/Script/OnlineSubsystemEOS.EOSSettings] CacheDir=CacheDir DefaultArtifactName=
Removing the CacheDir value and updating the DefaultArtifactName to match the defined Artifacts seems to have resolved the issue so far. [/Script/OnlineSubsystemEOS.EOSSettings] CacheDir= DefaultArtifactName=MyGameStaging
Not exactly clear what value should be placed in the CacheDir field as it talks about a folder, but already defines a path for it based on the userir article and version and cachedir.
Going to test with …TEST
Clearing the CacheDir value (I already had set the DefaultArtifactName to match a defined artifact) didn’t help in my case. I’m still getting an error when launching the packaged build and also when I try to reopen the project.
There is no default artifact in EOS (including ClientId etc.) that we can use for basic testing, like the “Spacewar” project on steam, right? Just to make sure, the issue is not caused by a bad project configuration or so.
I had this issue, fixed it by changing the line starting with “+Artifacts=(ArtifactName=” in [/Script/OnlineSubsystemEOS.EOSSettings].
At the end of this line you will probably have EncryptionKey="", just put something in between those quotes for example:
EncryptionKey=“lol” and it worked for me
Solution for me was that i remove gameinstance from the [/Script/EngineSettings.GameMapsSettings] in GameInstanceClass= .
I think that and c++ instance written by use cause crash even if you have compile it before closing. Hope this help. Also dont change artifact setting that is not relevant to failure of C# or C++ file error. It is not use if empty. Also If you should have online subsystem and online subsystemEOS in public domain in your project.build.cs so online system lib can be avialble to complier. i had that issue so just explaing…
If anyone is still struggling with this then the solution (4.27.2 - Plus) is to add encryption keys to your artifacts. The easiest way to do this is via the project settings menu ( ProjectSetting->Plugin->OnlineSubsystemEOS ), and the encryption keys is must be 64 character long hex values. After you’ve done that you can set your DefaultPlatformService back to EOS and all should be well.
I have an issue too with the Online Subsystem EOS integration.
I currently use Online Subsystem Steam to create session/join session. I replaced the steam OSS with EOS and configured it correctly according the documentation.
When I get the IOnlineSubsystem the subsystem name is ‘EOS’ but when I try to create a session the game crashes when accessing the SessionInterface.
You can use any 64-byte hexadecimal string. Or just 16 time 1. It is not very important in term of eos working but only to provide save and correct data to eos we use it.
Hi, I have faced same issue when i made my LAN game to EOS convert. So it basis mean that setting at same point is missing. So first check Engine.ini and verify that eos subsystem is active their. then make sure your artifact is made and is reflected in engine.ini then if you are using blueprints so check for plugin option and check all eos options disable any other subsystem even subsystemNull as we are using EOS so NULL or any other will never use. compile and restart to Verify any crashes if not. Than you have to make call from game instance because any other type of module will not always be runing in game lifetime. only make login call then after login only then create server/session will work.
Sorry for over explaining but your query was short for me to pin point what you asked.
I am using a Parallel Desktop Win10 on Mac and the VS keeps getting the default document folder wrong, Mac instead of Windows.
I force it to be like this and it works now.
const TCHAR* FWindowsPlatformProcess::UserDir()
{
static FString WindowsUserDir;
if( !WindowsUserDir.Len() )
{
TCHAR* UserPath;
// get the My Documents directory
HRESULT Ret = SHGetKnownFolderPath(FOLDERID_Documents, 0, NULL, &UserPath);
if (SUCCEEDED(Ret))
{
// make the base user dir path
WindowsUserDir = FString("C:\\Users\\<myuser>\\Documents").Replace(TEXT("\\"), TEXT("/")) + TEXT("/");
CoTaskMemFree(UserPath);
}
}
return *WindowsUserDir;
}