GroupeZ Docs

Job Configuration

How to create and configure jobs in zJobs

Cette page est affichée en anglais car sa traduction française n’est pas encore disponible.

This guide explains how to create and configure custom jobs in zJobs.

File Structure

Jobs are stored in plugins/zJobs/jobs/. Each YAML file represents one job:

plugins/zJobs/jobs/
├── miner.yml
├── farmer.yml
├── hunter.yml
├── fisherman.yml
├── builder.yml
└── enchanter.yml

Basic Job Structure

# Unique job identifier (filename without .yml)
name: "miner"

# Display name with color codes
display-name: "&6&lMiner"

# Job description
description:
  - "&7Mine ores and stones"
  - "&7to earn money and XP!"

# Maximum job level
max-level: 100

# Icon for GUI menus
icon:
  material: DIAMOND_PICKAXE
  name: "&6&lMiner"
  lore:
    - "&7Mine blocks to earn rewards"
    - ""
    - "&7Level: &e%job_level%"
    - "&7XP: &e%job_xp%/%job_xp_required%"

# Job actions (see Actions documentation)
actions:
  break:
    STONE:
      money: 1.0
      job-xp: 1

Configuration Options

name

The internal job identifier. Should match the filename.

name: "miner"

display-name

The display name shown to players.

display-name: "&6&lMiner"

Supports:

  • Color codes (&6, &#FF5500)
  • MiniMessage format
  • Placeholders

description

Description lines shown in menus and info commands.

description:
  - "&7Mine ores and stones"
  - "&7to earn money and XP!"
  - ""
  - "&eJoin this job to get started!"

max-level

Maximum level players can reach in this job.

max-level: 100

icon

Item displayed in GUI menus:

icon:
  material: DIAMOND_PICKAXE
  name: "&6&lMiner Job"
  lore:
    - "&7Current Level: &e%job_level%"
    - "&7Total Earnings: &a$%job_total_money%"
  glow: true

level-formula

Formula for calculating XP required per level:

# XP required = base * (level ^ multiplier)
level-formula:
  base: 100
  multiplier: 1.5

Example progression:

  • Level 1 → 2: 100 XP
  • Level 2 → 3: 283 XP
  • Level 10 → 11: 3,162 XP

level-rewards

Rewards given when reaching certain levels:

level-rewards:
  5:
    money: 500
    commands:
      - "broadcast &e%player% &7reached level &65 &7in &6Miner&7!"
  10:
    money: 2000
    items:
      - material: DIAMOND_PICKAXE
        amount: 1
        enchantments:
          efficiency: 3
  25:
    money: 10000
    commands:
      - "lp user %player% permission set jobs.miner.bonus true"

income-multiplier

Level-based income scaling:

# Each level increases income by this percentage
income-multiplier: 0.02  # 2% per level

At level 50 with 0.02 multiplier:

  • Base reward: $10
  • Bonus: 50 * 2% = 100%
  • Final reward: $20

required-permission

Permission required to join this job:

required-permission: "zjobs.job.miner"

max-players

Limit how many players can have this job:

max-players: 100  # 0 = unlimited

Complete Examples

Miner Job

name: "miner"
display-name: "&6&lMiner"

description:
  - "&7Extract valuable ores from"
  - "&7the depths of the earth!"
  - ""
  - "&7&lRewards:"
  - "&8▸ &fMoney from ores"
  - "&8▸ &fBonus XP at deep levels"

max-level: 100
income-multiplier: 0.02

icon:
  material: DIAMOND_PICKAXE
  name: "&6&lMiner"
  lore:
    - "&7Level: &e%job_level%"
    - "&7XP: &e%job_xp%&7/&e%job_xp_required%"
    - ""
    - "&7Total Earned: &a$%job_total_money%"

level-formula:
  base: 100
  multiplier: 1.5

level-rewards:
  10:
    money: 1000
    commands:
      - "msg %player% &aCongratulations on reaching Miner level 10!"
  25:
    money: 5000
    items:
      - material: IRON_PICKAXE
        enchantments:
          efficiency: 5
          unbreaking: 3
  50:
    money: 25000
    items:
      - material: DIAMOND_PICKAXE
        enchantments:
          efficiency: 5
          fortune: 3
          unbreaking: 3
          mending: 1
  100:
    money: 100000
    commands:
      - "broadcast &6%player% &ehas mastered the &6Miner &ejob!"

actions:
  break:
    STONE:
      money: 0.5
      job-xp: 1
    COAL_ORE:
      money: 5.0
      xp: 5
      job-xp: 3
    DEEPSLATE_COAL_ORE:
      money: 6.0
      xp: 6
      job-xp: 4
    IRON_ORE:
      money: 10.0
      xp: 10
      job-xp: 5
    DEEPSLATE_IRON_ORE:
      money: 12.0
      xp: 12
      job-xp: 6
    GOLD_ORE:
      money: 20.0
      xp: 15
      job-xp: 8
    DEEPSLATE_GOLD_ORE:
      money: 24.0
      xp: 18
      job-xp: 10
    DIAMOND_ORE:
      money: 50.0
      xp: 50
      job-xp: 15
    DEEPSLATE_DIAMOND_ORE:
      money: 60.0
      xp: 60
      job-xp: 18
    EMERALD_ORE:
      money: 75.0
      xp: 75
      job-xp: 20
    DEEPSLATE_EMERALD_ORE:
      money: 90.0
      xp: 90
      job-xp: 24
    ANCIENT_DEBRIS:
      money: 200.0
      xp: 200
      job-xp: 50

Farmer Job

name: "farmer"
display-name: "&a&lFarmer"

description:
  - "&7Grow and harvest crops"
  - "&7to feed the server!"

max-level: 100
income-multiplier: 0.015

icon:
  material: GOLDEN_HOE
  name: "&a&lFarmer"
  lore:
    - "&7Level: &e%job_level%"
    - "&7XP: &e%job_xp%&7/&e%job_xp_required%"

level-formula:
  base: 80
  multiplier: 1.4

actions:
  break:
    WHEAT:
      money: 2.0
      job-xp: 2
      conditions:
        - type: block_age
          value: 7  # Only mature crops
    CARROTS:
      money: 2.5
      job-xp: 2
      conditions:
        - type: block_age
          value: 7
    POTATOES:
      money: 2.5
      job-xp: 2
      conditions:
        - type: block_age
          value: 7
    BEETROOTS:
      money: 3.0
      job-xp: 3
      conditions:
        - type: block_age
          value: 3
    NETHER_WART:
      money: 5.0
      job-xp: 4
      conditions:
        - type: block_age
          value: 3
    MELON:
      money: 4.0
      job-xp: 3
    PUMPKIN:
      money: 4.0
      job-xp: 3
    SUGAR_CANE:
      money: 1.5
      job-xp: 1
    CACTUS:
      money: 1.5
      job-xp: 1

  breed:
    COW:
      money: 10.0
      job-xp: 5
    PIG:
      money: 10.0
      job-xp: 5
    SHEEP:
      money: 8.0
      job-xp: 4
    CHICKEN:
      money: 5.0
      job-xp: 3

Hunter Job

name: "hunter"
display-name: "&c&lHunter"

description:
  - "&7Track and defeat monsters"
  - "&7to protect the realm!"

max-level: 100
income-multiplier: 0.025

icon:
  material: DIAMOND_SWORD
  name: "&c&lHunter"
  lore:
    - "&7Level: &e%job_level%"
    - "&7Kills: &e%job_total_actions%"

level-formula:
  base: 150
  multiplier: 1.6

actions:
  kill:
    ZOMBIE:
      money: 5.0
      xp: 5
      job-xp: 2
    SKELETON:
      money: 7.0
      xp: 7
      job-xp: 3
    SPIDER:
      money: 6.0
      xp: 6
      job-xp: 2
    CREEPER:
      money: 10.0
      xp: 10
      job-xp: 5
    ENDERMAN:
      money: 25.0
      xp: 25
      job-xp: 10
    BLAZE:
      money: 30.0
      xp: 30
      job-xp: 12
    WITHER_SKELETON:
      money: 40.0
      xp: 40
      job-xp: 15
    WITCH:
      money: 20.0
      xp: 20
      job-xp: 8
    PHANTOM:
      money: 15.0
      xp: 15
      job-xp: 6
    WARDEN:
      money: 500.0
      xp: 500
      job-xp: 100
    ENDER_DRAGON:
      money: 5000.0
      xp: 5000
      job-xp: 500
    WITHER:
      money: 3000.0
      xp: 3000
      job-xp: 300

Job Restrictions

World Restrictions

Limit jobs to specific worlds:

worlds:
  whitelist:
    - world
    - world_nether
  # OR
  blacklist:
    - world_creative

Region Restrictions

Limit jobs to specific WorldGuard regions:

regions:
  whitelist:
    - mining_area
    - farm_zone

Next Steps

Sur cette page

GroupeZ MCP

La documentation dans ton IA

Le MCP permet à ton IA de chercher dans la documentation GroupeZ et de lire les exemples à jour pour t’aider à configurer tes plugins.

Lecture seule · Sans clé API côté documentation

1. Copie l’adresse du serveur

Transport : HTTP (Streamable HTTP). Authentification : aucune. Ton outil utilise son propre modèle et ses propres limites d’abonnement.

  1. Ouvre Plugins dans ChatGPT sur le web, puis + → Ajouter un serveur MCP personnalisé.
  2. Nomme-le « GroupeZ Documentation », colle l’URL ci-dessus et choisis « Aucune authentification ». Crée puis installe le plugin.
  3. Dans une conversation, tape @ et sélectionne ce plugin avant d’envoyer ta question. Si nécessaire, active search, get_page et list_pages dans ses paramètres.
Guide officiel de cet outil

3. Pose une question

Utilise le MCP GroupeZ pour m’aider à créer un inventaire zMenu. Recherche les pages pertinentes, lis les exemples et cite tes sources.
Autres clients et dépannage

Pour les clients utilisant mcpServers, adapte cet exemple à leur format :

{
  "mcpServers": {
    "groupez-docs": {
      "url": ""
    }
  }
}

Les outils disponibles sont search, get_page et list_pages. Après une mise à jour, actualise les outils du connecteur. Si ton IA n’y accède pas, vérifie que le connecteur est activé dans la conversation et que ton compte autorise les MCP personnalisés. Ouvrir l’URL dans un navigateur n’est pas un test MCP.