Ludos is a project which enables players to join any game supported, with servers being created dynamically using the Pterodactyl API if all games are full, or none are available. It was originally intended to allow efficient server operation, as well as allowing an effective scaling method for servers of any size.
Languages & Technologies
The game servers run a modified version of PaperSpigot, with the core plugins written in Java. The plugins communicate with the proxies (a modified version of Velocity) using Redis, to coordinate the installation of servers. The proxies then pass the data to the Pterodactyl API, which manages the Docker containers rather than being immediately done by the proxies. In future, replacing the Pterodactyl system with just the Docker engine would prevent overhead and would be more efficient.