チケット #44174

mapgen: singlepole still makes a difference when alltemperate is set

登録: 2022-03-24 06:16 最終更新: 2022-03-25 00:58

報告者:
担当者:
(未割り当て)
チケットの種類:
状況:
オープン
コンポーネント:
マイルストーン:
(未割り当て)
優先度:
5 - 中
重要度:
4
解決法:
なし
ファイル:
なし

詳細

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.

チケットの履歴 (2 件中 2 件表示)

2022-03-24 06:16 更新者: alienvalkyrie
  • 新しいチケット "mapgen: singlepole still makes a difference when alltemperate is set" が作成されました
2022-03-25 00:58 更新者: alienvalkyrie
コメント

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.

添付ファイルリスト

添付ファイルはありません

編集

ログインしていません。ログインしていない状態では、コメントに記載者の記録が残りません。 » ログインする