Please glance at this reasonable request

Warlow

New member
Mar 26, 2021
5
6
3
I understand this is a controversial topic but I 100% understand what the MO2 Team is working with and simply hope to make it easier on the community while the bigger picture work takes place.


Defining my language

*************************************
Currently there's a ping cap and player cap implemented implemented to ensure the servers are healthy overnight while the team rests or during appropriate times where the team needs to focus on something important.

the ping limit is somewhere around 400ms where a player is disconnected for having too high latency.

While under load at maximum player count, the servers slow down somewhat in their responses to player clients. I refer to this server performance as tickrate.

Player cap is the hard limit of players allowed to be connected to the server at any given time. Any more players attempting to connect are placed in queue.
Ping cap is the latency a client is allowed to have before their session to the server is disconnected, presenting them with the login screen again.

*************************************

I feel like i first need to explain what i understand of the systems and how they play out during a stress test. Devs can skip this part.

As i understand it the Ping cap was introduced to combat the players distorting pvp by intentionally lagging out their connections to create unfair combat. One person may swing faster than the other due to the way that swing releases are synchronised. I would imagine the ping limit was carefully reviewed and tweaked to provide a fair bracket for most/all players playing legitimately.


Prior to the stress test, when an australian with ~300ms connected to the server, the tickrate was exactly as intended. When latency was assessed for the purpose of PVP fairness, it fell within the reasonable 400ms cap.

Where this differs in the stress test.
During the stress test, the server tickrate falls, due to the higher player count generating way more interactions with the database that stores the game information. As the database struggles to keep up, the tickrate of the server falls as it cannot exceed the speed of the database or risk deleting items and failing to update character information as you play. Many of the optimisations taking place are to the database recently, allowing the system to run faster and faster so they can increase the amount of players interacting with it.

The focus of my post is the PING or latency of a player/client and how it is affected during a time where the server and database are under heavy load, decreasing the tickrate of the server.


These are examples based roughly on an Australian player such as myself.

Client Pings server = 150ms (total so far 150ms)
Server queues response due to slow tickrate= ~100ms (total so far 250ms)
Server returns ping to client= Client records 150+ms. (total so far 400ms)
Total round trip 400+ms. Player is kicked.

Your client disconnects, the server takes a while due to the slow database tickrate to register you have been disconnected and your new login attempt displays something to the effect of "you're already connected, please wait"



How this relates to the login/disconnection cycle we are currently seeing.

Currently while a low ping limit is employed, a batch of players may login to the server and some % of those will have a high latency. The server delays it's response due to slow tickrate and the high ping players are disconnected due to the inflated ping. the lower ping players have more room between their ping and the ping cap, so the delay in the server response doesn't lead to a disconnection.

Over time more players are allowed to connect and the % of high ping players remaining connected to the servers decreases, so the server eventually fills with players who have latency that copes with the slower tickrate of the server. What ends up happening is that while the server is stressed, the majority of the current players remain connected. Over time, because of the higher amount of active players contributing to the database performance, the delay between a client pinging the server and the server responding increases. The next lowest latency group starts being affected by disconnections. This is why people closer to the servers eventually start being affected too. When this gets bad enough, and the database isnt keeping up with the amount of players connected, items start going missing, skill books stop attributing their points and bank items start going missing when they're transferred.

The result is that as the server reaches population cap the queues slow down, more people are left with the queue message and you get into the game less frequently, even if you have a low ping. Also a side effect is that the players generating usable data are all low-latency players. It's effectively cherrypicking datapoints and won't provide the full real-world dataset that represents how servers perform with the full player base beyond the stress test. If they want accurate data, it's in their interest to include these players.

It's all part of the same issue of server optimisations, which is why the announcements and updates we're receiving are all regarding server optimisations and not specifically related to the issues we're experiencing. They ARE the same thing, but the communication and clarification isnt great with the community.

Also, kicking inactive or AFK players doesnt help. When they recorded the best case player cap to use, it included a % of players that were inactive or afk and connected. Removing these players without lowering the player cap would actually make the tickrate SLOWER and cause them to revise the player cap to be a lower number, leaving more people in queue.


*************************************



When two players fight both are affected by latency and to keep things fair, swings are delayed while they are synchronised to all players involved to insure all players have the best opportunity to respond to eachother. Before a ping cap was introduced, some players were found to be exploiting this system by artificially inflating their ping to gain an advantage in delaying their acknowledgement of a rival's swings. A ping cap was introduced to keep things more natural and prevent exploits.

300ms ping is acceptable when the server is not under load and the tickrate is impacted. The responsiveness of fighting is fine and the best effort to provide a fair fight is employed well.

As I mentioned earlier, during the stress test, the server contributes latency to all actions and pings within the game while a tickrate is falling behind. When two people are fighting they still have their normal ping in addition to BOTH having the ping from the slow tickrate. IF we were to increase the ping cap by the amount the server is falling behind, both players would be affected the same way and have the same impacts. There would be no advantage from the extra latency and it wouldnt suddenly allow exploitation beyond what's already present within the existing ping cap.


If you increased the ping-cap by 100-150ms to allow for the server delay during peak times, both players would be on equal footing for the duration of the fight, while still kicking anyone who attempts to use a latency-switch to gain an advantage.


What I'm suggesting is that we increase the ping cap to allow for lackluster tickrates EXPECTED in a stress test. Lift it by whatever number the devs feel is reasonable based on the performance of the server tickrate. The pvp isn't going to be hugely affected and we're still going to be protected against lag switches and exploits.

Once the new player cap is ascertained after the stress test, it's 100% reasonable to drop the ping cap back down to the ~400ms limit imposed when the tickrate doesnt flex as much as it does right now.





It's 100% understandable that during this time we are going to experience crazy lag, bugs and other weird stuff. I completely understand that and it's something I'm patient with and happy to deal with.




TLDR:
1) the ping cap should be lifted to compensate for server adding to latency. This provides more accurate stress test data, a fair and reasonable degree of access for all players.
2) PVP will remain unaffected by the rise in ping cap
3) We are ok with queues, bugs, crashes, restarts and whatever else comes with a stress test. This isnt about a lack of patience, it's about being included.


Thank you for reading, I know it's a long post. I would include a potato if I could.
 
Last edited:

finegamingconnoisseur

Well-known member
May 29, 2020
1,119
1,507
113
www.youtube.com
I played last night after they deployed the dot 72 patch and it ran buttery smooth, no lag or disconnects during the stress test. I don't know what secret sauce they used, but it fixed it for me. So much so that I'm looking forward to logging in again later.

Also an Aussie here.
 

Warlow

New member
Mar 26, 2021
5
6
3
Yeah, we generally get good smooth gameplay between a restart and when the server reaches max population and the tickrate drops. If the americans are in bed we usually get a really stretch before we get locked out
 

Rorry

Well-known member
May 30, 2020
1,018
531
113
44
Kansas
The Americans that I know, and myself are playing a lot later in our night than usual because we can't get into the game any earlier.
 

Wesley Snipes

Member
May 28, 2020
87
94
18
It's because their ping spike above the threshold.....

Wouldn't it make more sense to have a regional server where these other territories can actual play without having to worry about getting disconnected?
 
Last edited:

Kaemik

Well-known member
Nov 28, 2020
1,755
1,217
113
Well, this is the last day of this. If I can't play today, I can't play. I'll play something else. Might even go outside and do something IRL. It's a nice sunny day here.

As frustrating as this was, it gave a ton of players a chance to try the game for free and I'm really glad for that. I paid for this game and because of that I want to see it succeed. Bringing in all this new blood will help it succeed.

All that being said, I hope they have gotten a lot of valuable data on server performance and queue performance they can use to make the game run better if population ever creeps back up to these levels again.