Maroon icon indicating copy to clipboard operation
Maroon copied to clipboard

Production-Ready Networking

Open codecreativity opened this issue 3 years ago • 0 comments

Development Make sure Unity and the rest of Maroon is compatible

  • [x] Set Api Compatibility Level to .NET 4.x from .NET Standard 2.0 to fully support Mirror, but first check if this has any side effects. See https://youtu.be/ytGYUage58Y?list=PLkx8oFug638oBYF5EOwsSS-gOVBXj1dkP&t=77
  • [ ] FIX DE-SYNC BUGS: Switch to new net architecture or implement functionality to prevent desync

User Interface Make the network configuration easier for the player, display more relevant information

  • [ ] Replace light bulb model with better network status indicator
  • [ ] Handle NullReferenceExceptions when Networking is disabled, handle all network-related errors in a graceful, transparent way
  • [ ] Get permission from user that some personal data (including IP Address has to be shared with the server and other players to make networking work)
  • [ ] Unify Network UI with Maroon UI to get consistent UX

Infrastructure Provide and configure infrastructure to run Maroon multiplayer in production

  • [x] ~~Create Docker container for list server and run it on the server~~
  • [ ] List Server: Mirror List Server is now deprecated. Use something like https://github.com/SoftwareGuy/NodeListServer or build our own new one with NodeJS (HTTP or websockets)
  • [ ] Transport (optional, but would be much better): Use WebRTC (unfortunately not natively supported by Mirror) or WebSockets with a replay server, to enable WebGL instances to join and host a session

codecreativity avatar May 28 '21 12:05 codecreativity