Does this plugin work with Android? Particularly the voice over ip? Thanks in advance for the info!
[QUOTE=VytautasR;681830]
Thank you, , for making this.
Iām trying to get āIs Local Player Talkingā to graphically indicate which player is talking. It always returns False. Is there something Iām doing wrong?
Iām using Steam online subsystem, the voice chat is choppy but it works.
Use this node instead
bool UAdvancedVoiceLibrary::IsRemotePlayerTalking(const FBPUniqueNetId& UniqueNet
Also if the voice is choppy you likely need to increase client bandwidth in the INI as its probably saturating with default settings and throwing away packets.
[QUOTE=aussieburger;683153]
Does this plugin work with Android? Particularly the voice over ip? Thanks in advance for the info!
VOIP is not implemented for either IOS or Googleplay on Epics back end.
IOnlineVoicePtr FOnlineSubsystemGooglePlay::GetVoiceInterface() const
{
return nullptr;
}
Rest of the plugin should function.
I am trying to find out if I missed something.
I am currently using Cardinalās excellent menu to experiment with a multiplayer and lobby system.
I can start a host lobby and another player can log into that lobby. Using Steam and using LAN.
And I have read a lot of info and I know/understand that when using steam, I have to run a standalone session to make it work.
However, for now, and during testing, I am perfectly happy using LAN and PIE. And when I run LAN, and in PIE, the everything seems to work well, except for the āGet Session Infoā node.
This node always fails getting the info in PIE+LAN. It works for StandAlone+LAN. I even reverted the OnlineSubsystem back to Null and used
ā-NetDriverDefinitions=(DefName=āGameNetDriverā,DriverClassName=ā/Script/OnlineSubsystemUtils.IpNetDriver",DriverClassNameFallback="/Script/OnlineSubsystemUtils.IpNetDriver")" and disabled the steam plugin.
However, the āGet Session Infoā node always fails in PIE. This is unexpected for LAN. Am I missing something?
(using 4.15 and 4.15.1, same results)
One Android as Hotspot hosting game and other android as client connecting to host.
Hi UE4 community,
I have a question in my mind whether this plugin works when one android device hosts game via hotspot or wifi direct and other android device connects to it.
Regards.
[QUOTE=;683179]
Use this node instead
bool UAdvancedVoiceLibrary::IsRemotePlayerTalking(const FBPUniqueNetId& UniqueNet
Also if the voice is choppy you likely need to increase client bandwidth in the INI as its probably saturating with default settings and throwing away packets.
You are absolutely right about the the bandwidth.
Sorry to bother you again but IsRemotePlayerTalking also never prints True.
[QUOTE=VytautasR;684247]
You are absolutely right about the the bandwidth.
Sorry to bother you again but IsRemotePlayerTalking also never prints True.
Player controller 0 is not a remote player, and if it is then you canāt access the unique net id there, you need to do it in the GameState Player array.
[QUOTE=bggangel;684051]
I am trying to find out if I missed something.
I am currently using Cardinalās excellent menu to experiment with a multiplayer and lobby system.
I can start a host lobby and another player can log into that lobby. Using Steam and using LAN.
And I have read a lot of info and I know/understand that when using steam, I have to run a standalone session to make it work.
However, for now, and during testing, I am perfectly happy using LAN and PIE. And when I run LAN, and in PIE, the everything seems to work well, except for the āGet Session Infoā node.
This node always fails getting the info in PIE+LAN. It works for StandAlone+LAN. I even reverted the OnlineSubsystem back to Null and used
ā-NetDriverDefinitions=(DefName=āGameNetDriverā,DriverClassName=ā/Script/OnlineSubsystemUtils.IpNetDriver",DriverClassNameFallback=ā/Script/OnlineSubsystemUtils.IpNetDriverā)" and disabled the steam plugin.
However, the āGet Session Infoā node always fails in PIE. This is unexpected for LAN. Am I missing something?
(using 4.15 and 4.15.1, same results)
I havenāt tried 4.15 extensively yet with Cardinal Menu, so we havenāt released a 4.15 version. I can try and take a look at it this weekend. (Busy with a remodeling project at the moment.) Correction: I just tried 4.14.3 and it doesnāt work in PIE. Builds and standalone work fine.
[QUOTE=;684378]
I havenāt tried 4.15 extensively yet with Cardinal Menu, so we havenāt released a 4.15 version. I can try and take a look at it this weekend. (Busy with a remodeling project at the moment.) I just tried 4.14.3 and it works fine with Play In Editor LAN. (I tried it with both auto-connect to server on and off)
Hi, thanks for your quick reply.
Iād hate for you to waste your time so you inspired me to look at version 4.14.3 and try to see how it at least should workā¦ and that also does not for me, so perhaps I am doing something completely wrong (this is all new to me).
So to quickly take you through the steps.
- Installed clean new 4.14.3 unreal eninge
- unpacked CardinalMenu_Project_v161204.zip to a folder
- Unpacked all the plugin zips into their folder
- Open the CardinalMenu.uproject with 4.14 and let it build. (Then checked all plugin settings and they seem to be good)
- Go into the ThirdPersonExample Level Blueprints and change āDisableAllScreenMessagesā to āEnableAllScreenMessagesā
- Go into ThirdPersonExample/Blueprints->ThirdPersonGameMode, Open Full Blueprint Editor, add the nodes like this (I re-did it again later and used Failure instead of Failed)
- Select 2 players and Dedicated server in the play pulldown
- In cardinal Menu -> Play Game -> Host Game -> Start Server
- I get āServer:Failureā
If I do step 8 in Stand Alone, I get Success
Please tell me I am doing something horribly wrong so I am not going crazy.
Hmm, weird. Iāll rebuild it from a clean download and check right now.
Edit: Oh wait, Iām sorry I think I misunderstood your question. Iām going to take a look for a bit and see if I see anything.
Edit Again: Yeah, I can confirm GetSessionSettings doesnāt work in PIE but works in Standalone.
It wonāt work in PIE, PIE creates its own session that isnāt the one used for the actual subsystem to handle the multiplayer in editor functionality. As such it doesnāt have the settings and name that the plugin session would have and gets in the way of some of the functionality of normal sessions.
[QUOTE=;684596]
Hmm, weird. Iāll rebuild it from a clean download and check right now.
Edit: Oh wait, Iām sorry I think I misunderstood your question. Iām going to take a look for a bit and see if I see anything.
Edit Again: Yeah, I can confirm GetSessionSettings doesnāt work in PIE but works in Standalone.
Thanks for confirming and returning some of my sanity (canāt tell you how many times I looked over the settings in my project before I started with a clean one). I will ask my followup to . (#1070)
[QUOTE=;684741]
It wonāt work in PIE, PIE creates its own session that isnāt the one used for the actual subsystem to handle the multiplayer in editor functionality. As such it doesnāt have the settings and name that the plugin session would have and gets in the way of some of the functionality of normal sessions.
ok, thank you for that info. But then, I have to ask, what are the best way of testing/developing? I am working on a boardgame type of game that has multiple players connected and I thought doing quick tests through LAN would be the way to go, but I guess constantly syncing code over 2 PCās or a VMWare is the only way to test this? I understand most things in the engine, but the multiplayer part and dedicated server vs listening and open level vs servertravels still have me confused like crazy. I am sure I read too much up on it and also read outdated information on it on various forums and sites. And most multiplayer examples deal with a running game that others can jump into. I must have a fixed amount of players, that than get sorted in random order and than all start at the same time. There is less examples for that (have not found any).
So, what is the best practice for testing? What is the best place to get current information on this? Is there a good example for the flow that I need?
(sorry for this amount of questios, but this is currently a little frustratingā¦ hobbyās should not be frustrating (this miuch) )
[QUOTE=bggangel;684767]
ok, thank you for that info. But then, I have to ask, what are the best way of testing/developing? I am working on a boardgame type of game that has multiple players connected and I thought doing quick tests through LAN would be the way to go, but I guess constantly syncing code over 2 PCās or a VMWare is the only way to test this? I understand most things in the engine, but the multiplayer part and dedicated server vs listening and open level vs servertravels still have me confused like crazy. I am sure I read too much up on it and also read outdated information on it on various forums and sites. And most multiplayer examples deal with a running game that others can jump into. I must have a fixed amount of players, that than get sorted in random order and than all start at the same time. There is less examples for that (have not found any).
So, what is the best practice for testing? What is the best place to get current information on this? Is there a good example for the flow that I need?
(sorry for this amount of questios, but this is currently a little frustratingā¦ hobbyās should not be frustrating (this miuch) )
For gameplay quick testing through PIE works well enough, its for the sessions display / management part that you need to test in packaged builds or stand alone to make sure it is working correctly. Just making a new lan session (LAN only) and connecting will still work PIE for finding / connecting, you just have to make do without the Session settings node unless in standalone.
You can launch in stand alone from your .uproject file by right clicking on it and selecting launch to run multiple instance tests locally, or package out and run it multiple times.
Also never assume that things work the same PIE multiplayer as they do packaged, you want to run periodic tests from packaged builds as part of your development cycle.
Edit Also game dev (and programming) can be very frustrating at times, but also very rewarding when you solve a problem, it comes with the territory.
[QUOTE=;684773]
For gameplay quick testing through PIE works well enough, its for the sessions display / management part that you need to test in packaged builds or stand alone to make sure it is working correctly. Just making a new lan session (LAN only) and connecting will still work PIE for finding / connecting, you just have to make do without the Session settings node unless in standalone.
You can launch in stand alone from your .uproject file by right clicking on it and selecting launch to run multiple instance tests locally, or package out and run it multiple times.
Also never assume that things work the same PIE multiplayer as they do packaged, you want to run periodic tests from packaged builds as part of your development cycle.
Edit Also game dev (and programming) can be very frustrating at times, but also very rewarding when you solve a problem, it comes with the territory.
Thx for the info. I guess my main problem is that I just started āsomewhereā with my gameboard and that it all works fine by it self (in PIE) but as soon as I add the travel/level change parts, things start acting very funky (networking and replication etc.).
This is probably because I am initializing my levels wrong and I will have to rework that first. But before that, I wanted to make sure that I have my level managenet/switching correct and I didnāt make any mistakes. Now that I know that the behavior I am seeing is what is expected, I can continue.
And I know about dev/prog frustration. My day job is also programing (.NET framework, starting in C) but I like doing unreal dev. because blueprints make it different and fun. My frustration was that I was going in circles and did not see a way out and that frustrates in all situation unless you are a nascar driver (and I do not like nascar). You have given it to me now, so thanks for that.
I do unreal dev as a hobby, been doing on the side libraries, open source projects, and game modding tools for almost 15 years now.
Main job is straight corporate coding, pretty sure I would go insane without this outlet So I understand where you are coming from.
[QUOTE=;684773]
For gameplay quick testing through PIE works well enough, its for the sessions display / management part that you need to test in packaged builds or stand alone to make sure it is working correctly. Just making a new lan session (LAN only) and connecting will still work PIE for finding / connecting, you just have to make do without the Session settings node unless in standalone.
You can launch in stand alone from your .uproject file by right clicking on it and selecting launch to run multiple instance tests locally, or package out and run it multiple times.
Also never assume that things work the same PIE multiplayer as they do packaged, you want to run periodic tests from packaged builds as part of your development cycle.
Edit Also game dev (and programming) can be very frustrating at times, but also very rewarding when you solve a problem, it comes with the territory.
So just to be clear on my flow:
A. Player 1 starts āhost gameā. This uses āopen levelā to go to the lobby level.
B. Player 2 and 3 etc goto āNetwork Gameā and join the level. This is done by using the āJoin Sessionā node of the default online subsystem. This will automaticly take them into the lobby level.
C. (question) The Players 2 3 etcā¦ will all get the ability to initialize their code by using the āOnPostLoginā Node?
D. Then when all players are ready we have to go to the gameboard. That must be done by ā¦ open level or (seamless) ServerTravel ?
And how is this scenario different if we have a dedicated server?
Hey ,
Recently in testing packaged projects Iām experiencing a seemingly random crash. Canāt seem to isolate the cause to reproduce the crash.
Any chance you might be able to make sense of the below crash report?
Access violation - code c0000005 (first/second chance not available)
Project_Win64_DebugGame!UGetFriendsCallbackProxy::OnReadFriendsListCompleted() [f:\ue4 projects\Project\plugins\advancedsessions\source\advancedsessions\private\getfriendscallbackproxy.cpp:56]
Project_Win64_DebugGame!TBaseUObjectMethodDelegateInstance<0,UGetFriendsCallbackProxy,void __cdecl(int,bool,FString const & __ptr64,FString const & __ptr64)>::ExecuteIfSafe() [c:\program files\epic games\ue_4.15\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:858]
Project_Win64_DebugGame!FOnlineAsyncTaskSteamReadFriendsList::TriggerDelegates()
Project_Win64_DebugGame!FOnlineAsyncTaskManager::GameTick()
Project_Win64_DebugGame!FOnlineSubsystemSteam::Tick()
Project_Win64_DebugGame!FTicker::Tick()
Project_Win64_DebugGame!FEngineLoop::Tick()
Project_Win64_DebugGame!GuardedMain()
Project_Win64_DebugGame!GuardedMainWrapper()
Project_Win64_DebugGame!WinMain()
Project_Win64_DebugGame!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:253]
kernel32
ntdll
Thanks for any help!
[QUOTE=NukePie;684927]
Hey ,
Recently in testing packaged projects Iām experiencing a seemingly random crash. Canāt seem to isolate the cause to reproduce the crash.
Any chance you might be able to make sense of the below crash report?
Access violation - code c0000005 (first/second chance not available)
Project_Win64_DebugGame!UGetFriendsCallbackProxy::OnReadFriendsListCompleted() [f:\ue4 projects\Project\plugins\advancedsessions\source\advancedsessions\private\getfriendscallbackproxy.cpp:56]
Project_Win64_DebugGame!TBaseUObjectMethodDelegateInstance<0,UGetFriendsCallbackProxy,void __cdecl(int,bool,FString const & __ptr64,FString const & __ptr64)>::ExecuteIfSafe() [c:\program files\epic games\ue_4.15\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:858]
Project_Win64_DebugGame!FOnlineAsyncTaskSteamReadFriendsList::TriggerDelegates()
Project_Win64_DebugGame!FOnlineAsyncTaskManager::GameTick()
Project_Win64_DebugGame!FOnlineSubsystemSteam::Tick()
Project_Win64_DebugGame!FTicker::Tick()
Project_Win64_DebugGame!FEngineLoop::Tick()
Project_Win64_DebugGame!GuardedMain()
Project_Win64_DebugGame!GuardedMainWrapper()
Project_Win64_DebugGame!WinMain()
Project_Win64_DebugGame!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:253]
kernel32
ntdll
Thanks for any help!
Its crashing at the line below, I already validate the player controller previous to this in the function, so it means that between when you call the node and when it finishes getting the list you are deleting a player controller.
ULocalPlayer* Player = Cast<ULocalPlayer>(PlayerControllerWeakPtr->Player);
Iāll add additional validity checks for player controllers in to the async nodes where appropriate, however you might want to check your blueprints because it sounds like there might be issues if you are dropping players while doing things.
Edit yeah just checked, that is the only node that was missing the last check. I fixed it and will re-upload.
Uploaded new version fixing a missing validity check in GetFriendsCallbackProxy
Does this work with the null online Subsystem, as in should I be able to find other sessions made using this?