Assetto Corsa(以下AC)、Assetto Corsa Competizone(以下ACC)の自前鯖立ての手順と注意点を簡単にメモとして記録しておきます。
やることは単純、でもそれを行うのが難しい
基本的にサーバアプリ自体はポート設定が難しいと感じるかもしれないくらいで、それほど難易度は高くない。
問題は、ルーターの設定とWindowsのポート開放である。
ルーターやアンチウィルスソフトによって設定項目の名前が違う
ルーターは、サーバソフトに送られてくるゲームのデータを、正しくサーバとして稼働しているPCに途切れることなく通信し続ける設定を行うのだが、そのルーターの設定項目名が、メーカーによってまちまちで、場合によっては機種ごとに違うことがあり、ここで例を挙げても、実際に作業する人の環境ではまったく違う名前である可能性が高い。
ルーターの型番と、「ポート・フォワード」「ポート転送」などのキーワードを組み合わせることで、該当の設定項目のHELPを見つけることができるかもしれない。
Windowsのポート開放も、使っているファイヤーウォールのソフトによって設定の仕方がまちまちで、この記事を読めば簡単にできるなどとはならないのが現状である。
設定する内容は単純で、サーバソフトが起動している間、サーバー側で設定した通信ポート番号を開放(通信を遮断しない)するだけである。
各自のアンチウィルスソフトのファイヤーウォールの項目のHELPを参照してポート開放を行ってほしい。
ポートの開放でつまずくのが、グローバルかローカルかの設定
ファイヤーウォールは、そのソフトによって家庭内の機器とだけ通信を行う場合と、インターネットを通じて外部との通信を行う場合とで設定方法が違うことがあり、私の使っているソフトは、その辺りの表現が曖昧で、なかなかサーバが立たなかった経験がある。
もし、設定が正しくできているのも関わらず、サーバが立たない場合は、その辺りを再度チェックしてみると良いかもしれない。
また、ポート開放を確認するお助けサイトもあるので、それを利用するのも良い。
TCPプロトコルであれば、以下のサイトなどからチェックが行える
CMAN
https://www.cman.jp/network/support/port.html
サーバソフトを起動した状態で、グローバルIPとポート番号を入力して、サーバに通信を行ってもらい、サーバから返答があれば設定は正常に行われているということになる。
ここで失敗した場合は、グローバルIP、ポート番号の打ち間違いがないかを確認して、問題がなければ、ルータの転送設定(転送先のIPアドレスが間違っている場合がよくある)、Windowisのポート開放(ポートの開放が片方だけだったり、番号違うことがよくある)の設定の順で、誤りがないか確認していく。
※レースゲームの場合、TCPとUDPという2つの通信設定を使うことが多く、UDPの設定を忘れているケースが多くある。
地味で辛い作業にありがちではあるが、これが上手くできるようになれば、ほとんどのPCゲームのサーバを自前で建てることが可能になるので、興味がある人はマスターしてほしい。
サーバのレース設定はツールを使うのが吉!
ACの場合は、純正の設定ツールが使いやすいので、特に問題がなければそのまま純正を使えばよいのだが、ACCに関してはJSONファイルを直接編集しなくてはならないため、JSONファイルの扱いに慣れている場合は苦ではないが、そうではない場合はフリーの設定ツールをダウンロードすると良い。
私が使っているのは以下のツール。
ACC Dedicated Server GUI

https://www.racedepartment.com/downloads/acc-dedicated-server-gui.32034/
レースデパートメントからDLして、ACCのサーバソフトがあるカレントフォルダーに入れるだけ。(レースデパートメントからダウンロードするためには、無料の会員登録が必要)
これでJSONファイルの編集はもとより、サーバの起動、停止も行ってくれる。
おまけ
PS4サーバの設定
505GEAMS
G-PORTAL
https://www.g-portal.com/en/gameserver/assetto-corsa-competizione-ps4-server-rental
PS4版を持っていないので、動作の保証は致しかねます。