Looking back on 8 years of EFG x layerth
It feels strange to say, but after eight years, there isn’t another ESL / EFG show waiting on my calendar.
Our partnership started in 2017 with ESL One Hamburg. Since then we’ve worked on:
16 ESL One events
9 DreamLeague seasons
4 events in Riyadh (now EWC)
That's 29 events and a decade of flying around the world, production rooms, late night patches, and way too many beers for people who had call times early in the morning.
I wanted to write this mostly for memory’s sake.
The Events
ESL One
ESL One Hamburg 2017
ESL One Katowice 2018
ESL One Birmingham 2018
ESL One Hamburg 2018
ESL One Katowice 2019
ESL One Mumbai 2019
ESL One Birmingham 2019
(Break, we were not involved in Hamburg 2019 / Thailand 2020 / Germany 2020)
ESL One Summer 2021 (online)
ESL One Fall 2021 (online)
ESL One Stockholm Major 2022
ESL One Malaysia 2022
ESL One Berlin Major 2023
ESL One Kuala Lumpur 2023
ESL One Birmingham 2024
ESL One Bangkok 2024
ESL One Raleigh 2025 (remote)
DreamLeague
DreamLeague Season 19
DreamLeague Season 20
DreamLeague Season 21
DreamLeague Season 22
DreamLeague Season 23
DreamLeague Season 24
DreamLeague Season 25
DreamLeague Season 26
DreamLeague Season 27
Riyadh
Gamers8 2022
Riyadh Masters 2023
EWC 2024
EWC 2025
The Beginning
First of all, I want to thank my cofounder JJ, who opened up this massive opportunity for me to work on the biggest Dota events in the world. JJ had built his reputation as a world-class Dota observer before we started Layerth. Meaning he already had connections with all the largest TOs in the scene. He carved out the space for me to jump in and start enhancing Dota production.
We made a great team since he could focus on the business, production, and logistics of integrating my tech into the show. Meanwhile, I got to sit in a dark room and code. We really were just two nerds trying to make Dota broadcast cooler. Somehow that turned into eight years. Our roles shifted, changed, evolved and we had to make tough decisions at times. However, through all of it, we stayed very good friends.
I met JJ while working at Moonduck Studios.
We really were just two nerds trying to make Dota broadcast cooler.
The Homies
The Dota event community is small. You see the same faces everywhere.
You also get to know them very well because even tho the games would often end at midnight, somehow it's 3am and we’re in the hotel lobby playing mafia or having drinks at a nearby bar.
To everyone I met along the way, you made this special!
Most importantly, somewhere in the middle of all of the chaos, I managed to find and marry the love of my life Michelle. 💘
The Features – A Timeline
I tried my best to pull out highlights into a chronological timeline, but this is merely just a small overview of everything we’ve worked on over the years:
2017 – The Early Days
Net Worth Indicator
My first real feature. SUNSfan suggested it since it existed in HoN before. I built the early version while still at Moonduck. Seeing something you coded later appear in the actual game client is so motivating and really pushed me to keep experimenting.
Talent Selection Notifier
Talents were just added to the game so viewers had no idea what players were choosing. I built a simple notifier that made the decision visible and immediate. Valve later added their own implementation to the game. This signaled that we were doing something good.
Separated Glyph / Scan Cooldowns
Radiant and Dire cooldowns shown independently.
Our first ESL One exclusive that ended up in the game soon after.
The Static HUD
(Still one of the most important broadcast mods in Dota)
This one looks simple. All it does is lock the bottom HUD so it doesn’t resize based on how many abilities a hero has.
But under the hood it required modifying game files and understanding how to “hack” Valve UI without breaking everything or getting banned by VAC.
I have to give a big shoutout to SinZ for introducing me to game modding and the method of injecting custom UI mods into the game.
It sounds small, but this single change set a standard for broadcast overlays in Dota.
Every tournament now uses a static HUD variant. I still believe Valve should just add it as a toggle in settings.
2018 – Animations and Storytelling through stats
Smoke Indicator
Launched during the very first ESL One in Birmingham 2018.
Movement Heatmaps
This was the first time we really leaned into storytelling instead of pure information.
2019 – SAP partnership
This really was the golden age. Huge shoutout to Mike and the SAP team, and JJ for making this connection.
It was a rare win for all parties: We got funding to build cool features. ESL secured a major sponsor. SAP got deep integration into the broadcast.
2020/2021 – Covid Break & Twitch Extension
Covid put a stop to LAN events and together with that our momentum in Dota production also died out. At some point during one of the lockdowns, I received this message from SUNSfan:
The extension ended up being one of my most successful side projects and I cherish it to this day!
Except when the patch drops mid-event at 2am
2022 – Expanding Beyond In-Game
Dota LANs were back and ESL started delegating more and more work to us as our partnership with them expanded. We got a chance to do some fun stage integration starting with our first LAN after the long covid break: the Stockholm Major 2022.
I was extremely excited to be working on something outside of ingame. I was responsible for sending triggers to the stage crew when certain ultimates were cast. While this wasn’t anything new (TI did it first I believe in 2014), I wanted to really push the bar on how this was executed. For example, adding a subtle red light flash on each kill and playing with venue lighting as the day/night cycle in the game changed.
2023 – The Draft System
This year we finally got a chance to work on the draft.
The challenging part was making the draft system fully reusable between all EFG events: ESL One (both Light and Dark), DreamLeague and the ever evolving EWC/Riyadh theme.
While we kept the the draft UI simple, we wanted to introduce some subtle new features for the hard core fans. For example, by highlighting which team won the coin-toss and tracking the selections they made: First/Second pick vs Radiant/Dire.
Previous Draft
@Shaneomad also had an incredible idea to test the limits of our system, he wondered if we could compare the current draft to the draft of the previous game. So at the Berlin Major we demoed one of the most fun draft features: (Now a standard in many moba esports)
We continued to evolve the draft system and it’s become of our most solid products over time. The amazing part is how user-friendly we made the whole thing. Everything on the draft would run directly from game data, operators wouldn’t even need to update the score or team names/logos. And for features that required camera framing, it was a simple press of a button on a StreamDeck to show/hide even the most complex features like the previous draft.
I could write a whole separate blog post on the details of the draft system but my goal with this post is to try and keep it as an overview only.
2024 – Budget Cuts
At this point it was clear that esports was out of it’s crazy growth stage, and consequently the budgets for extras and innovation had to be slashed. Layerth was not in a great place since we positioned ourselves as the premium option for TOs. We didn’t want to offer just the bare minimum, we always wanted to push that extra step to make our features polished and well thought-out. Unfortunately, Dota LANs were simply not that sustainable so we were pressured to optimize rather than innovate.
There was still one event per year that wanted us to go that extra mile. With EWC, we were able to work on some old ideas again:
The Aegis Power Play
We finally had an opportunity to work on ingame features again. I believe this idea sat on our TODO list since 2019 since JJ mentioned League already has something similar with the Baron Power Play.
As usual, we didn’t want to just copy the implementation so we took extra effort to make this feature truly dynamic and even showcase a breakdown at the end:
2025 – The Final Run
Budgets in esports were shrinking each year, but 2025 was extra hard and I really felt like things started to stagnate. The nature of working with something like Dota means I was constantly busy just maintaining and updating our existing stack. It was increasingly difficult to commit to new features with the existing workload and uncertainty about our long term partnership with EFG.
I knew for a long time now that I wanted to venture out of Dota and try new projects. Each year I would tell myself, “Next year I’ll try something else”. With ESL One Asia canceled (the event I looked forward to the most each year), I knew 2025 would be my final run in Dota.
Across our years with ESL and later EFG, leadership shifted, teams changed, and esports itself matured. Somehow, we always found common ground and kept shipping. I’m incredibly grateful to everyone at ESL / EFG who trusted us along the way.
2026 – What’s next for me?
I’m really happy I got to be a small part of this Dota history. This is definitely not the end of Dota events for me, I simply want to try something else for a little bit. I’ll also continue to attend events (even just as a spectator) simply to hang out with all my homies that continue to make these events happen!
As for what’s ahead for me, I’ve joined Runstone, a new project led by Shane. This is an exciting new opportunity to try myself at other game titles and have freedom to experiment with ways to visualize game data. I'll keep you posted, gonna share some demos soon.
See ya!