Define a networking protocol

Need to figure out how we even want to do networking in the first place

Do we want to just use Unreal's RPC stuff? Pros:

  • Easy to use, kinda "just works" Cons:
  • A lot of what we're doing already falls outside of Unreal's happy-path (the gameplay framework), trying to munge it into Unreal's framework might be a little awkward
  • Not sure how that would work with Steam NAT punchthrough - it might work with the Steam online subsystem, but then would that conflict with the Steam stuff we already have? Would using the Steam online subsystem prevent us from doing normal "port-forward-style" servers?

How about defining our own protocol, that gets networked using Unreal's RPC stuff?

  • TODO

Doing our own networking, with our own protocol Pros

  • Host migration might be doable (but hard!)
  • TODO