Hello everyone, I'm back with another post on my work-in-progress indie MMO - Blood Lines. This fortnight, there's new music, a new launcher, and a number of technical overhauls.
Game updates are normally downloaded manually. This is fine for single player games, because it doesn't matter if a player is using an outdated version. But in an MMO, every player needs to be correctly synchronised (imagine one player receives an item that doesn't exist for another player).
So I made a game launcher. Instead of downloading the game files, the player downloads the launcher, which automatically downloads the game files if necessary before running the game. I open-sourced my creation in case you want to use it or look inside.
Originally, the game worked as follows (technical warning!):
I went with this approach because it clearly separates the duties of the client & server, and it's also very performant. However, it has serious difficulties:
I took a step back and rethought the client/server architecture. This time, the client and server are made as a single Godot project, which are separated at export. Now it works like this:
Overall, this is much easier to work with and gives the server more control over the game state, even if it comes at a performance cost.
For each place in the world map, there's a unique background theme. Here are the first two, composed by Hozach and Joshua Thomas:
Nakano City is swarming with phantoms, due to the Sinkhole.
The Shrine has statues of cats around every corner, respawning fallen players.
Feel free to join our Discord Server for updates!
Did you like this post? Tell us
Leave a comment
Log in with your itch.io account to leave a comment.