Deserted: Domination é um jogo ao estilo de dominação em que os jogadores lutam para capturar objetivos em duas equipes. Essa experiência usa dispositivos como o dispositivo Área de Captura e até dispositivos personalizados criados com o Verse.

Ao seguir este tutorial, você aprenderá a criar uma experiência de jogabilidade avançada no Unreal Editor para Fortnite (UEFN). Além disso, você será apresentado às funcionalidades da Unreal Engine 5 (UE5), como Sequenciamento de nível e Pós-processamento.
Haverá links externos para funcionalidades para orientar você sobre as funcionalidades do Verse e da UE5, bem como sobre outros conteúdos que abordamos.
Você pode encontrar Deserted na seção Exemplos de Projetos do Navegador de Projetos.
Veja a seguir uma visão geral das etapas necessárias para recriar essa ilha:
-
Crie um novo projeto e modifique as configurações da ilha para configurar o jogo.
-
Crie um script do Verse para o surgimento de jogadores.
-
Adicione e personalize os principais dispositivos de jogo.
-
Adicione um sistema de surgimento personalizado.
-
Adicione o conjunto do jogador.
-
Adicione efeitos sonoros.
-
Adicione efeitos visuais.
Criando um novo projeto
Leia nossa página Organização do projeto para saber mais sobre como criar um novo projeto.
Para definir as configurações da ilha, coloque um dispositivo de configurações da ilha na Gaveta de Conteúdo.
Personalize suas configurações conforme mostrado abaixo.
Opção | Valor | Explicação |
---|---|---|
Bate-papo de voz | Todos | Determina se o bate-papo de voz é habilitado entre jogadores de uma mesma equipe, entre todos os jogadores ou se é desabilitado. |
Distância de bate-papo de voz | 10,0 | Controla o alcance das vozes que podem ser ouvidas à distância. |
Máx. de Jogadores | 12 | Determina o número máximo de jogadores permitidos no jogo. |
Equipes | Índice da equipe - 2 | Determina em quantas equipes os jogadores serão divididos. |
Tamanho da equipe | Dividido uniformemente | Determina como os jogadores são divididos entre as equipes. |
Identificador de classe padrão | Vaga de classe - 1 | Define a Classe padrão para jogadores no início do jogo ou se a Classe estiver definida. |
Rodadas totais | 5 | Determina o número de rodadas até o final do jogo. |
Rotação de equipe | True | Determina com que frequência as equipes devem ser rotacionadas. |
Visuais da equipe determinados em | Início do jogo | Determina se os nomes e as cores das equipes mudam a cada rodada ou permanecem como estavam no início do jogo. |
Tempo limite | 15,0 | Especifica a duração de cada rodada ou o jogo em si, se houver apenas uma rodada. |
Pontuação até o final | 500 | Faz com que a rodada termine quando um jogador ou equipe atingir a pontuação especificada. |
Só permitir ressurgimento se encontrar plataformas de surgimento | True | Só permite que os jogadores reapareçam se houver uma plataforma de surgimento válida disponível. |
Início automático | 30,0 | Especifica se o jogo iniciará automaticamente após o período de tempo selecionado. |
Permitir assistir a outras equipes | True | Determina se os jogadores espectadores podem assistir a outras equipes. |
Pontuação de Eliminação | 3.0 | Determina a quantidade de pontuação concedida a um jogador quando ele elimina outro jogador. |
Pontuação de assistência | 1.0 | Determina a quantidade de pontuação concedida a um jogador quando ele ajuda a eliminar outro jogador. |
Desativar colisão de jogadores | True | Determina se os jogadores colidem ou passam uns pelos outros. |
Como criar um script Verse para o surgimento de jogadores
Você pode usar o Verse para controlar o gerador de jogadores, de forma que os jogadores sempre surjam em seus territórios (perto de áreas de captura próprias ou áreas próximas a aliados). Para fazer isso, use uma combinação de dispositivos padrão do Modo Criativo e do Verse.
Adicione um novo script de Verse conforme descrito nesta página. Em seguida, cole o seguinte:
Todos os direitos reservados.
using { /Fortnite.com/Devices }
using { /Fortnite.com/Teams }
using { /Verse.org/Simulation }
using { /Verse.org/Simulation/Tags }
## Este dispositivo gerencia os geradores de jogadores
## Um conjunto inicial de geradores começa habilitado
## Depois de um curto período de tempo, os geradores iniciais são desabilitados
## A partir daí, os surgimentos de equipes associados a cada ponto de captura são habilitados/desabilitados com base em uma pontuação de ponderação
## Possuir o ponto adiciona 1 à pontuação de ponderação (ou -1 se equipe 2)
## Cada aliado na área adiciona 1 à pontuação de ponderação (ou -1 se equipe 2)
## Se a pontuação de ponderação for > 0, a equipe 1 pode surgir perto do ponto.
## Se a pontuação de ponderação for < 0, a equipe 2 pode surgir perto do ponto
##################################################################
## Classe de Manipulador de Eventos - Vamos gerar uma delas por ponto de captura e vincular eventos a ela
##################################################################
capture_point_event_handler := class:
CapturePointIndex:int
DominationSpawnManagerRef:domination_spawn_manager
TeamCollectionRef:fort_team_collection
var CaptureWeightOfThisPoint:int = 0
var PlayerWeightOfThisPoint:float = 0.0
WeightForEachPlayer:float = 0.5
# Se Team 1, retornamos 1. Se Team 2, retornamos -1.
GetTeamDirectionOfAgent<private>(MyAgent:agent)<transacts>:int=
if (FirstTeam := TeamCollectionRef.GetTeams()[0]):
if (TeamCollectionRef.IsOnTeam[MyAgent, FirstTeam]):
return 1
return -1
# Definir estado do ponto de captura
OnCaptured(MyAgent:agent):void=
set CaptureWeightOfThisPoint = GetTeamDirectionOfAgent(MyAgent)
DominationSpawnManagerRef.CalculateWeightForPoint(CapturePointIndex)
# Mude a ponderação de pontos do jogador à medida que os jogadores entram ou saem
PlayerEnteredLargeZone(MyAgent:agent):void=
set PlayerWeightOfThisPoint = PlayerWeightOfThisPoint + (GetTeamDirectionOfAgent(MyAgent) * WeightForEachPlayer)
DominationSpawnManagerRef.CalculateWeightForPoint(CapturePointIndex)
PlayerLeftLargeZone(MyAgent:agent):void=
set PlayerWeightOfThisPoint = PlayerWeightOfThisPoint - (GetTeamDirectionOfAgent(MyAgent) * WeightForEachPlayer)
DominationSpawnManagerRef.CalculateWeightForPoint(CapturePointIndex)
##################################################################
## Classe DominationSpawnManager
##################################################################
domination_spawn_manager := class(creative_device):
# Grupos de Dispositivo Geradores de Jogadores — preenchido pela pesquisa de tags do Verse
var SpawnPointGroupInitial:[]player_spawner_device = array{}
var SpawnPointGroupsCapPoint:[][]player_spawner_device = array{array{}, array{}, array{}}
# Área de captura
@editable
CapturePoints:[]capture_area_device = array{}
@editable
LargeZones:[]player_counter_device = array{}
# Os geradores iniciais serão desabilitados após esse número de segundos
InitialGroupDisableTime:float = 5.0
# Referências de classe do manipulador de eventos de ponto de captura
var CapturePointListeners:[]capture_point_event_handler = array{}
# OnBegin será executado quando o jogo começar
OnBegin<override>()<suspends>:void=
BeginPlayEventSubscriptions()
FindAndCacheSpawnDevices()
DisableInitialSpawnGroup()
# Assine eventos a partir de nossos acionadores de atributos
BeginPlayEventSubscriptions<private>():void=
for (I -> EachCapPoint:CapturePoints):
MyHandler := capture_point_event_handler:
CapturePointIndex := i
DominationSpawnManagerRef := Self
TeamCollectionRef := Self.GetPlayspace().GetTeamCollection()
set CapturePointListeners = CapturePointListeners + array{MyHandler}
EachCapPoint.ControlChangeEvent.Subscribe(MyHandler.OnCaptured)
if (EachLargeZone := LargeZones[I]):
EachLargeZone.CountedEvent.Subscribe(MyHandler.PlayerEnteredLargeZone)
EachLargeZone.RemovedEvent.Subscribe(MyHandler.PlayerLeftLargeZone)
# Obtenha todos os nossos vários dispositivos Gerador de Jogadores e armazene-os nas matrizes apropriadas
FindAndCacheSpawnDevices<private>():void=
InitialSpawnPoints:[]creative_object_interface = GetCreativeObjectsWithTag(DominationSpawnTags.Tag_SpawnGroup_Initial{})
for (FoundDevice : InitialSpawnPoints, DeviceAsSpawner:= player_spawner_device[FoundDevice]):
set SpawnPointGroupInitial = SpawnPointGroupInitial + array{DeviceAsSpawner}
GroupTags:[]tag = array:
DominationSpawnTags.Tag_SpawnGroup_GroupA{}
DominationSpawnTags.Tag_SpawnGroup_GroupB{}
DominationSpawnTags.Tag_SpawnGroup_GroupC{}
for (i -> GroupTag:GroupTags):
FoundSpawnGroup:[]creative_object_interface := GetCreativeObjectsWithTag(GroupTag)
for (FoundDevice : FoundSpawnGroup, DeviceAsSpawner:= player_spawner_device[FoundDevice]):
if:
set SpawnPointGroupsCapPoint[i] = SpawnPointGroupsCapPoint[i] + array{DeviceAsSpawner}
# Desative os ponto de surgimento iniciais
DisableInitialSpawnGroup<private>()<suspends>:void=
Sleep(InitialGroupDisableTime)
for (SpawnPoint : SpawnPointGroupInitial):
SpawnPoint.Disable()
# Sempre que CapPointCaptureWeight ou CapPointPlayerWeight de um ponto mudar, isso é executado para ver quem deve ter permissão para surgir do grupo de surgimento associado
CalculateWeightForPoint(PointIndex:int):void=
var WeightOfPoint:int = 0
if:
CapPointData := CapturePointListeners[PointIndex]
CapPlayerWeightToInt := Floor[CapPointData.PlayerWeightOfThisPoint]
then:
set WeightOfPoint = CapPointData.CaptureWeightOfThisPoint + CapPlayerWeightToInt
for (SpawnDevice:SpawnPointGroupsCapPoint[PointIndex]):
var DeviceIsTeam1:logic = false
DeviceTags := SpawnDevice.GetTags()
if (DeviceTags.Has[DominationSpawnTags.Tag_TeamOwnership_Team1{}]):
set DeviceIsTeam1 = true
if (DeviceIsTeam1?):
if (WeightOfPoint > 0):
SpawnDevice.Enable()
else:
SpawnDevice.Disable()
else:
if (WeightOfPoint < 0):
SpawnDevice.Enable()
else:
SpawnDevice.Disable()
Use este guia para aprender mais sobre o Verse.
Para este tutorial, usaremos tags do Verse para obter referências a outros dispositivos criativos.
Em seguida, compile o script do Verse.
No Navegador de Conteúdo, encontre o dispositivo DominationSpawnManager que você criou e arraste-o até o mundo para personalizar suas configurações.
Essas configurações e os novos dispositivos Verse só aparecerão depois que você os compilar.
Adicionando e personalizando os dispositivos principais
Dispositivos Plataforma de Surgimento de Jogador

Os dispositivos da Plataforma de Surgimento de Jogador são controlados pelo script do Verse que determina locais de surgimento válidos.
Você usará várias variedades, cada uma com suas próprias configurações e funcionalidades. Você se comunicará com algumas delas usando o Verse, desabilitando-as ou habilitando-as para determinar locais de surgimento viáveis.
Você precisará de um total de 16 geradores iniciais, oito para a equipe 1 e oito para a equipe 2. Coloque-os ao ar livre. Eles só serão usados para o primeiro conjunto de surgimentos em cada rodada.
Para personalizar esse dispositivo:
Na Gaveta de Conteúdo, selecione e coloque um dispositivo Plataforma de Surgimento de Jogador.
-
Personalize suas configurações conforme mostrado abaixo:
Opção Valor Explicação Equipe de Jogadores Índice da Equipe/Equipe 1 ou Equipe 2 Define se a Equipe 1 ou a Equipe 2 surgirá nesse gerador específico. Usar como Início da Ilha False Este dispositivo não será usado como teletransportador inicial da ilha. Visível no Jogo Falso Este dispositivo não estará visível durante o jogo. Grupo Prioritário 10 Marque a caixa para Grupo Prioritário. Essa é a prioridade usada para o surgimento, em que um número menor tem maior prioridade. Exibir Alcance do Inimigo Desligado Um visualizador para ver a Verificação de intervalo inimigo no editor. Todos são desativados por padrão, mesmo não usando Checagem de Alcance do Inimigo. -
Adicione as [tags do Verse] (gameplay-tags-in-verse).
Etiquetas de jogo permitem que você encontre dispositivos marcados com uma tag específica enquanto o jogo está em execução.
Encontre o menu suspenso Etiquetas de jogo e clique em Editar para exibir uma lista de caixas de seleção true/false.
Para os dispositivos Plataforma de Surgimento de Jogador de surgimento inicial, clique em Inicial e certifique-se de que cada um seja propriedade da equipe da Equipe1 ou da Equipe2.
Em seguida, siga as etapas abaixo.

-
Selecione VerseTagMarkup no painel Detalhes.
-
Em Etiquetas de jogo, clique em Editar para abrir uma lista de caixas de seleção true/false.
- Para geradores iniciais, clique em Inicial. Certifique-se de que cada um tenha um valor de TeamOwnership igual a Equipe1 ou Equipe2.
-
Copie e cole esse dispositivo 15 vezes (para um total de 16 dispositivos).
Coloque metade dos dispositivos em um lado do mapa junto com um dispositivo de Área de Captura e a outra metade no lado oposto, com outro dispositivo de Área de Captura. Adicione um terceiro dispositivo de Área de Captura no meio do mapa. Nomeie os três dispositivos de Área de Captura Área de Captura_A - Área de Captura_C.
Esses geradores de jogadores apenas serão usados no início do jogo, antes de serem desabilitados pelo Verse.
Você pode definir as tags do Verse em qualquer lugar. As tags deste tutorial são definidas em ProjectName.verse
, que é o nome que você deu ao seu projeto.
Cole as seguintes tags no arquivo depois de as abrir para configurá-las.
Todos os direitos reservados.
using { /Verse.org/Simulation/Tags }
DominationSpawnTags<public> := module:
Tag_SpawnGroup<public>:= class(tag){}
Tag_SpawnGroup_Initial<public>:= class(Tag_SpawnGroup){}
Tag_SpawnGroup_GroupA<public>:= class(Tag_SpawnGroup){}
Tag_SpawnGroup_GroupB<public>:= class(Tag_SpawnGroup){}
Tag_SpawnGroup_GroupC<public>:= class(Tag_SpawnGroup){}
Tag_TeamOwnership<public>:= class(tag){}
Tag_TeamOwnership_Team1<public>:= class(Tag_TeamOwnership){}
Tag_TeamOwnership_Team2<public>:= class(Tag_TeamOwnership){}

Como na foto acima, coloque clusters de geradores em áreas seguras, longe do combate. O Verse desativará ou ativará esses geradores, dependendo se eles são válidos de acordo com o seu script.
As Plataformas de Surgimento de Jogador vermelhas são para um dos três grupos de geradores controlados pelo Verse. Há dois geradores sobrepostos no grupo, um para a equipe 1 e outro para a equipe 2, o que se repete em outras partes do mapa.
O gerador branco no cluster de plataformas de surgimento é conhecido como Gerador Substituto. Ele será usado se não houver outro local válido para o jogador surgir quando o Verse fizer a verificação.
Você pode adicionar grupos de geradores, formados pela equipe 1 e pela equipe 2, ao redor do mapa. Marque o grupo de surgimento como Grupo A, B ou C para indicar a qual área de captura ele deve reagir.
Configure os grupos ao redor do dispositivo de Área de Captura ao qual você os vinculará.
Para configurar grupos de geradores:
-
Em uma área segura, coloque duas plataformas de surgimento, uma sobre a outra. Uma deve ser designado à equipe 1 e a outro, à equipe 2.
-
Personalize suas configurações conforme mostrado abaixo.
Opção Valor Explicação Equipe de Jogadores Índice da equipe / 1 ou 2 Defina o Índice da Equipe como equipe 1 ou equipe 2 para gerar jogadores. Usar como Início da Ilha False Não será usado como teletransportador de início da ilha. Visível no Jogo False O gerador não está visível durante o jogo. Habilitado Durante Fase Nenhum Serão usados apenas pelo Verse e configurados como desabilitados por padrão. Grupo Prioritário 10 Marque a caixa para Grupo Prioritário. Isso é usado para surgimento, com o número mais baixo tendo maior prioridade. Checagem de Alcance do Inimigo 60 Essa é a distância usada para verificar os inimigos e determinar se esse é um ponto de surgimento válido. O tamanho pode ser ajustado dependendo do tamanho do mapa. Use uma área maior se o seu mapa for maior e menor e se o seu mapa não for tão grande. Exibir Alcance do Inimigo Desligado Um visualizador para ver a Verificação de intervalo inimigo no editor. Todos são desativados por padrão, mesmo não usando Checagem de Alcance do Inimigo. -
Como você fez na última seção, adicione as Tags do Verse com as seguintes caixas de seleção.
-
Marque GrupoA para as plataformas de surgimento ao redor do Ponto de Captura A.
-
Marque GrupoB para as plataformas de surgimento ao redor do Ponto de Captura B.
-
Marque GrupoC para as plataformas de surgimento ao redor do Ponto de Captura C.
-
-
Coloque outra plataforma de Surgimento de Jogadores ao lado das duas que você acabou de colocar. Esta será o Gerador Substituto.
-
Personalize suas configurações conforme mostrado abaixo.
Opção Valor Explicação Equipe de Jogadores Qualquer Defina o Índice da Equipe como equipe 1 ou equipe 2 para gerar jogadores. Usar como Início da Ilha False Não será usado como teletransportador de início da ilha. Visível no Jogo False O gerador não está visível durante o jogo. Habilitado Durante Fase Sempre São sempre geradores válidos para os jogadores surgirem. Grupo Prioritário 20 Marque a caixa para Grupo Prioritário. Isso é usado para surgimento, com o número mais baixo tendo maior prioridade. Checagem de Alcance do Inimigo 60 Essa é a distância usada para verificar os inimigos e determinar se esse é um ponto de surgimento válido. O tamanho pode ser ajustado dependendo do tamanho do mapa. Use uma área maior se o seu mapa for maior e menor e se o seu mapa não for tão grande. Exibir Alcance do Inimigo Desligado Um visualizador para ver a Verificação de intervalo inimigo no editor. Todos estão desativados por padrão, mesmo não usando Checagem de Alcance do Inimigo. -
Copie e cole esse dispositivo uniformemente no mapa. Você também pode colocá-los nos mesmos locais dos geradores vinculados a pontos de captura.
Coloque um total de 16 deles, que não são restritos por uma equipe. Isso significa que capturar todos os 3 pontos fará com que o inimigo derrotado apareça aleatoriamente em todo o mapa, em vez de em uma área previsível.

Por fim, existem vários geradores usados no lobby pré-jogo, onde os jogadores esperam que o jogo entre na fila. Há um total de 16 deles, colocados em uma área criada para que os jogadores de ambas as equipes possam esperar.
Para configurar esses dispositivos:
-
Crie um lobby pré-jogo.
-
Coloque um dispositivo Plataforma de Surgimento de Jogador no seu lobby.
-
Personalize suas configurações conforme mostrado abaixo.
Opção Valor Explicação Equipe de Kogadores Nenhuma São usadas apenas no início da ilha. Usar como Início da Ilha True Serão usadas no início da ilha antes do jogo. Visível no Jogo False O gerador não está visível durante o jogo. Habilitado Durante Fase Apenas Pré-Jogo Determina as fases do jogo durante as quais o dispositivo será habilitado. Grupo Prioritário 80 Marque a caixa para Grupo Prioritário. Esses plataformas sempre serão usadas durante o pré-jogo. Exibir Alcance do Inimigo Desligado Um visualizador para ver a Verificação de intervalo inimigo no editor. Todos estão desativados por padrão, mesmo não usando Checagem de Alcance do Inimigo. -
Copie e cole este dispositivo 15 vezes.
Dispositivos de Área de Captura
Em seguida, personalize os dispositivos Área de Captura com as seguintes etapas:
-
Edite um dispositivo Área de Captura colocado.
-
Personalize suas configurações conforme mostrado abaixo.
Opção Valor Explicação Raio de Captura 0,45 Este é o raio do campo de captura ao redor do dispositivo em ladrilhos. Visível Durante o Jogo False A base desse dispositivo não é visível durante o jogo. Pontuação Periódica Equipe Proprietária A cada número de segundos, a pontuação é dada à equipe que atualmente tem esse ponto capturado. Pontos ao Assumir o Controle 3 A quantidade de pontuação concedida por capturá-la. Tipo de Cor de Destaque Cor da Relação da Equipe Mostra a cor da equipe que atualmente detém o ponto. Altura da Captura 0,0625 Esta é a altura do dispositivo de captura em ladrilhos. Inimigos Contestam a Pontuação True A pontuação periódica é desativada quando um inimigo está dentro da área de captura. Pode Ser Capturada Pela Equipe Todos Qualquer equipe pode capturar os pontos. Tempo de Controle 10 Este é o número de segundos necessários para estar na área de captura para assumir o controle dela. Substituição do Tempo até Neutralizar Não Neutralizar Quando um ponto é capturado por uma equipe, a outra equipe não precisa neutralizá-lo primeiro. Assumir Controle Mais Rápido Por Jogador 2.0 Este é o multiplicador para capturar e neutralizar a velocidade de cada colega de equipe adicional que está auxiliando. Tipo de Atenuação de Progresso Ao Longo do Tempo Determina como o progresso parcial da captura é tratado. Velocidade de Atenuação de Progresso Parcial 0.5 A velocidade na qual o progresso parcial diminui quando nenhum colega de equipe está presente na área de captura. Elementos do HUD Distintivo As áreas de captura são mostradas na IU como distintivos. Exige Linha de Visão False Os distintivos da área de captura são sempre mostrados, independentemente da linha de visão. Texto de Ícone Inimigo Captura Este é o texto da IU exibido quando um inimigo controla um ponto de captura. Ocultar Ícone do HUD em 300 Esta é a distância em metros necessária para não ver mais o disintivo do HUD. Fixar na Tela True Ao renderizar o distintivo, fixe-o na tela. Texto de Ícone Aliado Defender Este é o texto da IU quando sua equipe controla a área de captura. Texto de Ícone Neutro Capturar Este é o texto IU quando a área de captura não está controlada. Tamanho do Texto do HUD 1,5 O tamanho do texto mostrado junto com o distintivo. Mensagem do HUD Capturado A - Capturado C Define a mensagem a ser exibida no HUD com a pontuação. Defina cada dispositivo para ter uma mensagem exclusiva que varia de “Capturado A” - “Capturado C”. Mostrar marcador de mapa Verdadeiro Determina se o ícone do objetivo será mostrado no minimapa. Mostrar pedido 1 - 3 Determina as ordens objetivas na IU. Defina cada dispositivo para ter uma ordem exclusiva variando de 1 a 3. -
Repita essa etapa para cada área de captura.
Conforme explicado anteriormente, você deve ter dois dispositivos de Área de Captura em lados opostos do mapa e um dispositivo de Área de Captura no meio. Você deve espalhar os dispositivos pelo mapa, com cada equipe próxima a um dispositivo Área de Captura e um terceiro no meio para que as equipes possam competir.
O bom posicionamento do ponto de captura deve incluir a consideração da cobertura, da geografia circundante, da elevação e da distância até outros pontos de captura.
Você também deve pensar em como indicar visualmente as áreas de captura. O dispositivo Área de Captura tem algumas boas opções padrão, mas também pense em como você pode usar arte de mundo, iluminação e decalques.
No Befallen, a base é substituída por um acessório de luz giratório para diferenciá-la visualmente.
Contador de jogadores

Coloque três dispositivos Contador de jogadores, um adjacente a cada dispositivo da Área de Captura.

Em seguida, configure os dispositivos Contador de Jogadores para criar os volumes vinculados aos dispositivos acima. Você pode nomear os dispositivos como LargeZone_A - LargeZone_C.
Na foto acima, você pode ver um volume vermelho ao redor do Ponto de Captura C. O tamanho do volume variará dependendo do tamanho da área que ele está cobrindo.
Personalize os dispositivos Contador de Jogadores para ter as seguintes configurações.
Opção | Valor | Explicação |
---|---|---|
Comparar Contagem de Jogadores | Não Comparar | Contagens relativas de jogadores não serão avaliadas nessa zona. |
Painel de Informações Visível | False | O painel de informações não estará visível durante a experiência de jogo. |
Usar Zona | True | Marque essa caixa para usar uma zona para cálculos em vez do mapa inteiro. |
Largura da Zona | Variável | Defina essa zona para cobrir toda a área ao redor de um dos pontos de captura. |
Profundidade da Zona | Variável | Defina essa zona para cobrir toda a área ao redor de um dos pontos de captura. |
Altura da Zona | Variável | Defina essa zona para cobrir toda a área ao redor de um dos pontos de captura. |
Repita as etapas três e quatro para os dispositivos LargeZone_B e LargeZone_C.
Dispositivo - Verse

Use esse dispositivo para associar a vinculação direta de eventos aos dispositivos necessários, de modo que eles possam ser referenciados pelo script Verse.
Para personalizar o dispositivo Verse:
- Na aba Organizador, localize e selecione DominationSpawnManager.

-
No painel Detalhes, selecione DominationSpawnManager (instância).
-
Personalize suas configurações conforme mostrado abaixo:
Opção Valor Explicação Visível no Jogo False Esse dispositivo não estará visível no jogo. Habilitado ao Iniciar True Esse dispositivo será habilitado no início do jogo. -
Em DominationSpawnManager, use as seguintes configurações:
Opção Valor Explicação 0 Área de Captura_A Informa ao script do Verse qual equipe capturou o ponto. 1 Área de Captura_B Informa ao script do Verse qual equipe capturou o ponto. 2 Área de Captura_C Informa ao script do Verse qual equipe capturou o ponto. 0 LargeZone_A Funciona em conjunto com TriggersLargeZoneEntered informando o script do Verse quando um jogador sai da área para deduzir geradores viáveis. 1 LargeZone_B Funciona em conjunto com TriggersLargeZoneEntered informando o script do Verse quando um jogador sai da área para deduzir geradores viáveis. 2 LargeZone_C Funciona em conjunto com TriggersLargeZoneEntered informando o script do Verse quando um jogador sai da área para deduzir geradores viáveis.
Dispositivo Cadeado

Emparelhados com muitas das áreas de surgimento de jogador estão os dispositivos Cadeado. Cada dispositivo Cadeado deve receber seu próprio nome exclusivo.
Você pode criar armários de surgimento com cadeados e portas para garantir que os jogadores não possam entrar novamente.
Recomendamos numerar seus componentes interligados para acompanhar cada local. Para os propósitos deste tutorial, haverá um total de quatro áreas de surgimento seguras fechadas.
Use as etapas a seguir para personalizar os cadeados de um a quatro.
-
Coloque um dispositivo Cadeado na parte externa de uma porta fechada.
-
Coloque dois dispositivos Gatilho dentro da sala para cobrir a porta.
a. Nomeie os dispositivos Gatilho de uma forma que ajude você a referenciá-los facilmente. Os Gatilhos neste tutorial são denominados TriggerDoorOpen1 - 4 e TriggerDoorClose1 - 4.
-
Personalize as configurações do dispositivo Cadeado, conforme mostrado abaixo.
Opção Valor Explicação Visível Durante o Jogo Falso Este dispositivo não estará visível durante o jogo. Ocultar Interação ao Trancar Verdadeiro O jogador não verá a interação quando trancado durante o jogo. -
Configure a Vinculação Direta de Eventos para emparelhar o dispositivo Cadeado com o dispositivo Gatilho.
Dispositivo A | Função | Dispositivo B | Evento | Explicação |
---|---|---|---|---|
Cadeado | Abrir | DoorOpenTrigger1 - DoorOpenTrigger4 | Ao Acionar | Quando o dispositivo TriggerDoorOpen1 for ativado, ele abrirá essa porta. |
Cadeado | Fechar | DoorCloseTrigger1 - DoorOpenTrigger4 | Ao Acionar | Quando o dispositivo TriggerDoorClose1 for ativado, ele fechará a porta. |
Repita essas etapas três vezes para cada área segura, alterando as vinculações diretas de eventos para corresponder aos Gatilhos próximos a elas.

Os dispositivos Gatilho que cobrem a porta exigem que um jogador entre em contato com ela, o que envia um sinal ao dispositivo de bloqueio para abrir a porta. Isso é mostrado no dispositivo Gatilho esquerdo que cobre a porta.
À direita, um segundo dispositivo Gatilho aguardará dois segundos antes de enviar um sinal para fechar a porta atrás deles. Isso permite que os jogadores de dentro saiam, mas potenciais campistas no lado de fora não consigam entrar.
Para personalizar esses dispositivos:
-
Use a tabela a seguir para personalizar de TriggerDoorOpen1 a 4.
Opção Valor Explicação Visível no Jogo False O gatilho não ficará visível durante a experiência de jogabilidade. Acionar Efeitos Visuais False Este dispositivo não terá efeitos visuais. Acionar Efeitos Sonoros False Esse dispositivo não terá efeitos sonoros. -
Use a tabela a seguir para personalizar de TriggerDoorClosed1 a 4.
Opção Valor Explicação Visível no Jogo Falso Este dispositivo não estará visível durante o jogo. Acionado por Jogador False O contato com o jogador não ativará esse gatilho. Atraso do Gatilho 2 Após dois segundos, esse dispositivo enviará um sinal. Acionar Efeitos Visuais False Este dispositivo não terá efeitos visuais. Acionar Efeitos Sonoros False Esse dispositivo não terá efeitos sonoros -
Em seguida, configure a Vinculação Direta de Eventos.
Dispositivo A Função Dispositivo B Evento Explicação Gatilho Gatilho TriggerDoorOpen1 - TriggerDoorOpen4 Ao Acionar Envia um sinal quando o gatilho da porta é ativado, fazendo com que esse dispositivo seja ativado dois segundos depois e abra o Cadeado.
Repita essa configuração com convenções de nomenclatura numérica crescentes em cada sala confinada com uma porta fechada que precisa de abertura automática.

Você pode querer que uma porta permaneça aberta, fechada ou trancada no início do jogo. Isso também pode fazer isso com dispositivos Cadeado. Neste exemplo, queremos que a porta seja aberta para permitir um melhor fluxo de movimento.
Para configurar essa mecânica:
-
Coloque outro dispositivo Cadeado com o nome LockDevice5.
-
Personalize suas configurações conforme mostrado abaixo.
Opção Valor Explicação Visível Durante o Jogo Falso Este dispositivo não estará visível durante o jogo. Ocultar Interação ao Trancar Verdadeiro O jogador não poderá ver a interação quando trancado durante o jogo. Posição Inicial da Porta Aberta A porta começará a se abrir durante o jogo.
Controlador do HUD

O dispositivo Controlador do HUD pode personalizar várias configurações para sua ilha. Para configurar esse dispositivo:
-
Coloque um dispositivo Controlador do HUD na sua ilha.
-
Personalize suas configurações conforme mostrado abaixo.
Opção Valor Explicação Mostrar HUD Sim Mostra o HUD na interface do usuário. Mostrar Minimapa Não Oculta o minimapa na interface do usuário. Mostrar caixa de informações do HUD Sim Mostra a caixa de informações do HUD na IU. Exibir Menu de Construção Não Oculta o Menu de Construção na IU. Exibir Inventário do Jogador Sim Mostra o inventário do jogador. Mostrar recurso de madeira Não Oculta esse elemento na IU. Mostrar recurso de pedra Não Oculta esse elemento na IU. Mostrar recurso de metal Não Oculta esse elemento na IU. Mostrar recurso de ouro Não Oculta esse elemento na IU. Mostrar prompt de tabela de pontuação do mapa Sim Oculta o prompt da tabela de pontuação do mapa. Exibir Temporizador da Tempestade Não Mostra o temporizador de tempestade na IU. Exibir Contador de Jogadores Não Mostra o número de jogadores na IU. Exibir Contador de Eliminações Não Exibe o contador de eliminação na IU. Exibir Temporizador da Rodada Não Exibe o temporizador da rodada na IU.
Dispositivo Barreira

Ao redor da arena de combate principal estão muitos dispositivos Barreira invisíveis que impedem que os jogadores saiam da arena. Você pode adaptar o número e o tamanho deles ao mapa criado, mas eles devem ter as seguintes configurações básicas.
Para personalizar o dispositivo Barreira:
-
Coloque um dispositivo Barreira em um local que impeça os jogadores de saírem da arena.
-
Personalize suas configurações conforme mostrado abaixo:
Opção Valor Explicação Material da Barreira Nenhum Nenhuma textura é usada, permitindo que ela fique invisível durante o jogo. Profundidade da Barreira Variável Ajustada conforme necessário para delimitar totalmente a área. Largura Variável Ajustada conforme necessário para delimitar totalmente a área. Altura da Barreira 3 Determina quantas ladrilhos de altura a barreira invisível terá. -
Copie e cole esse dispositivo para criar uma barreira perfeita ao redor da sua arena.
Dispositivo Área Mutante

Abaixo do nível está um dispositivo Área Mutante. A largura, profundidade e altura do dispositivo devem ser suficientes para abranger toda a arena.
Algumas das configurações são feitas em vez das configurações de Minha Ilha para aplicar certas regras. Para personalizar esse dispositivo:
-
Coloque um dispositivo Área Mutante abaixo do nível.
-
Personalize suas configurações conforme mostrado abaixo.
Opção Valor Explicação Largura da Área Variável Ajustada conforme necessário para delimitar totalmente a área. Profundidade da Área Variável Ajustada conforme necessário para delimitar totalmente a área. Altura da Área Variável Ajustada conforme necessário para delimitar totalmente a área. Afeta Criaturas False Criaturas não serão afetadas pela zona. Afeta Guardas False Os guardas não serão afetados pela área. Permitir Edição False Essa área não permitirá a edição de estruturas construídas por jogadores. Habilitar Efeitos Visuais False Este dispositivo não terá efeitos visuais. Permitir Disparo de Armas Verdadeiro Os jogadores podem disparar armas dentro da área. Permitir Construção False Os jogadores não poderão construir dentro da área. Habilitado Durante Fase Sempre A Área Mutante está sempre habilitada e ativa durante qualquer jogo. Vida Útil da Coleta True: 25 Quando definido como true, qualquer item descartado durará o número inteiro em segundos antes de ser destruído, neste caso, 25 segundos. Isso permite que os jogadores peguem as armas de jogadores eliminados.
Como adicionar conjuntos de jogadores

Você pode criar um equipamento para os jogadores usarem enquanto lutam pelo ponto de captura. Emparelhe o dispositivo Interface do Seletor de Classe com o dispositivo Criador de Classes para criar e exibir classes para os jogadores escolherem no início da partida.
Cada classe precisará de seu próprio dispositivo Criador de Classes. Você pode apenas colocar um dispositivo Interface do Seletor de Classe.
Para configurar equipamentos:
-
Coloque um dispositivo Interface do Seletor de Classe e use as configurações padrão.
-
Coloque um Criador de Classes para cada classe e equipamento que você deseja que os jogadores usem.
a. Registre as armas e a munição no Criador de Classes, com a arma primária registrada primeiro.
-
Personalize suas configurações conforme mostrado abaixo.
Opção Valor Explicação Nome da Classe Insira o nome desejado para a classe no Seletor de Classe. Descrição da Classe Insira uma descrição da classe e do equipamento a serem usados no Seletor de Classe. Identificador de Classe Cada classe precisará de um identificador separado para ela, indo de 1 a X, com X sendo o número de classes que você criou. Equipar Item Concedido Primeiro Item Equipa o primeiro item no equipamento registrado após o surgimento.
Adicionando efeitos sonoros

Clique aqui para saber mais sobre como importar áudio.
Importe um efeito sonoro e arraste-o do Navegador de Conteúdo até a área de origem do som.
Você também pode adicionar uma seleção de efeitos sonoros globais a uma área de sua escolha.

Para fazer isso, arraste e solte a onda sonora do Navegador de Conteúdo até a arena. A localização não importa, então agrupe de uma forma conveniente para você.

Abra o ativo Sound Wave e, no painel Detalhes, defina Looping como True. Ao contrário da sugestão criada acima, esse som será reproduzido em todo o mapa, então não há necessidade de fazer mais nada.
Indicações serão úteis se você quiser um controle mais avançado do áudio.
Clique com o botão direito do mouse e selecione Criar Dica no seu .wav personalizado de ativo de onda sonora para criar um reprodutor de ondas em loop com saída vinculada. Os esquemas vinculados acima devem ser criados automaticamente quando a indicação é feita.
Para fazer isso:
Clique no Player de Ondas e altere Looping para True.
Em seguida, clique em Player de Ondas em Loop e altere Substituir Atenuação para True para definir o Raio Interno e a Distância de Enfraquecimento.
Adicionando efeitos visuais

Usando Efeitos de pós-processamento, você pode alterar a aparência do seu projeto, por exemplo, usando gradação de cores ou aplicando efeitos de câmera. Siga estas etapas para que um Volume de Pós-processamento afete todo o nível.
-
Adicione um Volume de Pós-Processamento ao seu nível. Consulte Usando Volumes de Pós-processamento para ver as etapas sobre como colocar um.
-
No painel Detalhes do seu Volume de Pós-processamento, em Configurações do Volume de Pós-processamento, habilite Extensão Infinita (Unbound), o que significa que o volume de pós-processamento afetará todo o nível.
Este projeto usa os seguintes efeitos de pós-processamento:
-
Bloom: Controla a Bruma/o Brilho em áreas mais claras da cena
-
Aberração Cromática: Adiciona uma certa separação de canais de cores/distorção na borda da tela
-
Reflexos das Lentes: Controla como as luzes brilhantes lançam reflexos de lente na câmera
-
Vinheta: Adiciona um gradiente mais escuro nas bordas da tela
-
Grão de Filme: Adiciona Grão de Filme
-
Gradação de Cores: Entre Saturação/Contraste/Gama, estamos apenas ajustando a Saturação (a cena está dessaturada, o que significa menos cor e mais escala de cinza)
Esse projeto também usa os seguintes materiais de pós-processamento:

-
Efeito de brilho de calor na cena
-
Gradação de cores baseada em materiais
-
Coloração da cena com base na direção da aparência da câmera

Você também pode adicionar decalques. Decalques são criados no editor de materiais e depois arrastados até a cena.
Localize e arraste um decalque do Navegador de Conteúdo até a área em que você deseja que ele apareça.
Use as opções de Escala e Proximidade para exibir o decalque na sua malha estática. Isso pode criar texturas adicionais sobre a sujeira, criar texturas personalizadas para representar coisas como tinta derramada ou transmitir para criar sinais e danos de combate sobre malhas estáticas.
Você pode até mesmo adicionar luzes Klaxon à sua experiência.
A luz Klaxon é uma malha estática com um componente de material rotativo, combinada com uma luz pontual usando uma função de Material de Luz.
A Klaxon foi originalmente criada como um arquivo FBX e importada para o UEFN.

O UEFN pode importar todos os tipos de conteúdo, como objetos 3D, arquivos de áudio, texturas e muito mais em muitos formatos diferentes. Clique com o botão direito na pasta que você deseja importar. Uma opção de importação será exibida.

Depois que o objeto for importado, ele precisará de materiais adicionados do seu arquivo de cena. Para fazer isso, basta clicar duas vezes no objeto e aplicar Materiais aos slots de Material do objeto que você importou.
Há mais informações sobre como importar e usar objetos 3D no UEFN disponíveis em outros tutoriais não abordados neste documento.

O Niagara pode ser usado para criar efeitos visuais dinâmicos.
Encontre os ativos completos no navegador de conteúdo e, em seguida, arraste e solte. Os ativos podem ter sua escala ajustada.
Com Sequências de Nível, você também pode projetar sua jogabilidade para que gaivotas atmosféricas orbitem uma área.

Esse é um ativo global disponível para todos os criadores no Navegador de Conteúdo principal do UEFN. Para adicioná-lo, arraste e solte Órbita de Gaivotas Atmosféricas depois de pesquisar na pasta Fortnite no Navegador de Conteúdo.
Você também pode adicionar jatos para sobrevoar sua jogabilidade.

O jato usa o dispositivo [Sequência cinematográfica] (cinematic-sequence-device-in-unreal-editor-for-fortnite). Um modelo físico de um jato é usado e escondido abaixo do nível dos sobrevoos.

Você precisa criar Sequências de Nível para o Jato, clique aqui para obter informações sobre como fazer o seu próprio. Elas contêm keyframes de transformação de jato, efeitos sonoros de áudio, tremulação de câmera e emissores de efeitos visuais.
Você pode usar o Verse para controlar quando as sequências são reproduzidas. Para fazer isso, você criará um novo dispositivo Verse usando o script abaixo.
Compile o script Verse abaixo. O novo dispositivo será criado no Navegador de Conteúdo e poderá ser arrastado e editado normalmente dentro do nível.
Todos os direitos reservados.
using { /Fortnite.com/Devices }
using { /Verse.org/Random }
using { /Verse.org/Simulation }
################################################################################
## Este dispositivo faz referência a uma série de dispositivos Sequência Cinematográfica e os reproduz aleatoriamente com um tempo de recarga variável no meio.
################################################################################
sequencer_randomization_device := class<concrete>(creative_device):
# Matriz de dispositivos Sequência Cinematográfica entre os quais randomizar
@editable
SequencerList : []cinematic_sequence_device = array{}
# Tempo mínimo/máximo de espera antes de acionar outra sequência
@editable
CooldownMin:float = 120.0
@editable
CooldownMax:float = 240.0
# Se tivermos mais de uma sequência para escolher, devemos evitar que a mesma sequência seja reproduzida duas vezes seguidas?
@editable
PreventBackToBackRepeats:logic = true
# OnBegin será executado quando o jogo começar
OnBegin<override>()<suspends>:void=
if (SequencerList.Length > 0):
QueueSequence(GetRandomInt(0, SequencerList.Length-1))
# Aguardar um período aleatório de tempo e reproduzir a sequência
QueueSequence<private>(Index:int)<suspends>:void=
CooldownTime:float = GetRandomFloat(CooldownMin, CooldownMax)
Sleep(CooldownTime)
if (MySequencer := SequencerList[Index]):
MySequencer.Play()
QueueSequence(GetNextIndexToPlay(Index))
# Decida o próximo índice de sequência, seja completamente aleatório ou excluindo a última sequência reproduzida
GetNextIndexToPlay<private>(LastIndex:int):int=
if (SequencerList.Length > 1 and PreventBackToBackRepeats?):
var IndexToReturn:int = LastIndex + GetRandomInt(1, SequencerList.Length-1)
if(set IndexToReturn = Mod[IndexToReturn, SequencerList.Length]):
return IndexToReturn
return GetRandomInt(0, SequencerList.Length-1)
Adicione um dispositivo Sequência cinematográfica para cada uma das direções de sobrevoo e defina-as da seguinte forma.
Opção | Valor | Explicação |
---|---|---|
Sequência | Sequência criada | Coloque uma sequência de nível cinematográfico nesse campo. Este tutorial usa três instâncias de nível em três sequências cinematográficas com o script do Verse determinando aleatoriamente o tempo de sobrevoo. |
Adicione o dispositivo Verse no Navegador de Conteúdo e personalize-o para ter as seguintes configurações.

Opção | Valor | Explicação |
---|---|---|
CooldownMin | 180 | O tempo de recarga em segundos, no mínimo, antes que um sobrevoo a jato ocorra novamente. |
CooldownMax | 500 | O tempo de recarga em segundos, no máximo, que o script do Verse aguardará antes de fazer outro sobrevoo a jato. |
PreventBackToBackRepeats | True | O jato nunca voará na mesma direção duas vezes mais do que um Sequencer vinculado a ele. |
Também requer referências a cada um dos dispositivos Sequência cinematográfica para acioná-los.
Dispositivo A | Função | Dispositivo B | Evento | Explicação |
---|---|---|---|---|
Lista de Sequencers | Jet | CinematicSequenceDevice | 1-3 | Adicione uma referência a cada dispositivo Sequência cinematográfica. |

Você também pode usar os dispositivos Sequência de nível e Sequência cinematográfica para criar tubos móveis.