ATTENTION! The content of this article is more than three months old and may not be relevant to the current version of the game

So here I am, the new guy, and someone says ’can you write a blog entry?’.

Well sure. Sure I can.

However, it’s going to be real hard to come up with something that you guys would want to read. I could just flip completely and not write about the game at all, instead documenting my adventures in Copenhagen’s seedy nightlife (I am, after all, a goddamn sexual tyrannosaurus).  But I somehow doubt that would make it past the editor.

Yeah baby!

See, what I do on H&G is mess about with the backend, stuff we dearly hope you never even notice. Whenever I’m working on something that you did notice, it probably pissed you off. Think of me as those guys at Blizzard that work on the Diablo3 backend. Those guys sure got noticed around the launch of D3, and hoo-boy don’t they wish they didn’t ;). However, I really shouldn’t be pointing the finger too much at Blizzard, since we’ve had our own little spot of bother with H&G’s login a while ago, of which I shall now sing :

We had a real hard time pinning it down, since we couldn’t reproduce it in the lab. People were reporting that login would fail with messages like ‘could not subscribe to chatview’, which frankly made no sense. We shoved some more debug output into the client, to try and get a better grip on what was happening, and a lot of users were helpful enough to post their debug logs to support (and I’d like to say a big thankyou to every one of you. These things really, really help).   But it still made little sense; In essence, the client was reporting that

  • The server was taking too long to answer
  • The server was sending too little data
  • The server was sending garbage

Now, I take offense at that. Servers shouldn’t have to take that kind of language, especially from puny clients.  But what really made no sense at all was that the server was apparently taking too long to send too little. At first we thought we had a threading issue, that somehow the server was trying to send several messages at once and garbling them; but addressing that possibility didn’t fix things. We scoured our performance data for something to grab hold of…

Go on. You have a look.

…but came up with a blank. The server seemed to be running great, having a cup of coffee and relaxing in the armchair going ‘What’s the fuss, guys? You’re acting like it was WWII or something’.  So naturally, we decided to kick it in the balls. We constructed a pure torture client that did nothing but login repeatedly thousands of times. We’d tried it before, actually, but this time Reto.Vashu built it straight into the standard client to get as close as possibly to the true error scenario.

And sweet bliss, we finally had reliable reproduction of the error and a bit of wiresharking about could finally give us what we needed to fix it. So hopefully you’re all enjoying the war now, fighting each other instead of fighting the login system.

Anyway, that was a while ago, and since then I have been… <5 paragraphs removed. Dammit Tobias, no-one wants to read that. I don’t want to read that. That poor sheep! /Reto.KenSolo> …but happily it all ended well, they released me the next day and even cleaned up the cell.

Hey, this blogging stuff is easy!


Written on 2012-06-11 by: