D2Tool is a desktop application that helps you manage your Dota 2 hero grid configurations. It automatically updates your Dota 2 heroes grid config files periodically in the background, organizing heroes based on their performance data from Dota 2 Pro Tracker.
- Automatic Grid Generation: Creates hero grid layouts based on hero ratings and match counts from Dota 2 Pro Tracker
- Position-Based Organization: Organizes heroes by their positions (Carry, Mid, Offlane, Support, Hard Support) with customizable order
- Multiple Account Support: Automatically finds and manages grid configs for all Steam accounts on your computer
- Per-File Management: Enable/disable individual config files, view last update time and errors for each file
- Position Toggle: Enable or disable specific positions to customize which roles appear in your grid
- Drag & Drop Reordering: Easily reorder positions by dragging them in the interface
- Background Operation: Runs in the background and updates grids periodically (every hour)
- Auto-Updates: Automatically checks for application updates on startup and periodically
- Startup Integration: Option to run automatically when your computer starts (Windows only)
- System Tray: Minimizes to system tray when closed (Windows only)
- Modern Interface: Clean, dark-themed UI with sidebar navigation
D2Tool fetches hero statistics from Dota 2 Pro Tracker, then:
- Finds your Steam installation and locates all hero grid config files
- Removes any previously generated D2Tool configurations
- Creates new hero grid layouts organized by enabled positions and performance metrics
- Saves the updated configurations back to your Dota 2 config files
- Go 1.25 or later
- Node.js 18 or later
- Wails CLI v2.11.0 or later
- Steam and Dota 2 installed
go install github.com/wailsapp/wails/v2/cmd/wails@latestFor platform-specific dependencies, see the Wails Installation Guide.
- Clone the repository
- Install frontend dependencies:
cd frontend npm install cd ..
- Build the application:
wails build
The built binary will be in the build/bin directory.
To run in development mode with hot reload:
wails devPre-built binaries for Windows are available in the releases section.
Run the built binary or use the pre-built release for your platform.
Command line options:
--minimized- Start the application minimized (useful for startup)
The main page for managing your hero grid configurations:
- Update Section: Manually trigger an update of all enabled config files
- Config Files:
- View all discovered hero grid config files with their attributes (account name, Steam ID)
- Enable/disable individual files
- See last update time and any errors for each file
- Add custom config files or remove existing ones
- Positions Order:
- Drag and drop to reorder positions
- Toggle positions on/off to control which roles appear in your grid
Configure whether D2Tool runs automatically when your computer starts (Windows only).
- View current and latest version information
- Check for application updates
- Download and install new versions
If D2Tool cannot find your Steam installation:
- Click "Add File" and manually navigate to your hero grid config file
- The file is typically located at:
- Windows:
C:\Program Files (x86)\Steam\userdata\<your-steam-id>\570\remote\cfg\hero_grid_config.json
- Windows:
If your updated grid layouts don't appear in Dota 2:
- Make sure Dota 2 is closed when running D2Tool
- Restart Dota 2 after running D2Tool
- In Dota 2, check the "Heroes" tab and layouts there to see your updated layouts
D2Tool creates a d2tool.log file in the same directory as the executable for debugging purposes.