I am currently evaluating if PlayCanvas is suitable for a project involving browser based multiplayer games. Multiplayer is clearly possible, but let me first complain about something - this official multiplayer tutorial for PlayCanvas is incomplete and broken: http://developer.playcanvas.com/en/tutorials/real-time-multiplayer
The code is different in the tutorial than in the example project. For example the tutorial code uses this.id when the example code uses Network.id - seems small thing, but I ended up spending hours trying to find out why my code wasn’t working.
Also, the different language versions (tried English and Japanese) have different code.
That tutorials is the first result if you google “PlayCanvas multiplayer”. I strongly suggest you update the tutorial - and maybe expand it a bit, since even something as trivial as player disconnection is not handled in the tutorial (although it is at least partially handled in the linked example project…?).
Furthermode, I personally think having to write your own network code from scratch is a bit against the idea of using an engine/tool like PlayCanvas in the first place. For example with Unity you can get basic multiplayer without writing any code with plugins like Photon.
Maybe you could add official support for Photon? Sure there seems to be some unofficial ones (like https://github.com/utautattaro/Photon-for-PlayCanvas), but I’m not sure if something 1 guy has made many years a go is reliable enough for production…
Or maybe you could add your own multiplayer solution to Playcanvas - like a component you could add to an entity to make it “networked” which would then sync its transform and spawning/destruction. Sure, that would still require some server side code, but that could be then something users could expand/modify.