Here is clarification on the NA server attack + a workaround

There is a wild amount of misinformation being posted about attacks on the North American Server that have been happening on-and-off over the last several days. Please let me dismiss the obvious ones and we’ll get more technical afterwards.

NO MALICIOUS CODE, PROGRAMS, SOFTWARE, ANYTHING, IS OR CAN BE DOWNLOADED TO YOUR COMPUTER BY THE METHOD THESE ATTACKS ARE USING!
The amount of people claiming this outright is insane, and completely baseless.

The ONLY risk presented by this method of attack involves the potential for the attacker to collect the i.p. addresses of any user who opens the Custom Tab and Lobbies sub-tab while an attack is underway. That is, only if the external links embedded in these maps (more on that later) are owned by the attacker. For the majority of users, this is mostly harmless, as your IP address changes regularly. For anyone who has setup a static IP address, then yes, your IP would be present in a list of collected IP’s, and could be targeted by attacks such as DDoS, etc.

Stop telling people they’re getting malware, viruses, or that their computer is compromised. It is not.

People have suggested several different workarounds, such as viewing your match history and starting a game from there, but this is what I’ve been doing, and haven’t found a better method:

From the Battle.net client, login to EU or KR, as they are not being affected at this time. Select the Custom tab. Select the Arcade sub-tab (Lobbies, Versus, Arcade, Campaigns). Then logout of Starcraft 2. Change the server to US and login. You can now click the Custom tab, and it will open to the Arcade tab, not the Lobbies tab (which is where the freeze is being initiated). You can browse Arcade maps this way.
IMPORTANT NOTE
When your game ends, the Lobbies sub-tab will be opened by default, and behind the results screen., which will cause the freeze. This can be avoided by having the CAMPAIGN tab, or any tab other than CUSTOM active when the game starts. When the game ends, that will be the tab open behind the results screen.

You can still see open lobbies at this link: //sc2arcade . c o m/open-lobbies.

If you want to be completely safe, connect to a VPN if you have one, in case you accidently open the Lobbies sub-tab.

If you want technical information, or (wisely) don’t believe that I’m not just another idiot making claims based on rumors I’ve hard, this is the best description I’ve been able to find: gist.github . c o m/Talv/d8d3f399e21648c03c96d0c9dbd9d9b8

Lmao. It’s not even causing a crash. The game just lags as it tries to load an image that isn’t available. Somebody on their software team didn’t do their job right. You always want to have a time-out, and you always have a thread dedicated to loading resources so that the GUI/render thread continues to operate fine (even if the resource thread lags).

It’s not even hard:

unsigned int startTime = timer.getTimeMicroSeconds();
unsigned int maxTime = 5000000;
atomic_bool taskCompleted = false;
std::thread * t = new std::thread([](){
  // Do stuff
  // Flag we are done
  taskCompleted = true;
});

while((timer.getTimeMicroSeconds() - startTime) < maxTime)
{
    SleepMicroseconds(1000);
}

if(!taskCompleted)
{
  // Handle this with a log message or exception
  // Thread is hung, let it do its thing and keep moving
  t->detach();
}

delete(t);

What’s nice about this code is that it guarantees the app continues running even if a thread is completely locked.

You’re the first person I’ve seen that hasn’t called it a crash :rofl: Thaaank you. Also, from what I gather (no first-hand knowledge) current Blizzard barely understands Starcraft 2’s design and engine since most of the original teams are gone. Maybe they are actively working to fix this right away. Which means 6 guys are gathered around a computer scratching their heads.

@Blizzard Are your current employees familiar with the complex coding technique known to us master-software-developers as “Copy and Paste”?

2 Likes

If that’s too complicated, just ask ChatGPT to do it for you.