Skip to content

Repository files navigation

MultiPlayerGameTemplate

Unity 6 + MagicOnion で作る4人対戦バトルロイヤルのテンプレート。 Multiplayer Play Mode を使えば1台のPCで4クライアントの対戦を検証できます。

Title .NET License

構成

MultiPlayerGame.Unity/        # Unityクライアント (Unity 6000.5.3f1 / URP)
MultiPlayerGame.Server/       # MagicOnionサーバー (ASP.NET Core / .NET 8)
MultiPlayerGame.Server.Tests/ # サーバーのユニットテスト (xUnit)
MultiPlayerGame.Shared/       # 共有定義 (サーバー: csproj参照 / Unity: ローカルUPMパッケージ)

MagicOnion 7 / MessagePack 3 (Source Generator) / YetAnotherHttpHandler / UniTask / NuGetForUnity。 NuGetパッケージはUnity起動時に Assets/packages.config から自動復元されます。

使い方

dotnet run --project MultiPlayerGame.Server

サーバー起動後 (gRPC: localhost:5000、生存確認: localhost:5001)、 Unity で MultiPlayerGame.Unity を開き Assets/Scenes/TitleScene を Play。

  • 初回: 名前を入力してアカウント発行Connect でマッチング
  • 2回目以降: アカウントはサーバーが記憶しているので Connect だけでOK (削除ボタンあり)
  • 4人揃うとゲーム開始。WASD移動 / Q発射。HP100・弾25ダメージ、最後の1人が勝者

4人対戦の再現

  • Multiplayer Play Mode: Window > Multiplayer > Multiplayer Play Mode で Player 2〜4 を有効化して Play。 各ウィンドウでアカウントを発行すれば以降はConnectのみ (Run In Background は設定済み)
  • ボット: エディタ1つで済ませたい場合は、マッチング中に Tools > MultiPlayerGame > Join 3 Bots (moving)

テスト

dotnet test MultiPlayerGame.Server.Tests

License

Unlicense (パブリックドメイン)

About

Unity 6 + MagicOnion 4-player battle royale template with Multiplayer Play Mode

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages