DEV Community

Cover image for Building a Free Browser MMORPG with Babylon.js, Meteor and Colyseus
Matteo De Micheli
Matteo De Micheli

Posted on

Building a Free Browser MMORPG with Babylon.js, Meteor and Colyseus

Building an MMO is a hard undertaking. Many decisions have to be made, for example how to synchronize player states, structuring maps, making the world easily explorable and more.

I decided to use technologies that are robust and (in case of Meteor) I already know. In this post I will explain why I chose the technologies that I did and how I implemented the features needed for a modern browser based MMORPG.

Babylon.js

The first decision that I had to make is which rendering engine to use. There's Godot, Unity and a bunch of other libraries / frameworks that I could've used but I stuck with Babylon.js

Babylon.js can be easily integrated into any website. It's support for .glb files makes it a breeze to work with. All animations, rigs and more are part of the files.

Meteor

I know Meteor already and decided to go with it for this project. It's blazingly fast to develop with and makes complex systems like users and semi-realtime updates a breeze.

It's not as popular as it was back in the days but for my use case it is more than sufficient. It uses React by default and that's also what I used for the HUD / GUI of the game.

Colyseus

Meteor already supports real time features but it's not fast enough for a multiplayer game. That's why I chose Colyseus as the game server. It supports all the use cases I need for the game and makes synchronizing player states very simple.

Right now I've set a cap of 30 users live at the same time in the world but at a later stage I'll increase that number so that lots of people can enjoy the game.

AI assisted coding

Just as a disclaimer, I'm using Codex for all the tasks. What previously took months is now done in a few days or weeks.

As long as the end product doesn't look like AI slop I'm fine with using AI to code. All the backend code can be coded with AI without any problems. When it comes to frontend game assets I'll have it handmade in the future, so that it doesn't look like a collection of random assets thrown into a game (like it is right now).

Conclusion

Deciding on the libraries / framework to use isn't the hard part and coding itself is also a lot easier with the assistance of AI. What is hard (for me) is promoting the game, finding / creating game assets that follow a styleguide and making it so that the UX is smooth (for new players especially).

I'll keep updating you all in the next few weeks and write about dev topics all around "Heroes of Neverfall".

Top comments (0)