I’m interested in a way of exchanging custom variables between 2 machines running a project.
There’s a fair amount of documentation about setting up a client-server connection using OnlineSessions, but not much documentation on how to customize a particular session.
For example, let’s say Machine #1 wants to host a server and broadcast to the OnlineSubsystem a few variables, such as: Server Name, Server Description, Server IP, Server GameMode, Server Level etc. Everywhere I read on the internet, I saw tutorials or explanations on how to connect Machine #2 to Machine #1 via a simple server browser. But what if I want my server browser to display all the custom information listed above?
I’ve been reading about the beacon system in UE4, but there’s not much documentation and I find the naming of the classes and the terms used in their explanation somewhat confusing, at times, from a non-native English speaker’s perspective.
I would appreciate it if anyone was kind enough to provide a few clarifications regarding the OnlineBeacon system, as well as some clear and concise guidelines on how to achieve my goal (or to just direct me towards some documentation or examples which I might have missed).
Thanks! I had already noticed, downloaded and investigated the AdvancedSessions Plugin prior to posting this question.
While it does indeed offer a partial answer to my question, it offers no explanation as to where the OnlineBeacon system fits in or how it interacts with the game client/server.
Most of the plugin does nothing extra than expose functionality to BPs, which is not necessarily what I’m interested in.
My objective is to get a better understanding of the entire networking used by the engine. Leaving the partial answer to my original post aside, the following questions still remain:
What’s the difference between “normal” and “abnormal” Unreal Networking, as mentioned in the OnlineBeacon documentation? (I suspect that “normal” refers to the relationship between the 4 main game classes used by the engine: GameMode, GameState, PlayerController, PlayerState. But then, what is “outside of normal”?)
Where do beacons fit in? What do they interact with? What’s their purpose?