このガイドでは、Legion Hosting 上で Factorio 専用サーバーを設定して実行するために必要なすべて(アカウント認証、スタートアップ変数、サーバー設定、ワールド生成、プレイヤーの接続、セーブ管理)を説明します。MODのインストールについては、Factorio MOD のインストールを参照してください。
1. Factorio アカウントトークンの取得
サーバーを公開マルチプレイヤーサーバーブラウザに表示させたい場合、Factorio アカウントのユーザー名とトークンが必要です。これらは、公式MODポータルからMODをダウンロードするためにも必要です。
- factorio.com/login にアクセスし、Factorio アカウントにサインインします。
- プロフィールページに移動します。
- API Authentication Tokens セクションまでスクロールします。
- Generate をクリックして新しいトークンを作成します(または既存のトークンをコピーします)。
- トークン文字列をコピーします。これを GPanel のスタートアップタブの
SERVER_TOKENフィールドに貼り付けます。
SERVER_USERNAME と SERVER_TOKEN を空のままにすることができます。ただし、有効な認証情報がないと、サーバーはMODポータルから自動的にMODをダウンロードできません。
2. 初回起動
Legion Hosting から Factorio サーバーを購入したら、初めて稼働させるために以下の手順に従ってください:
- GPanel にログインし、Factorio サーバーを選択します。
- スタートアップタブに移動します。
- FACTORIO_VERSION 変数を設定します:
latest-- 現在の安定版リリースをインストールします(ほとんどのプレイヤーに推奨)。experimental-- 最新の機能を備えた最新の実験版/ベータ版をインストールしますが、バグがある可能性があります。
- サーバーブラウザに表示したい名前を SERVER_NAME に設定します。
- 公開サーバーリストに表示したい場合は、SERVER_USERNAME と SERVER_TOKEN を入力します(上記のセクションを参照)。
- コンソールタブに移動し、開始をクリックします。
- サーバーは Factorio 専用サーバーファイルをダウンロードし、デフォルトのセーブを生成します。初回起動時は数分かかることがあります。
FACTORIO_VERSION 変数を更新し、サーバーを再起動します。新しいバージョンが自動的にダウンロードされます。
3. GPanel スタートアップ変数
これらの変数は GPanel のスタートアップタブで設定され、サーバーのコア動作を制御します。これらはサーバーの起動ごとに反映されます。
| 変数 | デフォルト | 説明 |
|---|---|---|
FACTORIO_VERSION |
latest |
インストールするサーバーバージョン。安定版には latest、最新のベータ版には experimental を使用します。 |
SAVE_NAME |
gamesave |
サーバーが起動時に読み込むセーブファイルの名前(拡張子なし)。 |
SERVER_NAME |
|
マルチプレイヤーブラウザに表示されるサーバー名。 |
SERVER_DESC |
|
ブラウザでサーバー名の横に表示される短い説明。 |
SERVER_USERNAME |
|
Factorio アカウントのユーザー名。公開サーバーリストとMODダウンロードに必要です。 |
SERVER_TOKEN |
|
Factorio アカウントの認証トークン。公開リストにはユーザー名とともに必要です。 |
MAX_SLOTS |
20 |
サーバー上の最大プレイヤースロット数。 |
SAVE_INTERVAL |
10 |
自動セーブの間隔(分)。 |
SAVE_SLOTS |
5 |
ローテーションする自動セーブスロットの数。この上限に達すると古いセーブが上書きされます。 |
AFK_KICK |
0 |
アイドル状態のプレイヤーがキックされるまでの分数。0 はAFKキックを無効にします。 |
4. server-settings.json
主要なサーバー設定ファイルは以下にあります:
data/server-settings.json
このファイルは GPanel のファイルマネージャーまたは SFTP 経由で編集します。以下は最も重要な設定です。
SERVER_NAME、SERVER_DESC、MAX_SLOTS、SERVER_USERNAME、SERVER_TOKEN など)は、起動時に server-settings.json の対応する値を上書きすることがあります。設定が反映されないように見える場合は、まずスタートアップタブの値を確認してください。
| 設定 | デフォルト | 説明 |
|---|---|---|
name |
"" |
マルチプレイヤーブラウザに表示されるサーバー名。 |
description |
"" |
ブラウザに表示されるサーバーの説明。 |
tags |
[] |
ブラウザでのフィルタリング用のタグ文字列の配列(例: ["modded", "vanilla", "friendly"])。 |
max_players |
0 |
最大プレイヤー数。0 は無制限を意味します(代わりに MAX_SLOTS スタートアップ変数を使用してください)。 |
visibility |
{"public": true, "lan": true} |
サーバーが公開ブラウザおよび/またはLANブラウザに表示されるかどうかを制御します。公開表示には有効なユーザー名とトークンが必要です。 |
game_password |
"" |
参加に必要なパスワード。パスワードなしの場合は空欄のままにします。 |
require_user_verification |
true |
true の場合、認証済みの Factorio アカウントを持つプレイヤーのみが参加できます。 |
autosave_interval |
10 |
自動セーブの間隔(分)(SAVE_INTERVAL スタートアップ変数によって上書きされる場合があります)。 |
autosave_slots |
5 |
ローテーションする自動セーブファイルの数(SAVE_SLOTS スタートアップ変数によって上書きされる場合があります)。 |
afk_autokick_interval |
0 |
AFKキックのタイムアウト(分)。0 は無効にします。 |
auto_pause |
true |
プレイヤーが接続していないときにゲームを一時停止します。サーバーのリソースを節約します。 |
only_admins_can_pause_the_game |
true |
一時停止の権限をサーバー管理者のみに制限します。 |
admins |
[] |
管理者権限を持つ Factorio ユーザー名の配列(例: ["YourUsername"])。管理者はキック、BAN、コマンドの実行ができます。 |
server-settings.json の例
{
"name": "My Factorio Server",
"description": "A Legion Hosting Factorio Server",
"tags": ["vanilla", "friendly"],
"max_players": 0,
"visibility": {
"public": true,
"lan": true
},
"username": "YourFactorioUsername",
"token": "YourTokenHere",
"game_password": "",
"require_user_verification": true,
"max_heartbeats_per_second": 60,
"allow_commands": "admins-only",
"autosave_interval": 10,
"autosave_slots": 5,
"afk_autokick_interval": 0,
"auto_pause": true,
"only_admins_can_pause_the_game": true,
"max_upload_in_kilobytes_per_second": 0,
"max_upload_slots": 5,
"minimum_latency_in_ticks": 0,
"ignore_player_limit_for_returning_players": false,
"admins": ["YourFactorioUsername"]
}
5. マップ生成
Factorio は、新しいマップの生成方法とゲームプレイ中のワールドの挙動を制御するために、2つの設定ファイルを使用します。
map-gen-settings.json(ワールド生成)
以下にあります:
data/map-gen-settings.json
このファイルは、新しいマップが作成される際の地形、リソースの分布、敵の配置を制御します。このファイルへの変更は、新しいマップを生成するときにのみ反映されます。既存のセーブを変更することはありません。
| 設定 | 説明 |
|---|---|
width / height |
マップのサイズ(タイル単位)。0 は無限を意味します(デフォルト)。マップサイズを制限するには特定の値を設定します。 |
seed |
マップ生成のシード。ランダムなシードには null を使用するか、特定のマップを再現するには数値を指定します。 |
peaceful_mode |
デフォルトは false。true の場合、敵は先制攻撃しません。 |
autoplace_controls |
リソースと地形フィーチャーの頻度、サイズ、豊富さを制御します。各エントリー(例: iron-ore、copper-ore、coal、stone、crude-oil、trees、enemy-base)は frequency、size、richness の値を受け取ります。 |
cliff_settings |
崖の生成を制御します: name、cliff_elevation_0(最初の崖の高度)、cliff_elevation_interval(崖のレベル間の間隔)、richness(崖の密度)。 |
starting_area |
安全な開始エリア(敵なし)のサイズ。デフォルトは 1。値を大きくすると、バイターに遭遇するまでのスペースが広がります。 |
property_expression_names |
水域のカバー率、標高、湿度の高度な地形表現。control-setting:moisture:bias や同様のキーで地形生成を調整します。 |
リソースの頻度、サイズ、豊富さの値
autoplace_controls 内の各リソースについて、3つのプロパティを調整できます。値は 1 が標準となる倍率です:
| プロパティ | 効果 |
|---|---|
frequency |
リソースが出現する頻度。高いほど = マップ全体に広がるパッチが増えます。 |
size |
各リソースパッチの大きさ。 |
richness |
リソースの各タイルが枯渇するまでに産出するアイテムの量。 |
map-gen-settings.json の例
{
"width": 0,
"height": 0,
"seed": null,
"peaceful_mode": false,
"autoplace_controls": {
"iron-ore": { "frequency": 1, "size": 1.5, "richness": 2 },
"copper-ore": { "frequency": 1, "size": 1.5, "richness": 2 },
"coal": { "frequency": 1, "size": 1, "richness": 1.5 },
"stone": { "frequency": 1, "size": 1, "richness": 1.5 },
"crude-oil": { "frequency": 1, "size": 1, "richness": 2 },
"uranium-ore": { "frequency": 1, "size": 1, "richness": 1 },
"trees": { "frequency": 1, "size": 1, "richness": 1 },
"enemy-base": { "frequency": 1, "size": 1, "richness": 1 }
},
"cliff_settings": {
"name": "cliff",
"cliff_elevation_0": 10,
"cliff_elevation_interval": 40,
"richness": 1
},
"starting_area": 1,
"property_expression_names": {
"control-setting:moisture:frequency:multiplier": "1",
"control-setting:moisture:bias": "0"
}
}
map-settings.json(ランタイムのワールド挙動)
以下にあります:
data/map-settings.json
このファイルは、汚染の拡散、敵の進化、拡張などのランタイム挙動を制御します。map-gen-settings.json とは異なり、これらの設定の一部は変更してマップを再読み込みすると、既存のセーブに影響を与えることがあります。
| セクション | 主要な設定 | 説明 |
|---|---|---|
pollution |
enabled、diffusion_ratio、ageing、min_to_diffuse |
汚染が拡散するかどうか、どのくらい速く拡散するか、どのくらい速く減衰するかを制御します。汚染を無効にすると、汚染による敵の攻撃も無効になります。 |
enemy_evolution |
enabled、time_factor、destroy_factor、pollution_factor |
敵が時間経過、スポナーの破壊、汚染によってどのように進化するかを制御します。係数が低いほど = 進化が遅くなります。進化を完全に止めるには enabled を false に設定します。 |
enemy_expansion |
enabled、max_expansion_distance、settler_group_min_size、settler_group_max_size、min_expansion_cooldown、max_expansion_cooldown |
敵が新しい拠点を建設するかどうか、どのくらい積極的に拡張するかを制御します。バイターがマップ全体に広がるのを防ぐには無効にします。 |
steering |
default、moving |
ユニットの経路探索の挙動。調整が必要になることはまれです。 |
map-settings.json の例
{
"pollution": {
"enabled": true,
"diffusion_ratio": 0.02,
"min_to_diffuse": 15,
"ageing": 1,
"expected_max_per_chunk": 150,
"min_to_show_per_chunk": 50
},
"enemy_evolution": {
"enabled": true,
"time_factor": 0.000004,
"destroy_factor": 0.002,
"pollution_factor": 0.0000009
},
"enemy_expansion": {
"enabled": true,
"max_expansion_distance": 7,
"settler_group_min_size": 5,
"settler_group_max_size": 20,
"min_expansion_cooldown": 14400,
"max_expansion_cooldown": 216000
}
}
6. 新しいマップの作成
デフォルトでは、サーバーは初回起動時に標準設定でマップを生成します。カスタム生成設定で新しいマップを作成するには:
- GPanel でサーバーを停止します。
data/map-gen-settings.jsonとdata/map-settings.jsonを、希望するワールド生成およびランタイム設定で編集します(上記のセクションを参照)。- ファイルマネージャーで saves ディレクトリに移動します。
- サーバーが新しいセーブを生成するように、既存のセーブファイル(例:
gamesave.zip)を削除または名前変更します。 SAVE_NAMEスタートアップ変数が、希望するセーブファイル名と一致していることを確認します(デフォルトはgamesave)。- サーバーを開始します。その名前のセーブが存在しないことを検出し、更新された設定を使用して新しいマップを生成します。
map-gen-settings.json の seed 値を特定の数値に設定します。ランダムなシードには null を使用します。
7. 接続方法
プレイヤーが Factorio サーバーに接続する方法は2つあります。
オプションA: 公開サーバーブラウザ
有効な Factorio 認証情報で SERVER_USERNAME と SERVER_TOKEN を設定し、visibility.public が true に設定されている場合:
- Factorio を開き、Play をクリックします。
- Multiplayer を選択します。
- Browse public games をクリックします。
- 検索バーを使用して名前でサーバーを探します。
- サーバーをクリックして参加します。設定されている場合はゲームパスワードを入力します。
オプションB: ダイレクト接続
- Factorio を開き、Play をクリックします。
- Multiplayer を選択します。
- Connect to address をクリックします。
- サーバーのIPアドレスとポートを
IP:Portの形式で入力します。 - Connect をクリックします。
8. セーブ管理
自動セーブの設定
自動セーブは2つのスタートアップ変数で制御されます:
SAVE_INTERVAL-- サーバーが自動セーブする頻度(分単位、デフォルト: 10)。SAVE_SLOTS-- 保持されるローテーション自動セーブファイルの数(デフォルト: 5)。上限に達すると、最も古い自動セーブが上書きされます。
自動セーブファイルは、_autosave1.zip、_autosave2.zip などの名前で saves ディレクトリに保存されます。
手動セーブ
GPanel コンソールで以下のコマンドを実行すると、いつでも手動セーブをトリガーできます:
/server-save
これは現在の SAVE_NAME を使用してセーブを作成します。特定のファイル名にセーブすることもできます:
/server-save my-backup
既存のセーブのアップロード
既存の Factorio ワールドをサーバーに転送するには:
- GPanel でサーバーを停止します。
- ローカルのセーブファイルを見つけます。ほとんどのシステムでは、Factorio のセーブは以下にあります:
- Windows:
%APPDATA%\Factorio\saves\ - Linux:
~/.factorio/saves/ - macOS:
~/Library/Application Support/factorio/saves/
- Windows:
- ファイルマネージャーまたは SFTP 経由で、
.zipセーブファイルをサーバー上の saves ディレクトリにアップロードします。 - GPanel のスタートアップタブで、
SAVE_NAMEをアップロードしたファイル名(.zip拡張子なし)に設定します。 - サーバーを開始します。
FACTORIO_VERSION スタートアップ変数を、セーブが作成されたバージョンに合わせてください。
関連記事
サポートが必要ですか?
このガイドで扱われていない問題が発生している場合は、サーバーの詳細と問題の説明を添えて、サポートチケットを開いてください。