get_scenarios_item_timings
Analyze Dota 2 item timing win rates to identify optimal purchase times for heroes, improving build order decisions.
Instructions
Get win rates for heroes based on item purchase timing (when key items are completed).
Use this when users ask:
"When should I buy [item] on [hero]?"
"What's the optimal [item] timing?"
"How does [item] timing affect win rate?"
"Show me item timing statistics for [hero]"
"Which heroes benefit most from early [item]?"
"What's a good [item] timing?"
"Is [hero] better with early or late [item]?"
"When do pros buy [item]?"
Provides time-segmented data showing how item purchase timing correlates with win rates. Generally, earlier timings have higher win rates for core items, helping identify optimal farming targets and build orders.
Supports natural language item and hero names.
Args: item_name: Item to analyze. Accepts item names like: - Core items: "bfury" (Battle Fury), "radiance", "midas" (Hand of Midas) - Mobility: "blink" (Blink Dagger), "force" (Force Staff) - Defense: "bkb" (Black King Bar), "linkens" (Linken's Sphere) - Boots: "travels" (Boots of Travel), "phase" (Phase Boots) - Support: "wards", "mek" (Mekansm) - And many more item names/abbreviations hero_name: Hero to analyze. Accepts: - Integer: Hero ID (e.g., 86 for Rubick) - String: Hero name (e.g., "Rubick", "Anti-Mage")
Note: At least one parameter must be provided. You can provide:
- Only item_name: See which heroes buy this item and when
- Only hero_name: See all item timings for this hero
- Both: See specific item timing for specific heroReturns: Dictionary organized by timing brackets (formatted as "MM:SS"). Structure depends on parameters provided:
If only item_name provided:
- item_name (str): The item being analyzed
- [time brackets]: Keys like "12:30", "15:00", etc., each containing list of:
- hero_name (str): Hero name
- games (int): Games with this timing
- wins (int): Wins with this timing
- win_rate (str): Win rate percentage (e.g., "65.3")
If only hero_name provided:
- hero_name (str): The hero being analyzed
- [time brackets]: Keys like "12:30", "15:00", etc., each containing list of:
- item_name (str): Item name
- games (int): Games with this timing
- wins (int): Wins with this timing
- win_rate (str): Win rate percentage
If both provided:
- hero_name (str): The hero
- item_name (str): The item
- [time brackets]: Keys like "12:30", "15:00", etc., each containing list of:
- games (int): Games with this timing
- wins (int): Wins with this timing
- win_rate (str): Win rate percentageCommon queries: - Optimal item timing: get_scenarios_item_timings(item_name="bfury", hero_name="Anti-Mage") - Best heroes for item: get_scenarios_item_timings(item_name="blink") - Hero's item timings: get_scenarios_item_timings(hero_name="Anti-Mage")
Example: get_scenarios_item_timings(item_name="bfury", hero_name="Anti-Mage") -> { "hero_name": "Anti-Mage", "item_name": "bfury", "10:00": [{"games": 12, "wins": 10, "win_rate": "83.3"}], "12:00": [{"games": 45, "wins": 32, "win_rate": "71.1"}], "15:00": [{"games": 234, "wins": 145, "win_rate": "62.0"}], "18:00": [{"games": 189, "wins": 98, "win_rate": "51.9"}], "21:00": [{"games": 87, "wins": 38, "win_rate": "43.7"}], ... }
This clearly shows that Anti-Mage's win rate with Battle Fury decreases significantly as the timing gets later. A 12-minute Battle Fury has 71% win rate, while an 18-minute Battle Fury only has 52% win rate, suggesting you should aim for Battle Fury before 15 minutes for optimal results.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| hero_name | No | ||
| item_name | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||