1PCでサーバーを立てる

変更履歴

231128:デジ鯖アプリ起動時にsteamを終了する手順が抜けていたので追加

 

ライブ配信を見ていて1PCでの鯖立てに関する情報が見当たらないとの話があったので
備忘録も兼ねて書いておく

 

デジ鯖を起動するための準備

1.新規プロファイルの用意

1-1.なぜそんなことをするの?(どうでもいい人は飛ばしてOK)

rfactor2はゲーム内の一部のメニューにWebUIというものを使っている。
WebUiに使用するポートは"player.json"内で指定するが、ポートは2つのアプリで同時に使うことができず、最初に起動したほうでしか使うことができない。
そのため、同じプロファイルを使用して最初にデジ鯖を起動すると、ゲームでWebUIを使うためのポートを使用できず、うまく動かない。
デジ鯖自体はWebUIを使用していないようなので、ゲーム→デジ鯖の順で起動すると遊べるが、ゲームがフリーズやクラッシュした際に再起動ができないためお勧めできない。
そこで、WebUIに使うポートを変えたプロファイルを作り、それをデジ鯖のアプリに読ませることで、先にデジサバを起動した場合でもWebUI用のポートの重複を防ぐことができる

1-2.プロファイルをコピーする

1."rFactor 2\UserData"フォルダを開く

こんな感じのフォルダがあるはず
"player2"とか"player3"とかはないと思うけど

2."player2”という名前でフォルダを新しく作る

自分は"player2"フォルダがあるので"player3"でやってるけど
"player2"でやってください

3."player"フォルダの中身を"player2"フォルダの中にコピペする

人によって中身は違うかもだが、jsonファイルが写真の通りに存在してれば大丈夫
"settings"フォルダはスキンが入ってると時間がかかるので
コピペではなく新規作成しても大丈夫
1-3."player.json"の記述の変更

1."player2"フォルダを開いて、"player.json"を"player2.json"にリネームする

正しくは"player.json"をフォルダ名と同じになるようにリネームする
なので"player3"フォルダの場合は写真のように"player3.json"とする

2.リネームした"player2.json"をメモ帳で開く

こんな感じ

3."webui"で検索する

こんな感じ

4."WebUI port"を"5397”以外に変える

"5396"にしておくのが無難(とS397も言ってる)

5.上書き保存して終了

ここにある
1-4."multiplayer.json”の記述の変更

1."multiplayer.json"をメモ帳で開く

ここにある

2."port"で検索をかける

こんな感じ

3."HTTP Server Port"を"27013"に変える

デフォルトの"64297”でも鯖立てはできるらしいが立たないことが多く、
日本人で鯖立てしてる方は"27013"にしてる方が多い
ので、"27013"にしておくほうがトラブったときにほかの人に聞きやすいと思う

4."Simulation Port"の数字を確認する

"HTTP Server Port"と"Simulation Port"の値は
ルーターのポート開放をするときに使うので覚えるかメモしておくこと

ルーターにおけるポート開放の設定について

人によって環境が違うのでここでは書きませんが、ネットにいくらでも情報はあるので
各自googleなどで検索してください。質問されたらわかる範囲でお答えしますが、
けんさくしたほうが早いと思います。

デジ鯖を起動するための準備

1.デジ鯖用ショートカットの用意

1-1.ショートカットを作る

1."rFactor 2\Bin64"を開く

こんな感じ

2."rFactor2 Dedicated.exe"を右クリックし、"ショートカットの作成"をクリック

ここにある
1-2.ショートカットのプロパティの編集

1.作ったショートカットを右クリックし、出てきたメニューのプロパティを開く

ここにある

2."リンク先"の欄の最後に"+profile=player2"を足す

半角スペースを入れてから"+profile=~"の記述を足す
最初に"player3"フォルダを作ってた人は"=player3"にする

3.作業フォルダーの欄の最後に"¥Bin64"があったら消す

こうなっていれば大丈夫
ちなみにこの手順はリンク先の乱に"+path=../"を足したのと同じなので
これをしたら"+path=../"を足す必要はない

2.rfmodの用意

2-1.rfmodとは(どうでもいい人は読み飛ばしてOK)

サーバーの設定を決めているrFmファイル、不正防止や使うmodを指定しているmftファイル、シリーズ一覧表示される(されていた)アイコンが入ったファイルです

2-2.rfmodを作る

1."rFactor 2\Support\Tools"のフォルダを開く

こんな感じ

2."MAS2.exe"を起動する

ここにある

3.左から6番目の箱のマークをクリックする

ここにある

4."Create New Mod Package"をクリックする

ここにある

5.rfmod(シリーズ名)の名前を決める

スペースを含めると不具合が出る可能性があるのでスペースは入れないこと
"Customize"にチェックを入れるとサーバーの設定を変えられるが今回は割愛

6.使いたいコースを選ぶ

ShiftキーやCtrlキーで複数選択できるが、
アップデートが入るたびにrfmodが作り直しになってしまうので
その日に使う予定のコース以外は入れないほうがいい

7.使いたい車を選ぶ

公式のDLCに多いが、コースや車でバージョンが2つある場合は
新しいほうだけ選ぶ

8.そのほかに使いたいものを選ぶ

レースに直接かかわる部分ではないので、基本は何も選ばない

9.最終確認する

こんな感じ

9,補足

左側の欄のチェックボックスにチェックを入れると、rfmodに車やコースのmodのデータを含めて、参加者にダウンロードさせることができるが、
ワークショップのアイテムや有料のDLCでは失敗するため、
基本はチェックを入れないのが良い。
右側の欄のチェックボックスのチェックを外すと、使わないコースレイアウトや
使わない車種を削ることができるが、デジ鯖のアプリ内でできるので、
基本そのままにしておくのが良い

 

10."Packageをクリックする

"Mod Packaging complete with no errors"と出ていたら成功

11."Install"をクリックする

"mod installed"というメッセージが出て、矢印の個所が緑になっていたら成功

サーバーを建てる

デジ鯖の起動

1.steamを終了する

右上の"X”ではなく、左上の"steam"→"終了"かタスクマネージャでプロセスを止めること
右上の"X"では最小化するだけで終了しないため

steamを終了したくない人は1-1.ショートカットを作るを参考に"rfactor2.exe"のショートカットを作り、ショートカットからゲームを起動すれば、
steam起動中にサーバーを立てたうえで後からゲームも起動できるはず

 

2.作っておいたショートカットから"rFactor2 Dedicated.exe"を起動する

こんな感じの画面が出る

3.上の欄で"player2"が指定されているか確認し、下の欄で使いたいrfmodが指定
   されているか確認する

こんな感じ

4.使いたい車を決める

右側の欄にある車は参加者が使える
使わせたくない車はクリック→Removeで左側の欄に移動させる

5.使いたいコースレイアウトを決める

選び方は車の時と同じ

6.使う回線の帯域を決める

値は高ければ高いほどラグが少なくなるが、通信量が増えて処理しきれないとラグるため
タスクマネージャを見たり、速度を測るサイトで計測して、いい感じの値を見つけるとよい
基本は写真の設定で問題なく動くはず

7.サーバーの設定を決める

読めばわかると思うので説明は割愛
わからなかったら聞くか調べるかしてください

8."Load Track"をクリックするとサーバーが起動する

今までの設定がうまくいっていれば
この画面になってサーバーがみんなから見える状態になる
鯖に入る(鯖を立てた人の場合)

サーバー一覧の表示するものを"INTERNET"→"LAN"に切り替える

サーバーを立ててない人(サーバーを立ててるPCと同じルーターに接続してない人)は
"INTERNET"のほうにあるはずなので検索して探す


トラブルシューティング

特にエラーは出てないけどほかの人から見えない

ここに行き着く人が一番多いと思いますが、原因はいろいろ考えられるので
自分が思いついたものを書いていきます。解決しない場合はコメントやツイッターのDMとかで教えてください

ポート開放ができてない

1."(お使いのルーターの機種名) ポート開放"などで調べる

つき家のルーターだとこんな感じ
だが、どのルーターでも"ルーターにアクセス"→"ポート開放"の流れは変わらない

2.手順通りにポート開放の設定を行う

参考までにつき家ルーターの設定を挙げておく
ルーターによってポート開放の名称が違うが
おおよそ同じレイアウトの画面が出てくるのでわかるはず

3.サーバーを建ててポート開放チェックサイト(例えばcman.jp)で確認する

ポートが開いていれば図のようになる
ポート開放の設定次第ではサーバーが建ってないときは
ポートへのアクセスが失敗することもあるようなので
必ずサーバーを立てた状態で確認すること
セキュリティソフトのファイアウォールに通信を止められている

各セキュリティソフトによって設定が違うので各自調べてください。
(ノートン以外のセキュリティソフトをお持ちの方がいましたら
 方法を共有していただけると助かります)

つきPCはノートンが入っているので、
参考までにノートンにおける設定を載せておく
multiplayer.jsonの変更が保存されていない

multiplayer.jsonやplayer.jsonはゲームやサーバーを起動している最中に編集すると
ゲームやサーバーを終了した際に起動前の設定で上書きされてしまうので
ゲームやサーバーは終了した状態で編集してください

サーバーが読むプロファイルのjsonを編集しているか
ポート番号があっているかなどを確認する



 

Matcher StatusがConnected to Steamにならない

1度"rFactor2 Dedicated.exe"を終了し、"player2"フォルダの"multiplayer.json"をメモ帳で開いて、"Steam Matchmaking Broadcast"が"true"になってるか確認する

ここにある

"Ensure ports set in multiplayer.ini are available."と表示される

ここまで説明書きの通りにやってきているなら、サーバーの多重起動が原因です。
最初に述べたようにポートは一つのアプリでしか使えないため、同じプロファイルを使ったサーバーを2個立てることは不可能です
(playerフォルダを複製して違うポートを使う設定にすれば可能)

同じプロファイルを使用していると2個目は建たない

"Dedicated server requires at least one ~"と表示されてデジ鯖が起動しない

最初にこのエラーが出て先に進まない場合
ショートカットの作業フォルダ設定が間違っている

作業フォルダが"Bin64"になっていないかを確認する
rfmodを一つもインストールしていない

1."2.rfmodの用意"の手順を見直してrfmodを作り直す

直接"mas2.exe"を起動しないと、この写真のように
working dirが本来の場所でなくなるためインストールに失敗する

以降コメントなどあれば調べて追加予定...