Sistemas / Quests
Quests System Na Fab
Um sistema de missões orientado a dados para jogos single-player, com a interface pronta. As missões são Data Assets, o seu jogo informa o que acontece por um único nó, e um HUD discreto mostra isso: um rastreador, uma fila de avisos, um diário, ofertas de missão, diálogo de missão, marcadores no mundo e uma bússola. Tudo é salvo em um único snapshot.
Um minuto e quarenta e seis segundos: ofertas, diálogo, o rastreador, a bússola, o diário e a demo. Só música.
Os personagens de demonstração não estão incluídos: os personagens do trailer e das imagens (KayKit Adventurers, de Kay Lousberg, CC0) não fazem parte do pacote. A demo traz três figuras simples com esqueleto, feitas para ela.
O que ele faz
Testado: 61 testes automáticos passam no UE 5.3 e no UE 5.8 (Windows). Medido em 1920x1080 em um i7-14700 com uma RTX 4060: o mapa da demo roda a 12,2 ms por frame, e o HUD das missões custa 0,07 ms de game thread.
Missões como dados
As missões são Data Assets em um catálogo: etapas com objetivos em paralelo, objetivos opcionais e ocultos, pré-requisitos, condições de nível e do mundo, limites de tempo, missões repetíveis com tempo de espera e missões ocultas descobertas ao explorar.
Dez tipos de objetivo, um nó
Kill, Collect, Deliver, Talk, Explore, Craft, Escort, Defend, Puzzle e Custom. O seu jogo informa o que acontece com ReportEvent, e um evento só toca nos objetivos que o escutam.
Recompensas e salvamento ficam com você
As recompensas são entregues ao seu jogo, nunca aplicadas pelas suas costas. Há eventos para tudo, e um único snapshot guarda todas as missões para o seu próprio SaveGame.
Diálogo de missão
Quem oferece a missão fala antes da oferta, responde a Accept ou Decline, dá falas de progresso e agradece antes das recompensas, letra por letra. Quem fala pode se animar, virar para o jogador e mexer a boca com o texto.
Rastreador e avisos
O rastreador fica abaixo do canto superior direito, para o canto ficar livre para um minimapa. Os avisos esperam em uma fila por prioridade: missões principais primeiro, conclusões antes de inícios.
Diário e ofertas
Ativas, Concluídas e Falhadas, agrupadas por categoria, com busca e cinco ordenações. O painel de oferta mostra quem oferece a missão, os objetivos e as recompensas.
Marcadores no mundo e bússola
Marcadores e setas na borda da tela para o objetivo rastreado, com a distância. A bússola mantém o jogador no centro e faz o objetivo deslizar conforme ele gira.
Acessível, com ferramentas
Teclado, mouse e controle; escala do texto, redução de movimento e nunca só a cor. Inclui cheats de console, um painel de depuração e um Quest Editor.
Guia rápido
Adicione o gerenciador
Adicione BP_QuestManagerComponent ao seu PlayerController e defina o Catalog.
Mostre o HUD
Crie o WBP_QuestHUD, adicione ao viewport e chame Setup com o gerenciador. Chame ToggleJournal na tecla do diário.
Informe o que acontece
Chame ReportEvent a partir do seu jogo, e coloque BP_QuestTargetComponent em quem oferece missões e nos objetos.
Conecte condições e recompensas
Implemente BPI_QuestWorld no seu PlayerController.
O que ele não faz
- Não inclui personagem: o gerenciador vai no seu próprio PlayerController.
- Sem diálogo ramificado: as únicas escolhas são Accept e Decline.
- Sem minimapa: o HUD deixa o canto livre para um.
- Não inclui áudio: cada aviso, o diário, a oferta e o diálogo têm um espaço de som vazio para o seu.
- Sem multiplayer nem replicação.
- A interface é só em inglês.
- O UE 5.4 a 5.7 não foi testado.