Have you ever wondered — what does it take to build an Overwolf app? Whether you have already built one, or are just starting your development process, we’re here to break it down for you.
If you’ve missed our last developer story : “The lane chosen” — DotaPlus, is also available on our blog.
Welcome to this installment of the Overwolf Developers Stories!
Hey Leon! Thanks for being here. Tell us a little bit about yourself!
Hi Lior, thank you for arranging this interview. I’m Leon Machens, 30 years old and living in Cologne, Germany. Besides my day job as a freelancer, I like working on my own projects like Trophy Hunter.
What is your first gaming memory?
My first gaming memory is an Atari ST game called Bolo. I was fascinated by the gameplay and always wanted to know how the next level will look like. I can not remember a time when I didn’t play games. The older I got, my focus changed to multiplayer games like Heroes of Might and Magic, Quake or Clonk. It was a great time where we shared a single keyboard between four players and played on a 17” screen.
In 2007 I became vice world champion in Command and Conquer 3 in the World Cyber Games, which is my greatest E-Sport accomplishment so far. The grand finale in Seattle, USA was just amazing. I enjoyed playing in tournaments, traveling to gaming events and being a part of professional teams.
In the following years I started several gaming related projects like RTSCups, a platform for strategy games tournaments and live casted streams. Besides these projects, I played other strategy games like C&C Red Alert, Paraworld or Battleforge on a professional level.
What games do you play today?
I started playing League of Legends years ago and like playing it with my friends. We still organize a LAN-party every year and play some old-school games like Warcraft 3 or CS 1.6.
Recently, I enjoyed playing single player games like Hitman 2, Final Fantasy XV or The Evil Within. I like to play these games with my beautiful wife on a big screen.
How did you hear about Overwolf?
I was looking for League of Legends apps and found the LoL Overwolf Apps Dev Challenge. I tried out other great LoL apps and got motivated to create my own.
What is the first app idea you had?
My first idea was a replay analysis tool to help teams and players analyse their gameplay. In 2016, Riot had no replay system, so I couldn’t work on this idea.
Tell us about your history and how Trophy Hunter came to be?
My second idea was to create an achievements app. The main reason is that in LoL, you either win or lose — but I think players should always get rewarded if they had a good match. I checked the technical requirements and asked my brother Marlon to join the project. He loved the idea too and we applied for the dev challenge and won it. In the beginning, the app was only about trophies and we had no summoner stats, ranking or store.
In the following months and years, we added more and more features and created an all around solution for all LoL players.
Recently I started developing a web version.
It is not finished yet and hasn’t got all the features of the Overwolf app implemented.
What are the biggest challenges you had when developing Trophy Hunter?
Riot published several breaking changes in the last years like the encrypted summoner ids or policies about the unofficial league client api.
How did you solve them?
I had no choice, so I spent many weekends following up on Riot’s requirements. I had to revert some of my code and was able to add the same code a few months later because of the policy change. Still, Riot did a good job with their API!
Your app has over 200+ trophies — how did you think of them?
This is Marlon’s part (My brother), so I asked him to answer this question:
Often during games of League of Legends you do remarkable stuff that is far beyond kill/death ratio or win rate. Stuff that you can be proud of, but it is not displayed anywhere and you will soon forget about it.
Trophies are a way to capture these moments for a bit longer. Maybe you were down three inhibitors and you still won the game? Or after a huge teamfight you were the lone survivor on Summoners Rift? Those are highlight moments and I personally would like to remember them. So, many of the trophies are designed in a way to capture those unique achievements that made a game very special.
Another thing which developed later around the trophies is that they contain interesting data about the players play style. Certain player types will achieve certain trophies more often than others. This is what the Trophy Hunter play style categorization is based upon.
Do you have any upcoming projects?
Sure! Right now I am working on Trophy Hunter’s PUBG edition:
I try to focus on trophies and make the app easier to use than the LoL edition. Later I want to apply the new layout and some other changes to the existing app. Other projects are in the pipeline :)
I want to play a game. I’m going to say a word and you are going to say the first thing that comes to your mind:
Tilt- League of Legends! I never heard about it before playing LoL, which says a lot about the gaming culture. I remember the time where you always wrote “gl hf” and “gg”, even if you got destroyed by your opponent. Games are created to entertain and not to tilt players.
Passion- Developing and Gaming! But there are more things I would call passionable like a strong Belgian beer or a dinner at my favorite restaurants.
Coding- Open Source! Recently I started to contribute more and more to open source projects and opened the source code for my projects like Trophy Hunter.
Card games- Wizard! I think this game came in my mind because it is the last card game I played. If you are looking for a great two player card game, take a look at The Rivals for Catan. It is an inherent part of every holiday I’ve spent with my wife.
Overwolf- The Overwolf logo! Actually I was thinking about my father who was wearing an Overwolf T-Shirt a few weeks ago.
QA- CI (continuous integration)! In the last few weeks, I was working on improving the QA of some projects with automatic tests and builds.
Users- Community! Join us on Discord: https://discordapp.com/invite/cCKcuV5
Success- Work hard! I do not believe that success comes without hard work.
Failure- Playing drunk! This is not a good idea, especially if you only play ranked.
Gaming- Time! Sadly, I do not spend so much time on gaming right now because of my projects and other interests.
Backlog- Trello! I am thinking about a Trello board with hundreds of entries.
API- REST! Personally, I like the idea behind GraphQL, but most of my projects are Restful APIs.
Slack- Work! Slack is for me the most important tool for every company or team. The app integration is very useful.
Windows- Gaming! Required for gaming, but sometimes bad for developing.
Steam- Bedroom! I usually play Steam games only in the bedroom on a big screen in big picture mode.
Discord- Gaming! It’s like Slack for gaming, but without threads and other useful features. And I don’t like the annoying home screen.
Do you have any tips for new Overwolf developers?
Open your source code, ask for help and join slack or discord discussions. If you are new, you could join existing projects to learn about best practices. You can write me a direct message on Discord (lmachens#4001) if you are interested in joining Overwolf Open Source projects.
What’s the most important lesson you’ve learned while developing your app on the Overwolf platform?
Make it simple, scalable and maintainable. I spent too many weekends fixing server issues. Technically, Trophy Hunter has some very good and well designed parts and other parts which requires refactoring. I think this is normal for any larger project where the requirements change frequently. It is important to get these experiences and allows to avoid making the same mistakes again in my new projects.
5 years from now — where do you see yourself?
Laying on a sun lounger on my roof terrace, drinking Belgian beer and watching my two kids playing.