• Advertisement
Sign in to follow this  

Moving & Spawning Objects Working! Need help with smooth moves!

This topic is 1360 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi! 

 

This is a demo video about how everything is working in our MMO game! Now, the server is capable to:

 

- Login system

- Moving characters

- Spawning objects

- Spacial partitioning

- Create objects (game master mode)

- Everything is stored in ram/database

 

Video Link

https://mega.co.nz/#!qFwTUJTb!s5PDqdCB9WZfWzsOsrG-b1t6G_FMGoEkAbVfuiCqdoQ

 

 

Now, the question!

The server sends player's positions 2 times per second, so, like you could see in the video, other players moves are sketchy, they "teleport" to their new distance every .5seconds, how could we "smooth" their moves? 

 

We have tried to do interpolation but maybe we're failing in something, best way to do that? Thanks!

https://developer.valvesoftware.com/wiki/Source_Multiplayer_Networking

Edited by bernatripoll

Share this post


Link to post
Share on other sites
Advertisement
When you receive an update for a remote player, instead of snapping to that position, make the entity start moving towards that position, such that it will arrive there one-half second from now.
That way, the displayed objects will always be one-half second behind when they are received, but that's better, because they move smoothly.
If you want to forward extrapolate the positions of the entities, check out EPIC: http://www.mindcontrol.org/~hplus/epic/

For most MMORPGs, half a second of delay isn't a big problem. If that turns out to be a problem for your gameplay, you'll need to send updates more often, at least for players/entities that are "important" to each viewing player.

Share this post


Link to post
Share on other sites

Teleporting...

 

There is that idea that the Clients view (presented to the player) tries to 'smooth' more jerky updates from the servers (not quite equalling the 'official' movements from the authoritive server) and as long as it doesnt effect game play the visual smoothing  is an improvement.

 

Possibly this may be selectively employed - with object out of interactive range being more 'smoothed' and closer objects which MIGHT still be jerky (when the differential between client and server positions is NOW impacting interactions) arranged to get more frequent updates (finer granularity) being more important to that client's player.

Share this post


Link to post
Share on other sites


Now, the question!
The server sends player's positions 2 times per second, so, like you could see in the video, other players moves are sketchy, they "teleport" to their new distance every .5seconds, how could we "smooth" their moves? 

 

Smoothing aside, have you thought about scaling this depending on how close the other player is to the person?  At 500 meters, you could probably get away with even less than that.  At 10 meters, you might want to send it more often.  Granted that's introducing a great deal more complexity than just sending all players all the other players positions every half second, so I'd try to get the smoothing working first.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement