Aller au contenu

🔍 DupeDetector

DupeDetector est un plugin ArkApi petit et ciblĂ© qui repĂšre la duplication d'objets rĂ©alisĂ©e via l'inventaire de tribut — l'obĂ©lisque, le terminal de supply drop et la boutique d'upload du transmetteur utilisĂ©s pour les transferts de cluster.

Il fait une seule chose et la fait discrĂštement : les tentatives de duplication sont signalĂ©es Ă  votre Discord, et les rĂ©cidivistes peuvent ĂȘtre traitĂ©s automatiquement.

Ce qu'il fait

  • DĂ©tecte la duplication via l'inventaire de tribut/upload, sans mod client et sans rien Ă  installer pour vos joueurs.
  • Alerte votre Discord. Chaque dĂ©tection est publiĂ©e sur le webhook que vous configurez.
  • Punit les rĂ©cidivistes. Une fois qu'un joueur a Ă©tĂ© dĂ©tectĂ© suffisamment de fois, DupeDetector peut exĂ©cuter une commande serveur contre lui (expulsion, bannissement, ce que vous choisissez) et, en option, vider son inventaire. Les punitions partent vers leur propre webhook afin que vous puissiez les diriger vers un canal rĂ©servĂ© aux administrateurs.
  • Signalement seul si vous le souhaitez. Laissez les options de punition vides et le plugin ne fait plus que vous informer — il n'agit jamais de lui-mĂȘme.

La marge de manƓuvre accordĂ©e Ă  un joueur avant qu'une punition ne se dĂ©clenche est configurable, et volontairement pas un nombre fixe. Voir Punishment.After.

â„č Les dĂ©tails de dĂ©tection ne sont volontairement pas publiĂ©s. Ce qui dĂ©clenche une dĂ©tection, et combien de dĂ©tections sont tolĂ©rĂ©es pour un joueur donnĂ©, ne sont pas documentĂ©s ici — cette information n'aide que les personnes que vous essayez d'attraper. Si vous avez besoin de comprendre une alerte spĂ©cifique, demandez sur le Discord Bytemart.

Prérequis

Prérequis Remarques
ArkApi 3.51 ou plus récent Le plugin ne se chargera pas sur des versions d'API antérieures.
MySQL / MariaDB Le plugin se connecte au démarrage, des identifiants valides sont donc requis. Voir Configuration commune.
Une clé de licence Bytemart Rien ne s'active tant que la clé n'a pas été authentifiée.
HTTPS sortant Nécessaire pour la licence et pour les webhooks Discord.

Installation

  1. Assurez-vous d'avoir ArkApi 3.51+ installé sur votre serveur.
  2. Configurez une base de donnĂ©es MySQL/MariaDB — voir Configuration commune. La base de donnĂ©es doit dĂ©jĂ  exister.
  3. Téléchargez DupeDetector.zip depuis votre tableau de bord Bytemart.
  4. ArrĂȘtez le serveur (exĂ©cutez d'abord saveworld), ou dĂ©chargez toute version prĂ©cĂ©dente avec plugins.unload DupeDetector.
  5. Extrayez l'archive dans un dossier DupeDetector à l'intérieur de ShooterGame/Binaries/Win64/ArkApi/Plugins/.
  6. Ouvrez config.json et renseignez votre LicenseKey, vos identifiants Database, et au minimum DupeDetection.AlertWebhook — voir Configuration.
  7. Démarrez le serveur et confirmez qu'aucune erreur n'apparaßt pendant le démarrage.

⚠ Configurez AlertWebhook avant la mise en production. Il est livrĂ© vide, et un webhook vide signifie que les dĂ©tections sont enregistrĂ©es mais jamais publiĂ©es nulle part.

Mise Ă  jour

  • Manuelle : plugins.unload DupeDetector, remplacez les fichiers, puis plugins.load DupeDetector.
  • Automatique (rechargement Ă  chaud) : renommez le nouveau DupeDetector.dll en DupeDetector.dll.arkapi et dĂ©posez-le dans le dossier du plugin — ArkApi charge la nouvelle version et dĂ©charge automatiquement l'ancienne.

DupeDetector rĂ©pare automatiquement sa propre configuration au chargement : les clĂ©s manquantes sont ajoutĂ©es avec leurs valeurs par dĂ©faut et votre original est d'abord sauvegardĂ© dans config.json.bak. Une incompatibilitĂ© de type (une chaĂźne lĂ  oĂč un nombre est attendu) interrompt le chargement Ă  la place, avec une erreur nommant la clĂ©.

Commandes

L'accÚs console et RCON est un accÚs administrateur par définition, donc celles-ci ne nécessitent aucune permission supplémentaire.

Commande Canaux Description
DupeDetector.help [page] Console, RCON Liste paginée de chaque commande enregistrée.
DupeDetector.reload Console, RCON Relit config.json sans redémarrer le serveur.

DupeDetector.reload remplace la configuration active sur-le-champ, de sorte que les modifications de webhook et de punition prennent effet immédiatement. Elle ne relance pas la passe de réparation de configuration, validez donc votre JSON avant de recharger.

Dépannage

  • Le plugin ne se charge pas, code d'erreur 1114 — une erreur de syntaxe JSON dans config.json. Passez-le dans JSONLint.
  • « License key is missing » — LicenseKey contient encore la valeur d'espace rĂ©servĂ©.
  • Rien n'arrive sur Discord — l'URL doit ĂȘtre un vĂ©ritable point de terminaison de webhook Discord (https://discord.com/api/webhooks/... ; les formes discordapp.com, ptb. et canary. sont Ă©galement acceptĂ©es). Toute autre valeur est abandonnĂ©e avec une ligne dans le journal.
  • Tout autre problĂšme — passez LogToFile Ă  true et reproduisez le problĂšme ; le plugin Ă©crit son propre fichier DupeDetector.log Ă  rotation, Ă  cĂŽtĂ© de config.json. Puis demandez sur le Discord Bytemart.

Étapes suivantes :