Incidencia #44174

mapgen: singlepole still makes a difference when alltemperate is set

Abrir Fecha: 2022-03-24 06:16 Última actualización: 2022-03-25 00:58

Informador:
Propietario:
(Ninguno)
Tipo:
Estado:
Open
Componente:
Hito:
(Ninguno)
Prioridad:
5 - Medium
Gravedad:
4
Resolución:
Ninguno
Fichero:
Ninguno

Details

The singlepole server setting halves the ICE_BASE_LEVEL, which is used in adjust_terrain_param() to determine how much of each terrain type to generate, even when alltemperate is enabled. This is counter-intuitive, since with alltemperate, there are no poles either way.

This will probably become quickly obsolete in master due to #44167 and #44038, but it might be worth either addressing or documenting in the other branches.

Ticket History (2/2 Histories)

2022-03-24 06:16 Updated by: alienvalkyrie
  • New Ticket "mapgen: singlepole still makes a difference when alltemperate is set" created
2022-03-25 00:58 Updated by: alienvalkyrie
Comentario

To elaborate on why this currently makes a difference (in pre-#44167 code, including older branches): As far as mapgen.c:make_terrains() is concerned, arctic terrain falls under the "plains" umbrella, so a map with larger poles must have more plains, and less of other categories; that's why ICE_BASE_LEVEL is even considered in adjust_terrain_param().

This really points to an underlying issue – adjust_terrain_param() takes colatitudes (ICE_BASE_LEVEL and TROPICAL_LEVEL) as proportions of the map in a certain climate, without concern for whether those colatitudes are actually present on zero, one or two hemispheres. At the time of writing, this only affects alltemperate maps, but that will change with #44038 and the option for partial hemisphere maps, or maps with two differently-sized hemispheres.

Attachment File List

No attachments

Editar

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » Entrar