3 ms·
I'm the developer of it, feel free to ask me questions about the stack. In brief: The client side and the server side are both written in C++, and they share a
by Matheus28 11y ago
I'm the developer of it, feel free to ask me questions about the stack.
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).