Minecraft multi-play server for Java and Nintendo Switch version crossplay
マイクラサーバーの立て方とSwitch側の設定
前提
MinecraftにはJava版 (従来) と 統合 (BE) 版がある
MacでプレイできるMinecraftはJava版のみ
サーバーにもJava版と統合版がある
統合版のサーバーはNintendo Switch版と接続可能
Java版の公式配布サーバー (Vanila) はNintendo Switch版と接続不可
Java版と統合版(switch, iOS版...) で一緒にマルチプレイするには
プラグインサーバーを時前で立てる
Serverと必要なプラグイン
統合版のパケットをJava版のパケットに変換するミドルウェア を使う。そのため公式配布 (Vanilla) ではなくサードパーティ製のplugin対応サーバー (CraftBukkit, Spigot, Paper...) を使う。
Spigot
Plugin対応サーバーの一つ、ビルドは buildtools を使う
Java 16が必要
PaperMC
Plugin対応サーバーの一つ、Spigotと違ってビルド不要
GeyserMC
クロスプレイ用プラグイン
floodgate
SwitchからJava版のアカウント無しで入れるプラグイン
導入
Geyser-Spigot/config.yml の auth-type=online を auth-type=floodgate に
GeyserSkinManager
BE版のスキンを反映する (switch版は反映されず、iOS版は反映された)
Java
Spigotのビルド
java -jar BuildTools.jar --rev latest
Spigotの起動
java -Xms5G -Xmx5G -jar spigot-1.17.jar nogui
Nintendo Switch版のマイクラでログインする手順
アカウントが"2つ必要
Nintendoアカウント
12歳未満は親のアカウントから子供用アカウントを作成する
Nintendo Switch Online へ加入すること
Microsoftアカウント
子供のMicrosoftアカウントを作成する
年齢によっては初期状態でマルチプレイできない
親のMicrosoftアカウントを作成する
親のMicrosoftアカウントでログインして子供アカウントのプライバシー設定を変更する
親のMicrosoftアカウントから子供アカウントをファミリーに招待
ファミリー機能 → 「Xboxの設定」→「プライバシーとオンラインの安心設定」→ 「Xbox 360 オンラインの安心設定」→ 「オンライン ゲーム …… マルチプレイヤー ゲームを遊べるかどうかを設定します」を許可する
インターネット環境
Nintendo Switchが利用するルーターの設定
IPアドレスが固定化されるようルーターで設定する
ポート変換 UDP 1-65535 を通す
もしくはDMZに入れる
NATタイプがAになっている事をSwitchのインターネット設定画面で確認
Nintendo Switch本体の設定
「DNS設定」を「自動」から「手動」に変更する。
「優先DNS」に「104.238.130.180」を入力する。
「代替DNS」に「8.8.8.8」を入力する
サーバーへの接続方法
デフォルトではサードーパーティサーバーへ接続できないが、上記のDNS設定を変更する事で特集サーバー接続後に任意のサーバーに接続可能になる
サーバーのIPアドレスとポート19132
iOS版のマイクラでログインする手順
こちらはMicrosoftアカウントのみでOK
Switch版の接続手順の Microsoftアカウント の項と同じ
そのままでは操作性が悪いのでゲームパッドが使いたくなる
PS4コントローラーがbluetooth接続で使える