1. Dota 2
  2. News

Dota 2 News

Dota Plus Update — Spring 2024 (And Dota Labs)



[h2]Dota Plus Seasonal Update[/h2]
As Spring blooms to life around us, it transports us here on the Dota team to the springs of yore, when the world was new and vibrant. Who could forget climbing that old oak tree by the bridge? Or stealing carrots and turnips from cranky old Farmer Maggot? Or taking that ring to Mordor, and casting it into the fiery pits of Mount Doom where it was forged?

[h3]Dota Plus Seasonal Treasure[/h3]
That last part of our spring memory trilogy is especially relevant today, since we’ve uncovered another priceless treasure. And this time it’s too good to throw into a volcano.

The Spring 2024 Seasonal Treasure is here and available for purchase with shards. This treasure features all new sets for Disruptor, Dark Willow, Spectre, Chaos Knight, Doom, Earth Spirit, Underlord, and Nyx Assassin. There's also a chance to unlock the Sir Molestach Irondrill courier, who arrives in the lanes bearing random prismatic and ethereal gems.

We've also taken sets that were available in the Summer Treasure 2022 and made them available for direct purchase for 15,000 shards each as part of the collection of legacy sets in the Shard Shop.

[h3]Updated Seasonal Quests & Guild Rewards[/h3]
Today’s update also comes with a new set of Dota Plus quests to shore up your shard stash for new relics and the Seasonal Treasure — offering up to 115,200 shards over the course of the season. Guild rewards have also been updated, making new emoticons, sprays, and chat wheels available to high-scoring guilds.



Guild Tier

Rewards



Silver


  • Emoticon - lion_bounce
  • Emoticon - rainbow_phoenix
  • Emoticon - riki_peaceout



Gold


  • Spray - Aghanim - Push
  • Spray - Bounty Hunter - Riches
  • Spray - Hoodwink - Acorn



Platinum


  • Chat Wheel - "Что это?! Какая жесть!"
  • Chat Wheel - "Ooooh, por dios!"
  • Chat Wheel - "你行你行,你上你上"



[h2]Introducing Dota Labs[/h2]

In addition to the Dota+ content, today's update introduces a set of experimental features available to all Dota players, and a new way for us to ship experiments like them: Dota Labs. (We had fun coming with names like "Unstable Concoctions" and "Tinker's Tinkerings" but ultimately decided we'd rather have the name be boring and clear and the features themselves be interesting.)

If you load up your options menu, you'll see a new tab with the Dota Labs label. Features here are experimental, and less polished than many other features we ship, so they're all in a special menu and disabled by default. These are features where our playtesting has produced mixed or ambiguous data. We can't really know if they're good or how to make them better without seeing real Dota players using them, so we're shipping them in an earlier form on purpose so you can tell us whether they're worth continuing to invest in.

The initial set of Dota Labs features includes:
  • Overlay Map. It's sort of just like the minimap, but it's large instead of small, and transparent instead of solid, and is full-screen instead of being isolated to the corner. We have a bunch of questions, including but not limited to: Is it helpful for your playstyle? How do you interact with it? What do you wish it did?

  • Modifier Key Filter Bindings. Targeting commands in chaotic environments can be challenging, and misclicks can be devastating. Dota does the best it can with your inputs, but sometimes it really does look like you wanted to Laguna Blade that creep. This new feature allows you bind modifier keys that, when held, will force your target selection to enemies, allies, creeps or heroes. Which targeting methods are the most and least useful in practice? What are we missing?

  • High-Visibility Local Hero Healthbar. Dota teamfights can be hectic, and sometimes in the chaos it's hard to keep track of your hero. This option significantly changes the styling and readability of only your hero's nameplate. Does this help, or does it introduce even more visual chaos?

We fully expect that some of these features (or future Dota Labs ideas) will mature and graduate out, while others may be retired. Which are which depends on you.

Some of you reading this are probably excited about trying these features out, but worried about whether we'll continue to use them moving forward. "The last time you introduced a new named Dota thing, you called it Between the Lanes, and it's been some months since you last posted one of those." You're right! We figure the best way to make the point that we're planning to continue to invest long-term here is to continue to invest long-term there as well, so: Enjoy today's Between the Lanes as well.

Between the Lanes: Denying Denial of Service

Welcome back to Between the Lanes, a blog feature where members of our development team walk through some of the challenges, bugfixes, and occasional happy accidents we encounter while working on a game as unique as Dota.

This is a story about the internet, and how it doesn’t work like it should, when it works at all, except when it doesn’t. It’s a story about how the internet stopped working for our customers, and how we fixed it.

The internet is more of a wild frontier than we give it credit for being. Stray from the safe confines of your two-factor identification and trusted cookies, and it can be a bit of a wilderness out there, full of random trolls with the maliciousness—and, increasingly, the ability—to make your life pretty miserable for no other reason than because they can.

Back in 2014, the method those trolls were using was distributed denial-of-service (DDoS) attacks. “Distributed” refers to a large number of internet hosts maliciously flooding a particular target IP with traffic in an effort to overwhelm the network stack. This is called a volumetric attack, and the intent isn’t to try to get into the network. It’s just trying to deny service. A distributed denial of service means that legitimate people who want legitimate service are crowded out by the bad traffic.

The problem with DDoS attacks was that, by late 2014, they weren’t being committed by data-exfiltrating super-hackers with advanced computer science degrees. They were being committed by just about anybody who wanted to pay a service or a bot to do it for them. And it’s pretty obvious why. Although some people were happy to do it purely for vandalism’s sake, others had a motive: A DDoS attack was a surefire way to shut down a match that either you or someone you were rooting for were losing. This wasn’t just an occasional irritation anymore. It was turning into an outright assault on any game where players competed.

By the opening months of 2015, we were seeing a huge uptick in DDoS attacks on Dota and CS:GO, with other companies reporting a huge jump as well. Someone had, very suddenly, made it very easy for anyone to do this.

In August 2015, The International was disrupted with DDoS attacks. Although the pros playing the match weren’t affected, for more than two hours, the broadcasters couldn’t get into the matches to give play-by-play and color commentary. Sending out the stream as a TV broadcast became an issue. The players were suddenly playing in a void. This was a professional gaming event with millions watching and millions of dollars on the line, and it was being disrupted by random people with five-dollar software. It was a problem Valve couldn’t ignore.


We tried several solutions to deal with DDoS attacks before we arrived at one that worked. Initially, we attempted to filter the traffic with a powerful network switch. Unfortunately, this type of filtering is inherently difficult to do with game traffic. It is the nature of game servers to receive unsolicited UDP (User Datagram Protocol) traffic from arbitrary IP addresses. Imagine you had a post office that weeded out unwanted junk mail for you. But now imagine your job is as an advice columnist, and you receive tons of legitimate mail from random strangers all the time. For you, the post office doesn't know what's junk mail and what isn't. That's how traffic to game servers tends to look. Furthermore, the source IP in UDP packets is not secured, and can be easily spoofed. Our post office cannot even look at the return address on the envelope for clues, because the senders of junk mail forge that.

Steam delivers a lot of bits for game content, and has built up a large network for doing so. We were already taking advantage of this network to deliver game traffic over dedicated links, obtaining good peering, ensuring that networking engineering best practices were used, etc. This kept player ping times low, but did not protect against DDoS attack. The problem is that UDP protocols are not secure, so while we had our own network, it wasn't private.

To prevent attackers from using our own network to attack our servers, we needed to control all the entrances and secure them. We accomplished this by creating proxies for game traffic, routing every single packet of data transmitted across the network through relays. Now when a client wanted to talk to a game server, it had to do so through a relay that both authenticated it and proxied that traffic to the game server. This meant the IP address of the server was always hidden—the attacker simply had no idea where to attack.

To re-use our antiquated post office metaphor from earlier, our spammer no longer had an address to send junk mail to. They could send it to every post office in the area and ask them to mail it, but without authorization, that post office isn’t going to. (Moreover, that post office would find it a little suspicious that someone was trying to send a single person 100,000 letters.)


But couldn’t you just attack the relay? Technically, you could. But we have an essentially limitless number of them, and we built them to be attacked. A “relay” is just another word for a computer running software. You can attack it or take it offline, but the protocol was designed with that assumption in mind. If a client is trying to play a game and loses contact with a relay, it just switches to another. Relays are like hundreds of pawns scattered around the world with the singular purpose of guarding the game server. (Incidentally, taking out a relay is harder than it sounds. They’re engineered pretty well and positioned in a specific part of the network, so although they were built to be taken offline, we haven’t lost one yet.)

The solution was straightforward but effective. Before, if someone wanted to disrupt a game, they could just overpower a single game server (a very low bar to clear). Now they had to overpower essentially the entire data center—a much, much, much higher bar. Are there attacks that could still accomplish this? Of course. Are there attacks that can do this that anyone online could buy for five dollars? No. An attack this sophisticated was officially out of the price range of most people.

With this new system up and running, we had an epiphany: If we controlled our own private network, we wouldn’t be beholden to how the normal internet works. We could use it to make the customer experience even better. With the normal internet, when you send a packet from one IP address to another, the route you use is determined by Border Gateway Protocol (BGP). This is a routing algorithm that decides how your packet will travel across a network, and you have no choice in the route it picks.

But with a virtual private network composed of hundreds of global relays and data centers, we could essentially choose our own route from the client to the game server—often a faster shortcut than the default route. If you’re using Steam Datagram Relay (SDR), the Steam overlay will show your ping time and what route we’re giving you, so you can see for yourself how it gets optimized.


A feature that started as a way to protect Dota game servers has grown past what anyone could have expected. The SDR network routinely delivers as much as 140M packets and 550GBit per second. We have relays in 31 data centers with a capacity of over 5TBit. What we now call the Steam Datagram Relay not only protects against DDoS attacks, but also increases connectivity and lowers ping for every Dota customer. And it doesn’t just do this for Dota, but for any game on Steam that wants to take advantage of it.

We hope you enjoyed another peek between the lanes of Dota. This was a pretty technical one, thanks for hanging in there for it! And feel free to let us know what you’d like us to cover next.

7.35c Gameplay Patch

Patch 7.35c is out now. You can check out the patchnotes here.

Additionally, a few updates were made to the Ancient Dragon King cosmetic.

  • You can now High Five the Ancient Dragon King, featuring a custom high five effect.
  • Ancient Dragon King now performs a global celebratory roar every time your team makes a rampage.
  • Ancient Dragon King will now be usable permanently and not only during the Year of the Dragon.

The Dragon's Gift



We're hard at work on an upcoming update we're calling "Crownfall", and we're excited to get it finished so you can see what we've been working on. We looked at a calendar and noticed it had been more than a few weeks since the Frostivus update, and we didn't want to make you wait until Crownfall before you got any new content. Luckily, the calendar gods came through with another holiday just in time: Happy Lunar New Year!

People who are born in the Year of the Dragon are known for their generosity, prosperity and good luck. Must be nice. For those of us who don't have a magical dragon granting us gift-giving super powers, we've introduced red enveloped-themed Dragon's Gift, available from now through March 7th. These work exactly how they’re named: treasures that can only be given, and opened by whoever you choose as the recipient.

And for those of you who would rather not wait around on the generosity of others, we've got traditional Dragon's Hoard treasures as well. Each treasure or gift contains one of 17 new Lunar New Year-themed cosmetic sets, and a bonus chance for a Dragon's Gift or new unusual effect.

Lastly, every treasure (and gift) has a chance to contain The Ancient Dragon King, the first ever cosmetic for your Ancient, with unique Dire and Radiant styles. Now you'll finally have a chance to adorn your ancient with a mythical dragon, just like, presumably, you've always wanted. Plus, if anyone in your match has one, everyone can see it.

In keeping with this "spirit of giving" theme, we have another gift for (almost) everyone: We've rolled out some new cheat detection code. Well, actually, we rolled it out a few weeks back, and we've spent the time since accumulating quite the set of cheaters. You'll probably notice fewer of them in your games as the automated ban waves roll out.

As is tradition, this update also includes a number of other fixes and improvements:

General Fixes:
  • Fixed a number of issues that would prevent guides from loading in-game (If you manually enabled Steam background downloads to try to work around this problem, you can safely disable it again)
  • Fixed another case where Roshan could go walkabout: Night Stalker casting Dark Ascension while Roshan was channeling a Twin Gate
  • Fixed an issue where already-captured Outposts could be channeled
  • Fixed an issue where the neutral item picker would hide on key release under some Quick Cast modes
  • Fixed Doubloon having only +2 instead of +2.5 mana regen
  • Fixed Eternal Shroud's magic resistance applying to illusions
  • Fixed Eternal Shroud's interactions with Medusa Mana Shield
  • Fixed Safety Bubble's tooltip not mentioning that the barrier bypasses self-inflicted damage
  • Fixed an issue with the effects on Shiva's Guard
  • Fixed Chen's Holy Persuasion not taking Turbo's creep bounty multiplier into account when giving gold on cast
  • Fixed Legion Commander's Aghanim's Shard still giving bonus armor and duration for Overwhelming Odds
  • Fixed Marci's Unleash proccing upon Bloodstone pickup and drop
  • Fixed Muerta's Gunslinger being purgeable
  • Fixed keybind not working to upgrade Ogre Magi's Multicast
  • Fixed a bug that allowed inactive Phantom Lancer's illusions to block Neutral Camps
  • Fixed a rare server crash with Primal Beast's Uproar
  • Fixed column shop layout not displaying Khanda and Harpoon
  • Added magic resistance from Intelligence and increased damage for Universal heroes to expanded tooltips
  • In Turbo, show the "[Hero] was chosen by both teams!" message to everyone, not just the player who tried to pick the already-picked hero
  • Added spell icons for Windranger's Gale Force when using Compass of the Rising Gale
  • Increased performance when displaying many chat messages from global channels
  • Fixed various tooltip issues
  • Updated tips shown during pause for the 7.35b Gameplay Patch


Ability Draft Fixes:
  • A number of previously unavailable Scepter/Shard abilities are now granted, some abilities are accessed by toggling auto-cast on the base spell:
    • Glacier granted with Marksmanship
    • Crystal Clone granted with Frostbite
    • Parting Shot granted with Pierce the Veil
    • Work Horse granted with Stampede
    • Burning Barrage granted with Skeleton Walk
    • Friendly Shadow granted with Shadow Walk
    • Counterspell Ally granted with Counterspell
    • Lightning Hands granted with Arc Lightning
    • Burning Army granted with Death Pact
    • Unrefined Fireblast granted with Fireblast
    • Poison Nova granted with Noxious Plague (Poison Nova passive ability is hidden)
  • Chemical Rage now grants Greevil's Greed. It will appear as a buff instead of on the ability bar.
  • Fixed Spirit Bear not having any abilities.
  • Fixed Blinding Light not appearing as a draftable ability.
  • Fixed Alchemist have 4 basic abilities at draft, which would push other abilities off by one.
  • Cloak and Dagger Shard no longer grants Sleeping Dart.
  • Ravage Shard now grants Dead in the Water instead of Tendrils of the Deep.
  • Invoker Ability Draft Shard updated to the new EMP Shard instead of the old Meteor Shard.
  • Proximity Mines now grants Minefield Sign as an additional ability.
  • Fixed Shadow Wave and Dream Coil's Scepter attacks not working on melee heroes.
  • Fixed Spirits working on illusions when you have a Scepter.
  • Fixed Ogre Magi getting Multicast instead of Dumb Luck as an innate.
  • Fixed Primal Spring, Pulse Nova, Rot, Infernal Blade, and a number of other abilities not granting stacks of Fiery Soul.
  • Fixed Talents not appearing for Starbreaker, Cinder Brew, Phantom Rush, and Power Cogs when the ability is drafted on their original hero.
  • Fixed Death Seeker not being togglable with hotkey.
  • Fixed not being able to toggle Call of the Wild Hawk to switch between Hawk and Boar.
  • Fixed Hairball appearing without a hotkey until it is toggled.
  • Fixed Chemical Rage Scepter not giving bonus damage and spell amplification.
  • Fixed Horn Toss being given by Shard instead of Scepter.
  • Fixed Rain of Destiny being given by Scepter instead of Shard.
  • Fixed Hunter's Boomerang and Decoy being given with either Shard or Scepter.
  • Fixed Timbersaw getting Second Chakram with Scepter. It now is only granted with the talent if Timbersaw drafts Chakram.

Dota 2 Update - 1/8/2024

Some items from the Frostivus 2023 Treasure Chest were missing unusual variants. Those have been added. Over the next couple days, unusual items from these sets that should have been dropped will be granted.

In addition, over the last few days we've addressed several gameplay issues:
  • Fixed Frostivus wards not being selectable/attackable
  • Fixed an issue where pinging certain items in quickbuy could cause the game to lag for teammates
  • Fixed an issue where Arc Warden Tempest Doubles could gain gold by selling Midas
  • Fixed Doom Devour Neutral abilities not leveling up automatically at the time when neutral abilities would scale
  • Fixed Lina permanently gaining Fiery Soul stacks until she casts another spells if she was broken when supercharging with Laguna Blade
  • Fixed Tiny Tree particle showing at the wrong time
  • Fixed a rare server crash with motion controlled abilities (e.g. Spirit Breaker Charge of Darkness)
  • Fixed an issue with Profile Showcase where items could appear floating before the rest of the hero loaded and fixed an issue with anchor points on ultrawide monitors
  • Added missing descriptions for various recipes
  • Fixed some bugs in the tutorials in the Learn tab caused by the 7.35 Gameplay Patch