Skip to content
This repository was archived by the owner on Jul 9, 2026. It is now read-only.

Eminium-Games/SyncMaster

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Warning

This plugin is no longer maintained. It may not work with recent versions and is not recommended for new projects.
Consider using Multiverse-Inventories instead.

SyncMaster

Plugin Bukkit pour synchroniser les inventaires par groupes de mondes d'un serveur Minecraft.

Fonctionnalités

  • Sauvegarde automatique des inventaires par groupes de mondes
  • Restauration automatique lors du changement de monde
  • Support de l'inventaire principal, de l'armure et de l'inventaire secondaire
  • Sauvegarde des niveaux d'expérience
  • Configuration via fichier YAML avec système de groupes
  • Commande de rechargement à chaud

Installation

  1. Compilez le plugin avec Maven : mvn clean package
  2. Copiez le fichier JAR généré dans le dossier plugins/ de votre serveur
  3. Redémarrez le serveur ou utilisez /reload

Configuration

Le fichier config.yml se génère automatiquement dans plugins/SyncMaster/ :

# Définition des groupes de mondes avec inventaires synchronisés
groups:
  group:smp:
    worlds:
      - "world"
      - "world_nether"
      - "world_the_end"
  group:creative:
    worlds:
      - "world_creative"
      - "world_plots"
  group:minigames:
    worlds:
      - "world_arena"
      - "world_spleef"

# Messages du plugin
messages:
  reload: "&a[SyncMaster] Configuration rechargée avec succès !"
  no-permission: "&c[SyncMaster] Vous n'avez pas la permission d'exécuter cette commande."
  inventory-saved: "&a[SyncMaster] Inventaire sauvegardé pour le groupe %group%."
  inventory-loaded: "&a[SyncMaster] Inventaire restauré pour le groupe %group%."

# Options de sauvegarde
save-on-quit: true
save-on-world-change: true
clear-inventory-on-load: true

Format des groupes

Les groupes sont définis avec le préfixe group: suivi du nom du groupe :

groups:
  group:nom_du_groupe:
    worlds:
      - "monde1"
      - "monde2"
      - "monde3"

Tous les mondes d'un même groupe partagent le même inventaire. Les mondes non configurés ne sont pas affectés.

Commandes

  • /sync reload - Recharge la configuration du plugin (requiert la permission syncmaster.admin)

Permissions

  • syncmaster.admin - Permet d'utiliser la commande /sync reload (défaut: OP)
  • syncmaster.use - Permet d'utiliser les fonctionnalités du plugin (défaut: true)

Stockage

Les inventaires sont sauvegardés dans le fichier plugins/SyncMaster/inventories.yml au format YAML, organisés par UUID de joueur et par groupe.

Développement

Le plugin est développé avec Java 17 et utilise l'API Spigot 1.20.4.

Structure du projet

src/main/java/fr/eminiumgames/syncmaster/
├── SyncMaster.java              # Classe principale
├── commands/
│   └── SyncCommand.java         # Gestionnaire de commande
├── listeners/
│   └── WorldChangeListener.java # Listener pour les changements de monde
└── managers/
    ├── ConfigManager.java       # Gestion de la configuration et des groupes
    └── InventoryManager.java    # Gestion des inventaires

CI/CD

Le projet inclut un workflow GitHub Actions qui compile automatiquement le plugin à chaque push et crée des releases sur la branche principale.

Licence

Ce plugin est développé par EminiumGames.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages