•   Saturday, April 27, 2024
WoW Classic

WoW Classic: Opening of Ahn'Qiraj - second stress test on 26 June

Highlight recent changes Yes No

Update, June 21, 2020: Blizzard has commented in an official bluepost on the first stress test of the opening of Ahn'Quiraj on the WoW Classic public test server. In addition, the developers announced another stress test, which will take place on June 26, 2020 at 0:00 German time.

In the course of the post, the developers explain what optimizations they have made in order to offer a halfway playable AQ event. However, they also make it clear that the opening will by no means be completely lag-free due to the mass of players.

The full bluepost (via Wowhead) reads in detail: "Hey Everybody!I want to personally thank everyone who came out to help with our stress test yesterday. We had the whole WoW Classic team in there, and we really enjoyed our interactions with all of you.Here are a few more details about the test.

What we sawA lot of people asked during the test if performance is going to be that bad in the live game, while some joked that they thought it was ready, and we should ship it. Or maybe they weren't joking? After all, the experience in our stress test yesterday was pretty similar to the original AQ gate opening in 2006. We had a ton of lag, some server crashes, and when players gave up and the population dwindled, the event finally completed. We are planning to do better than that, but we won't be able to eliminate the lag entirely.I especially want to thank all of the players who were stuck at the end of flight paths, because we found and fixed the issue with that. As with many issues, once we found the root cause it was easy to fix and turned out to be contributing to other problems, too. So to all of you who saw a geometry salad at the end of your flight: thank you; you made this better for everybody.If you hung around until about 5:00 p.m.. PDT, our test conditions changed to a point where the lag you were seeing was close to what we expect to see in the live game. We have no choice but to make a trade-off between server lag and population density. The more people, the more lag, and eventually, with too many players in the same area, the lag gets so bad that the server thinks it's deadlocked (a fancy computer science word for "stuck and can't recover"), and it restarts.A restart because the server thinks it's deadlocked is a crash, but it presents a special challenge. Other kinds of crashes happen when a program is trying to do something really bad, so we find the bad thing, and fix it, and that's it. Deadlocks are more challenging because there's no single problem, just a lot of jobs getting further and further behind. There are still improvements that we can make to address this.

Population densityOur first problem is one of exponential scaling. Imagine a Blizzard that hits 10 players, which applies an aura to each of them, slowing their movement (you talented Improved Blizzard for the slow, right?). For each player that gets the slow aura, we also have to send a message to all nearby players to notify them that the aura was applied. That means a total of 100 messages. 10 affected players sending 10 messages each (one to the person who cast Blizzard, and nine to the other players affected by the Blizzard.If there are 20 players present for the Blizzard to hit, that's four times as many messages. If it hits 40 players, that's 1600 messages. Doubling the players multiplies the work by four. Going from 10 players in an area to 100 players in an area takes us from 100 messages to 10,000 messages for that one spell. We already have powerful hardware in place, so this is a matter of understanding how many players we can support without deadlocking, which was a big goal for the stress test, and we got some very good data because of how many of you joined us.

Optimizing codeThis is something we've been doing since 2004, and over the last few months we've been optimizing code with this specific event in mind. Here are some recent examples.First, let's consider the slow aura. What if we didn't send all the aura update messages immediately? If you hit 100 people with Blizzard, do you really need to know at that exact second that each one of them has the slowing aura applied to them? The server knows right away, of course, so the aura has its effect, and is slowing their movement, but if you didn't see the aura on them for a second or two, would that be okay? If it means the server doesn't crash, our answer is yes, so we allowed the aura messages to be delayed. This also has an additional benefit, because if another aura update occurs while this first is waiting to be sent, we can combine those messages and send fewer messages overall. That results in fewer packets on the wire, and less work for the server.Another code optimization we tested yesterday had to do with facing. That's a piece of information about which direction each player is pointing. What if we slow or stop updating facing messages once the population reaches a certain threshold? It turns out that the cost is small: players appear to pop around a bit when moving. When an area is overcrowded, players already pop around a bit while moving, so this can be a huge performance win that has no visible effect. In fact, I think I saw players popping around less severely with this optimization than I would have seen if it wasn't present.We also improved the performance of deciding who to send messages to. When thousands of players gather in an area, merely deciding who needs to know about your aura updates and which direction you're moving is a lot of work, so we improved that as well.

Moving playersOnce we've addressed the previous issues, we have to consider this. When AQ first opened in 2006, we had GMs manually teleporting people out of the zone to allow the event to progress. Later, designers built automatic systems to teleport players out. Today, we have automatic teleports that perform very well, and we use them to control the zone so that it caps at a number of players that we think is still playable. Silithus will definitely be laggy, but we'd rather teleport players out than have it crash.This event spans a lot of southern Kalimdor, so being unable to get into Silithus doesn't actually mean you missed the event. There are Anubisath and Silithid to kill in Tanaris, Thousand Needles, Ferelas, and The Barrens for the entire 10 hours following the ringing of the gong.

Once moreYesterday's test gave us a pretty good idea of what these limits should be, and how we recover from a crash, but we'd like to know more, so we're going to set up for another test on Thursday, June 25, at the same time (3:00 p.m. PDT). We'll try to complete it more quickly this time, since there should hopefully be less investigation, and fewer disruptions.I hope to see you all there.P.S. Lethon says he really enjoyed your spirits with a side of mushrooms."

Update from June 19, 2020:Last night it took place, the stress test on the public test server of WoW Classic, with which the developers wanted to prepare technically and mentally for the upcoming opening of Ahn'Qiraj. And numerous players followed the call.

So many players that already the landing in the local command center of the Coven of Cenarius became a game of patience.

the real AQ stress test experience from r/classicwow

The event itself was also a lagfest for the players.

When they ask you to "stress" their servers from r/classicwow

At the finale, the developers celebrated the test by summoning numerous raid and world bosses such as Onyxia, Magmadar, and the Emerald Dragon:

Recommended Editorial ContentAt this point you will find external content from [PLATTFORM]. To protect your personal data, external content will only be displayed if you confirm this by clicking on "Load all external content": Load all external content I agree to external content being displayed to me. This means that personal data is transmitted to third-party platforms. More about this in our privacy policy. External content Read more in our privacy policy.

This video from the Serious Gaming channel gives you an idea of what you can most likely expect on the WoW Classic servers as well:

Recommended Editorial ContentAt this point you will find external content from [PLATTFORM]. To protect your personal data, external content will not be displayed until you confirm by clicking "Load all external content": Load all external content I agree to external content being displayed to me. This means that personal data is transmitted to third-party platforms. More about this in our privacy policy. External content Read more in our privacy policy.

With the large realm populations in Classic, this can only be a lot of fun. :)

Original news from June 16:There has hardly been an event in the past of WoW that was as extensive and huge as the opening of the gates of Ahn'Qiraj. For a long time, resources had to be collected from the entire server before the gates were gradually opened on all servers. And exactly this event is now about to happen on the servers of WoW Classic, bringing some problems with it. Those who were there at that time could consider themselves lucky if they "only" had to complain about massive lags. Many players were kicked from the server again and again or ported out of Silithus. Nowadays, there are more players on the Classic servers than there were on any realm back then. While the technology is better, every WoW player knows full well that there are still massive problems today when there are many players in one spot. And that's why the developers are calling all players to a stress test on the test servers.

It starts on 18.6 at 23:59 o'clock our time - thus in the night from Thursday to Friday. For this, both the character copy and the creation of a level 60 character will be unlocked on the PTR of WoW Classic (buy now 24,99 € ). The goal of the developers is to get the server full enough to create queues and then get all the players on the server to Silithus. In doing so, the amount of chars in the desert area will be limited at first and then increased more and more. The developers have made some extra changes to hopefully control massive lag. Among them for example the less frequent update of buffs or the general communication between server and client. Nevertheless, they expect lags and disconnections. The event itself will be started by Blizzard as soon as they are ready.The developers also still have layering in mind, which they would be very reluctant to use at the event. There are currently several layers on some servers, but they definitely don't want to create more layers just for the event.

Here is the announcement of the stress test from Blizzard:

Please join us on the WoW Classic PTR at 3:00 p.m. PDT / 6:00 p.m. EDT / 11:59 p.m. CEST on Thursday, June 18 for a stress test. In order to prepare for the AQ opening event, we need to test several aspects of how the game service deals with very high capacities.Test DetailsFirst and foremost, we'd like to see a full realm with a queue of testers waiting to get onto the realm. This will allow us to consider tweaks to the total realm capacity. We'll open the realm about an hour before the test so that everyone can copy over a character.Secondly, we're going to test our technology for managing the number of players in Silithus. Make sure you've got a level 60 character (the PTR copy function will be available, as will template characters with rare quality dungeon gear), and attempt to join your fellow testers in Silithus. Lower-level characters can also log into the realm, but they won't be allowed into Silithus.If you don't make it into Silithus, please keep trying to enter the zone. We're going to start with a typical zone capacity, and then we're going to increase the number of player-characters that are allowed in the zone.What to ExpectFor this event, we're optimizing aspects of the game service that you will potentially see and feel. In order to maximize the number of players in Silithus, we have to make some sacrifices to things like buff and debuff updates, player movement, general server-to-client communication, and spells.We'll begin testing the AQ opening event by initiating it automatically. Testers won't have to do anything to make the event happen. This will go on for one hour.Some of the performance issues that we're looking for will result from players running the game on different PC hardware that have different capacities. Your experience and the experience of another player with a much more powerful PC will vary.There will be lag. Despite the years of big improvements that have been made to hardware, software, and data throughput, we must accept that packing more and more players together in a small space causes an exponential (not linear) load on the game service.And of course, the game can port players out of the zone entirely, similar to how players were ported out of Silithus in original World of Warcraft. Just like we did in 2006, we consider that preferable to a crash.LayeringToday, layering is enabled for some very popular realms, and we've engineered the AQ opening event to operate as expected on a realm with multiple layers. Nonetheless, our goal with these Silithus optimization efforts is to make the event run the best it can without adding layers to realms, and we do not plan to add more layers to any realms for the event.Please Join Us!We look forward to seeing you in Silithus on the WoW Classic PTR at 3:00 p.m. PDT / 6:00 p.m. PDT. PDT / 6:00 p.m. EDT / 11:59 p.m. CEST on Thursday, June 18!

Support buffed - it will only take a minute. Thank you! All readers get free daily news, articles, guides, videos, and podcasts on World of Warcraft, Pokémon Go, and other favorite games. Up until now, we've funded this site through advertising and kept it as free of paid articles as possible, but since COVID-19, that's become increasingly difficult. Many companies are cutting or eliminating their advertising budgets for 2020. Budgets that we unfortunately have to rely on if we want to continue offering buffed for free in the future in the form we are used to. For this reason, we are now turning to you. You can support us as buffed supporters so that we can continue to offer our content for free in the usual form without introducing a paywall or publishing misleading news. Every contribution, big or small, is valuable. Support buffed - it only takes a minute. Support now We thank you in advance.

Also check