A small desktop application built in C# and WPF for calculating ability cooldowns in League of Legends based on Ability Haste gained from different sources such as runes, Hex Dragons, and manually entered values.
I built this project as a personal learning exercise and as a practical utility for planning possible cooldown values in advance instead of guessing them manually.
The app was also used to practice:
- C#
- WPF
- event-driven programming
- input validation
- basic UI design
- structuring logic into manageable parts
- Add Ability Haste from predefined rune buttons
- Add Ultimate Hunter bonus
- Select Hex Dragon bonus
- Manually enter Ability Haste values
- Enter base cooldown value
- Calculate final reduced cooldown
- Clear and reset all values
- C#
- WPF
- .NET
The application takes a base cooldown value and combines all entered Ability Haste sources into a total value.
It then applies the cooldown reduction formula used by the game logic:
Reduced Cooldown = Base Cooldown × (100 / (100 + Ability Haste))
Where:
Base Cooldown = original ability cooldown
Ability Haste = total haste from runes, items, dragons, etc.
