Make the car playable in a laggy multiplayer game (a list of possible solutions)

Post your ideas and suggestions how to improve the game.

Moderator: ickputzdirwech

Post Reply
Air
Inserter
Inserter
Posts: 24
Joined: Mon Mar 27, 2017 5:59 pm
Contact:

Make the car playable in a laggy multiplayer game (a list of possible solutions)

Post by Air »

TL;DR
If your connections is not perfect it is almost impossible to drive the car.
My understanding of the problem
I think the core of the problem is steering. You don't know how much you've turned until your input has been processed by the server. (which can take a second or two!) So, let's say you want to turn left and you start holding 'A'. Your car doesn't turn yet, because latency. You have to blindly estimate how long you should press 'A' to turn the amount you wanted to. Estimation is hard.
What ?
Solution 1. Implement visual aid.
The game should show a ghost of your car on top of the real car. This ghost is oriented as if all your queued input has been successfully processed. It doesn't affect gameplay, it doesn't account for collisions, it just shows you your approximate direction before the server is able to respond. It may be inaccurate at times, that's fine.

Solution 2. Implement a vehicle that can only move in 8 directions.
It fulfills the purpose of the car but it's easier to drive in multiplayer. Single tap of 'A' or 'D' turns it 45 degrees exactly. Thus you can easily predict your future orientation. To compensate for the instant turn rate it can be made slower than the car.
You may ask "How is it different from a player with exoskeleton? He moves in 8 directions too and he is easy to control in the online game." Well, pressing 'W' moves it forward instead of north, it has inertia, it is available earlier than exoskeleton, it consumes fuel, you can enter and exit it.

Solution 3. Implement an alternative control method for the car.
This is solution 2 except the new vehicle is the car itself. You control it with tapping 'A' and 'D' instead of holding them. A single tap is equal to holding the button just enough time to turn it 45 degrees. The client holds it for you, not the core game.
If the car was weirdly rotated when you entered it or if you crushed into something it will try to snap back into one of the 8 directions.
Yes, there is a mod with similar functionality. But it doesn't solve the multiplayer problem. It's meant to fix your orientation after you've finished turning. It doesn't help you to turn.

Solution 4. Implement an alternative control method for the car. Another one.
Holding buttons makes the car steer towards the corresponding direction. (Where 'W' is north 'D' is east etc.) So if you're driving west and started holding 'W'+'D' the car will start turning to the right until it faces north-east direction. From this point holding 'W'+'D' just accelerates the car. There needs to be a separate button for breaks.

Solution 5. Add a flying vehicle.
No collisions = poor driving is acceptable.

Post Reply

Return to “Ideas and Suggestions”