Aller au contenu principal

Intégrations de protection de CannonRTP

CannonRTP peut valider les emplacements d’atterrissage candidats contre plusieurs plugins de protection avant de les mettre en file d’attente.

Intégrations supportées

Les dépendances optionnelles actuelles sont :

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

Elles sont déclarées comme softdepend dans plugin.yml. CannonRTP fonctionne sans aucune d’entre elles installée.

Comment fonctionnent les vérifications de protection

  • Les adaptateurs sont vérifiés dans un ordre fixe : WorldGuard, Towny, Lands, GriefPrevention, HuskTowns, HuskClaims.
  • Le premier adaptateur qui bloque un emplacement arrête la vérification et devient la raison rapportée.
  • Si un adaptateur est désactivé dans la configuration ou si le plugin n’est pas présent, il est ignoré.
  • Si une API de protection génère une erreur, CannonRTP bloque cet atterrissage par défaut.

L’interrupteur de sécurité global pour les erreurs d’API est :

  • landing.failOpenOnProtectionErrors

Par défaut : false

Quand défini à true, CannonRTP permettra aux atterrissages de continuer quand un plugin de protection ne peut pas être interrogé en toute sécurité.

La commande /wc probe

Les administrateurs peuvent se tenir à n’importe quel emplacement et exécuter /wc probe pour tester si cet emplacement passe toutes les vérifications de protection. Le résultat rapporte quel plugin a bloqué l’emplacement et pourquoi, ou confirme que l’emplacement est valide.

Chemins de configuration

Tous les interrupteurs de protection sont sous protection.* dans plugins/CannonRTP/config.yml.

Comportement par plugin

WorldGuard

Clés de configuration :

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

Comportement par défaut :

  • activé par défaut
  • les emplacements couverts uniquement par __global__ sont autorisés par défaut
  • les régions avec build=ALLOW sont autorisées par défaut
  • les régions avec passthrough=ALLOW sont autorisées par défaut
  • les autres régions protégées correspondantes sont bloquées

Towny

Clés de configuration :

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

Comportement par défaut :

  • activé par défaut
  • la nature sauvage est autorisée
  • les zones de nation sont bloquées
  • les blocs de ville revendiqués sont bloqués

Lands

Clés de configuration :

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

Comportement par défaut :

  • activé par défaut
  • les zones non revendiquées sont autorisées
  • les zones revendiquées sont bloquées

GriefPrevention

Clés de configuration :

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

Comportement par défaut :

  • activé par défaut
  • la nature sauvage est autorisée
  • les revendications d’administrateur sont bloquées
  • les revendications de joueur sont bloquées

HuskTowns

Clés de configuration :

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

Comportement par défaut :

  • activé par défaut
  • la nature sauvage est autorisée
  • les revendications d’administrateur sont bloquées
  • les revendications de ville régulières sont bloquées
  • les revendications de ferme sont bloquées
  • les revendications de parcelle sont bloquées

HuskClaims

Clés de configuration :

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

Comportement par défaut :

  • activé par défaut
  • la nature sauvage est autorisée
  • les revendications d’administrateur sont bloquées
  • les revendications de joueur sont bloquées

La validation hors protection s’applique toujours

Les intégrations de protection ne sont qu’une partie de la validation d’atterrissage. Un emplacement peut encore être rejeté parce que :

  • il est en dehors de la bordure du monde
  • aucune surface sûre n’existe
  • l’espace des pieds ou de la tête est bloqué
  • le terrain correspond aux listes de matériaux dangereux configurées

Rapports d’échec

Quand un canon devient épuisé (ne peut pas trouver assez d’emplacements valides avant le délai de recherche), la sortie de statut et les messages destinés aux joueurs incluent une ventilation des raisons de rejet les plus courantes. Si la plupart des rejets provenaient de terrains protégés, cela est rapporté. Cela aide les administrateurs à diagnostiquer si les paramètres de protection sont trop restrictifs pour leur serveur.