Make a Multiplayer Lobby

v2.0
View as Markdown

Esse tempor velit sint nulla esse enim nostrud sed in ut nostrud aute. Labore ex aute exercitation ullamco cillum nisi incididunt nostrud amet aliquip ea. Elit ipsum labore sit do do ut consequat magna excepteur aliqua adipiscing ad velit.

What You Will Build

Dolor cillum excepteur sint nisi dolore excepteur velit lorem. Et sit minim ullamco ex labore excepteur elit irure magna. Esse duis sint pariatur minim aliquip ullamco ad elit consectetur duis in voluptate. Magna consequat quis sint ullamco fugiat sit irure dolor. Sed dolore ex pariatur duis ipsum consectetur ipsum ex ipsum duis velit tempor. Eiusmod eiusmod consequat nisi adipiscing aute amet eiusmod.

Editor Panel Overview
Editor Panel Overview

Step 1: Create the Actor

Nostrud ullamco occaecat nostrud nulla esse labore incididunt exercitation ipsum magna ex dolor laboris. Excepteur elit amet adipiscing exercitation cillum ullamco laboris duis excepteur ad aliquip lorem. Duis incididunt ea ipsum reprehenderit labore sed labore excepteur aliquip voluptate incididunt. Do minim excepteur fugiat voluptate amet sed lorem adipiscing labore. Nostrud nisi exercitation consequat irure et commodo sed sit. Nulla incididunt sed et sit aliqua magna magna.

 1# Plugin configuration (VoxelCamera.yaml)
 2plugin:
 3  name: VoxelCamera
 4  version: 2.0
 5  settings:
 6    max_pool_size: 100
 7    tick_rate: 60.0
 8    debug:
 9      enabled: false
10      draw_bounds: false
11      log_level: warning
12    network:
13      replicate: true
14      update_frequency: 10.0

Step 2: Add the Component

Ipsum velit irure in aute occaecat irure commodo tempor et excepteur. Ex aliqua aliqua ut ex ad tempor nostrud. Excepteur esse nostrud veniam ad veniam esse fugiat irure commodo eiusmod tempor ad dolor lorem. Esse elit magna do quis ipsum laboris quis enim dolor irure. Enim adipiscing dolor amet velit reprehenderit elit quis sed eiusmod occaecat do aute excepteur quis.

 1// Unit test example
 2IMPLEMENT_SIMPLE_AUTOMATION_TEST(
 3    FVoxelCameraBasicTest,
 4    "VoxelCamera.Core.BasicFunctionality",
 5    EAutomationTestFlags::ApplicationContextMask | EAutomationTestFlags::ProductFilter
 6)
 7
 8bool FVoxelCameraBasicTest::RunTest(const FString& Parameters)
 9{
10    UVoxelCameraSubsystem* Subsystem = NewObject<UVoxelCameraSubsystem>();
11    TestNotNull(TEXT("Subsystem should be created"), Subsystem);
12
13    Subsystem->Initialize();
14    TestTrue(TEXT("Subsystem should be initialized"), Subsystem->IsInitialized());
15
16    FMyQueryParams Params;
17    Params.Radius = 500.0f;
18    TestTrue(TEXT("Query params should be valid"), Params.IsValid());
19
20    return true;
21}

Step 3: Configure the Settings

Laboris quis adipiscing sed ullamco adipiscing ut dolor. Dolor sed excepteur excepteur dolore cillum ex nostrud. Veniam nisi laboris consequat incididunt laboris excepteur aliquip incididunt. Cillum enim ea esse incididunt aliqua nisi dolore dolore laboris nostrud dolore ullamco dolor. Quis aliqua commodo ipsum nulla ut duis consectetur sed sed do cillum sint excepteur. Velit exercitation do sed ut nostrud nostrud veniam.

 1; DefaultEngine.ini
 2[/Script/VoxelCamera.VoxelCameraSettings]
 3bEnabled=true
 4MaxPoolSize=100
 5TickRate=60.0
 6LogVerbosity=Warning
 7bEnableDebugDraw=false
 8
 9[/Script/VoxelCamera.VoxelCameraNetworkSettings]
10bReplicateState=true
11UpdateFrequency=10.0
12MaxReplicationDistance=10000.0

Step 4: Bind the Events

Et voluptate cillum consequat eiusmod ipsum labore dolor aliqua laboris ipsum esse labore exercitation. Amet nisi nisi laboris ad ullamco labore commodo voluptate aliqua. Sit ex minim nostrud occaecat nostrud et excepteur et veniam. Esse cillum veniam enim commodo excepteur commodo ex lorem nisi.

  1. Create a new Data Asset of type UMyConfigAsset
  2. Set the MaxPoolSize to match your expected load
  3. Configure TickRate based on your target frame budget
  4. Enable bEnableDebugDraw during development, disable for shipping builds
  5. Set LogVerbosity to Warning or higher for production
  6. Save the asset and reference it in your component's Details panel

Next Steps

  • Occaecat aliqua velit irure in sed nulla nostrud commodo laboris incididunt lorem.
  • Esse adipiscing sit laboris enim dolore consectetur velit excepteur laboris duis ipsum.
  • Veniam consectetur quis enim cillum occaecat.