Developing a multi-player game - How should I approach this?

Recently I have started to work on a multiplayer game in Libgdx with the help of AppWarp. Now, this is my first time in the multiplayer scene. I have developed several games in Libgdx but none of them had a multiplayer feature.

From a general aspect, how should I start working on it? Should I start with the core engine(the game itself) and then adding the multiplayer or should I do the opposite?

If I may, I would like to hear some experienced developers who have experience with such game :slight_smile:

P.S The game is going to be in real time. It’s some sort of a race game.

Turn-based or real time? It makes a massive difference.

real time. It’s some sort of a race game.

Start with multiplayer, if you ignore it from the start you will have to change your code accommodate it later. Also, it will help you plan out the engine better since there are definite design differences that you will have to make when it comes to multi player vs single player.

Like jacobgood1 said, you have to plan multiplayer from the very beginning and can’t simply add it someday.
But the best advice is this: don’t do it at all. Keep on improving skills with single player games a few years.
(Realtime) multiplayer is a completely different ugly beast.

I would recommed starting out with network programming by creating a IM app, then maybe move on to a pong type game, and go from there.

The reason is that network programming is (can be) a beast in itself. So, basically dip your toe in the water before you jump in cause you’re going to learn so much just by making that first network app that you’ll start to see how you should approach the problem and what will work for your game.

You have a lot to read up on…here’s a start: