本当の愛っていうのは、一緒にカエルにおしっこをかけることだよ。
—画像掲示板のコメント

「Netplay」(オンラインのマルチプレイ)で遊べる機能が付いても、設定は複雑になりがちです。
ガイドやチュートリアルは古くなっていたり、重要な情報が足りない場合があります。 いつの間にか使えなくなっていたり、現在はもう起動できなかったりします。 また、Netplayの機能についての迷信や誤解もあります。 一般に信じられていることとは逆に、LinuxとWindows間のNetplayは問題なく機能します。
Okori Makuriさんと私は、さまざまなプラットフォームでNetplayを試してきました。 これは私達の「Netplayのメモ集」です!
要点だけ言うと:
- RetroArch(p2p):スーファミ、アーケード
- Dolphin(p2p):ゲームキューブ
- Mednafen(サーバー):スーファミ、PS1
当然ですが、特定のバージョンがメモっていないのは、単に試していないという意味です。 この記事は、時々こっそり更新します。 なお、セキュリティ、OS、ルーター、エミュレーターの使い方といった内容は含めません。 各ソフトを安全に使う方法は、公式(!)説明書を参照してください。
RetroArch#
「Deterministic」なエミュレーターコアは、だいたい動くはずです。 コアの公式サイトで確認するか、RetroArchのコア情報メニューで確かめられます。
私たちが確認できたRetroArchのバージョン:
- 1.20
私たちが確認できたRetroArchのコア:
- FinalBurn Neo 1.0.0.03
- Snes9x 1.63
4時間以上、途切れないNetplayが何度か完全に成功しました! 平均pingはだいたい80msでした。
RetroArchとコアのバージョン#
プレイヤーは同じRetroArchバージョンと同じコアバージョンを使う必要があります。 Void Linuxをホスト、Windows 11をクライアントにしても、その逆でも遊べました。 すべて64-bit x86です。
同じROM#
すべてのプレイヤーが、まったく同じROMを使ってください。(チェックサムを比べたら確認できます。) コアや設定によってはZIPファイルでも大丈夫です。
ポートフォワーディング#
私たちはTraversal Serverという機能を使わない、直接にIPのp2p接続を使用しています。 ホストするプレイヤーは、自分のルーターでポートフォワーディングを設定する必要があります。 TCPとUDPを使います(TCPのみであるべきですが、試していません)。
ファイアウォール#
ホスト側は、そのポートを許可する必要があります。 もしかすると、ファイアウォールを一時的に無効にして試すとうまくいく場合があります(セキュリティ上のリスクがあるので注意)。
接続してGO!#
RetroArchのメニュー(または設定ファイル)でNetplayの設定します。 ホスト側のプレイヤーのIPアドレスを入力し、みんなでパスワードを使うならゲームパスワードも入力します。 ホスト側は、接続できる前にゲームを開始します。 ホスト側がOKを出したら、他のプレイヤーは接続できます。 クライアント側は手動で自分のROMを読み込み、プレイ開始です! 成功すると、デフォルトでは画面上に通知が出るはずです。
メモ#
チャットは「t」(デフォルトのホットキー)。 コントローラーを入れ替える(デフォルトのホットキー)には:
- 全員が「i」を押してスペクテイターモードにする
- どちらかのプレイヤーが「i」を押してPlayer 1として参加する
- もう一方のプレイヤーが「i」を押してPlayer 2として参加する
デフォルトがない場合は、ping表示のホットキーも設定できます。
Dolphin#
これはRetroArchのDolphinコアではなく、メインのDolphinリリース向けです。 RetroArchのDolphinコアと公式のDolphinは、ソフト設計の考え方が違います。
私たちが確認できたDolphinのバージョン:
- 2605
- 2606
試してみたゲーム:
- SoulCalibur II USA(GRSEAF)
4時間以上、途切れないNetplayが何度か完全に成功しました! 平均pingはだいたい60msでした。
Dolphinのバージョン#
プレイヤーは同じDolphinバージョンを使う必要があります。 Void LinuxクライアントとWindows 11ホストで試してみました。 すべて64-bit x86です。
Netplay対応リリース#
公式リリースを使えば問題ないはずです。 ソースからビルドする場合、文字列を取得するためのフラグが必要があるようです。 詳しくは調べていませんが、内部のバージョン文字列が存在するようです。 接続時に、Netplay用のプロセスが内部バージョンを比較しているように見えます。 GUIでは「バージョン不一致」を通知されるだけで、詳しい情報はありませんでした。
同じISO#
すべてのプレイヤーが、まったく同じISOを使ってください。(チェックサムを比べたら確認できます。)
ポートフォワーディング#
私たちはTraversal Serverという機能を使わない、直接にIPのp2p接続を使用しています。 ホストするプレイヤーは、自分のルーターでポートフォワーディングを設定する必要があります。
ファイアウォール#
ホスト側は、そのポートを許可する必要があります。 もしかすると、ファイアウォールを一時的に無効にして試すとうまくいく場合があります(セキュリティ上のリスクがあるので注意)。
接続してGO!#
DolphinのメニューでNetplayの設定します。 ホストのIPアドレスを使いますが、共有コードでも接続できるはずです。 ホスト側はゲームを読み込む前にセッションを開始するので、クライアントは先に参加します。 接続したプレイヤーは、セッションのチャットロビーに表示されます。 ゲーム開始が必要なのはホストだけです。
メモ#
セーブファイルはホスト側にだけ書き込まれます。 クライアント側のセーブは触られないはずです。 すべてのプレイヤーがグラフィックス、エミュレーションなどできるだけ同じ設定にしてください。
Mednafen#
私たちが確認できたMednafenのバージョン:
- 1.32.1
私たちが確認できたMednafenのモジュール:
- snes
- psx
4時間以上、途切れないNetplayが何度か完全に成功しました! サーバー型のNetplay設計のため、入力ラグがかなり感じられることがあるかもしれません。
Mednafenのバージョン#
プレイヤーは同じMednafenバージョンを使う必要があります。 Void LinuxとWindows 11のクライアントで遊べました。 すべて64-bit x86です。
同じROM#
すべてのプレイヤーが、まったく同じROMを使ってください。(チェックサムを比べたら確認できます。) モジュールによってはZIPファイルでも大丈夫です(設定が必要になる場合があります)。
ポートフォワーディング#
ポートフォワーディングやファイアウォールのルールは不要です。
サーバーを選ぶ#
全員が専用のサーバーに接続します。
公式(?)のサーバーアドレスは次の通りです:
netplay.fobby.net、とそのポートは4046です。
セルフホスト用のサーバーの公式ソースコードも用意されています!
接続してGO!#
MednafenはGUIなしのコマンドライン形式です。 以下はカスタマイズ可能な基本例です。
Linux Bash:
mednafen -connect\
-netplay.host 'netplay.fobby.net' -netplay.port '4046'\
-netplay.nick 'ミンク' -netplay.gamekey 'cowabunga'\
'/path to/game.zip';
Windows Batch:
"Z:\path to\mednafen.exe" -connect ^
-netplay.host "netplay.fobby.net" -netplay.port "4046" ^
-netplay.nick "ディックソーサー" -netplay.gamekey "cowabunga" ^
"Z:\path to\game.zip"
メモ#
デフォルトのホットキー:
- F1:メニュー
- F12:終了
- F10:Netplayを中断せずにリセットできる
- コントローラー1と2を入れ替えるには、「t」でチャットを開き、次のように入力:
/swap 1 2
Netplayプレイヤーは、自分のクライアントでコントローラー1を設定します。
その他は…?#
残念ながら、すべてのシステムがNetplay機能が追加されているわけではありません。もしくはかなり限定的です。
NINTENDO 64#
私の知る限りでは、Netplayは(たぶん)Project64でしか遊べません。 最後に試したのは10年以上前で、LANでもラグかなり大変でした。 Project64はWindowsでしか使えないソフトです?
いまのところは、DolphinでWii Virtual Consoleを使う方が良いのかもしれません? ただし、ゲームオプションがかなり制限される可能性はあります。
ZSNESまたはSnes9x#
以前はWindows XPで、どちらもNetplayに使っていました。 ただし新しいバージョンが出るたびにNetplayの機能が落ちていったので、特定の古いバージョンが必要でした。 現在の状況は分かりませんが、MednafenかRetroArchなら十分だと思います。
ゲームボーイ/アドバンス等:リンクケーブル#
リンクケーブル対応のマルチプレイがあるシステムでも、Netplayで魔法のように2Pになるわけではありません。 まだ試していないアイデアとしては:
- Player 1が、自分のシステムでエミュレーターを2つ起動する
- Player 1はリンクケーブルのエミュレーションで、その2つのインスタンスを接続する
- Player 1は、その2つの起動中インスタンスのうち1つを使ってNetplayをホストする
- Player 2は、Player 1のNetplayホストに接続する
