Maroon
Maroon copied to clipboard
Production-Ready Networking
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