UE5 multiplayer RPG

In this project, I use the medium of online game development to learn more advanced server-side and netcode programming. As explained in my first blog post about this project, web development and multiplayer game development have a lot in common. In fact, the whole backend of an online RPG can be made in a similar fashion to a web application, except that it interacts with a client that’s on a graphics rendering engine instead of a web browser.

With that in mind, I am using this project to teach myself new architectural paradigms and specific technologies that I have been wanting to explore:

  • Microservices backend architecture;
  • Golang as the main backend development language;
  • Protocol buffers as communication protocol facilitated by the gRPC framework;
  • PostgreSQL as the main database technology;
  • Docker and kubernetes for deployment and orchestration, facilitated by the Agones framework;
  • AWS deployment of services, API gateways and Lambda Functions.

See my blog post to learn more about how learning multiplayer paradigms can help you become a better web developer.