Skip to content

Regionerator 2.3.0

Compare
Choose a tag to compare
@Jikoo Jikoo released this 08 Mar 15:27
· 241 commits to master since this release
4beb0d3

It's been so long since a release that you get categories instead of just bullet points! Exciting!

Configuration:

  • Added per-world flag durations and default setting for all non-specified worlds
    • Replaces 2 old settings - world list and flag duration.
    • Allows for setups where specific worlds do not use Regionerator but all other user-generated worlds will.
    • See Configuration#worlds
  • Added cache settings
    • These settings are mostly for advanced users with particularly large or small servers. If you don't know what you're doing, you could probably break Regionerator badly (i.e. a batch size of 1 and a batch delay of 5 minutes would cause the queue to take forever to drain, meaning flags would likely fail to save).
    • See Configuration#cache

Cache:

  • Changed queue to drain at a rate of 1 region per 0.5 seconds instead of 2.5 seconds.
  • Added minimum time between expiration checks to reduce churn
  • Added soft max cache size (cache is allowed to exceed max size between expiration checks)

Hooks:

  • Fixed Civs hook not enabling without soft dependencies (namely WG and MMOItems) being present
    • Because the hook needs to be precompiled and therefore is a huge pain to monitor and maintain, the hook is officially EoL. If the API used changes, that's it, goodbye hook.
  • Fixed WG hook causing problems without WG present
  • Fix WG hook not being declared capable of async operation
    • Using exclusively async-capable hooks provides a huge speed improvement, so this may lead to huge performance gains during cycles for some people.

Miscellaneous:

  • Changed flagging to distribute load more evenly
    • Reduces likelihood of a lag spike when updating visiting flags by reducing the number of simultaneously considered players
  • Fixed completely fresh regions being deleted when fresh chunks are configured to be preserved
  • Moved some utilities to a more heavily tested library