Aller au contenu

skins.yml

Ce fichier fonctionne comme usernames.yml, mais pour les skins. Les entrées sont regroupées en pools, et default est celui qu’utilise le mot-clé random.

Une entrée s’écrit de deux façons.

skins.yml
skins:
default:
# le skin d'un joueur existant, récupéré chez Mojang
steve_look: Notch
# un couple value / signature venant de mineskin.org
red:
value: "ewogICJ0aW1lc3RhbXAiIDogMTYyMzIxOTY3MTM0MCwK..."
signature: "rLhllNEYguQG0EDxuEkx9J6AO4uwu2wPD0Bz1PA7r4LLtfZoWZ3D..."

Les chaînes value et signature sont bien plus longues que ce qui est montré ici. Copiez-les en entier depuis mineskin.org, et gardez bien les deux : une entrée à laquelle il en manque une est ignorée avec un avertissement.

Utilisez un pseudo quand le skin appartient à un vrai compte, et un couple mineskin pour un skin personnalisé que personne ne porte.

La clé d’une entrée sert de nom. Ceci choisit le skin red à chaque fois, au lieu d’un skin au hasard :

zones.yml
zones:
arene:
disguise:
skin: red

Une valeur qui ne correspond ni à un pool ni à une clé d’entrée est traitée comme un pseudo de joueur et cherchée chez Mojang. skin: Notch fonctionne donc sans rien déclarer.

Pour les entrées données sous forme de pseudo, SomaHider cherche à trois endroits, dans cet ordre :

  1. son propre cache, rempli par les recherches précédentes ;
  2. le joueur lui-même, s’il se trouve connecté à ce moment-là ;
  3. l’API de Mojang, sur un thread séparé.

Le serveur n’attend jamais après Mojang. Pendant qu’une recherche est en cours, le joueur garde le skin qu’il avait déjà, et le nouveau apparaît au rafraîchissement suivant.

Les pseudos présents dans les pools sont cherchés au chargement du plugin et à chaque /sh reload, ils sont donc normalement en cache bien avant le démarrage de votre première zone.

SomaHider lève le pied au lieu de marteler l’API, et note chaque cas une fois dans les logs :

SituationNouvelle tentative après
Le pseudo n’existe pas1 heure
Mojang limite les requêtes du serveur1 minute
Erreur réseau30 secondes

Le pseudo inexistant est le cas le plus fréquent, et il s’agit presque toujours d’une faute de frappe dans ce fichier. Jetez un œil aux logs après avoir ajouté de nouvelles entrées.