Nelaric Unreal Gameplay
Gameplay framework API
Loading...
Searching...
No Matches
WorldStartupConfig.h
Go to the documentation of this file.
1// Copyright (c) 2026 Nelaric
2
6
7#pragma once
8
9#include "Engine/DataAsset.h"
10#include "UObject/SoftObjectPtr.h"
11
12#include "WorldStartupConfig.generated.h"
13
14class UWorld;
15
17UENUM(BlueprintType)
18enum class EActivityStartPolicy : uint8
19{
22
25};
26
28UENUM(BlueprintType)
37
46UCLASS(MinimalAPI, BlueprintType)
47class UWorldStartupConfig : public UPrimaryDataAsset
48{
49 GENERATED_BODY()
50
51public:
53 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "World|Startup", meta = (AssetBundles = "World"))
54 TSoftObjectPtr<UWorld> WorldMap;
55
61 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "World|Players", meta = (ClampMin = "0"))
63
65 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "World|Players", meta = (ClampMin = "0"))
66 int32 MaxPlayers = 0;
67
69 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "World|Players")
71
73 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "World|Players")
75
81 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Activity|Participants", meta = (ClampMin = "0"))
83
85 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Activity|Participants", meta = (ClampMin = "0"))
86 int32 MaxParticipants = 0;
87
89 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Activity|Lifecycle")
91
93 UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Activity|Participants")
95
104 UFUNCTION(BlueprintPure, Category = "Nelaric|World")
105 GAMEPLAYRUNTIME_API bool HasValidPlayerLimits() const;
106
115 UFUNCTION(BlueprintPure, Category = "Nelaric|Activity")
116 GAMEPLAYRUNTIME_API bool HasValidActivityParticipantLimits() const;
117
126 UFUNCTION(BlueprintPure, Category = "Nelaric|World")
127 GAMEPLAYRUNTIME_API bool HasValidStartupConfig() const;
128};
EActivityJoinInProgressPolicy
Determines whether a running local activity accepts participants.
Definition WorldStartupConfig.h:30
@ Participate
New participants can enter while the activity is running.
Definition WorldStartupConfig.h:35
@ Reject
New participants cannot enter after the activity starts.
Definition WorldStartupConfig.h:32
EActivityStartPolicy
Determines how a local activity begins after its player gate is met.
Definition WorldStartupConfig.h:19
@ WhenMinimumReached
The activity starts when its minimum participant count is met.
Definition WorldStartupConfig.h:24
@ Manual
Gameplay code explicitly starts the activity.
Definition WorldStartupConfig.h:21
Map and authored player and activity policy for a gameplay world.
Definition WorldStartupConfig.h:48
bool bAllowJoinAfterActivation
Whether players may join after world gameplay activates.
Definition WorldStartupConfig.h:74
GAMEPLAYRUNTIME_API bool HasValidStartupConfig() const
Checks the complete authored startup configuration.
int32 MinPlayersToActivate
Players required to activate world gameplay; 0 has no gate.
Definition WorldStartupConfig.h:62
EActivityStartPolicy StartPolicy
Whether gameplay code or the minimum count triggers activity start.
Definition WorldStartupConfig.h:90
EActivityJoinInProgressPolicy JoinInProgressPolicy
Whether a running activity admits new participants by default.
Definition WorldStartupConfig.h:94
GAMEPLAYRUNTIME_API bool HasValidPlayerLimits() const
Checks the authored world player-count limits.
int32 MaxPlayers
Maximum admitted players; 0 adds no framework limit.
Definition WorldStartupConfig.h:66
int32 MinParticipantsToStart
Default participants required to start an activity.
Definition WorldStartupConfig.h:82
int32 MaxParticipants
Default activity capacity; 0 adds no activity-specific limit.
Definition WorldStartupConfig.h:86
TSoftObjectPtr< UWorld > WorldMap
Map to load after selecting and validating this startup config.
Definition WorldStartupConfig.h:54
GAMEPLAYRUNTIME_API bool HasValidActivityParticipantLimits() const
Checks the authored activity participant-count limits.
bool bInitiallyAcceptingPlayers
Whether the world initially accepts new players.
Definition WorldStartupConfig.h:70