Skip to content

v5.15.4 — Liaison site web sans SQL 🔌🌐

Choose a tag to compare

@herocraftlol herocraftlol released this 18 Sep 15:30
· 3 commits to main since this release

🏰 FactionPlugin v5.15.4 — Liaison site web sans SQL 🔌🌐✨

Cette version supprime la dépendance à MySQL pour la commande /lier. Vous n'avez plus besoin de configurer une base de données partagée entre le plugin et le backend du site web : tout passe maintenant par une simple API HTTP entre FactionPlugin et le serveur Node.js.


🌟 Qu'est-ce que FactionPlugin ?

FactionPlugin est un plugin Minecraft complet pensé pour transformer votre serveur Paper en un véritable univers de factions. Conçu pour les serveurs survie PvP, il réunit dans une seule commande /faction (et ses alias /f, /fac) tout ce qu'il faut pour faire vivre un mode factions riche et moderne :

  • 🏰 Territoires revendiqués et protégés par chunk
  • 🤝 Diplomatie complète : alliances, guerres, traités, pillage
  • 💰 Économie intégrée : banque d'émeraudes, shop global, troc sécurisé
  • 👥 Villages autonomes avec villageois vanilla recrutés, qui construisent, combattent, récoltent et livrent
  • 🚢 Commerce inter-villes par contrats, ports et gares
  • 📊 Statistiques et classements détaillés
  • 🔌 Liaison site web simplifiée — plus besoin de base MySQL !
  • 🏷️ Tab HeroTab synchronisé à la seconde sur tout votre réseau

Conçu pour Paper 1.21.4 (API Bukkit + Paper), Java 21, prêt à l'emploi : posez le .jar dans plugins/, redémarrez, et c'est parti.


🆕 Nouveautés de la v5.15.4

🌐 Liaison site web sans SQL (/lier)

Avant la v5.15.4, /lier exigeait une base MySQL partagée entre le plugin et le backend Node.js du site (table web_link_codes). C'était lourd, source de pannes, et inutile pour un serveur solo ou un petit réseau.

Avec la v5.15.4, tout passe par HTTP :

  • 🌐 Le plugin POST le code au site via POST /api/faction/push/link-code.
  • 🔑 Authentification simple par clé d'API (header X-Faction-Key).
  • 🪶 Le site stocke le code dans data/local-game.json — plus de table SQL.
  • 🔁 /lier garde exactement la même interface pour les joueurs (code à 6 chiffres, expiration 10 min).
  • 🛡️ FactionTabSync reste optionnel : si vous voulez le tab HeroTab, configurez la section mysql: comme avant.

⚙️ Configuration minimale

# plugins/FactionPlugin/config.yml
site-url: "http://192.168.1.196:3000"
faction-api-key: "la-même-clé-que-dans-le-.env-du-site"

# Section mysql: OPTIONNELLE — uniquement si vous utilisez FactionTabSync
# mysql:
#   host: 127.0.0.1
#   port: 3306
#   database: herocraft
#   user: herocraft_user
#   password: mot-de-passe

Côté site, dans .env :

FACTION_API_KEY=la-même-clé-que-dans-le-config.yml-du-plugin
GAME_PUSH_PATH=/api/faction/push/link-code

🛠️ Compilation Paper 1.21.4 propre

Pour que mvn clean package produise un .jar fonctionnel du premier coup :

  • ✅ Import org.bukkit.plugin.java.JavaPlugin corrigé dans ShopCreateGUI et SortMenuGUI.
  • ✅ Material.BED → RED_BED, GOLD_STAINED_GLASS_PANE → YELLOW_STAINED_GLASS_PANE.
  • ✅ Enchantment.LUCK → LUCK_OF_THE_SEA.
  • ✅ PotionEffectType.INCREASE_DAMAGE → STRENGTH, DAMAGE_RESISTANCE → RESISTANCE.
  • ✅ Sound.ENTITY_PLAYER_EAT → ENTITY_GENERIC_EAT (supprimé en 1.21.4).
  • ✅ Particle.SPELL_WITCH → WITCH, VILLAGER_HAPPY → HAPPY_VILLAGER.
  • ✅ MapPalette.matchColor(Color) → matchColor(java.awt.Color).
  • ✅ EntitySleepEvent (supprimé en 1.21.4) → polling de Villager#isSleeping() avec transition endormi → éveillé.
  • ✅ Variable view rendue final avant forEach.
  • ✅ Nouvelle surcharge cmdItem(Material, name, l1, l2, l3, enabled).
  • ✅ Imports manquants ajoutés : Location, PostType, etc.
  • ✅ Message de démarrage mis à jour vers v5.15.4.

✅ Migration depuis v5.15.3

Aucune migration de données : tous les fichiers YAML (factions.yml, claims.yml, bank.yml, ranking.yml, map.yml, etc.) restent compatibles.

  • Si vous utilisiez MySQL pour /lier et voulez passer en mode sans SQL : supprimez la section mysql: du plugin (sauf si vous voulez FactionTabSync), ajoutez site-url + faction-api-key, mettez à jour le backend du site.
  • Si vous utilisiez FactionTabSync : aucune action requise, la section mysql: reste utilisée pour le tab HeroTab.

📦 Téléchargements

Fichier Taille Contenu
FactionPlugin-5.15.4.jar ~ 480 KB Plugin prêt à l'emploi (shaded JAR)
FactionPlugin-5.15.4-source.zip ~ 310 KB Code source complet (Maven project)

🛠 Installation

  1. Téléchargez FactionPlugin-5.15.4.jar ci-dessous.
  2. Placez-le dans plugins/ de votre serveur Paper 1.21.4.
  3. Redémarrez le serveur.
  4. Le fichier plugins/FactionPlugin/ et ses sous-dossiers seront générés automatiquement.

🔐 Compatibilité

  • Serveur : Paper 1.21.4 (API Bukkit + Paper).
  • Java : 21 ou supérieur.
  • MySQL : optionnel depuis la v5.15.4 (uniquement pour FactionTabSync).
  • Données : rétro-compatibles avec v5.15.x.

🐛 Problèmes connus

Aucun bug critique connu à ce jour. Si vous rencontrez un souci, ouvrez une Issue sur le dépôt GitHub avec le fichier latest.log et la liste de vos autres plugins.


📜 Liens utiles


⭐ Si ce plugin t'est utile, n'hésite pas à mettre une étoile au dépôt !

Cette release a été préparée par un agent IA (OpenHands) au nom du mainteneur du projet.