Configuration
Le fichier de configuration de VoxelBench se trouve dans `plugins/VoxelBench/config.yml`. Après modification, utilisez `/bench reload` pour appliquer les changements sans redémarrer.
Langue
language:
default: en_US # Langue par défaut (en_US, fr_FR)
force: false # Forcer la langue pour tous les joueurs
- Quand
force: false(par défaut), VoxelBench détecte automatiquement la langue du client Minecraft de chaque joueur - Quand
force: true, tous les joueurs voient les messages dans la languedefault - Langues supportées :
en_US(Anglais),fr_FR(Français)
Mode de fonctionnement
mode: anonymous # anonymous ou authenticated
| Mode | Description |
|---|---|
anonymous | Pas de compte requis. Rapports temporaires (30 jours de rétention sur le site) |
authenticated | Lié à un compte VoxelBench. Historique illimité et fonctionnalités complètes |
Utilisez /bench link pour passer en mode authentifié. Voir Liaison de compte.
Notifications
notifications:
sounds:
enabled: true # Jouer des sons à la fin des tests/benchmarks
Anonymisation
Contrôle les données incluses lors de l'envoi des rapports à voxelbench.com.
anonymous:
anonymization-level: PARTIAL # NONE, PARTIAL ou FULL
| Niveau | Adresses IP | MAC/Disque | Plugins | Modèles de disque |
|---|---|---|---|---|
| NONE | Complètes | Complets | Liste complète | Noms complets |
| PARTIAL (recommandé) | Masquées (192.168.xxx.xxx) | Hash SHA-256 | Liste complète | Noms complets |
| FULL | Masquées | Hash SHA-256 | Nombre uniquement | Type générique |
Tous les niveaux envoient toujours : nom du CPU, quantité de RAM, version Java, nom de l'OS, et toutes les métriques de benchmark.
Voir Confidentialité et sécurité pour plus de détails.
Rate Limiting
rate-limiting:
local-cooldown-minutes: 30 # Minutes entre les benchmarks
Empêche de lancer des benchmarks trop fréquemment. Les joueurs avec la permission voxelbench.start.force peuvent ignorer ce cooldown.
Mode de benchmark
benchmark-mode: standard # standard ou custom
| Mode | Description |
|---|---|
| standard (défaut) | Paramètres fixes pour une comparaison équitable entre serveurs |
| custom | Paramètres de test configurables (voir ci-dessous) |
Paramètres de test personnalisés
Ces valeurs ne sont utilisées que lorsque benchmark-mode: custom :
tests:
single-core:
duration-seconds: 10
entities-per-spawn: 10
multi-core:
threads: 100
iterations: 100000
disk:
threads: 4
queue-depth: 8
file-size-mb: 512
memory:
size-mb: 512
iterations: 75000
runs: 3
network:
test-servers:
- "ping.online.net"
- "8.8.8.8"
benchmark-tests:
chunk-loading:
chunks-to-load: 200
radius: 16
mob-spawn:
mob-count: 300
duration-seconds: 30
hopper:
hopper-chain-length: 50
items: 1000
parallel-lines: 1
explosion:
tnt-count: 30
mob-pathfinding:
mob-count: 100
duration-seconds: 30
redstone:
circuit-count: 50
duration-seconds: 30
block-physics:
block-count: 200
duration-seconds: 20
dispersed-zones:
default: 1
Confirmation
confirmation:
require-confirmation: true # Exiger /bench confirm avant les benchmarks
Lorsqu'activé, lancer /bench start demandera une confirmation avant de commencer. Cela évite les lancements accidentels.
Journalisation
logging:
test-verbosity: NORMAL # MINIMAL, NORMAL, VERBOSE, DEBUG
log-test-results: true # Afficher le résumé de chaque test
log-benchmark-progress: true # Afficher quel test est en cours
| Niveau | Sortie |
|---|---|
| MINIMAL | Erreurs et avertissements critiques uniquement |
| NORMAL (défaut) | Début/fin des tests, événements importants |
| VERBOSE | Progression détaillée de chaque étape |
| DEBUG | État interne complet (pour le dépannage) |
Monitoring
Voir Monitoring pour la référence complète de la configuration du monitoring.
monitor:
web-port: 8080
bind-address: "0.0.0.0"
https:
enabled: false
port: 8443
auto-start:
web-server: false
push-service: false
boss-bars: false
dashboard:
enabled: true
auth:
enabled: false
username: "admin"
whitelist:
enabled: false
push:
enabled: false
url: ""
interval-seconds: 1
Rapports
reports:
enabled: true
folder: "reports"
backend:
unit-tests: false # Envoyer les tests unitaires au backend (nécessite /bench link)
retention:
max-age-days: 90 # Supprimer les rapports de plus de 90 jours
max-per-type: 100 # Maximum par type
max-total: 500 # Maximum total
cleanup-on-startup: true
storage:
unit-tests: true
benchmarks: true
stresslimit: true
auto-show-report: true # Afficher automatiquement le rapport après un test
Intégrations
Voir Intégrations pour la référence complète de la configuration des intégrations.
integrations:
dynmap:
enabled: true
spark:
enabled: true
discordsrv:
enabled: true
channel-id: ""
Réglages du monde de benchmark
benchmark:
# Si défini, chaque benchmark utilise exactement ce monde. Le monde
# doit avoir été créé via /bench world create (le préfixe voxelbench_
# est imposé). Laissez vide / commenté pour utiliser la stratégie
# auto-temp ci-dessous.
target-world: ""
# Quand target-world est vide, chaque run crée un monde plat jetable
# nommé voxelbench_temp_<timestamp>, puis le supprime à la fin.
# Mettre à false pour interdire le démarrage sans monde épinglé —
# utile sur des hébergeurs où la création de monde est coûteuse
# (régions pré-générées, mondes pilotés par datapack, etc.).
auto-temp-world: true
Les deux réglages interagissent :
target-worlddéfini → ce monde est toujours utilisé.auto-temp-worldest ignoré.target-worldvide +auto-temp-world: true→ un monde frais à chaque run.target-worldvide +auto-temp-world: false→ les benchmarks refusent de démarrer tant qu'aucun monde n'est épinglé.
Vous pouvez gérer le monde épinglé en jeu via /bench world set /
unset (voir Commandes). Le fichier config reste la
source de vérité au redémarrage.
Dossier des profils personnalisés
VoxelBench analyse plugins/VoxelBench/custom_benchmarks/ à la
recherche de fichiers *.yml à l'activation et lors de
/bench custom reload. Trois profils préconfigurés sont écrits au
premier lancement :
| Fichier | But |
|---|---|
standard.yml | Miroir de /bench start — baseline cloner-puis-ajuster. |
showcase.yml | Run plus long et exhaustif pour démos. |
example.yml | Référence richement commentée. Pas prévu pour être lancé tel quel. |
Voir Profils personnalisés pour le schéma complet.
Compatibilité Java et Minecraft
| Minecraft | Java | Notes |
|---|---|---|
| 1.17 → 1.20.4 | Java 16 minimum, Java 17 recommandé | — |
| 1.20.5 → 1.21.x | Java 21 | Exigence Mojang. |
| 26.1.x | Java 25 LTS | Exigence Mojang. Le plugin compile proprement contre l'API Spigot 26.1 depuis v1.2.1. |