Tous les articles

Banque de guilde Discord : suivre un inventaire partagé sur ton serveur

L’équipe CordBase

Le moyen le plus simple de suivre une banque de guilde sur Discord, c’est une table que les membres mettent à jour avec des commandes slash : ce qu’il y a dans la banque, qui l’a déposé et qui l’a retiré est noté dans le serveur où tout le monde discute déjà. La plupart des serveurs commencent avec un message épinglé que quelqu’un modifie à la main, un Google Sheet dont le lien traîne dans un salon, ou un bot d’économie. Les trois marchent un temps. Le message épinglé casse quand deux personnes le modifient le même soir. Le tableur marche jusqu’à ce que les membres arrêtent de l’ouvrir, et beaucoup arrêtent, parce qu’il vit en dehors de Discord. Les bots d’économie suivent les objets comme des choses qu’on achète avec des points, ce qui n’a rien à voir avec « qui garde nos 40 lingots de fer ».

Ce guide met en place un inventaire qui vit dans Discord : les membres enregistrent et consultent les objets avec des commandes slash, et les admins voient toute la table sur le web. Il utilise CordBase, que nous développons, et prend environ cinq minutes.

Ce que tu auras à la fin

  • Une commande /inventory dans ton serveur avec les actions add, query, view, update et leaderboard.
  • Des colonnes pour l’objet, la quantité, le propriétaire, la rareté et des notes.
  • Des permissions par rôle pour que les membres ordinaires puissent consulter, mais que seuls les officiers puissent changer les quantités.
  • Une table web que tu peux exporter en CSV.

Étape 1 : ajouter CordBase et installer le modèle

  1. Connecte-toi sur cordbase.gg avec Discord et choisis ton serveur.
  2. Ajoute le bot au serveur quand le tableau de bord le demande.
  3. Ouvre la bibliothèque de modèles et installe Suivi d’inventaire. Il contient cinq colonnes : item (texte, obligatoire), quantity (nombre, obligatoire), owner (membre, obligatoire), rarity (de Common à Legendary) et notes.

Si ton serveur partage une réserve commune au lieu de suivre qui détient quoi, installe plutôt Banque de guilde. Il contient item, quantity, deposited by, category (matériaux, équipement, consommables, monnaie) et date. La suite de ce guide utilise Suivi d’inventaire ; les commandes marchent de la même façon sur Banque de guilde, avec ses propres noms de colonnes.

La commande porte le nom de la table, donc le modèle te donne /inventory-tracker. Tu peux la raccourcir sur la page de modification de la table en changeant le slug ; ce guide suppose que tu l’as renommée en inventory.

Étape 2 : verrouiller qui peut modifier

Les nouvelles tables laissent tout le monde tout faire, ce qui est bien pour tester et mauvais pour une banque de guilde. Dans les permissions de la table :

  • Donne au rôle que tous les membres ont (par exemple @Member) l’accès read. Ils peuvent lancer query, view et leaderboard.
  • Donne à ton rôle d’officier l’accès write pour qu’ils puissent faire add et update.
  • Garde admin (suppression et modifications groupées) pour la direction.

Dès qu’une table a un rôle défini, les membres qui n’ont aucun de ces rôles ne peuvent plus du tout l’utiliser.

Toute personne qui a la permission « Administrateur » de Discord garde un accès complet dans tous les cas.

Étape 3 : enregistrer des objets depuis Discord

Ajouter une ligne ressemble à ça :

/inventory add item:Iron Bar quantity:40 owner:@Mara rarity:Common

Discord affiche chaque colonne comme une option, avec le sélecteur de membre pour owner et un menu pour rarity, donc personne ne peut écrire « legendery ».

Quand le stock change, modifie la quantité au lieu de ressaisir la ligne. Commence à taper dans l’option row et choisis l’objet dans la liste, puis règle l’option _mode, qui décide de ce qui arrive aux nombres :

/inventory update row:Iron Bar quantity:15 _mode:Decrement

Ça soustrait 15 à la quantité actuelle, quelle qu’elle soit. Le mode Ajouter ajoute. Définir (la valeur par défaut) remplace la valeur. Si deux officiers retirent des objets au même moment, les deux comptent, parce que le changement est appliqué comme une opération sur la valeur enregistrée plutôt que comme un « écris ce nombre ».

Étape 4 : consulter

  • /inventory query owner:@Mara liste tout ce que détient Mara.
  • /inventory query item:iron trouve toutes les lignes dont l’objet contient « iron », sans tenir compte de la casse.
  • /inventory query rarity:Legendary limit:25 affiche jusqu’à 25 objets légendaires.
  • /inventory view row:Iron Bar (choisi dans la liste) affiche une ligne en entier, avec qui l’a ajoutée et quand.
  • /inventory leaderboard column:quantity classe les objets par stock, du plus grand au plus petit.

Les résultats de recherche affichent les lignes les plus récentes d’abord, et les filtres se combinent : owner:@Mara rarity:Epic se limite aux objets épiques de Mara.

Étape 5 : garder un historique (facultatif)

La table d’inventaire contient l’état actuel. Si tu veux aussi un registre de ce qui entre et sort, installe Journal de loot à côté (item, received by, source ou boss, rarity, date) et enregistres-y les drops. L’offre Free a deux tables, donc l’inventaire plus un journal de loot rentrent.

Quand autre chose convient mieux

Un tableur reste le meilleur outil si tu as besoin de formules, de graphiques ou de beaucoup de références croisées, et que personne ne rechigne à quitter Discord pour le modifier. CordBase n’a pas de formules ni de synchronisation Google Sheets.

Si ton « inventaire » est en fait une économie virtuelle, où les membres gagnent des pièces et achètent des objets dans une boutique, utilise un bot d’économie comme UnbelievaBoat. CordBase ne fait pas tourner de boutique et ne verse pas de monnaie de lui-même.

CordBase convient quand les données sont de vrais registres qui comptent pour le serveur, et que tu veux que les gens les mettent à jour depuis Discord sans leur donner l’accès en modification à tout un tableur.

Les limites à connaître

  • Free : 2 tables, 100 lignes chacune. Pro (8 $/mois) passe à des tables illimitées et 10 000 lignes par table, et ajoute les modifications groupées. L’export CSV/JSON est inclus dans toutes les offres.
  • Jusqu’à 25 colonnes par table.
  • Les tables se conçoivent sur le web ; les membres ne peuvent pas créer de nouvelles tables depuis Discord.

Questions fréquentes

Les membres peuvent-ils voir uniquement leurs propres objets ?

Pas avec les permissions. Toute personne qui a l’accès en lecture peut interroger toute la table. Les membres peuvent filtrer sur leurs propres lignes en se choisissant dans l’option owner : /inventory query owner:@yourname.

Je peux importer mon tableur existant ?

Pas encore. CordBase n’a pas d’import CSV pour l’instant, donc les lignes existantes doivent être ajoutées avec /inventory add ou depuis le tableau de bord. Toutes les offres permettent d’exporter en CSV et en JSON.

Le bot a-t-il besoin de lire les messages ?

Non. CordBase ne répond qu’aux commandes slash et ne demande pas l’intent Message Content.