Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-07-23 | remove default implementation of Analyzer::outcome | Daniel Schadt | |
This was only there to make it easier to gradually implement the outcome method for the individual bosses. Now that each boss has a proper outcome, we no longer need the default method - in fact, I'd rather make sure the compiler tells us if we forget to implement this method in a new analyzer. | |||
2020-07-23 | implement strike Analyzers | Daniel Schadt | |
2020-07-23 | implement Analyzer::outcome for fractals | Daniel Schadt | |
2020-07-23 | implement Analyzer::outcome for wing 7 | Daniel Schadt | |
2020-07-23 | implement Analyzer::outcome for wing 6 | Daniel Schadt | |
2020-07-23 | implement Analyzer::outcome for wing 5 | Daniel Schadt | |
2020-07-23 | implement proper outcome for w1-w4 | Daniel Schadt | |
It turns out that `was_rewarded` is a pretty bad heuristic if you ever kill a boss a second time per week (basically, was_rewarded=false does not imply that the boss was unsuccessful). Therefore, we need a proper detection of when a fight failed and when a fight succeeded. This is the first batch that implements this as part of the Analyzer trait for bosses of wings 1 to 4. | |||
2020-06-28 | start implementing analyzers | Daniel Schadt | |
It turns out that the different encounters do require quite some encounter-specific logic, not only to determine whether the CM was activated, but also to determine whether the fight was successful, the duration of the fight, later the phases, ... Wrapping all of this in pre-defined "triggers" (like CmTrigger) feels like it will be a bit unfitting, so with this patch we have introduced the evtclib::Analyzer, which can be used to analyze the fights. Currently, the whole CM detection logic has been moved to this new interface, and soon we also want the success-detection logic in there. The tests pass and the interface of Log::is_cm is unchanged. |