top of page
~ Disclaimer ~

  • Some of the features don't have a video tutorial yet

Most of the features are covered but some might be missing. I'm adding more every weeks. If you have a specific subject you'd like to see covered, feel free to ask on the official thread or Discord. You can check all tutorials here!

  • Some of the code is not commented

If you find a specific part of the code not explained well enough (or not at all), please report it here.

  • MCE can help you build the game content but it won't ship your multiplayer game for you

MCE is a set of tools which helps you create multiplayer content (abilities, characters, items, attributes, upgrades and such). You'll have to learn a lot of things if you want to ship a multiplayer game. MCE and the tutorial series will give you some of that knowledge but you'll have to find the rest by yourself.​​

  • I’m only one man and MCE is huge, supporting everyone quickly is a challenge, answer delays might be longer than you expect

I’m working full time as a game designer in a French studio. MCE is a hobby project I’m developing to help fellow developers. I’ll try to be as efficient as possible but as I said MCE is huge and I’m only one man, please keep this in mind if my answers are a bit delayed.

  • Optimization and proper logic is project dependent

MCE is trying to use the minimal amount of bandwidth for its features but the rest depends on what type of game you want to make. If you’re planning on building a game with hundreds of entities with skills and stats, you’ll have to make sure only the relevant entities to each player are being replicated. Or if you plan to have many entities with skills and stats in the same place you’ll have to limit the number of skills and stats or find a way around replicating everything to everyone.

If you have a large scale multiplayer in mind you will have to use UE built-in tools to mitigate bandwidth traffic. You might also need to tweak the core features of MCE to be more bandwidth efficient (because more suited to your game).

MCE includes a built-in example of a network-cheap version of the Skill system (to be able to have thousands of AI's using MCE modules).

  • Dash & high velocity movement is using built-in UE4 features

When moving at high speed the position of an actor can become too different between the server and remote clients and the server “corrects” the position of the actor, teleporting it at the right position on all machines. MCE is using the built-in UE4 feature for movement replication and therefore is subject to that behavior.

  • Projectile accuracy & movement prediction is using built-in UE4 features

The position of two actors is often different on the server and the remote clients due to how movement replication is optimized in Unreal 4. Therefore a projectile with a very tight hitbox (or a  raycast) can hit on the server machine and miss on one of the remote clients. This leads to incorrect results being displayed on the client machine (a hit feedback whereas no damages have been dealt) but gameplay is not affected. MCE is using the built-in UE4 feature for movement replication and therefore is subject to that behavior.

  • Physics & gravity is physic dependant and UE4 uses an underteministic model

It means the same calculations on two different clients can lead to different results. For instance if you push an object it can end up in two different positions on these clients’ screens. Replicating the movement of such an object can solve the issue at the cost of bandwidth. MCE is using the built-in UE4 feature for physic and therefore is subject to that behavior.

  • MCE is not cheater-proof

Some of the gameplay information travel through the client machines and an experimented user can alter them. If you plan on building a player versus player game, you might have security to take care of. MCE has no built-in security model.​

bottom of page