← Tous les articles

Économie RP avec villageois personnalisés : protéger la monnaie avec custom_data

Un billet papier, un laissez-passer de guilde, un jeton de ration ou un certificat tamponné ne fonctionne comme monnaie de serveur que si les joueurs ne peuvent pas le dupliquer avec un objet vanilla renommé. La défense la plus simple consiste à lire l’identité de l’objet via ses composants, pas seulement via son nom visible.

Ouvrir le générateur d’échanges de villageois

Pourquoi le nom visible ne suffit pas

Si votre villageois demande seulement un papier nommé City voucher, n’importe quel joueur avec une enclume peut le falsifier. Le lore seul reste fragile, car il vit aussi dans du texte visible. Pour les objets économiques, le villageois doit valider une donnée invisible dans le stack.

Utiliser minecraft:custom_data comme couche d’identité

Dans les versions modernes, vous pouvez attacher un composant caché à l’objet monétaire. L’étiquette visible peut toujours dire Bon de guilde, mais la vraie vérification se trouve dans un objet structuré.

components:{
  "minecraft:custom_name":'[{"text":"Bon de guilde","italic":false}]',
  "minecraft:custom_data":{currency:"guild_voucher",issuer:"capital_bank",tier:"silver"}
}

Pourquoi cela protège l’économie

Modèle pratique pour les villageois

Lorsque vous créez le stack buy d’un échange, ajoutez-y le même objet custom_data. Ainsi, le villageois accepte seulement le vrai jeton, pas une imitation avec du texte copié.

buy:{
  id:"minecraft:paper",
  count:3,
  components:{
    "minecraft:custom_name":'[{"text":"Bon de guilde","italic":false}]',
    "minecraft:custom_data":{currency:"guild_voucher",issuer:"capital_bank",tier:"silver"}
  }
}

Bonnes règles économiques pour les serveurs RP

Quand séparer les monnaies

Utilisez des ID séparés pour les monnaies qui ne doivent pas se mélanger. Par exemple, des reçus de temple, des soldes militaires et des coupons de marché noir peuvent tous être du papier, mais ils ne doivent jamais partager le même payload custom_data.

Workflow recommandé

  1. Créez les objets de récompense et de paiement avec le même custom_data.
  2. Donnez-leur un nom visible lisible pour les joueurs.
  3. Utilisez le générateur d’échanges de villageois pour verrouiller le stack de paiement sur cette donnée cachée.
  4. Testez l’échange avec une fausse copie renommée avant de le mettre en ligne.