ジェイのブログ

Unity,UnrealEngine,ゲーム制作,プログラミング,日記も書きます!

UE5でSteamSubSystemを使ってマルチプレイを実装する方法

こんにちは!ジェイです。
今までに、UE5でマルチプレイを実装する際に、自家用サーバーやEpicOnlineSystemを試してみましたが、かなり手間がかかってしまって、もっと簡単にできる方法はないか?ということで探したところ、SteamSubSystemを使えばかなり楽にできるのがわかったので、手順を示しておきます。

 

1.プラグインをダウンロードして解凍する

vreue4.com

2.uprojectがあるフォルダ内にPluginsフォルダを作ってAdvancedSessionsフォルダとAdvancedSteamSessionsフォルダを中に入れる

 

3.contextフォルダ内のDefaultEngine.iniを開いて以下を追加する(場所はどこでもOK)

AppIdの480は開発用ビルドのみなので注意する

[/Script/Engine.GameEngine]
+NetDriverDefinitions=(DefName="GameNetDriver",DriverClassName="OnlineSubsystemSteam.SteamNetDriver",DriverClassNameFallback="OnlineSubsystemUtils.IpNetDriver")

[OnlineSubsystem]
DefaultPlatformService=Steam

[OnlineSubsystemSteam]
bEnabled=true
SteamDevAppId=480
; If using Sessions

; bInitServerOnClient=true

[/Script/OnlineSubsystemSteam.SteamNetDriver]
NetConnectionClassName="OnlineSubsystemSteam.SteamNetConnection"

詳しくは以下を参照

docs.unrealengine.com

4.UEを起動して、Edit→PulginsからAdvancedSessionsとAdvancedSteamSessionsのチェックがされてるか確認する

5.tools→ブループリントを検索からCreateSessionをCreateAdvancedSessionに置き換えて、同じようにFindSessionをFindAdvancedSessionに置き換える

6.tools→New C++ Class→Noneを選択したままNextをクリック→Create Classをクリックしてその後はOKを選ぶ

7.UEのエディタを閉じておく(VisualStudioでビルド時に開いているとエラーになる可能性がある)

8.VisaulStudioを起動して、Game内のプロジェクト名をクリック→右クリックビルドで終わったらエディタを閉じる

9.UEを起動してWindows用の開発ビルドをする

 

以上で手順は終わりです。

 

オンラインで接続する時は、必ず起動する前にSteamにログインしておきましょう。

 

実行結果