npruehs / ue4-rts

Real-time strategy plugin and showcase for Unreal Engine 4.
MIT License
743 stars 151 forks source link

Possible solution for lockstep networking #51

Open HeadClot opened 7 years ago

HeadClot commented 7 years ago

So been doing some digging into solutions for lockstep networking in UE4.

So here is what I found so far - Make a custom networking subsystem and use an existing network stack.

This would consist of - Unreal.js for interfacing with UE4 and JS. Lance.gg for the networking stack. Lockstep.io as a fall back in case lance does not have lockstep.

Anyway just thought I would share and get some input.

npruehs commented 6 years ago

I think I'd refrain from using an additional JS layer for the network stack. Network needs to be crazy efficient (if we'd go down this route, we'd just do it for optimization purposes, after all). So I'd rather go for a native C++ implementation.

theevil128 commented 6 years ago

Keep in mind that physx continues work with the network solution.

HeadClot commented 6 years ago

@theevil128 I was unaware of this. Thanks for the heads up :)

HeadClot commented 6 years ago

Hey @npruehs Just thought I would chime in again. Found this article on Medium saying that you do not want to implement lockstep networking in RTS Games. Link

npruehs commented 6 years ago

Ahh, interesting read! Thanks for sharing @HeadClot :)

HeadClot commented 6 years ago

Welcome :)

SyedAman commented 6 years ago

Lockstep networking is outdated. Taking a look at Tim Sweeney's statement about it, it's not planned. Also from his explanation it seems like it would be very challenging to implement