Developer's Update #22, Client-Side Interpolation and the Movement System

Discussion in 'Developer's Blog' started by Mr Singularity, Apr 27, 2018.

  1. Mr Singularity

    Mr Singularity Administrator Staff Member

    3
    1
    3
    Hello citizens of EverEmber,

    This is MrSingularity, bringing you the latest update on progress in the construction of EverEmber's movement system.

    [​IMG]

    As the movement system's alpha state nears completion, I wanted to explain a little bit of what client-side interpolation is and how it makes the game a bit more enjoyable for everyone.

    Imagine you're an archer trying land a perfect shot on a moving target. Since you have a ping of somewhere between 50 to 100ms, it takes around 0.05 to 0.1 seconds for your message to arrive at the server.

    You line up your perfect shot, let loose, and it hits the enemy. Or does it?

    The server may take somewhere between 0.02-0.03ms to process your request, so in total there is somewhere between 0.08 to 0.13 ms of delay between you firing your arrow and the server processing your arrow fire request to see if you hit your enemy.

    In that small gap of time, it is completely possible for you to miss. This is where client-side interpolation comes into play. Your arrow shot will be computed using timestamps around the time you fired the arrow, which will play in a simulation that is occuring in a small time interval in the past for the purpose of hit detection.

    The goal behind this system is to allow you to hit your target on the server-side IF you hit your target on the client-side by accounting for and introducing a delay in the players you see on your client-side view. This artificial delay is used to give the server a breadth of time to account for transit delays between all players.

    Many, if not most of all multiplayer games use client-side interpolation to some extent.

    And this past week, we've implemented our client-side interpolation system into EverEmber's infrastructure. As another visual treat, we've put one of our 3d artist's character models to use in the displaying of our system.

    https://imgur.com/tRv4bRk

    https://imgur.com/LyleU3T

    As we wrap up the movement system, we'll begin to work on our implementation of a combat system and a chat system.

    I look forward to showing you more work from our team over the course of the next few weeks.

    - MrSingularity
     

Share This Page