討論室/0.15対応/0.15マップ設定

Last-modified: 2017-05-08 (月) 19:15:55

マップについて

マップは Perlin Noiseアルゴリズムという名前のアルゴリズムを使って生成しています。
簡単に言うと海の波のような動作をします。

またマップはデフォルトで無限の大きさを持ちますが、当然ながら開始時に全て生成されるわけではありません。
プレイヤーが現在の可視状態のチャンクの端に来た時に新しいチャンクが生成されます。

マップは高さと幅を制限することができます。高さか幅のどちらかだけを制限すれば帯状の島が生成されるでしょう。
マップを制限すると、マップ外は全て水という扱いに近くなります。汲み上げポンプをマップ端にくっつけると何もないところから水を吸い出します。

参考
英wikiのWorld generator

基本設定

基本設定にはいくつかのマップ生成用プリセットが用意されています。
各プリセットは、資源設定、詳細設定内の各パラメータを調整したものです。
プリセットを選択後、パラメータを独自に調整することも可能です。

初期設定
ノーマル
基本となる通常の設定です。
豊富な資源
各資源のタイルあたりの埋蔵量が非常に豊富になります。それ以外のパラメータはノーマルと同じです。
資源不足に悩まされにくくなるため、難易度的には易しくなります。
難易度:低
マラソン
ノーマルに比べ、アイテム製作のためのレシピ、テクノロジー研究が高コストになります。
より多くの資源と大規模な生産ラインが必要になります。
難易度:高
危険
ノーマルに比べ、バイターの巣が多く生成され、またバイターの進化も加速されます。
難易度:高
死の世界
マラソンと危険を併せた内容になります。
難易度:非常に高
鉄道の世界
鉄道の利用を推奨するため、資源が遠くに多く生成されるようになります。
バイターは拠点を拡大しなくなるので、じっくりと生産ラインを進めることができます。
難易度:中
ピースフルモード
バイターから攻撃してくることがなくなります。ただしプレイヤーから攻撃した場合は応戦してきます。
この設定はゲーム中でもコマンドで設定を変えることができます。
幅と高さ
マップの高さと幅を制限することができます。タイル単位の数を指定します。
低スペックのPCで遊ぶ場合やマルチプレイを行う場合は制限した方がいいでしょう。
シード値
ワールドを生成するのに使用する乱数発生器の開始値です。
Mapコード
マップ作成のためのすべての設定(シード値、資源の設定、マップの幅高さ等)
例えば以下のような文字列です。
>>> AAALABAABgADAwYAAAAEAAAAY29hbAMDAgoAAABjb3BwZXItb3Jl
AwMCCQAAAGNydWRlLW9pbAMDAgoAAABlbmVteS1iYXNlAwMCCAAAAGl
yb24tb3JlAwMCBQAAAHN0b25lAwMCORcrDUQ7AACMCwAAAAAAAAAAAA
ADAFR8w0Q = <<<
この文字列は、ロード画面でセーブデータを選択して左下にあるMapコードボタンを押すと表示されます。
表示された文字列はマウスで選択(またはCtrl+A)して Ctrl+C を押すとコピーできます。

資源設定

各種資源とバイターの巣の生成量を調整します。
各資源は、生成割合、サイズ、資源量の3つのパラメータで構成されます。

生成割合

どれぐらいの頻度で鉱床(鉄鉱石や油田タイルの集まり)や地形変化を発生させるかを決定します。
タイル上の埋蔵量は変更せず、代わりに各鉱床の面積を変更します。一定範囲内の資源の平均量には影響しません。技術的なことを言うと、波の周波数を高くします。

多いと設定すると、タイルごとの埋蔵量は同じ量のまま、鉱床の面積が少なくなるため各鉱床で採掘できる総資源量は少なくなります。資源を安定供給しながら採掘施設を頻繁にリセットするようなプレイになります。

少なめと設定すると、鉱床の出現はかなり稀になりますが、見つかった場合は大抵大規模になります。採掘施設を移動させたくない人や世界を探検したい人向け。

サイズ

鉱床や水の面積を決定します。
サイズを大きくすると、鉱床や湖の平均直径を大きくします。
つまり大きいを選択すると生成される鉱床や湖が大規模になりやすくなり、小さいを選択すると小規模になりやすくなります。
生成割合でも面積は変更されますが、生成割合が出現頻度の変更に伴う単なる調整なのに対し、サイズでは(おそらくですが)鉱床や水の絶対数を増加させます。
バイターの巣は全体的に大きくなります。
技術的に言うと、波の基準線(この線を越えると資源として生成する)の位置を変更します。

資源量
生成された鉱床や油田のタイル当たりの埋蔵量を決定します。
技術的に言うと、波の高さを変更します。
スタートエリア
ゲーム開始地点周辺に特別なエリアを定義します。
このエリアは少なくとも一つは鉱物資源があり、必ず水があり、バイターの巣が一つもないエリアとなります。
スタートエリアは極小や無しにも設定できますが、バイターの巣のど真ん中から開始して詰む可能性があるため推奨しません。
開始直後に周辺を探索したいならば、スタートエリアを大きくすると近くにバイターの巣が生成されないため探索しやすくなります。

詳細設定

Pollution / 汚染
施設から排出される汚染の拡散度合いを決定します。汚染が広範囲に拡散するほど、バイターから狙われやすくなります。
伝播率を高くすれば、より遠くまで汚染が拡散します。消散率は逆に汚染が消散する割合になります。
汚染を吸収してくれる木についても設定可能です。
Evolution / バイター進化ファクター
バイターの進化に関する係数を設定します。
高い値を設定すると、バイターの進化が加速され、より早い段階(ゲーム内経過時間)で強力なバイターが出現することになります。
詳細については、[[敵#進化ファクター(EF)]を参照してください。
敵拠点の拡大
バイターが現在の巣から新しい巣を拡大する際のパラメータを決定します。
距離とサイズを大きく、クールダウンを短くすると、バイターの拡張が激しくなります。
有効のチェックを外すと巣の拡大は行われなくなります。
レシピ・研究
アイテム製作する際の材料とテクノロジーの研究コスト(必要なサイエンスパック数)をより高くします。現状、低くすることはできません。
研究の難易度を高コストに設定した場合、コスト係数分、サイエンスパックの要求数が倍増します。

生成アルゴリズム

地形や資源の生成には Perlin noise アルゴリズムを改良したものを使用しています。

英フォーラムの 解説記事 から引用しています。

&ref(): File not found: "factorio-resources.png" at page "討論室/0.15対応/0.15マップ設定";

青の波線は内部のノイズ関数です。
黒の線はリソースの位置を決定する 基準線 です。
赤の線は実際に配置されるリソースです。

Normal setting(全て普通) と High frequency, normal size(生成割合を多いにセット)を見比べると、生成割合を多くすると資源の数が増えて資源間の距離が狭まるのがわかります。

このメカニズムは、多少調整されてFactorioの全てのマップ生成で使用されます。

マップ生成はタイルごとに適用され、f(x) > 0 となるタイル上に資源が生成されます。
資源の埋蔵量は f(x) * 資源量 で決定されます。