mrmin123 / kancolle-auto

Kantai Collection (Kancolle) bot/automation tool - DEPERECATED - see kcauto-kai:
https://github.com/mrmin123/kcauto-kai
54 stars 22 forks source link

Next sortie time is set according to ship already in repair dock #298

Closed mrmin123 closed 7 years ago

mrmin123 commented 7 years ago

Next sortie time sometimes gets set based on the repair time remaining of a ship already in the repair dock, which is not related to the sortieing fleet.

mrmin123 commented 7 years ago

Downstream issue introduced by some changes in #270

waicool20 commented 7 years ago

I think it isn't that big of a problem? The script uses the shortest repair time for the next sortie, even if that ship is unrelated, itll just try to sortie, find that the related one is still in repair and wait again until it can sortie.

mrmin123 commented 7 years ago

It's a huge issue when you have an unrelated ship in the docks that has, for example, a 10 hour repair timer.

To expand on the issue: the previous repair logic, even with 100% bucket use, would bucket everything but still set a next sortie time 10 hours later due to the next_sortie_time_set() call in the first try block that fires on finding ships already under repair (not that there is anything wrong with that). The subsequent next_sortie_time_set() calls are not called with an override (by design and necessity) so if they're bucketed they never override the initially set 10 hour next sortie time. This is just an unforeseen circumstance/byproduct of the new next_sortie_time_set() calling order.

Either way, this has been rectified as of 5a946d3f2fd2c496fafc0c6ed859e624cea79922, merged into master 4 hours ago, so I am closing this issue.