betidestudio / EOSIntegrationKit

EIK (Epic Online Services Integration Kit) is a plugin that enables seamless integration between Epic Online Services (EOS) and Unreal Engine. The plugin provides access to the EOS SDK (Software Development Kit) within Unreal Engine, allowing developers to easily implement features such as matchmaking, achievements, leaderboards, and more.
https://betide.studio/
MIT License
248 stars 34 forks source link

Voice nodes #8

Closed kasp1 closed 1 year ago

kasp1 commented 1 year ago

I started to research how to implement voice chat in my project, which is solely a client / dedicated server approach. The EIKVoiceChat nodes seem to require a PlayerController reference, but as far as I've understood, the EOSRoomToken node should be run on the server (in my case dedicated server) in order to create a voice chat room. According to my knowledge, there are no instances of PlayerController on dedicated servers, which would make EOSRoomToken node unusable as there would be no PlayerController to pass in.

I noticed the PlayerController parameters are only used to reference the game instance behind the scenes. This PR suggests a different approach is used to reference the game instance, which removes the necessity to input a PlayerController object.

Please feel free to reject this PR if you think it's not a good suggestion... I haven't even made the voice chat work in my project yet, but the code seems to compile with these changes. I can now continue my research.

Before: Screenshot_52

After: Screenshot_54