Gamasutra: The Art & Business of Making Gamesspacer
View All     RSS
September 23, 2014
arrowPress Releases
September 23, 2014
PR Newswire
View All





If you enjoy reading this site, you might also want to check out these UBM Tech sites:


 
“Unofficial” community technical support
by Karl Schmidt on 06/10/13 11:26:00 am   Expert Blogs   Featured Blogs

The following blog post, unless otherwise noted, was written by a member of Gamasutra’s community.
The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.

 

Like most people who are interested in computers and technology from a young age, I was the resident technical support for my family and friends. Luckily my Dad is also technically-inclined (hardware and software engineer) so he helped reduce the overall amount of work.

For my first job, I ended up working at a local, small computer store as a service clerk. It was a technical support position. I learned how to talk to customers in person and on the phone, explaining issues and walking them through steps to resolve them. I enjoyed working there and it laid the foundation for a lot of customer service skills that came to be very useful later on in my career.

Fast-forward around nine years from then. During the beta and launch of Warhammer 40,000: Dawn of War II, the programming team was asked if we could join the official forums to help troubleshoot and collect information about technical issues that had/would come up “in the wild”. This was the first time Relic had launched a game with their own hosted community website with forums. Previous to this, RelicNews.com was created by fans to fill this gap. I signed up in an instant, under the handle ‘Pulse’.

DOW2 community site account information

DOW2 community site account information

You can see in the screenshots that I ended up posting quite a bit (2009-2012). It was slow at first – I was so busy with my programming duties and at first the other programmers were all participating as well. As time went on overall participation with the community tapered off, with communication flowing (mostly) through our dedicated community manager instead.

I ended up responding to almost every technical support thread that came up. Many of them were repetitive, and FAQ threads would be created and “stickied”, but they would eventually be out of date, links would get broken, and players wouldn’t read them. It would be better to walk players through some ‘did you check this?’ steps before they are allowed to post in the forums instead.

It was inspiring to see other community members chipping in and responding to support requests before I got to them, suggesting the same steps I had previously posted, or even just posting: ‘hang tight until Pulse gets here’.

Over time, with the help of the community, almost every support request was resolved pretty quickly. I eventually made an account (Pulse.r) at RelicNews so I could respond to issues that came up in that forum as well.

The Dawn of War II series of games were patched many times, so the remaining support requests ended up mostly being client-side issues. There were many times where bugs would be reported in the community forums that I had previously never heard of or seen internally, and thanks to players reporting them, I was able to gather information, and in most cases fix them. We were even able to test potential patch fixes with tech-savvy users (and the fact that we had a PC game we could ship them a new DLL, for example).

I wish I had been able to thank people in the patch notes for their help. I didn’t write the patch notes, and wasn’t even allowed to post that I had fixed something until the patch was released. I understand there are public relation factors to take into account, but at times I felt my hands were tied when interacting with the community. Of course the times I found that pirates were asking for support, despite going to lengths internally to prove that they were indeed pirates, (and figuring out a system to detect them accurately) you couldn’t just say “actually buy the game and then I can help you”.

The game used a crash-reporting system which was instrumental to fixing many issues, as well as helping out individual players. I was able to look up their specific crashes, examine the logs and callstack, and could quickly and quite accurately discern if it was a real problem, bad hardware, old version, driver problem, pirated version, etc.

As time went on and more bugs were fixed, the most common problems were:

  • Defective hardware
    • The Essence 2.0 engine was very good at stressing hardware in all sorts of ways, so many defects would only show up when running the game
    • Most common was RAM (used memtest.org), then video card
    • I was quite shocked how often this was the root issue
  • Unstable system overclocking (see above about engine stress)
  • Out of date drivers (or buggy ones)
  • Steam cache corruption (not a huge deal, very easy to repair)
  • Running out of memory (usually the player had manually set flags to force the game at a higher quality level that used more memory than their system had addressable space to provide)
  • Games for Windows LIVE.
relicnews.com account information

relicnews.com account information

Eventually I had a system of templates that I would use to instruct how to retrieve and post dxdiag and game log files so I could read them, or to send me key information to help me identify their crash reports so I could investigate further.

GFWL (Games For Windows LIVE) was a huge mistake. In concept it seemed great, the LIVE service is quite good for XBox, but there were numerous problems with their PC attempts. There’s enough here for another blog post, so maybe I’ll write that up sometime.

Except near the launch of the original Dawn of War II, all the work I did with the community was practically voluntary. I was on the forums during work hours (and even at home), while still meeting and exceeding my job expectations. It proved to be very useful for both me and (I hope) to the players for whom I helped get the game running. It was the first time that Relic really attempted a ‘live product’ – despite there being no subscription fee, we patched the game a tremendous amount of times, and added substantial gameplay and content in those patches.

The DOW2 community forum software was lacking, to say the least. Basic things like searching were completely broken, and it made using the system difficult. I tried to use internal channels to get improvements to no avail. I could never get a direct line of communication with the party that set up the site, so improvements never came unless the site broke so horribly that it was completely unusable.

It’s too bad that the community management approach was different for Warhammer 40,000: Space Marine. The main community manager for that title didn’t work at the Relic offices, and few people at Relic had constant, direct contact with him. This made it difficult to casually make suggestions like I was able to previously. This led to me being much less involved in that community – for a while I didn’t even know we had forums set up at all.

Overall my experience with interacting with the player community was extremely positive. I helped many players get their game running, and I was able to fix numerous issues that were reported. I still remember being the PC gamer with some weird technical issue with a game, searching forums online looking for a solution, so when I had a chance at actually knowing how an engine worked, access to the source code, and the potential to fix the root issue myself – I jumped at the opportunity to help.

This was originally posted at www.karlschmidt.net/unofficial-community-technical-support.


Related Jobs

InnoGames GmbH
InnoGames GmbH — Hamburg, Germany
[09.23.14]

Mobile Developer C++ (m/f)
Raven Software / Activision
Raven Software / Activision — Madison, Wisconsin, United States
[09.23.14]

Sr. Gameplay Engineer - Raven
Raven Software / Activision
Raven Software / Activision — Madison, Wisconsin, United States
[09.23.14]

Lead Engineer - Raven
Square Enix Co., Ltd.
Square Enix Co., Ltd. — Tokyo, Japan
[09.22.14]

Programmers






Comments


Glenn Sturgeon
profile image
A great read. People like you realy make a diffenance when it comes to the value of pc gaming.
Everyone knows the annoyances that non dedicated hardware can bring at times. The rare frustration of a new game not running is such a let down. It's guys like you who save the day and pave the way for weeks or sometimes months of enjoyment. You have my respect and thank you for being there for gamers.

Hey any chance relic could do a remake of Space Hulk? Ahh just dreaming.)
Have a great day.

Karl Schmidt
profile image
Thanks for the kind words! I'm not actually at Relic anymore, but in Dawn of War II: Chaos Rising and Retribution we had some pretty cool Space Hulk missions :)

Sakib Saikia
profile image
"I was able to look up their specific crashes, examine the logs and callstack, and could quickly and quite accurately discern if it was a real problem, bad hardware, old version, driver problem, pirated version, etc."

This is very interesting to me. When I look at callstacks "in the wild", unless it points to a valid code issue, I usually reject it. Can you elaborate on how you take it to the next step and figure out issues with bad hardware, driver problem, etc. ?

Karl Schmidt
profile image
If you are able to group similar callstacks, when they are completely unique, then that is almost always a hardware problem, most likely memory. (Especially if the same person is continuing to produce unique callstacks despite crashing around the same point/situation)

The game logging system would spit out the driver version and other information that I would use to check if it was a known version issue.

Also I would coordinate with the players via the forums to get the crash IDs for their crashes, or the email address (usually over private messages) that they submitted with crash reports. I'd then follow up with them based on the reports, to get them to runs tests, or other troubleshooting steps, then monitor any future reports from them to make sure the problem was resolved.

Sometimes I would notice a trend in crashes, same OS version, same driver version, same hardware, stuff like that. I would then ask if people that didn't fit the crashing profile to try to reproduce the issue, and from there I would hypothesize the problem. I would also try to recreate the issue in-house for further investigation (but could only go so far, IT dept only had so many video cards around :) )


none
 
Comment: