Diep.io
diep.io
diep.io
In brief: The client side and the server side are both written in C++, and they share a lot of the game code. The clientside is compiled to Javascript using emscripten, and uses the canvas 2d API directly. There's also a load balancer which is coded in C++ (the lb.diep.io endpoint). Servers connect to it to inform their status, and clients query it for a list of servers. It also handles the auto scaling (as it works across several providers, at the moment only Linode servers are enabled).
One interesting bit is that the client is able to swap its code pretty easily, so releasing updates is very smooth (outdated servers start kicking clients as they die, clients update themselves without reloading the page, and connect to an updated server).
Looking forward to seeing the new features you're working on.
and more different shape of XP rock. More colors more fun. Add option for different background. A score system would also be cool (Points for breaking stuff and kill)
1 or 2 new weapon and voila.
As more people started playing I could definitely feel the game lagging. I've also experience about 3 game freezes where I had to shut down the tab.