Using Epic Online Services with Unreal Engine Blueprints
Вставка
- Опубліковано 25 чер 2024
- Blueprints-only introduction to Epic Online Services with a modified version of the non-commercial Advanced Sessions Plugin
Modified release of the Advanced Sessions Plugin (contains binary builds for Win64 and MacOS, tested with UE 4.27.2):
www.maystocks.net/uploads/Adv...
Source code:
github.com/lotodore/AdvancedS...
From UE5 onwards, the changes have been integrated into the official release of the Advanced Sessions Plugin:
vreue4.com/advanced-sessions-...
Online Subsystem EOS Documentation (including DefaultEngine.ini changes):
docs.unrealengine.com/4.27/en...
The complete EosBlueprints project developed in this video is also available, please read the READ_ME_FIRST.txt, some setup is required!
UE 4.27.2:
www.maystocks.net/uploads/Eos...
UE 5.0.3:
www.maystocks.net/uploads/Eos...
00:00 Introduction
01:18 About Epic Online Services (EOS)
08:51 Online Subsystem EOS
10:46 Sample Project - Basic Setup
14:13 Trying "The Steam Way"
15:37 Setup of Online Subsystem EOS
19:58 Manual Login
24:47 Main Menu UI
30:38 Creating a Session
36:26 Refactoring the Session Creation
39:48 Joining a Session
44:29 Testing the Sample Project
47:14 Other Login Methods
Check out my other work:
www.maystocks.net/
#UnrealEngine #UE4 #UE5 #EpicOnlineServices
Epic, Epic Games, Unreal and Unreal Engine are trademarks or registered trademarks of Epic Games, Inc. in the United States of America and elsewhere. - Наука та технологія
If you encounter a problem or crash while following the tutorial, please check the troubleshooting video: ua-cam.com/video/TzJmrsdRz2U/v-deo.html
This video saved me a lot of time!! Thank you! Great tutorials and very needed.
You saving Developers lives man keep it up, & I look for to more multiplayer
You doing more than Epic with this
no filter params need to be passed in as in the Steam tutorial? I can create a session but no one can join it even though they find it
in main menu have 2 different accounts, but when join session in players list both with same nickname, its possible to make something like Guest Login for fast login? because every time to switch accounts takes too long
My man you are a genius! Thank you so much for this, FINALLY a tutorial that actually works for going online and making public sessions. Watched so many and none of them connected properly to EOS.
So happy to have a plugin that works with the standard UE5 too, compiling from source is fine for me but i do NOT expect the other devs to do that just to work on a little hobby game i'm making.
Just finished this video, its super detailed and works fantastic, even on UE5, im so glad i dont have to pivot my Uni project now to singleplayer
What an awesome and detailed video !
Thanks ! 👍
Hi, Thank you very much for your great video! I encourage you to create more videos about EOS. Thanks!
Thank you so much! I was struggling with this for a long time but this video explained everything perfectly and I have got it working... Thanks a Million!!!! :D :D :D
Great video and great explanation, cheers Bob xD
Excellent tutorial!
UE5 LYRA has online multiplayer disabled by default. Would be interesting to see a video on how to get that working. Keep up the great work.
Please would be great to see it
Wonderfull.. you explained all the steps in details. Thank you.
I know how to modify UE4C++ and have them nodes usable for BP, but what are the changes that goes inside the modified 'LoginUser' which include 'AuthType'?
Okay I think I got this solved.. I have to use your forked 'AdvancedSession' above.. tq.
@@syedhs Thanks for your feedback! I have sent pull requests to the author of the Advanced Sessions plugin, hopefully they will be merged so that the custom version will be no longer required.
@@maystocks Btw, what is the use of application id?
thank you. this was a great tutorial!
Thanks so much for this tutorial! It helped so much. Do you think you would be able to make a tutorial on a lobby/party system?
Amazing tutorial my friend!!!
Nicely Explained, grate one 💖💖
WOW! Und nur in Blueprints ^^ Vielen Dank! Mehr davon bitte :)
Hey, kennst du dich mit alldem etwas aus?
@@ALI-rw5jj Hi ALI, ein wenig ja aber noch weniger mit C++ usw. "DerUnrealEngineer" macht gute Deutsche Videos. Von ihm habe ich das Meiste gelernt.
@@Kein_Alias weißt du reinzufällig wie das mit Peer to peer funktioniert? Also so, dass man keine Server kaufen muss
@@ALI-rw5jj Leider nicht.
very nice tutorial bro i like it and i understand it easily
Great tutorial!
So I figured out my issue if anyone is having trouble where it doesn't login and you don't see the popup to allow product access to your account when launching in a standalone, go to your dev portal and under your product click on "Epic Account Services", then under the applications box you will see buttons that say "brand settings" "permissions" "linked clients" click on permissions and a new window will open, check "online presence" and "friends" and save then in the top right click on "linked clients" and under that menu make sure your client that you made is selected and save. Now when you go to launch your game in standalone you can connect to your product
Thank you!
I dont have my domain now can we use without it ? Permission and Link are activated only brand
@@lukavekichannel You don't need brand activated to connect just the permissions and linked clients activated brands can be activated later towards a finalized build of the game
OMG thank you so much - that's what I was missing!
odd, i have these checked. I get a seccess string, no popup window for login. IDK what I did wrong.
It works!
Tried on UE5.0, the epic login overlay did not appear, but I can actually link my PC and laptop together!
Thank you~
i had issues with the steam_appid.txt file not being generated and had to manually place it next to the .exe
Nice Tutorial! I enjoyed the story of Bob and wonder if we will hear about him in future episodes. I'm also curious as to why you chose the advanced sessions plugin - Is it needed?
It is currently needed if you want to use blueprints only. It can be replaced by custom C++ code.
Love it!
Those high pitch harmonics at 0:40 are intense 😮
Awesome Tutorial, A vidoe On EOS Plus Will be great as well
Thanks for the feedback. This video: ua-cam.com/video/MxkZoEUjlYY/v-deo.html is about using EOS Plus with Steam. Have fun!
THANKS! this really worked, wow dude! I like you!
Thank you man !!!
Great video
Only helpful tutorial found on internet.
I have you will make more videos like matchmaking and voice chat on EOS based
BTW you got another subscriber ❤️
Incrível! Obrigado amigo.
Great Job
Great tutorial!
You gained a subscriber.
Is the modified version of Advanced Sessions for UE5 Preview 2 available for download?
The changes have already been merged into the official plugin for UE5. This means that for UE5 you can use the official version available at vreue4.com/advanced-sessions-binaries
Have fun 🙂
Thank you so much for this. Its really the only tutorial on all the internet :). Question : is there any limitations to do this in BP ?
Yes, unfortunately there are some limitations. For example, destroying a session does not work properly (in UE 4.27), which is why you cannot start a server a second time at the moment. Also there are several interfaces like leaderboards not exposed to blueprints. The commercial Redpoint Games plugins are a lot more complete.
@@maystocks thank you again Sir :)
Thank you for making tutorial on this. Can you make tutorial on Epic Online Services voice chat? It would be great.
I did not use EOS voice chat yet, but I'll have a look at it. Thanks for the feedback!
I've uploaded a video about Epic Online Services voice chat a few days ago, based on the example from this video: ua-cam.com/video/eAzaSdALm4s/v-deo.html
@@maystocks Thank you :D
Thank you for this helpful video! I'm still having trouble getting achievements to work in my game, however, and finding good resources for explaining that. Do you have any videos walking through that?
So how do we handle the auth type since we don't have your modified version of the Login User node?
Love your humour throughout the video @23:35
Was trying to go through your tutorial, which seemed th best out of any information I could find. However, @16:59, You have "Use Epic Account Services" checked, and thischeckbox is not an option for me. I am supre confused now that apparently EOS Subsystem has been depracated? for the newer version Online Services. However, the Online Subsystem EOS is the only plugin I can find with any settings regarding online setup. At tis point (Dec 15, 2023) do devs need to create their own plugin using the EOS SDK 1.16 (Latest Version)?
You get new subscriber bro i really need to know EOS
YO GUYS, *THIS IS IMPORTANT*, IF YOUR LOGIN IS FAILING AND YOU 100% KNOW YOU DID ALL THE PARAMETERS AND BLUEPRINTS RIGHT, HERE IS THE FIX: Go to epic account service and change your application permission and enable Online Presence and friends, it fixed it for me!!
true legend i am gonna try this to see if it works and get back to you
I am going to browser after allowing it still says failed
@@beelzebub.studios same thing here
Warning to any one working on 5.3 with this; epic games overlay is not available in editor whatsoever.
accidentally stumbled on this vid. didnt know UE5 "coding" was so dumbed down. i may give it a whirl. thanks :)
Wow this is interesting!! I may have a few questions for you sir.
Can you make a part on inviting via friends? Currently messing around with this myself.
in UE 5.0.3 Overlay is not working. but Login with EOS is Working.
also it's working automatically persistant. means it only asked me for login once.
how we can clear game login state?
how to bring overlay?
same problem here ? did you figure it out ?
I failed to see my sessions neither in steam nor EOS detect the session :( I have my policy set to custom, I need to ask, if I set Peer2Peer, will this mean I will not be able to enable dedicated server?
PS I am using UE5
Client policy type peer2peer generally means that everyone is allowed to start a server. This does not prevent dedicated server. Also, you can use an additional different client policy for your dedicated servers.
Technically, you could also use a custom policy, but you need to make sure that all "matchmaking" actions related to sessions are enabled.
I get the login success path all the time but it's not asking me to log in, and the Shift F3 doesn't bring up the Epic overlay. Should I worry?
Hey, great tutorial! Can you make this for Lyra?
My find sessions node is searching infinitely /: not sure what to do. It fails to find a session right away. I packaged the project and it works for others just not my pc. What could be blocking it?
i have a question, that didnt work for me, when i add a print string to see if login is succesful it says that i logged in succesfully but it doesnt take me to the login page or showing the epic games overlay on the screen i use ue5.2 but in the epic games dev portal i have a message that says : No verified domains. To fully use Epic Account Services, you need to verify your domain first. could that be the problem and what is a domain and how to verify it
What do you mean by a modified version of Advanced Sessions, and that it currently does not work with EOS? How does one modify the plugin?
See the links below the video 🙂
login doesn't open web browser at all it does nothing am using ue5
Just to be sure this is a multiplayer session over a network right as in the other player doesn't have to be on the same wifi or ip?
It works within the same wifi, but it also works anywhere else (as long as there is no firewall blocking it).
followed your tutorial for UE5, did the settings as you mentioned butt the Pop up from Login User which directs the user to allow doesn't show up and directly shows login Successful....I could not even access the Epic Social Panel even after the enabling the social overlay setting.... Can you share some light on why is this happening
samething happen to me did you fix this?
Same here
if anybody encounters this problem
[OnlineSubsystemEOS]
bEnabled=true
[OnlineSubsystem]
DefaultPlatformService=EOS
[/Script/Engine.GameEngine]
+NetDriverDefinitions=(DefName="GameNetDriver",DriverClassName="OnlineSubsystemEOS.NetDriverEOS",DriverClassNameFallback="OnlineSubsystemUtils.IpNetDriver")
[/Script/OnlineSubsystemEOS.NetDriverEOS]
bIsUsingP2PSockets=true
add these settings to your defaultengine.ini file
At manual login blueprint i am receving the print string success but am not get the epic overlay or popups
If someone else have login failling after tried everything, add a delay (1s) between beginplay/init and your login, the plugin need some times.
once I got my brand published, its giving me accessdenied error, and in the blueprint setup the print output I am getting is "player is not logged in"
Can i apply this for collab viewer template ?
If anyone has crashing issues running the turorial after packaging disable the AdvancedSteamSessions plugin if not using Steam
I hope if u make series for eos
I've downloaded the project files, but I can't connect when both computers are not on the same wifi. Do you know what's going on?
Is it work with VR template?
this is amazing but where can i find a tutorial like this for UE 5.3.2
hi, i have a doubt, if the Epic Online Services don't host my game, do i need to config a server? or work like a p2p server? i have the doubt of how it work on a production environment
It works both ways: You could host your own dedicated servers, or let players run the servers (may call this "peer 2 peer").
Is Unreal from source necessary or can we do it from launcher version?
This tutorial works fine with the launcher version.
I am able to join the sessions on the same wifi but not able to join them on the different wifi, and also there is no epic overlay after creating or joining the session, online and presence is on and all the ID's and secrets are correct ,i am not able to figure out the solution for this.
PS - I am working on UE 5.0.3
Im Having Trouble Joinning The Session I Tried Following The Tutorial Multiple Times And Downloaded The Project From The Description But Nothing Seems To Be Working When Joinning It Prints No Session Found Then Session Success
Hello! I followed along but I have a problem that seems to be the case with any game and subsystem, when Joining a session the On Success pin is executed however the second player never travels to the map that the host is in, why is that?
Did you check the troubleshooting video? It sounds like the problem is handled there. There is a pinned comment below this video.
@@maystocks i did check it out but I'll check it out again, but it happens with any subsystem I use
Hey nice tutorial. I was finally able to use EOS after looking for tutorials for a few months. There is just one problem. I am on UE5 and no matter what I do, once I host a session the game crashes. I tried this on a brand new project as well and it still crashes. Could it be caused by where I put the code? Like you had it login through widgets, while I had mine login through the level blueprint. And I had the game hosting logic in the gameinstance blueprint.
I am using UE5 as well and I copied the same way he did it in the video, I have the same issues right now
Hey, so I found a fix. I had to change my policies to custom and checked everything I also checked the bottom settings for the plugin settings
@@Esoteric_Games Thanks for telling me this!
@@thana3270 no problem!
You could try to use a lobby session instead, if your artefact policy settings do not allow a normal session. Check "use lobbies if available" when creating a session, and when finding a session, choose Server Type "Client Servers only" and check "Search Lobbies".
EOS overlay not showing in my Windows UE5 I dont know why everything else works and prints success.
Hello! Great Tutorial, but I have an issue. When I create a session it loads the map and after a second the game crashes. If I check "use lobbies" I do not crash, but I cannot find the server. Do you know how to fix this? I would appreciate it!
When using a lobby, you have to select server type "Client servers only" and "search lobbies" in the Find Sessions Advanced node in order to find the session.
Does it work connecting other devices from far away
Do these plugins work on Mac?
can I link AWS login services with Epic games account?
I have another platform where I implemented simple login method in AWS lambda and cognito and would like to know if i can link that created account to Epic Games Account
For the manual login when i login it takes me to the login page but when i complete it it says login failiure please help
Are there any nodes to get player info from EOS? Looking to display the player's name and try to create a lobby but not sure where to pull that info from through blueprints
I have done this only in C++ yet. At least with UE 4.27.2, the PlayerState PlayerName is not updated with EOS (when using the online subsystem Steam this player name is updated). I will let you know if I find a way to access the name with Blueprints, maybe in UE5...
@@maystocks Yeah from what I was reading it seems like it's strictly C++ for now until someone wraps the script for blueprint nodes, there's something like that on the marketplace but it's over $100 and not just for the EOS systems so gonna have to pass on that for now lol, hopefully either Epic or someone else in the community will wrap the scripts "soon" but until then will have to dive into C++ and try to get info like epic account usernames and player data storage
Using the Advanced Sessions Plugin, you can use the node "Get Unique Net ID" or "Get Unique Net ID from player state" and then call "Get Player Nickname" to retrieve the name. This is available for player state and player controller.
@@maystocks Does that grab their epic username? I think I tried something similar and tried to string the name on the menu but it would print out "Player" instead of the name, I'll give that another look though
im on 5.2 UE and it seems like EOS doesnt work i dont get that epic authentication screen
pls tell if this makes your game have online system
Login not popping up, I watched your troubleshooting video too
is there a way to work with 4.26
Thanks for the amazing tutorial, but I have a problem when I try to play from the standalone game my game crashes but when I play from the selected viewport it works perfectly. How can I fix this issue?
This is most likely a problem concerning the policies set up for the artefact in the epic games developer portal (that some rights are missing). But you may also try to check "use lobbies if available" when creating a session, and when finding a session, choose Server Type "Client Servers only" and check "Search Lobbies".
Hi, I'm trying to recreate this using UE 5.0.2 and I already checked the troubleshooting video. But every time I create a session, I move to the other map and then it throws me back into the main menu. All prints mention that each action is successful, but it seems like the session immediately gets destroyed after creation and I'm not sure why.
Solved, another plugin was giving trouble. Didn't realize I had it enabled.
i have same issue Can i know which plugin?
yeah, what plugin was destroying the session?
Does advanced sessions work with iOS?
I am getting this problem :
When I start my game in standalone mode and login in from browser every time it only fires login failed. It’s never fire login success.I have tried hard to fix it but I failed. Can you help me to fix this?😢. Using 4.27.2
can u do one tutorial with a dedicated server ?
can you help us to use EOS with UE5 please you will help me so much
this is totally amazing! I'm setting this up now - got my epic game created in portal and now setting up blueprint...
but, using UE5, it looks like I'm missing some things in blueprint options - is it different in UE5 or did I miss some steps?
Like there's no login except for "show external login UI" - do I need to create one?
You need to download the Advanced Sessions plugin and copy it to the plugins directory within the project folder. Link for UE5 is different, it's below the video.
In case anyone else sees this, my problem is you still need the advanced login plugin for UE5 (as well as the permissions setup in dev portal - see other comment from NaviLlicious)
I'm not sure if it's my internet connection or if it is something else. But when I get to the point where it opens up a separate window for me to allow access, I wait for what seems like forever, but never login. I don't get the failed message either.
I've uploaded a troubleshooting video, maybe this helps: ua-cam.com/video/TzJmrsdRz2U/v-deo.html
Nice but, how to make our multiplayer game work on GOG ?
Anyone know why auth pin expires at login? So after login I don't get any success nor fail. Just sitting in menu doing nothing
Great tutorial thank you ❤️
Can it run on android devices?
In general, accountportal login should run on android. But the Online Subsystem EOS was not yet tested on mobile devices, and there are known issues. See for example eoshelp.epicgames.com/s/question/0D54z00007OpokqCAB/accountportal-method-does-not-work-at-all-on-android-if-any-persistent-auth-operations-are-performed-before-it?language=en_US
Something strange has happened after revisiting this. I'm using UE5. It seems like its autologging into the Epic Account, or did I miss something?
Did it log u in successfully without even signing in?
What do you mean by non commercial? You mean like Advanced Sessions plugin can't be used for commercial projects?
Check the license of the Advanced Sessions Plugin, depending on your needs it should be fine for commercial use. What I mean by non-commercial is that you do not need to pay for the plugin.
@@maystocks thanks for clarifying that!
Hai, how you get the authentication before create a session. Because in my project just play and create sessio, it's look not connected to epic account
I've created a troubleshooting video to help with these kind of issues: ua-cam.com/video/TzJmrsdRz2U/v-deo.html
In my case, I need to disable the "Country" from the permissions, then the login successed. Not sure why.
OMG, I spent a day searching the internet and your comments saved me! Thank you sir!!
Yo! Any update on future videos? This is a tremendous help
I have plans to do an EOSPlus Video (EOS with Steam and Blueprints only), and also a troubleshooting video. The EOSPlus project is already working, so any kind of encouragement to actually finish the video is very welcome 🙂
There is an update: I have uploaded a new video about using a Steam Login with EOS (EOSPlus). ua-cam.com/video/MxkZoEUjlYY/v-deo.html
I made a mini soccer game by using this tutorial. A friend connected successfully but the ball moves differently for each player. Player locations seem right but the ball location is not the same. Any suggestions to solve this problem?
You need to replicate the movement of the ball. There are other tutorials about Unreal Engine network replication available (for example steam-based), the general replication mechanisms from these tutorials also work with EOS.
This method is failing for me during the Login User step. I keep getting the "Login failed" string. My product is set up properly and I followed all the steps for the client side... Is it because I'm on Mac? I realize there's no social overlay on Mac, but it should at least log me in. How do I troubleshoot this?
Sorry it did not work for you. I've tested it on a mac, and except for the overlay, creating and joining a session works for me. For troubleshooting, you should double check that the product name and ids are copied correctly to the settings. Application id and product id are different values, and you should enter 64 digits in the "encryption key" field. If all this fails, you could check the log files. On mac, they are located in your home directory in the "Library/Logs" subfolder, there is a folder with the name of your project (for example EosBlueprints). Look for "fail" in these log files to check for hints. Let me know if it worked out!
@@maystocks Tried it again and now it's crashing. Here's what stands out:
- Initializing EOSSDK Version:1.13.1-16972539
- Warning: OSS: EOSPlus failed to find the native OSS!
And then later in the log, likely when it runs the Login Player node:
- Warning: OSS: Login request failed. Invalid account id, string empty
@@lilliangoulston5706 The account id should be ignored when using the accountportal login, so the failure message is rather strange. Please recheck whether you have set the "Auth Type" parameter to "accountportal" (single word) in the login node. Otherwise, I would suggest that you download the full project (last link in the video description) and follow the instructions in the readme file to set the ids and activate the online subsystem EOS. This would narrow down the possible problems.
Did you try the @NaviLlicious answer? It fixed it for me, but I'm on Windows, so maybe it's a different issue.
"And then we can see that nothing happens... Just kidding" and debug says login is successful, that's some top tier comedy haha
Is there a way to use it for peer to peer (without own servers)?
If you use Unreal Engine, the networking is server based. You could potentially use Epic Online Services without Unreal Engine for peer to peer services.
@@maystocks thank you very much
So I have created a Multiplayer FPS game for Steam and I have the logic considering Dedicated Server, so are so many things that only works for clients side. But I can't publish that on Steam because it uses NFTs. So I'm moving to Epic for that, but since EOS do not support dedicated server. Is there any way you suggest to make it work? BTW really love the details you shared. Thanks
I'm not sure what exactly you mean, but in general, EOS does support dedicated servers. It's just that the official Online Subsystem EOS is still a beta release. If you need it right now, I'd suggest to buy an EOS plugin, for example the one from Redpoint Games.
@@maystocks Oh Ok so I have to buy from Redpoint Games. It will support Dedicated Server right? Thanks a lot
@@abhimanyubundela2568 Did you get a dedicated server design working? I'm at the same road block
Everyone, who struggle with EOS. How I've fixed Failed to login. In Dev Portal in product permissions configurations, set Country to Disabled! Profile, Presence and Friends should be Required, Country - Disabled. Hope that helps
Thank you so much!
It work pretty nice but when I go to test it on a mobile device the web browser does not appear. :(
What I supposed to do to fix that?
In general, accountportal login should run on android. But the Online Subsystem EOS was not yet tested on mobile devices, and there are known issues. See for example eoshelp.epicgames.com/s/question/0D54z00007OpokqCAB/accountportal-method-does-not-work-at-all-on-android-if-any-persistent-auth-operations-are-performed-before-it?language=en_US