Multiplayer games in blender or other game engine

I find the blender game engine intuitive. What about the feasibility of creating multiplayer games with blender using python? What about engines like Unity or they are better of network code. I would appreciate if you guys can give your 2 cents worth.

Hi,

Short answer: possible, but not a great idea.

The Blender Game Engine (or UPBGE) is fine for singleplayer or small local projects, but once you go multiplayer things get complicated fast. Python is not the issue by itself, but the engine simply doesn’t provide solid networking out of the box.

You would have to build a lot yourself: syncing, prediction, lag compensation, etc. That’s a lot of work on top of an engine that isn’t really designed for it.

Engines like Unity or Unreal are just better suited for multiplayer. They have existing networking solutions, bigger communities, and way more examples to build on.

If your goal is to learn or experiment, sure, try it in Blender. But if you’re serious about making a multiplayer game, you’ll save a lot of time using a proper game engine.

Coming from a C++ background myself, I’d say go with something that gives you solid low-level control and networking support from the start.

I will take that into account.

If you do te work of a multiplayer game though, share the code so the functionality becomes accessible for all.

Glad it helped.

Yes, Blender can still be useful for learning and prototyping, so it really depends on what you want to build.

So yeah, it’s a lot harder in UPBGE. The multiplayer support isn’t great—it’s all pretty low-level API. There are some plugins that try to simplify things, but most of them aren’t maintained anymore. Then you run into stuff like making a chatbox, which you have to build yourself from scratch.

I ended up switching to Redot for my MMO, and multiplayer was way faster to set up. It only took a few lines of code since it’s high-level and handles a lot of the complicated stuff for you.

You can do multiplayer in UPBGE, but it really makes you think outside the box. For example, in a project I scrapped (and open-sourced), I separated the host tool from the game engine so it could run on a shell server. I also had to figure out how to sync more than just players—like enemies. I solved that by making one player the “room master” who syncs network objects, and it can switch between players dynamically.

Stuff like that is way simpler in Redot.
If you’re looking to get stuff done fast regarding multiplayer, go to Redot.

Low Level Control is exactly what you’re doing in UPBGE. Perhaps you mean high level which is the simple stuff.