4.18 Current State of HTML5 Multiplayer?

What’s the current state of multiplayer in HTML5 in 4.18?

I found this post from ~4.10 that says that HTML5 games can connect to a standalone game server but not to each other. https://answers.unrealengine.com/questions/358636/html5-networking-listen-server-issues.html

Is that still the case? If it is, the reasoning there is that browsers can’t accept connections from other browsers due to browser standards. Isn’t that exactly what WebRTC solves though using a webserver to negotiate the direct connection? Is it possible to use the webserver to negotiate handshakes between browsers using WebRTC to allow an HTML5 game in a browser to host a game?

that we can connect to a server like node js without having to spend 4 weeks it will be fine

This reasoning is definitely the correct one. It is not possible to connect from web browsers directly out to other web browsers or to TCP/UDP based web servers, because this would allow web sites to use connected clients as web servers, and implement e.g. BitTorrent nodes behind user’s backs with ease, not that it’s impossible now, but considerably harder. The reason is not for example due to incompatible standards.

There are two ways to approach this:

  1. Projects like WebSockify allow one to set up a WebSockets based server that routes communication over to a TCP server. This can allow an in-browser WebSockets client to connect out to servers.
  2. WebRTC has a P2P matching mechanism with STUN and TURN server architecture to enable two browsers to do P2P data channels connection. This is somewhat involved but currently the only way that two browsers can do a “real” P2P communication without intermediaries.