would anyone be able to tell me whether or not current UE4 has things in place so that my game involving physics will work over the internet?
Players in my networked multiplayer game cause physical reactions that strongly affects gameplay.
Is it watertight in this respect? Or should I start looking at roll-your-own solutions?
You can leave physics enabled for each client and the server, and allow the server to replicate movement of the physics objects on its end.
This way the response to the clients is quick, and the server can keep everyone’s physical environment in check.
There can be some slightly noticeable movement artifacts from this from time to time, but its nothing too dramatic from what I’ve seen.
The second approach would be to enable physics of the objects on the server only, and replicate their movement to the clients.
Client actor copies will interact with the physical objects on the server in each of these implementations.
I would test each of these methods to see which one works best for your game.
UE4 uses UDP for its replication, and is based on a client-server model. The physics simulation is also not deterministic.
I wouldn’t worry about those things, since UE4 already has most of the networking systems set up for you.
In any case, I would definitely have the server handle physics simulation and replicate movement of those objects to the clients.
And just decide whether or not you want physics to be simulated for these objects client-side as well.