Master server


The new master server code is up and running!

In Dog Fight we used the Unreal 4 engine, which provides its own master server, which I assume is located at Epic HQ somewhere. But Godot has no such built in feature.
I came up with the interesting idea of using IRC as my master server as I noticed many free IRC servers. I hobbled together a master server implementation based on IRC by implementing the IRC protocol in Godot. I found this took a long time to connect to the IRC servers as there was quite some handshaking going on.

Sometime later, my brother stumbled across a great Godot plugin written by vurpo, which adds C++ support for the Matrix IM protocol. I then dropped this plugin into my project and have had only chat support for a long time, and this caused my IRC plugin (and hence the master server code) to become broken.

Seeing that I have had some time recently, I decided I wanted to finally get this sucker working again so I don't have to keep joining my multiplayer games by punching in a LAN ip. I also realize that having a good master server and chat implementation is vital for a multiplayer focused game, so it is of the ut most importance.

Over the last few days and today I have finally got something hugely improved on this front. Seeing as ping functionality is not a simple thing to do (although I may add it in future) I have decided to include the ability to see which country and city a server is hosted in so people can find servers situated near to them. This was suprisingly easy to implement and I am happy with the results!

Catch you all next time!

Popular posts from this blog

Open-sourcing Trains & Things (and our other projects)

Trains & Things Official Announcement

Editor & Mod Tools Released