aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/statistics/gamedata.rs40
1 files changed, 34 insertions, 6 deletions
diff --git a/src/statistics/gamedata.rs b/src/statistics/gamedata.rs
index d7f0e0e..a6dbf15 100644
--- a/src/statistics/gamedata.rs
+++ b/src/statistics/gamedata.rs
@@ -21,16 +21,44 @@ impl Boon {
/// A list of all boons (and conditions)
pub static BOONS: &[Boon] = &[
// Standard boons.
- // Queue size for duration based boons are wonky, more or less guess work.
+ // Boon queue sizes taken from the wiki:
+ // https://wiki.guildwars2.com/wiki/Effect_stacking
+ // IDs from wiki and skilldef.log:
+ // https://www.deltaconnected.com/arcdps/evtc/
+
+ // Duration based
+ Boon(743, "Aegis", 5, BoonType::Duration),
+ Boon(30328, "Alacrity", 9, BoonType::Duration),
+ Boon(725, "Fury", 9, BoonType::Duration),
Boon(717, "Protection", 5, BoonType::Duration),
Boon(718, "Regeneration", 5, BoonType::Duration),
- Boon(719, "Swiftness", 5, BoonType::Duration),
- Boon(725, "Fury", 5, BoonType::Duration),
+ Boon(26980, "Resistance", 5, BoonType::Duration),
+ Boon(873, "Retaliation", 5, BoonType::Duration),
+ Boon(719, "Swiftness", 9, BoonType::Duration),
+ Boon(1187, "Quickness", 5, BoonType::Duration),
Boon(726, "Vigor", 5, BoonType::Duration),
+
+ // Intensity based
Boon(740, "Might", 25, BoonType::Intensity),
- Boon(743, "Aegis", 5, BoonType::Duration),
- Boon(1187, "Quickness", 5, BoonType::Duration),
- Boon(30328, "Alacrity", 9, BoonType::Duration),
+ Boon(1122, "Stability", 25, BoonType::Intensity),
+
+ // Standard conditions.
+ // Duration based
+ Boon(720, "Blinded", 5, BoonType::Duration),
+ Boon(722, "Chilled", 5, BoonType::Duration),
+ Boon(721, "Crippled", 5, BoonType::Duration),
+ Boon(791, "Fear", 5, BoonType::Duration),
+ Boon(727, "Immobile", 3, BoonType::Duration),
+ Boon(26766, "Slow", 3, BoonType::Duration),
+ Boon(742, "Weakness", 3, BoonType::Duration),
+
+ // Intensity based
+ Boon(736, "Bleeding", 1500, BoonType::Intensity),
+ Boon(737, "Burning", 1500, BoonType::Intensity),
+ Boon(861, "Confusion", 1500, BoonType::Intensity),
+ Boon(723, "Poison", 1500, BoonType::Intensity),
+ Boon(19426, "Torment", 1500, BoonType::Intensity),
+ Boon(738, "Vulnerability", 25, BoonType::Intensity),
];
pub fn get_boon(boon_id: u16) -> Option<&'static Boon> {