Pular para o conteúdo principal

Integrações de proteção do CannonRTP

CannonRTP pode validar localizações de pouso candidatas contra vários plugins de proteção antes de colocá-las na fila para uso.

Integrações suportadas

As dependências opcionais atuais são:

  • WorldGuard
  • Towny
  • Lands
  • GriefPrevention
  • HuskTowns
  • HuskClaims

Estas são declaradas como softdepend no plugin.yml. CannonRTP funciona sem nenhuma delas instalada.

Como funcionam as verificações de proteção

  • Os adaptadores são verificados em uma ordem fixa: WorldGuard, Towny, Lands, GriefPrevention, HuskTowns, HuskClaims.
  • O primeiro adaptador que bloqueia uma localização interrompe a verificação e se torna a razão reportada.
  • Se um adaptador está desabilitado na configuração ou o plugin não está presente, ele é ignorado.
  • Se uma API de proteção gera um erro, CannonRTP bloqueia esse pouso por padrão.

O interruptor de segurança global para erros de API é:

  • landing.failOpenOnProtectionErrors

Padrão: false

Quando definido como true, CannonRTP permitirá que os pousos continuem quando um plugin de proteção não pode ser consultado com segurança.

O comando /wc probe

Administradores podem ficar em qualquer localização e executar /wc probe para testar se essa localização passa em todas as verificações de proteção. O resultado reporta qual plugin bloqueou a localização e por quê, ou confirma que a localização é válida.

Caminhos de configuração

Todos os interruptores de proteção estão sob protection.* em plugins/CannonRTP/config.yml.

Comportamento por plugin

WorldGuard

Chaves de configuração:

  • protection.worldGuard.enabled
  • protection.worldGuard.allowGlobalRegionOnly
  • protection.worldGuard.allowBuildAllowedRegions
  • protection.worldGuard.allowPassthroughRegions

Comportamento padrão:

  • habilitado por padrão
  • localizações cobertas apenas por __global__ são permitidas por padrão
  • regiões com build=ALLOW são permitidas por padrão
  • regiões com passthrough=ALLOW são permitidas por padrão
  • outras regiões protegidas correspondentes são bloqueadas

Towny

Chaves de configuração:

  • protection.towny.enabled
  • protection.towny.allowWilderness
  • protection.towny.allowNationZones
  • protection.towny.allowClaimedTownBlocks

Comportamento padrão:

  • habilitado por padrão
  • áreas selvagens são permitidas
  • zonas de nação são bloqueadas
  • blocos de cidade reivindicados são bloqueados

Lands

Chaves de configuração:

  • protection.lands.enabled
  • protection.lands.allowUnclaimedAreas
  • protection.lands.allowClaimedAreas

Comportamento padrão:

  • habilitado por padrão
  • áreas não reivindicadas são permitidas
  • áreas reivindicadas são bloqueadas

GriefPrevention

Chaves de configuração:

  • protection.griefPrevention.enabled
  • protection.griefPrevention.allowWilderness
  • protection.griefPrevention.allowAdminClaims
  • protection.griefPrevention.allowPlayerClaims

Comportamento padrão:

  • habilitado por padrão
  • áreas selvagens são permitidas
  • reivindicações de administrador são bloqueadas
  • reivindicações de jogador são bloqueadas

HuskTowns

Chaves de configuração:

  • protection.huskTowns.enabled
  • protection.huskTowns.allowWilderness
  • protection.huskTowns.allowAdminClaims
  • protection.huskTowns.allowRegularClaims
  • protection.huskTowns.allowFarmClaims
  • protection.huskTowns.allowPlotClaims

Comportamento padrão:

  • habilitado por padrão
  • áreas selvagens são permitidas
  • reivindicações de administrador são bloqueadas
  • reivindicações regulares de cidade são bloqueadas
  • reivindicações de fazenda são bloqueadas
  • reivindicações de lote são bloqueadas

HuskClaims

Chaves de configuração:

  • protection.huskClaims.enabled
  • protection.huskClaims.allowWilderness
  • protection.huskClaims.allowAdminClaims
  • protection.huskClaims.allowPlayerClaims

Comportamento padrão:

  • habilitado por padrão
  • áreas selvagens são permitidas
  • reivindicações de administrador são bloqueadas
  • reivindicações de jogador são bloqueadas

A validação sem proteção ainda se aplica

As integrações de proteção são apenas uma parte da validação de pouso. Uma localização ainda pode ser rejeitada porque:

  • está fora da borda do mundo
  • não existe uma superfície segura
  • o espaço dos pés ou da cabeça está bloqueado
  • o terreno corresponde às listas de materiais inseguros configuradas

Relatórios de falha

Quando um canhão fica esgotado (não consegue encontrar localizações válidas suficientes antes do tempo limite de busca), a saída de status e as mensagens para jogadores incluem uma discriminação das razões de rejeição mais comuns. Se a maioria das rejeições veio de terreno protegido, isso é reportado. Isso ajuda administradores a diagnosticar se as configurações de proteção são muito restritivas para seu servidor.