Replace alltemperate and singlepole with upper and lower latitude bound
Blocking issue: Since alltemperate and singlepole are boolean server settings, they can appear in requirements. There is currently no way to make equivalent checks with latitude-related requirements. What's more, there is no way to differentiate between "alltemperate+singlepole" and "alltemperate without singlepole" by latitude bounds alone, so any requirement vector that checks singlepole (present or negated), without also checking that alltemperate is disabled, will be impossible to migrate either way.
Reply To (Anonymous)
There is currently no way to make equivalent checks with latitude-related requirements.
~> #44182
What's more, there is no way to differentiate between "alltemperate+singlepole" and "alltemperate without singlepole" by latitude bounds alone, so any requirement vector that checks singlepole (present or negated), without also checking that alltemperate is disabled, will be impossible to migrate either way.
~> #44181
Progress update: I've had an unfinished patch for this lying around for a couple of days now, somewhat stalled. It's currently still missing compatibility code for the settings – savecompat, which I'm waiting on #44105 for to avoid merge conflicts or duplicate code; and rscompat for the ruleset-controlled server settings in game.ruleset, which is looking like it'll be an absolute shitshow right now (might have to look into restructuring part of that).
I'm also considering splitting a (comparatively small) part from this to reduce the ultimate patch size – making alltemperate and singlepole server setting requirements illegal altogether (since they can already be expressed as World-ranged latitude requirements, since #44182).
Reply To alienvalkyrie
I'm also considering splitting a (comparatively small) part from this to reduce the ultimate patch size – making alltemperate and singlepole server setting requirements illegal altogether
did that ~> #44326
Follow-up to #44037. The new function that handles game settings affecting latitude can easily work with arbitrary upper and lower latitude bounds ~> we can allow more exotic world shapes by making those server settings.
Since this makes latitude no longer mapgen-internal, #44036 should likely be resolved first.