3 years ago
Server tickrate
It may seem strange, but why even in advancing modes by EA in 16v16 or 32v32 is the same 45Hz tick rate used (not 60 or higher)? Okay, maybe in 128 player modes this worked very badly and increased t...
They introduced the information compression with BFV, I believe to compensate for the bigger maps.
The code is still in there, and I doubt it is working as well as in BFV ...
So Magic Bullets are still a thing, and the "feel" like you got a tank shell to your head.
Well could be all fixed if the community would be able to rent servers like in the good old days.
Magic bullets are due to people playing with poor connections that have high jitter or packet loss….the server is struggling with inconsistent information being sent from the client so it’s bullet bundling multiple hits into a single packet
@emerson1975 wrote:Magic bullets are due to people playing with poor connections that have high jitter or packet loss….the server is struggling with inconsistent information being sent from the client so it’s bullet bundling multiple hits into a single packet
BINGO!
Exactly right @emerson1975 !
And the player's connection quality is also an important part of why EA/DICE Sr Mgt have simply just concluded: "Why should we spend money and drop our profits by offering high tick servers, when the many players connecting, are connecting with so poor line quality that the game experience will be suffering anyway!?"
This is understandable to some degree, and then again not. Mainly because it is EA/DICE themselves that have not enforced minimum restrictions of players for them to be able to connect to a given game server. E.g. we have Japanese and South American players that have no restrictions in forcing themselves onto playing on European based servers, despite such players have a ping rate of e.g. 700-1,600ms!!! By connecting to such far out of own region servers, they cause these servers to instantly start lagging for everybody else playing on the same server and also causing the bullet sponging in the game play that are frustrating everybody.
Its ok to want to play with some of your far out of region friends, but can we please agree that you should then host servers for that purpose and not just allow this misery to be spread across all other servers at the same time, causing the gameplay to be terrible for the vast majority of other players who do not enjoy such poor gaming experience.
Just reading some online notices that COD MW offers 4k at 120Hz screen refresh rate for both Xbox and PS5 gameplay.
Is this really true?
I am not playing COD myself, but if so, definitely then another area where EA/DICE appear to be loosing out badly and have done nothing for BF2042 to be a modern produced FPS game, as the specs mainly remained exactly the same as previous already released games in the franchise.
E.g. as we just debated here in this thread, the 45Hz server tick rate in BF2042 is nothing new and more actually a step back compared to what we have tried with higher tick rates in previous battlefield games. So why this degeneration?
They moved?
But the issues are still there after half a year. In this period Dice LA joined BF4 to fix the game. But it dont looks like they did anything or planed anything.
Season one starts with the same server problems as they had at the launch. So the servers doesnt handle the ammount of players (looks like nothing has upgraded)
Low tick rate along with players playing non local servers has made the game a complete mess and far worse than launch ever was in regards to netcode!
Bullets not getting hit markers but getting blood splatter along with a weird delay in hit markers and kills then we have insta deaths eighty percent of the time and dying meters behind cover, this has made the game completely unplayable with my massive ping of 20ms
@emerson19752042 have never had good netcode, but it seems to have gotten worse since the last patch.
The netcode are now so bad that the game is almost unplayable and you feel that half your deaths are 'buggy' - instadeaths, kills around corners/cover. And this goes for both 64 and 128 player-modes.
@kregora wrote:
@CyberDymeI guess DICE learned that the cheapest server isn't the best option, or they wouldn't have switched the data center for Europe. My idea is they moved from Amsterdam or Dublin to Frankfurt.
Hi @kregora,
As far as I know of, then EA/DICE still use the same server provider though? (and they are actually not cheap! Or rather, they have great stellar performance if you are willing to pay for it. :o)
But yes, EA/DICE may have consolidated their BF2042 hosting to Frankfurt, while still also using other locations for previous BF games also still being hosted?
And yes, they are not cheap! But they do not provide more bandwidth and processing power beyond what EA demands in the contract terms with them. Matter of fact is, I have directly tested and observed the performance on said hosting boxes while observing live game play with my own soldier and 10+ friends in 64-player games.
Zero line drops by the game hosting partner! Ever!
While on the PlayStation, the EA/DICE game crashed and/or lost the connection multiple times.
E.g. a server software entity could suddenly drop the line to 10-40 of the connected players.
Likewise, zero package losses or any required processing time ever not completed between the server ticks.
While in game observations again showed at times severe lagging, rubber banding of soldiers on screen and bullet sponging.
For all what we observed, it was all down to the server side software running the BF application on the server box and how it links back to the EA domain controllers for player account mgt that caused this trouble. All of course also linked to how the client side software of the same BF game was interacting with the server side software at the same time. An the server hosting company is not really responsible for this poor performance and have in reality no way either to improve on it, as they mainly simply are responsible for ensuring the server box is running 24/7 with the given software running and then its served according to the specs as dictated by EA/DICE in their contract terms.
I used to think lag compensation was kind of a myth, but then I read this netcode article and it changed my mind. It talks about how the game server tries to synchronize high ping players to the server, by allowing them to run further ahead in time and predict what will happen in the future.
https://timonpost.medium.com/game-networking-9-bonus-overwatch-model-4faba078cf05
The above picture is from an Overwatch GDC slide. The server is currently on tick 9. The client is on tick 15. So the client is predicting 6 network ticks into the future and that number gets bigger as ping time increases.
This is all done so that when tick 15 from the client finally reaches the server, enough time will have passed due to ping latency, the server will also now be on tick 15. Of course by the time the server simulates tick 15, the client will still be 6 ticks ahead of the server and now be simulating tick 21.
While this all sounds good in theory. It's never perfectly synchronized and some players are running a tick or 2 ahead of everyone else.
If the tick rate is 45Hz, then each tick represents a 22ms slice of time. So even being one tick ahead of you're opponent represents a 22ms advantage in reaction time.
It's no wonder sometimes players pop around corners and shoot me before I can see them. The server is letting them run more ticks into the future than me.
I find this whole thing about letting some players run more ticks into the future than other players deeply disturbing and it explains a lot of the weird out of sync issues I experience.
The fundamental point missing in this conversation is cloud computing. No, I don't mean something like the Nvidia Geforce Now, Google Stadia, or Xbox Cloud Gaming. And this is why I think EA will not allow private rental servers like they did in BF3/4 days.
In BF1, 5, and now 2042, if you attempt to join a game through matchmaking, and after some time, you are pulled into an empty server. That server was spun up on a cloud server that isn't hosted by anyone other than a virtual server on a cluster somewhere in your region and then began seeding to other would-be players looking for a game through matchmaking. I assume Portal works the same way but you are able to manage some of the game play options available. I've only briefly tested creating servers in BF5 and you basically use a template and make some gameplay changes before you start. You can save this template and re-create a game server with the same settings over and over again but will still be hosted by EA on their servers, never a private server. Server persistence depends on the last player who, upon leaving, "turns the lights off on their way out", shutting down the server.
The tick rate is still kind of a mystery for me. While I think the tick rate has a set maximum rate, I wonder if this is set depending on which client starts/creates the server. Are console servers always a lower tick rate vs. pcs? If so, that would imply that console servers are unable to tolerate anything higher than that without robbing the much needed overhead and resources of the console that created the server. I recall the days in other multiplayer games, if the person that created the game, left the game, server migration would need to happen before the game could resume. That's client side servers.
Let's talk about Virtual Machines (VM). So you jump into BF2042 and hit that beautiful PLAY button. You matchmake for a bit and then start a game and sit at the Looking for Players screen for a bit. You jump into the server only to see bots... bots everywhere. Congrats, you just atomically created a virtual server hosting a BF2042 multiplayer game. The same happens when you play solo or co-op. Unless EA is using an Elastic cloud infrastructure, the cpu cycles will always be limited by the virtual machine (VM) creation parameters as not to steal cycles and resources from other VMs hosting other BF game servers or even unrelated services on the same server cluster. No, you do not create a game on your pc or console, you ask EA to spin up a VM to host a virtual game server that only you or the people you allow to join. Even these solo or co-op games can suffer from network latency, packet loss, and disconnects/interruptions. I imagine that these solo/co-op games are also limited in tick rate as the VM parameters would be the same.
Why did they do this, not sure but I feel it has more to do with a business model of pushing a title out as fast as possible and then patch/fix until the next iteration is ready to go. Gotta get that up-front prepurchase buy. Also, cloud computing and the several different types of cloud infrastructure can be very expensive. Being cheap and "robbing" players for max profit's isn't going to be the case. Didn't they say that the BF franchise was around 10% of their portfolio? Yeah, it's not a money maker, especially now. Look no further than Apex Legends as their cash cow and that game runs and is supported well. What tick rate are the Apex servers running at?
Running on virtualized servers in the cloud is fine as is proven with BF1/BF5 doing the same and both having very acceptable netcode by now. At least I barely have those bad hitreg experiences or player models lagging around as I have every match in BF2042. And if I do, then I can use the scoreboard to see the ping of those players and sometimes (not always) this explains why those events happened.
I would even go so far as to say that using cloud servers is the best way as they can easily scale and only have to pay for what they use. And definitely 1000 times better than having any client host the match. As far as server performance is concerned this depends mostly on the parameters set by the cloud infrastructure provider. At work we are running a large cluster ourselves and I can easily spin up a server in seconds with 96 cores (which is the limit given the underlying hardware). If I run `htop` I can see all cores (which looks impressive for 96 cores 🙂 ). If I am the first one doing that, then I have (almost) the full performance of the underlying hardware. But due to the configuration of our cluster, I can also spawn such a POD (we are running k8s) even if another one is active. To me this looks like I have the same machine, but both 'VMs' running compute intensive jobs, they will be slower of course as they share the underlying HW.
So, it depends on how the cloud provider chosen by EA (AWS?) has configured their cluster. Do they allow for the same 'sharing' of CPU cores or does one get dedicated cores. If the allow for a shared CPU, then each server instance gets slower (less CPU cycles per wall time), even when the virtualized HW as it can be seen by the client does not change. And I guess that Dice tested their servers and decided for the 'right' size and parameters of their VMs in their idle test environment and now with more servers active and the same HW getting slower because of that, they face issues. All of this is of course a bit of speculation as I don't know the AWS/Azure/... config (most likely even Dice does not know that in detail) and if all of the lag/hitreg problems are related to server performance at all.
@OskooI_007 @Dont_Qwit @DuaneDibbley
I dunno about all that stuff but I DO know from the player's perspective our clan's ability to host our own servers (BF1942 through BF4) set them up the way we wanted and have the ability to admin as we saw fit (and judging by the fact that they were almost always packed, players agreed) was a FAR SUPERIOR experience than what we're are all going through in the last few years.
I don't know why EA/Dice adopted this new matchmaking system and removed the ability to host our own servers but in my view it sucks.
Hi @Dont_Qwit ,
It may come as a surprise to you and others, but the Apex Legend servers are running just at a measly low 20Hz tick rate.
I just shared above in the thread that BF2042 runs 45Hz. As reference, then other games like CS:GO run at a 64Hz tick rate and Riot Games' VALORANT offers a 128 Hz tick rate...
With Apex Legends, some of the leadership and tech folks did also come out to explain their reasoning for such a low tick rate and also admitted that they actually catered more to the 'less than perfect line' connected players, by also in Apex compensating high ping players for their delays and that the low ping players actually are then factually the ones suffering from this as a result in the gameplay and exchanges they have when facing such high ping players in the game.
An EA Apex techie wrote a good informative article about this subject a while back, which to great extend is also valid in similar fashion for the Battlefield games and their netcode/hit registration mechanics. So definitely worth a read to understand EA's position on this subject.
Personally I am playing with a near perfect line quality and very low latency. So I can unfortunately only be upset with the way this article has been written and the way the catering to the poor connected players is done by EA, as they write it as that is how it is becoming most fair to all the players in the game.
How so, I must ask?
As to me, it is absolutely not fair that I 24/7 is constantly not getting any hit markers despite right on target of (high ping) enemy soldiers, and experience repeatedly how they kill me long after I am behind cover. And I am the one caring to connect while using a good proper internet line for FPS gaming. Go figure...
EA Developer's article on Apex Legends, their server tick rate and netcode:
What Makes Apex Tick: A Developer Deep Dive into Servers and Netcode (ea.com)
@Ironhead841 wrote:@OskooI_007 @Dont_Qwit @DuaneDibbley
I dunno about all that stuff but I DO know from the player's perspective our clan's ability to host our own servers (BF1942 through BF4) set them up the way we wanted and have the ability to admin as we saw fit (and judging by the fact that they were almost always packed, players agreed) was a FAR SUPERIOR experience than what we're are all going through in the last few years.
I don't know why EA/Dice adopted this new matchmaking system and removed the ability to host our own servers but in my view it sucks.
Yeah we desperately need to get back to those days, and DICE need to act fast to save BF2042.
@RayD_O1 wrote:
@Ironhead841 wrote:@OskooI_007 @Dont_Qwit @DuaneDibbley
I dunno about all that stuff but I DO know from the player's perspective our clan's ability to host our own servers (BF1942 through BF4) set them up the way we wanted and have the ability to admin as we saw fit (and judging by the fact that they were almost always packed, players agreed) was a FAR SUPERIOR experience than what we're are all going through in the last few years.
I don't know why EA/Dice adopted this new matchmaking system and removed the ability to host our own servers but in my view it sucks.
Yeah we desperately need to get back to those days, and DICE need to act fast to save BF2042.
I am afraid that it is already far too late to save the BF2042 game.
It had it's chance.
The meltdown was allowed to simmer for too long.
No meaningful fixes and no new added contents to it for the xmas/new year period was the dagger into it's heart.
It was on the heart&lung machine for life support during the winter and spring, just to keep it barely breathing.
And now with the much delayed Season1 drop, with near nothing of substance, it woke up from the coma only to be in a vegetative state.
I'm not sure if I'm following what you are saying, do you mean renting a cloud server from EA/Dice?
I mean I guess that would be ok as long as you could still maintain admin controls, I'm not sure how that would all work.
I would still prefer if we could host our own servers and since that wouldn't cost EA/Dice any extra money I don't understand why they would be against that.
@Ironhead841
Yes, what I meant was paying for an (persistent) server instance managed by EA/Dice where they would have to act as a reseller. It would be in the cloud infrastructure they currently run their other (Portal) servers in. Otherwise it would be a big overhead on their end and I guess they would not be willing to invest that.
We have to be realistic -- the option to get your hands on the server executable and host this on your own hardware will most likely never come back. The best you can hope for is the state we had up to BF4 with dedicated server hosting companies that would offer servers that could be rented from them (and they would manage the server along with the server executables provided by Dice). The system worked pretty well for us. But I also doubt that this will make a return anytime soon.
So the best and at least somewhat realistic option would be to have Dice divide their portal servers in two pools. One of the pools could be persistent server instances that they would be available 24/7 (or at least visible in the server browser -- they don't have to actually be running if nobody is playing on them). From a player perspective, there is no difference in a server that is REALLY running 24/7 and one that only starts up on demand as soon as the first player connects and gets destroyed once the laster player leaves -- exactly like the current Portal servers. The only difference would be that it is visible 24/7 in the server browsers. The rest would be identical to the current Portal servers.
@CyberDyme wrote:Hi @Dont_Qwit ,
It may come as a surprise to you and others, but the Apex Legend servers are running just at a measly low 20Hz tick rate.
I just shared above in the thread that BF2042 runs 45Hz. As reference, then other games like CS:GO run at a 64Hz tick rate and Riot Games' VALORANT offers a 128 Hz tick rate...
With Apex Legends, some of the leadership and tech folks did also come out to explain their reasoning for such a low tick rate and also admitted that they actually catered more to the 'less than perfect line' connected players, by also in Apex compensating high ping players for their delays and that the low ping players actually are then factually the ones suffering from this as a result in the gameplay and exchanges they have when facing such high ping players in the game.
An EA Apex techie wrote a good informative article about this subject a while back, which to great extend is also valid in similar fashion for the Battlefield games and their netcode/hit registration mechanics. So definitely worth a read to understand EA's position on this subject.
Personally I am playing with a near perfect line quality and very low latency. So I can unfortunately only be upset with the way this article has been written and the way the catering to the poor connected players is done by EA, as they write it as that is how it is becoming most fair to all the players in the game.
How so, I must ask?
As to me, it is absolutely not fair that I 24/7 is constantly not getting any hit markers despite right on target of (high ping) enemy soldiers, and experience repeatedly how they kill me long after I am behind cover. And I am the one caring to connect while using a good proper internet line for FPS gaming. Go figure...
EA Developer's article on Apex Legends, their server tick rate and netcode:
What Makes Apex Tick: A Developer Deep Dive into Servers and Netcode (ea.com)
I think it's worth noting a significant difference between Battlefield's tick rate and Apex Legends' tick rate.
Many games don’t compute full world states on each tick, making it misleading to try to compare one game with another based on a single figure like “20Hz” vs. “30Hz.”
The question is: What exactly is happening during each tick? We want the world state to be as accurate as possible, which is why our servers save the full world state on each tick. If we didn’t do this, it would probably save some of the CPU costs on our servers, but we would lose accuracy in our simulations, and that isn’t worth the risk.
- Apex Legends developer
Apex Legends has a fixed 20Hz tick rate, but it's sending an update of everything that's happened in the game world since the last tick.
Battlefield on the other hand has a variable 45Hz tick rate. The game server is updating some parts of the game world at 45Hz. Other parts of the game world are only being updated at 5Hz.
The variable update rate mostly has to do with which direction the player is facing and how far away the enemy players are. If enemies and vehicles are behind you, then the server sends you updates about them at 5Hz. But if they're in front of you and a close distance, the game server will send you 45Hz updates about their location.
The Apex team states they don't think a variable tick rate is worth the risk of loss simulation accuracy, and they're right. I'd rather have a fixed 20Hz tick rate where every change in the game world being transmitted in each tick. Instead of a variable tick rate where only some changes in the game world are being transmitted.
Because when only some of the game world changes are being sent, we get situations like this. Where invisible players just appear out of nowhere because there were behind a wall and the game server was only sending you 5Hz updates about their location.
I'd personally choose a fixed 20Hz tick rate over a variable 45Hz tick rate.
@OskooI_007 It seems to me that there is a slight inaccuracy in your thoughts. If a player appears out of nowhere in front of your eyes, then the problem here is not in the server's tick rate, but in.. bugs in the game itself? Or is it just a consequence of packet loss, because this also happens in BF1 with 60Hz. I have never had this.
10Hz. But this is all that is further than your field of vision at 100 meters and behind you. This most likely applies to BF2042 as well.
The developers of Apex Legends also said about bandwidth that with an increase in the tick rate from 20 to 60Hz, the bandwidth will also increase by 3 times! 3 TIMES! It's just awful. And you also need to buy new processors that will be able to run thousands of games at three times the frequency of the simulation.
I remember Riot Games (in League of Legends) in their defense saying "we don't want to switch to new tools for creating skins, because our artists can only work on 15-year-old software, and teaching new programs is unprofitable for us (expensive)".
It's the same here, most likely DICE from the very beginning thought that the game would be a failure and did not invest in new servers.
Excellent points you added @OskooI_007 !! 👍
Maybe another nice video wich shows what a higher update rate means even if the server and client runs on a slower tickrate