Support for netplay 🕹
Rationale
It would be really cool to allow shared sessions across multiple rooms.
Description
For a certain session, some of the keys would be available to a user and other keys to the other user.
Only two users would be allowed to play in a room
Implementation
Use socket.io to implement in Typescript the netplay part of the emulator.
Some references can be found here => https://socket.io/docs/v4/typescript/
Maybe make use of deno for the server-side implementation. A simple Websockets demo can be found here https://til.simonwillison.net/deno/annotated-deno-deploy-demo and https://medium.com/deno-the-complete-reference/native-web-sockets-client-server-in-deno-928678a65cf2.
The implementation should share the screen buffer on every frame and receive the key presses from the clients.
Edited by João Magalhães