Netcode changes and questions w/ Dev Kartigan

TheTotsTheTots Posts: 2,278Player
Here you can ask any questions you have about the changes, and report anything strange you may see in game. Dev Kartigan will be on hand to help out with explaining his changes.

List of all 'Netcode' changes and updates
  • Groundspeed calculation consolidated.
  • Added weapon sway and recoil into replicate move. It was previously set to send continuously.
  • Spectators now have a reduced send rate to the server. There is no need for them to send packets at the same speed as live players.
  • The server no longer sends client corrections to dead pawns. This was wasting bandwidth.
  • Many actions with large animations now send position updates to the server, where previously they did not. This reduces the differential in the location when the animation finishes.
  • Ladder speed calculations consolidated.
  • Updated the client side move combiner, so we don’t have to send the server updates as often. This allows us to “pack” several similar moves into one send to the server.
  • Info: If your client is running at 200fps, you may have up to 7 updates run on your client before it is time to send an update to the server. The combiner has been updated to improve the combination of and allow these 7 updates to combine, as long as no major actions occur.
  • Improved client/server action sync, so there is little/no delay between when you start running on the client and when you start running on the server. This also includes many other actions besides running.
  • Sliding, Vaulting, Ladders, Diving, Takedowns, and Jumping have all been reworked with the new code.
  • In previous versions of the game, you were guaranteed to get a server correction for your location after performing one of these actions.
  • Loads of visual issues fixed.
  • Fixed an issue where a running player looking left/right repeatedly could cause their hitbox to move significantly per frame. (Known as the Knox wobble)
  • Fixed some visual issues with pawns rotating.
  • Fixed some visual issues with pawns looking up/down.
  • Fixed some visual issues with pawns when they are anchored.
  • Uncapped pawn rotation values, so you can watch your friends spin. (If you want)
  • Found and fixed an issue in the physics system where the pawns deceleration would not sync with the server.
  • Added more code to check server/client sync.
  • A big desync condition was removed from when your pawn takes bullet damage.
  • In previous builds, when your pawn was shot the server would have to send you a correction, making it more difficult than intended to re-aim after being hit.
  • A downed player now sends messages to the server at a reduced rate.
  • No need for them to send at the same rate as a live player.
  • Fixed visual issues in takedowns. The animation looks a lot cleaner now.
  • Player leaning has been improved.
  • There should be far less circumstances where someone leans and other clients do not see it.
  • Also fixed a case where the client could lean the full distance and the server calculation would not have them leaning the full distance.
The game wasn't made exactly to my specifications, so I feel it's broken.

«13

Comments

  • Twitchr.Carbon8Twitchr.Carbon8 Posts: 337Player
    Thanks Kartigan,

    General question here, just from reading the patch notes it seems like alot of these changes are prioritizing network bandwidth for active live players, which makes complete sense.

    Could you explain the 200fps/ 7 action update? What is considered a major action / minor?
  • KartiganKartigan Posts: 84Developer
    @twitchr

    200fps is 0.005 seconds per frame. 30fp is 0.03333 seconds per frame. 0.03333 / 0.005 is ~6.67 updates on the client versus updates on the server.

    Major actions cause an instant update to send to the server.

    Examples:
    When you are stopped, and start moving.
    When you are moving in one direction, and decide to move in a different direction.
    When you lean. (New with patch, lean was moved here)
    When you start a slide. (New with patch, slide was moved here along with associated game systems)
    (lots more)

    In short, it includes any actions that cause a non-predictable change in the status of your player. While you are moving forward, for example, we can predict the continued movement in a forward direction.

    This is one area of the code that included a significant amount of the updates.
  • frankoffrankof Posts: 1,096Moderator
    So, basically, the server is locked at "30fps", or rather 30 updates/s?
    ss_4_frankof.png
  • KartiganKartigan Posts: 84Developer
    That is correct. The default setting for MaxTickRate on the server is set to 30.

    We recommend the default setting, as that is where a vast majority of the testing occurs.
  • frankoffrankof Posts: 1,096Moderator
    Kartigan wrote: »
    That is correct. The default setting for MaxTickRate on the server is set to 30.

    We recommend the default setting, as that is where a vast majority of the testing occurs.
    You just got me confused when you called it "FPS" :D
    ss_4_frankof.png
  • Twitchr.Carbon8Twitchr.Carbon8 Posts: 337Player
    Kartigan wrote: »
    That is correct. The default setting for MaxTickRate on the server is set to 30.

    We recommend the default setting, as that is where a vast majority of the testing occurs.

    Hmmm, I guess i'll have to try it out. 30 Tick Rate seems pretty darn low though. I think the lowest in most competitive FPS's is 60 or 64, with alot of comp matches taking place on 128 tick servers. Is this "hard lock" or can the server admin adjust the tickrate?

    I'll hold my judgement till i actual try it out though
  • =IK=Doba==IK=Doba= Posts: 2,789Player
    Please explain 2nd point on recoil change
    _____________________________
    #Support Comp Mode

    https://www.youtube.com/channel/UCN4YhM6jUB2MxVj8i3b9rhw
  • SSKnecaboSSKnecabo Posts: 2,721Player
    twitchr wrote: »
    Kartigan wrote: »
    That is correct. The default setting for MaxTickRate on the server is set to 30.

    We recommend the default setting, as that is where a vast majority of the testing occurs.

    Hmmm, I guess i'll have to try it out. 30 Tick Rate seems pretty darn low though. I think the lowest in most competitive FPS's is 60 or 64, with alot of comp matches taking place on 128 tick servers. Is this "hard lock" or can the server admin adjust the tickrate?

    I'll hold my judgement till i actual try it out though

    BF3 had something like 10-30 tickrate, I think they increased it later on. As an admin you can adjust it as you like.
  • KartiganKartigan Posts: 84Developer
    @twitchr

    You are free to adjust it, as it has been adjustable. Testing showed slightly improved viewed rotation rates at higher values, but not much else. If you or your players notice any benefits with higher rates, let us know.


    @=IK=Doba=

    "Added weapon sway and recoil into replicate move. It was previously set to send continuously."

    Weapon sway and recoil are packed into the main message send (which is called replicate move) to the server. They used to send at an uncapped rate and individually call sends to the server, which is not necessary. A call to send to the server is the expensive part, not the data packed in it.
  • KartiganKartigan Posts: 84Developer
    Note: If my answers to any questions are insufficient or it still does not make sense, let me know and we'll give it another go.
  • =IK=Doba==IK=Doba= Posts: 2,789Player
    Kartigan wrote: »

    @=IK=Doba=

    "Added weapon sway and recoil into replicate move. It was previously set to send continuously."

    Weapon sway and recoil are packed into the main message send (which is called replicate move) to the server. They used to send at an uncapped rate and individually call sends to the server, which is not necessary. A call to send to the server is the expensive part, not the data packed in it.

    I knew Ill get some technical explanation that wont make sense... I'm more interested what it all means in terms of gameplay... does it feel any different?
    _____________________________
    #Support Comp Mode

    https://www.youtube.com/channel/UCN4YhM6jUB2MxVj8i3b9rhw
  • KartiganKartigan Posts: 84Developer
    The game, in general, feels quite different with your client not receiving server corrections at the rate that it used to occur. Server corrections are when the server thinks your data does not match its data, so your client is corrected to the server's version of the data.

    There were no gameplay changes made to recoil or sway. They should act the same.

    It was the intent to not alter the gameplay, while updating the netcode (while moving/consolidating updates and data to improve client/server data synchronization).
  • {4F}DeadlyGrouse{4F}DeadlyGrouse Posts: 277Player
    "In previous builds, when your pawn was shot the server would have to send you a correction, making it more difficult than intended to re-aim after being hit."

    accidently posted this in the other post. meant to post it here. what does this mean exactly? Aimpunch was more than intended in some situations?
  • Bashar_al-AssadBashar_al-Assad Posts: 580Player
    I don't seem to understand any of the technicalities. I play with 240-300 ping ( no servers near me). Will I see any difference? Or does this update improve performance for low pingers only?
  • FlatlanderFlatlander Posts: 630Player
    Kartigan wrote: »
    @twitchr

    You are free to adjust it, as it has been adjustable.

    My personal server manager ( :P ) just reported that he cannot adjust the tickrate. I told him to leave the server on vanilla settings anyway but that how it is .

    AAPG is good!
  • KartiganKartigan Posts: 84Developer
    @{4F}DeadlyGrouse

    When hit, your client was receiving a server correction caused by the hit and would also get other game related effects, i.e. "aimpunch". The need for getting a server correction was fixed.


    @Ephraim_cpp

    The patch will benefit your ping range quite a bit. Lag is lag, we cannot fix that, but your gameplay experience should be improved quite a bit.
  • {4F}DeadlyGrouse{4F}DeadlyGrouse Posts: 277Player
    Kartigan wrote: »
    @{4F}DeadlyGrouse

    When hit, your client was receiving a server correction caused by the hit and would also get other game related effects, i.e. "aimpunch". The need for getting a server correction was fixed.

    So that would explain why sometimes when I got shot it felt like I got hit by a truck and other times it was like getting a slap to the face?
  • KartiganKartigan Posts: 84Developer
    @{4F}DeadlyGrouse

    That would be a perfect description. Server corrections to your client vary in intensity.
  • {4F}DeadlyGrouse{4F}DeadlyGrouse Posts: 277Player
    @Kartigan thanks. really looking forward to trying it out.
  • [kT]Dominus[kT]Dominus Posts: 85Player
    =IK=Doba= wrote: »
    Please explain 2nd point on recoil change

    What Tots had explained yesterday in the 4f vs DC stream chat is that this makes the spectator mode more accurate because of the way it is updated.
Sign In or Register to comment.