My First Experience Attending a Hackathon Alone at Riot Games

As told by the second youngest attendee of the 2017 Riot Games’ Hackathon

A common phrase said by players pre-game, GLHF, is emblazoned on Riot HQ’s wall

It’s been almost three months since 50-ish other attendees from around the world and myself were selected to attend the Riot Games Hackathon. I applied on a whim, thinking it would be cool to make something, like any other hackathon. Little did I know, this experience would become one of the highlights of my 2017 year.

I had never been to a local hackathon alone before, let alone one in Los Angeles. I went back and forth several times trying to decide whether to go, simulating worst case scenarios.

What if I can’t find a team?
What if I get lost in the airport?
What if I can’t contribute to any projects?
What if I can’t make friends with the other participants?

I felt as though I had been thrust into my first hackathon again as my introverted tendencies took over my thoughts.

Luckily, the community Discord was very welcoming. Despite this, it was difficult to initiate conversation with people I had never met before, and had been in the League of Legends developer community together for years. I had always been more of a casual player, preferring to stay within my group of friends and duo-queueing with people I knew in real life. Although I took interest in many projects, I still was unable to see how I could contribute, seeing that there were many other developers much more talented than myself. Crossing my fingers, I only prayed that I would meet people to work with at the event.

Day 0: Arrival

Fast forward to the night before my flight. I had gotten back from Pittsburgh a couple weeks before, and navigated San Francisco International Airport (SFO) for the first time on my own. I rushed to the airport following an academic test, and my stomach began to flutter as I embraced a combination of both excitement and nervousness. My mother followed me to my plane, and I gave her a last embrace before I boarded the plane.

It was a quick 1-hour flight to LA, where I caught a couple zzz’s.

As I stepped off the plane into LAX, I tried to find my glasses and froze. The realization that I had forgotten them at home suddenly struck home, and I began to panic. I had heard tales of LAX being notoriously difficult to navigate, but headed for the nearest readable sign, hoping that I was walking in the right direction. My face flushed red as I stepped onto an elevator, but nearly stepped off on the wrong floor. Feeling lost, I messaged the Discord, “Uh oh, I’m lost or something.” I was directed to look for a sign with my name on it, but I only saw my middle name. Being the extremely self-conscious person I am, I pranced back and forth before shuffling up to the limo driver and asking, “Is this for Emily Yu?” With that simple phrase, I overcame my first predicament and arrived at the hotel, Marriott Courtyard.

Later that night, a group of us that had arrived a day early went out to explore the Pier and head out to get dinner at Bubba Gump Shrimp.

A group of us exploring the pier the day before the hackathon started

Day 1: Team Formation and Hackathon Start

My hackathon experience began with a bang, as prior to arriving I had anticipated the same experience as hotels in Asia, and realized the night before that I had forgotten many essentials. Among these items lay toothpaste, slippers, hair ties, and also pajamas (but I didn’t realize that toothpaste was provided from the front desk). As a result, I rose early, hoping to make a leisurely walk to the nearest Walgreens a mile or so away.

This decision proved to be an unlucky one, as I was equipped with uncomfortable shoes and a terrible sense of directions. Even with the assistance of Google Maps I ended up walking in a circle for about twenty minutes, and to make it back in time for the shuttle to Riot HQ, I had to sprint without a hair tie. For those who do not have long hair, this is something very unpleasant. Imagine sprinting in 80 degree heat, wearing excessive clothing and a couple necklaces or lanyards. Definitely not an ideal running environment, and to make things worse, I hadn’t run in ages!

After finally making it back with a burnt cheek and sore heels, I barely scrambled up to my hotel room and made it back down in time for the shuttle pickup.

Throwback to my impromptu Walgreens run

I had come into the hackathon with an idea that was frankly way out of my League — haha, get it? However, following the orientation event, I was left wandering around, realizing that most people had already found a team. After meandering around with one other person interested in my idea, we both decided to merge into another group, who happened to be the team that I would stick with for the rest of the event.

As we gathered around a table, I stared in confusion as the team scribbled a plan down on the nearest piece of paper. With a very light understanding of what was going on, I volunteered to work on part of the backend, since I had spent a lot of time as a frontend developer in previous hackathons.

Sorry if you’re reading this guys, I was confused for a pretty darn long time.

I had come in with a light knowledge of JS, which happened to be what we built our project, League Voice, with. League Voice stemmed from the fact that beginner and low-elo players tend to lose track of stats and champion profile that makes gameplay much easier, such as spell cooldowns (for both themselves and opponents) as well as what other champions’ abilities are. We thought that a Google Voice assistant would be the best platform to make referencing information easy, since you would not need to tab out and interrupt your game.

Because our team was so large, our main focus ended up being to cover the greatest amount of features possible — yet we still ended up running out of ideas closer to the end of the hackathon. The following are just a couple of the many that were implemented, so feel free to register your summoner at our demo website and keep up with us at our Discord and GitHub!

  1. Champion suggestions: “I’m playing mid. Who should I play?”
  2. Item suggestions: “Give me an item suggestion.”
  3. Game advice: “Give me some advice.”
  4. Summoner Spell Cooldowns: “Annie just flashed. When is Annie’s flash up?”
  5. Static Data: “What is Annie’s passive?”
  6. Write or Read Notes: “Remind me not to pick into Annie”
A demo of our project, League Voice.

The team headed off to the cafeteria for lunch, and I headed for the salad bar, avoiding the long line for warm food. I had felt bloated before coming to the hackathon, so it was a win-win situation. As a result, I would spend the next three days eating variations of the same salad, and would come back with a new preferred diet.

Every day around dinner, attendees headed over to Riot’s PC bang, which glowed red and purple as we gazed in excitement at the gaming cubicles that encompassed the room. Settling down, we hopped on Discord and played a couple games of League of Legends, where I marveled at the difference of playing using a Wacom tablet versus using a mouse (but that’s a story for another time). As we finished our session with a triumphant win, we headed back to the room and continued working on our project, and around 11:30 PM, a couple team members and I hopped on a bus and left for the hotel, anticipating the sleepless nights that lay ahead.

The splendor of Riot HQ’s PC Bang in full view

Day 2: Riot HQ Tour

As the day went on, we spent our time making new functions and improving our project.

We were given a tour of the facility in two groups, but photography was limited. The whole facility was amazingly designed, soI highly encourage taking a visit. There were many little intricacies that were implemented into the building structure that embodied the employees’ passion for League of Legends.

LCS Studio and Bilgewater Bar
Thresh and the Pocket Picks Studio
Lucian, Annie (and Tibbers), and Ziggs

By the end of the day, I had finished up a couple more features, and spent my time trying to correlate game time versus win rate, but unfortunately struggled to implement it. I headed back to the hotel late at night, thinking that my room would be an ideal working environment, but ended up falling asleep a couple hours before the shuttle back.

Day 3: Demo Day

As the code freeze deadline approached, excitement and tension filled the air. Our projects were demoed in an exposition-type presentation, and checked out everyone’s projects.

Chan and Jake demo League Voice for Querjin

Runeterra: The Election

Using their combined cinematic and art skills, they made a game that would determine what region of Runeterra you would be associated with the closest, based on your summoner profile.

Parallel Convergence: GitHub

While watching games, people will often offer advice on how they could improve. Parallel Convergence allows real-time annotation on game replays, allowing professional coaches to instruct players with ease.

Lobby Links

When inviting friends to play a game of League, it’s sometimes difficult to know if a 5-man stack is already full, oftentimes leading to summoners logging in just to find that they cannot play. Lobby Links keeps an updated party count and allows players to invite others through a Discord invite link, allowing players to easily invite their friends to play.

Couch Potato

Many people enjoy watching esports together, which for the most part, happens over Discord or Skype. They shifted the experience to virtual reality, allowing players to watch esports together in a virtual environment while being given a virtual representation of the current game stats.

Liam demonstrates how his team’s project Couch Potato works to a Rioter

Combo Practicer

Summoners often go into a custom game just to practice cs mechanics or figure out how to play a new champion. This plugin allows a players to practice their combos on an actual target, recording the levels of damage, tracking the timing of combos, and giving prompts for different ways to do so.

Alexa Helper Application

This application was similar to our own, League Voice. It gave insights on player ability and helped a player improve their play.

Blitzcrank Coach

Summoners often compare themselves to the pros while trying to figure out how to improve. This web application picks out a summoner’s weak points and gives advice on how to improve.

Build Sharer Application

A more personalized alternative for Mobafire or Probuilds, this web application allows you to generate your own hot links for created builds and skill sequences, allowing players to easily share information regarding their playstyle.

Shopkeeper: GitHub

This virtual reality game helped improve player’s knowledge of champion builds by giving a time limit on incoming “customers” who desired items.

Kevin demos Shopkeeper, equipped with a full virtual reality headset

I couldn’t find all the projects on GitHub, but I’ve linked a couple of them! If I forgot a project, messed up the name, or you would like to give a more thorough description, drop me a note and I’ll correct my mistakes.

Also, shoutout to Farza’s new project, DeepLeague!

DeepLeague — leveraging computer vision and deep learning on the League of Legends mini map + a dataset of over 100,000 labeled images to further A.I research within esports.

You can check out his project’s GitHub out here and read more about it here!

Following the event, despite our exhaustion, we head over to the PC bang again to wind down and relax. As we left Riot, I was hit with a wave of both sadness and sleepiness, but our group decided it would be fun to explore Santa Monica more before we left. Through sneaking into a jacuzzi to playing Ghost (a mafia-like word game), exploring a bookstore, and raiding YogurtLand, we enjoyed our last moments before heading off to bed for home.

Reflection

As I arrived home, I was in the reflection phase already, and was recalling my experiences and telling my family how glad I was that I decided to go, and basically everything that happened.

Throwback to this beautiful sunset view from the Pier
I had never had that much self-reliance or self-rule.

In other hackathons, when I went with my super dependable friends, I always fall back on them if I became scared or uncomfortable, so I always had a lot of fun and never experienced a push on my self-imposed boundaries. However, I always felt like I was missing something; I rarely met new people and mostly stayed close to the people I knew. That gap was filled when I experienced a ton of new experiences this time around, mostly because of my lack of self-dependency.

Speaking up for yourself can save hours of time.

As I mentioned earlier, I spent some time trying to figure out what I was supposed to be doing, trying to mask my confusion and appear how I wanted to portray myself. However, if I had instead asked more questions during the planning phase, I would not have had to spend that first couple hours being confused about how we were to integrate the Firebase functions with Google Voice, nor would I have had to think doubt my competence during the hackathon.

People aren’t scary, and there’s no reason to be scared of approaching people.

For the most part, a lot of people probably felt the same way as I did, probably sharing some of the same introverted tendencies that gave them similar experiences as myself. By no means does this represent the majority of hackathon attendees, but it is still makes up a prevalent personality type that cannot be ignored.

After the first night of socializing, I unintentionally closed off, spending most of my time with my hackathon group. However, a lot of new people arrived the morning after, and because I made my run to Walgreens I did not have time to spend the time and meet the new arrivals. As a result, during the exposition, I spent most of the time wandering around and checking out others’ projects without ever have really formally introduced myself. However, I found that our post-hackathon group gave me a way to meet the rest of the developers, and so it all turned out well.

In a different perspective, as a fellow hackathon organizer, I think that Riot’s Hackathon was splendidly put together. Gene and the rest of the crew did a great job making sure that we always knew what was going on, even when I gave my false alarm of being lost. It is, of course, a given that a company hackathon would be different from a school or university hackathon, since there are likely very different requirements to fulfill, in regards to food catering and funding. Regardless, the whole event progressed very smoothly, with little to no hiccups during the event.

All the attendees and the organizing crew gathered together for a post-hackathon group photo.

In the end, attending Riot’s hackathon was both a truly mentally and intellectually rewarding experience, and came out knowing people from all over the world: Germany, the United Kingdom, and even Japan. I hope that in the future, we can all reunite in the future and build more amazing projects at Riot Games again.

If you enjoyed hearing about my hackathon experience, please leave a 👏 and go play some League of Legends!