Cost of Actor Replication

This is a duplicate of an AnswerHub question I made, but I wanted to make a forum post because it’s more a discussion thing than an actual question.

Any thoughts welcome, thanks much :slight_smile:

That is actually the worst way possible. You can just send to the clients the seed that you used to generate the world and they will generate the same world themselves. You should only replicate stuff that happens during gameplay.

“Best way” may have been the wrong word choice. Easiest was probably better.

That said, I’m not entirely convinced it is the worst way possible. Using the replication system removes a lot of complication for what is a not especially large up front cost, and avoids a lot of potential errors in discrepancies between client/server especially when some of the procedural elements actually need replication and others do not. Certainly not impossible, but it seems like a lot of work to sink in for something that could be as trivially easy as stopping replication after an object has been initialized.

I’ll look into generating non-replicated objects on the client from the seed and replicated objects via replication, but I’m not certain the cost savings of the initial blob of data is worth the potential for errors with so much of the world being dynamic.

Having everything Replicated will actually probably be the “worse” way. At that point, the game will be so out of sync from loss of data (the more data, the higher chance you don’t get the data received anytime soon) and the lag will be so high the game will be pretty much broken.

A procedurally generated world really should have an algorithm that determines how the world is generated, and sending the initial “kick” to the player. Then from there have the updates of the effects being changed as it goes is probably better.