evemon
evemon copied to clipboard
add Cerebral Accelerator information to main panel
According to https://github.com/esi/esi-issues/issues/783 There are no endpoints report the active booster information. But it is possible to use /characters/[character_id]/skillqueue/ to determine the active Cerebral Accelerator. The skill queue's ended time is report by ESI correctly. It can be used to calculate the type of Cerebral Accelerator and expire time. However, it is just an idea now.
If it's too cumbersome to determine type and expire time based on the skill queue values, would it be possible to get something to manually specify the accelerator type and expiration date?
https://github.com/mgoeppner/evemon/pull/42
Some work in progress here — the attribute optimizer currently goes haywire when a booster is active, which is a bug caused by not properly handling boosters.
We can’t accurately say which booster id is active, but based on some attribute math we can determine the bonus it adds, then using @luyi1888’s suggestion we can determine the remaining time.
So it would be feasible to show something like ”+8 attribute booster active until yyyy-mm-dd hh:mm:ss”
@luyi1888 @doomlord289
As of 71c4d56466bfcc4845fa5c45a2cee7c1103bd563, EVEMon will show booster information -- there are still some issues with it (you may notice the skill queue pane times and SP/hr values are off when a booster is active, but this should not affect the footer which reports the current training skill and when the queue finishes) and how evemon calculates remaining training time internally since the approach used is dependent on the reported time from ESI's skill queue endpoints.
Please remember that MULTIPLE Boosters and Implants may be active, which is going to further complicate things.
Please remember that MULTIPLE Boosters and Implants may be active, which is going to further complicate things.
I am aware this can happen -- with the current calculation, you should only run into problems with the booster duration timer if you are using more than one attribute booster. Unfortunately, there is no ESI endpoint to retrieve active boosters, so everything needs to be calculated from the current skill queue completion times. The attribute values themselves will update correctly once the first booster expires, and the duration clock will look correct again. Due to the lack of ESI support for boosters, I think this is the best I will be able to do for now (Which is much better than how EVEMon was handling boosters before).
EDIT: Note to add implant values are calculated separately from booster values, since there is an ESI endpoint for implants. The math here is to subtract the implant values from the attribute values, then calculate the max number of attribute points, and the remainder is the bonus to your attributes from the booster(s). https://github.com/mgoeppner/evemon/commit/c548050ebaecf716df55b8577aa7176f14e92722#diff-c437cdb56c291c2a1793dc16dbeff3d7a75dc3276476e6a77cd2e5821c3e5832R468
Implemented.