Headed to GDC Online in Austin, TX next week to give a talk about the chat service for League of Legends! I will be speaking there Thursday afternoon at 2:30 come check it out!
My talk is a history of the problems we had launching and scaling our chat service and about how we overcame them. Many of the lessons we learned here ended being things that we could apply throughout the development of League of Legends. I also talk about the surprising ways in which UI design made a significant impact on the stability of our service.
A brief description is found on the GDC Online website:
Communication between players is one of the most important pieces of a social game. Yet, the nuanced relationship between a fully-featured chat service and the rest of a game are often overlooked.
In this lecture you’ll hear the story of how the chat in League of Legends’ PvP.Net was launched and how it evolved over time. We had three expectations for our chat service: that it would be scaleable, not impact stability, and the UI would meet the player’s needs.
We initially failed on all three fronts. But that’s not the end of the story.
We were able to turn around to achieve and surpass all three of our initial expectations. This talk will cover the surprising emergent issues and mistakes that caused these problems, and will detail the specific solutions that were implemented in order to solve them during a live product.
TAKEAWAY: Attendees will come away with an understanding of the pitfalls and challenges of building a scalable, user-friendly chat service. Attendees will gain an understanding of how significantly UX design and user behavior can impact scale issue. They will also gain insight into how to structure their UI code to leverage rapid-iteration on a live product. In addition, attendees will learn from case studies on specific chat UI features that worked well, and those that did not.
INTENDED AUDIENCE: No prerequisite knowledge is needed and there will be takeaways for all disciplines during the lecture. However, the lecture will be especially useful for programmers interested in scalability, UI programmers, and UI/UX Designers.
Also, it seems like Riot is totally taking over this conference! We have a total of 6 different talks we are doing there! Check ‘em out:
“Cloud Gaming: Present and Future” with Brandon “Ryze” Beck
Letting Go: Creating Self-Managed, Self-Directed Teams by Travis “Volibar” George
Designers are Human Too – Causes of Poor Design Decisions by Tom “Zileas” Cadwell
League of Legends: What it Means to Be Player-Focused by Steve “Pendragon” Mescon
and Putting the Plane Together Midair by Andrew Woo
This talk is special for me because, as I said in a previous post, I absolutely love GDC, and it has always been a career goal of mine to speak there! I was ecstatic when I found out my talk had been accepted. But, I did not know what I was in for!! Preparing for an hour long technical GDC talk is a ton of work. I really was not prepared for how much time I needed to put into this in order to make sure it was a truly quality presentation. During this time I found my friend Glenn Fielder’s blog post How to Prepare a talk for GDC an awesome read, and extremely helpful. Thank you Glen!
The subject matter is not really exactly what I’ve always envisioned doing at GDC. I’m not giving a highly detailed technical talk about a cool system that I built. Instead, I’m telling a more broad story about a rather large system, outside my specialty, that a whole team built. So I had to do a lot of work researching, and interviewing members of my team in order to get a deep enough understanding to be able to talk at least somewhat intelligently about it.
Furthermore, this was a talk about the problems we had and the mistakes that we made. It’s one thing to be humble and talk about your own mistakes, its a much different thing to have to talk publicly about the mistakes your teammates, whom you have a lot of respect for, might have made. I needed to be truthful, and share enough of our problems so that others could learn from them, but also respectful and fair to those who came before and did the really tough work of getting this system up and running under not the best of circumstances.
Overall, I think that the presentation has come together quite well and I look forward to giving it next week! An internal rehearsal at Riot was thankfully well received, and I was much more nervous about the internal presentation than the actual GDC one. But, I’m not sure I’m gong to jump at the opportunity to do another lecture like this anytime soon! (But, I hear they do get easier to prepare for!)
I will post my slides and notes up here shortly after GDC (as soon as they let me!)