Sistema de grupos
Os grupos do EliteMobs permitem que até cinco jogadores online entrem juntos em masmorras, partilhem progresso de objetivos de abate próximos, disputem equipamento Elite e vejam o estado dos restantes membros. Os grupos existem apenas durante a sessão: os membros nunca são guardados e um jogador é removido imediatamente ao sair do grupo ou desligar-se.
O sistema está ativo por predefinição em Party.yml e todos os comandos usam a permissão elitemobs.party (predefinição: true).
Criar e entrar num grupo
| Comando | Descrição |
|---|---|
/em party create | Cria um grupo contigo como líder |
/em party invite <player> | Convida um jogador online; qualquer membro pode convidar |
/em party accept | Aceita o convite válido mais recente |
/em party leave | Sai do grupo atual |
/em party menu | Abre os controlos de grupo baseados em inventário |
/em party hideinteractionhint | Oculta permanentemente, só para ti, as dicas de grupo do clique direito |
Um grupo tem um líder e, no máximo, quatro membros adicionais (MAX_MEMBERS é 5). Se o líder sair, o membro seguinte assume a liderança. Os convites expiram após 60 segundos por predefinição. O grupo é dissolvido quando o último membro sai.
Dicas de convite por clique direito
Clicar com o botão direito noutro jogador mostra uma dica de uma linha no chat, com botões clicáveis [INVITE] e [Don't show again]. A dica é ignorada quando o alvo é um NPC, não tem elitemobs.party, já tem um convite pendente, já pertence a um grupo, ou quando o teu próprio grupo está cheio. Cada jogador tem um tempo de espera pessoal de playerInteractionHintCooldownSeconds (300 por predefinição), e /em party hideinteractionhint desativa a dica permanentemente para esse jogador (guardado nos dados persistentes do jogador).
Menu de grupo em inventário
Jogadores de Bedrock, servidores com onlyUseBedrockMenus ativado e jogadores que desligaram os menus em livro recebem uma versão em inventário dos controlos de grupo, em vez dos botões de chat. O mesmo menu trata dos convites, do seletor de jogadores a convidar (45 cabeças por página), da dica de clique direito e da confirmação de entrada em masmorra. /em party menu abre-o para qualquer pessoa; se tiveres uma confirmação ou um convite pendente, esse pedido abre primeiro.
Entrar juntos em masmorras
Masmorras instanciadas e dinâmicas
Quando um membro escolhe uma masmorra instanciada, o EliteMobs guarda uma fotografia da lista completa e inicia uma confirmação clicável. O iniciador fica automaticamente pronto e recebe CANCEL; os restantes recebem READY e DECLINE com um token exclusivo daquele lançamento.
A mensagem identifica a masmorra e a dificuldade; nas masmorras dinâmicas também mostra o nível escolhido. A confirmação dura 30 segundos por predefinição. Só pode existir uma confirmação ou entrada em curso por grupo.
Antes de mover alguém, o EliteMobs valida que todos estão online e no mesmo grupo, existem vagas suficientes, todos possuem a permissão configurada do pacote, ninguém está noutra instância, a instância e o mundo podem ser preparados e a verificação cancelável MatchJoinEvent do MagmaCore aceita todos os membros.
Uma recusa, expiração, alteração da lista ou falha de validação cancela a entrada do grupo inteiro. O EliteMobs não admite propositadamente apenas parte do grupo. Se a clonagem do mundo já estiver em fila, a reserva mantém-se até ter sucesso, falhar ou ser cancelada.
PlayerJoinDungeonEvent não faz parte dessa verificação: é uma notificação não cancelável emitida apenas depois da admissão. Os comandos no chat são /em party ready <token> e /em party decline <token>; o token impede que um botão antigo confirme outro lançamento.
As masmorras de desafio de encantamento não levam o grupo porque o desafio controla temporariamente o item do iniciador.
Masmorras de mundo aberto
Escolher uma masmorra de mundo aberto inicia a contagem decrescente de teletransporte seguro para cada membro disponível depois de validar o grupo e a permissão do pacote. Cada jogador pode cancelar a sua contagem ao mover-se; a chegada não é, portanto, atómica.
Progresso de missão partilhado
Quando um membro recebe crédito por um abate, os membros próximos recebem progresso para objetivos de abate ativos correspondentes, incluindo os associados a um chefe personalizado. Devem estar online, no mesmo mundo e dentro de sharedProgressRange (128 blocos por predefinição).
As missões continuam pessoais. O grupo não aceita nem entrega missões, não recebe a recompensa de outro membro e não partilha itens de recolha, diálogo de NPC ou participação em arenas. Um jogador numa instância ativa não relacionada também fica excluído.
Saque do grupo
Quando pelo menos dois membros estão próximos, equipamento Elite normal, equipamento especial e itens personalizados elegíveis entram numa votação partilhada de Necessidade / Ganância. Não é necessário dar o golpe final. Moedas e Pergaminhos Elite continuam pessoais.
Cada item guarda os membros elegíveis quando foi adicionado. Os bloqueios de chefes são aplicados antes da votação. A janela termina após 60 segundos sem um novo item; novos itens reiniciam esse período, mas lootVoteMaximumLifetimeSeconds limita a votação a 120 segundos por predefinição.
Barra lateral do grupo
A barra lateral combinada mostra o líder e os membros numa ordem estável, saúde em cinco segmentos e estado abatido, vidas restantes na mesma instância, a missão acompanhada quando existe espaço e sugestões alternadas para /em party invite <player> e /em party leave.
sidebarEnabled: false desativa apenas esta barra. Os grupos continuam a funcionar e é usado o painel normal de missões. Cores, glifos, formatos e intervalo são configuráveis em Party.yml.
Definições principais
| Chave | Predefinição | Objetivo |
|---|---|---|
enabled | true | Ativa grupos de sessão |
sharedProgressRange | 128.0 | Alcance no mesmo mundo para progresso e saque |
inviteTimeoutSeconds | 60 | Duração dos convites (mínimo 5) |
dungeonReadyCheckTimeoutSeconds | 30 | Duração da confirmação (mínimo 5) |
lootVoteMaximumLifetimeSeconds | 120 | Duração máxima da votação (mínimo 60) |
sidebarEnabled | true | Ativa a barra combinada |
sidebarRotationSeconds | 10 | Segundos entre sugestões (mínimo 3) |
playerInteractionHintsEnabled | true | Mostra a dica de grupo ao clicar com o botão direito noutro jogador |
playerInteractionHintCooldownSeconds | 300 | Tempo mínimo até o mesmo jogador voltar a receber a dica de clique direito (mínimo 1) |
Consulta Definições de configuração do EliteMobs para as chaves atuais das mensagens e da barra lateral.