Factorio(ファクトリオ)を複数人で遊ぶためのマルチプレイ用サーバーを Windows で構築する方法についてご紹介させていただきます。
目次
サーバのレンタル
サーバプログラムを動作させる Windowsサーバ(VPS)をレンタルします。
レンタルしたサーバを使うと、誰かの PC をサーバとした場合と比較して以下のメリットがあります。
- 24時間好きな時にプレイできる
- PC に負担を掛けない
- 家のルータのポート開放をしなくて良い
私は以下の VPSサービスでレンタルしたサーバで問題なく遊べることを確認しています。
どちらのサービスも、Web で申し込んでから使えるようになるまで 1時間も掛かりません。
契約するプランとしては、メモリ 2GB のプラン(月額2,000円程度)で十分だと思います。少なくとも私が試した限りでは、特にラグなどもなく快適に遊ぶことができました。
メモリ 1GB のプラン(月額1,000円程度)でも一応遊ぶことはできましたが、OS の動作が明らかに遅く、プレイヤーやオブジェクトが増えた時に安定して動作するか不安があります。
さくらのVPS
クレジットカード決済であればお試し期間として 2週間は無料でサーバが使えます。お試し期間中であれば申し込みをキャンセルすることができますので、サーバが急きょ必要なくなったり、うまく構築できなかった時にも安心です。ただし、最低利用期間(3ヶ月)が設けられていますので、お試し期間が過ぎると最低利用期間分の支払いはキャンセルができません。
ConoHa
無料期間はありませんが、時間単位の課金なので途中解約した場合の月の出費が最小限に抑えられます。
ポートの開放(サーバ側)
Factorio のサーバプログラムは、初期設定では 34197:UDP のポートでクライアントからの接続を受け付けます。そのため、Windowsファイアウォールで 34197:UDP のポートでの通信を許可します。
接続を受け付けるポート番号はサーバプログラムの起動時に変更が可能です。もし初期設定以外のポート番号で接続を受け付けたい場合は、本手順で開放するポート番号を合わせて変更してください。
なお、ゲームに必要なポート開放の手順については本記事でご紹介していますが、一般的なセキュリティ対策として実施しておきたい Windowsファイアウォールの設定について以下の記事でご紹介していますので、そちらもできれば実施してください。
VPSを借りたら絶対にやっておきたいWindowsファイアウォールの設定
レンタルしたサーバに接続
リモートデスクトップでサーバに接続するか、VPSサービスの管理コンソールからサーバのコンソールを開き、Windows Server を操作していきます。
参考:コンソールの開き方
さくらのVPS:https://manual.sakura.ad.jp/vps/server/console.html
ConoHa:https://support.conoha.jp/v/console/
Windowsファイアウォールの設定画面を開く
「Windowsキー」+「Rキー」のショートカットキーで [ファイル名を指定して実行] ダイアログを表示する。
その後、テキストボックスに「wf.msc」と入力し、 [OK] を選択する。
[受信の規則] で [新しい規則] を選択
ポートの通信許可設定を追加
Factorio のプログラムのダウンロード(サーバ側)
Factorio の公式サイトからプログラムをダウンロードします。
公式サイトにアクセス
https://www.factorio.com/ログイン
画面右上にある「Log in」リンクをクリックし、アカウント情報を入力してログインします。
Factorio.com のアカウントを持っている場合
Steam で Factorio を購入している場合
「Sign in through STEAM」ボタンをクリックし、Steam の認証を通じてログインします。

Steam のアカウント情報を入力し、「サインイン」をクリックしてください。

初めてブラウザで Steam にログインした場合、正しいデバイスかどうかを確認するための追加の認証が必要となります。 登録されているメールアドレスに届いたコードを入力し、「送信」をクリックしてください。 また、ログインしているブラウザを識別するための任意の名前も入力してください。

ダウンロードページを開く
ログイン後に Topページに戻り、「Download」をクリックします。すると、プログラムのダウンロードページに移動します。

プログラムをダウンロード
「Other download options...」にある「.zip」のアイコンをクリックし、プログラムを任意の場所にダウンロードします。

zipファイルの展開
ダウンロードした zipファイルを任意の場所に展開します。
例:
c:\Factorio
Factorio のサーバ起動(サーバ側)
設定ファイルの準備
1.サンプルファイルのコピー
サンプルとして用意されている設定ファイルを以下の場所にコピーします。
また、コピー後にファイル名から「.example」を削除します。
コピー元 | コピー先 |
---|---|
data\map-gen-settings.example.json | bin\x64\map-gen-settings.json |
data\map-settings.example.json | bin\x64\map-settings.json |
data\server-settings.example.json | bin\x64\server-settings.json |
上記のパスは、zipファイルを展開したフォルダを起点とした相対パスになっています。実際の展開先に合わせて、フォルダパスは読み替えてください。
例えば、zipファイルの中身を「C:\Factorio\Factorio_x64_1.1.53」というフォルダに展開した場合、以下のようにファイルをコピーします。
コピー元 | コピー先 |
---|---|
C:\Factorio\Factorio_x64_1.1.53\data\map-gen-settings.example.json | C:\Factorio\Factorio_x64_1.1.53\bin\x64\map-gen-settings.json |
C:\Factorio\Factorio_x64_1.1.53\data\map-settings.example.json | C:\Factorio\Factorio_x64_1.1.53\bin\x64\map-settings.json |
C:\Factorio\Factorio_x64_1.1.53\data\server-settings.example.json | C:\Factorio\Factorio_x64_1.1.53\bin\x64\server-settings.json |
2.設定ファイルの編集
コピーした設定ファイルの内容を、プレイ環境に合わせて修正します。
フリープレイを選択した時に表示されるマップの設定項目と設定ファイル内の変数を以下の記事で比較してみましたので、ご参考になれば幸いです。
本記事では各設定の詳細は解説しませんが、最低限変更しておいた方が良さそうな設定のみ記載します。
map-gen-settings.json
初期設定で遊ぶならそのままで問題ありません。お好みで変更してください。
設定項目の内容については公式Wiki(英語)を参照してください。
map-settings.json
初期設定で遊ぶならそのままで問題ありません。お好みで変更してください。
設定項目の内容については公式Wiki(英語)を参照してください。
server-settings.json
設定項目 | 内容 |
---|---|
visibility → public | true にしておくと公式サーバとして不特定多数にサーバが公開されます。身内だけで遊ぶ場合は false にしておきましょう。 |
game_password | サーバに接続する際のパスワードを設定します。パスワードを設定していないと、公式サーバとして公開していなくても IPアドレスが分かれば誰でも接続できてしまいます。必要に応じて設定してください。 |
設定項目の内容については、ファイル内に記載されているコメントを参考にしてください。
マップの生成
1.マップ生成用のバッチファイルを作成
テキストエディタを開き、以下の内容を入力後、「create-map.bat」という名前で bin\x64 配下に保存します。
factorio.exe --create c:\Factorio\saves\save.zip --map-gen-settings map-gen-settings.json --map-settings map-settings.json
黄色のマーカーが引いてある箇所はセーブデータの保存場所です。必要に応じて任意の名前に変更してください。プログラムをバージョンアップした場合でも共通でセーブデータが使えるように、zipファイルの展開フォルダ(プログラムバージョンが名前に含まれているフォルダ)の外にセーブデータを作っておくことをお勧めします。
2.バッチファイルを実行
先ほど作成した「create-map.bat」を実行します。
実行すると、コマンドプロンプトが表示され、マップデータ生成後に自動的に画面が閉じます。
「create-map.bat」内に記述したセーブデータ(例では c:\Factorio\saves\save.zip)が作成されたかどうか、念のため確認してください。
サーバプログラムの起動
1.サーバ起動用のバッチファイルを作成
テキストエディタを開き、以下の内容を入力後、「start-server.bat」という名前で bin\x64 配下に保存します。
factorio.exe --start-server c:\Factorio\saves\save.zip --server-settings server-settings.json
黄色のマーカーが引いてある箇所は使用するセーブデータの場所です。「create-map.bat」で指定したセーブデータの保存場所と合わせてください。
2.バッチファイルを実行
先ほど作成した「start-server.bat」を実行します。
以上で、サーバ側の準備は完了です。
クライアントからサーバへの接続(ローカルPC側)
クライアントの起動
Factorio のクライアントを起動します。
「マルチプレイ」を選択

「アドレスに接続」を選択

プレイヤー名を入力

IPアドレスとポートを入力
サーバの IPアドレスとポート番号を入力します。

パターン | 入力例 |
---|---|
ポート番号を起動時に特に指定していないか、初期設定値(34197)を指定した場合 | 192.168.0.1 ※IPアドレスのみの入力で問題なし |
初期設定値以外のポート番号を起動時に指定した場合 | 192.168.0.1:34000 |
パスワードを入力
ゲームに接続するためのパスワードを入力します。
server-settings.json の game_password でパスワードを設定した場合のみ入力が必要になります。
ゲーム開始
サーバに接続し、ゲームが開始します。
最後に
サーバのセットアップは慣れれば 30分も掛かりません。
生産の自動化や技術の発展、原住生物との戦いをぜひ仲間と一緒に楽しんでみてください。
VPSサービス皮脂や唾、手垢、汗などで表面は見えない雑菌だらけです。 衛生上も問題ですし、気持ち良く使うためにも、こまめに拭きとってキレイにしましょう。