MC Toolkit

Guides / Commandes et données

/particle : ce que delta et speed signifient vraiment, et l'astuce count=0

Les quatre nombres après la position ne sont pas une direction. Voici ce que font delta et speed, pourquoi count=0 se comporte complètement différemment, et comment diriger une particule.

/particle flame ~ ~1 ~ 0.5 0.5 0.5 0.01 20
                      └─ delta ─┘  spd  count

Ces quatre nombres sont la partie la plus mal comprise de la commande.

delta est une dispersion, pas une direction

dx dy dz décrivent une dispersion gaussienne autour de la position — à quel point les particules s'éparpillent sur chaque axe. 0.5 0.5 0.5 donne une boule floue ; 2 0 0 donne une ligne le long de X.

Ce n'est pas un vecteur de vitesse. Les valeurs positives et négatives ne changent rien ; -2 0 0 et 2 0 0 produisent la même ligne.

Sauf si count vaut 0

Mettez count à 0 et la signification de chaque nombre précédent change :

countdelta signifiespeed signifie
≥ 1dispersion aléatoiremagnitude de vitesse aléatoire
0un vecteur de directionla vitesse le long de celui-ci
/particle flame ~ ~1 ~ 0 1 0 0.5 0    →  one particle shot straight up at 0.5

C'est la seule façon de diriger une particule. Toutes les réponses à « comment faire un rayon » finissent ici. Le coût est d'une particule par commande, donc un rayon est une boucle ou une chaîne.

speed n'est pas toujours une vitesse

Pour la plupart des particules, speed est un multiplicateur de vitesse. Pour quelques-unes, il est entièrement détourné :

  • dust — la taille est un paramètre, et speed ne fait rien
  • note — la vitesse en x choisit la couleur : avec count 0, c'est le delta x multiplié par speed, et 0 à 1 fait un tour complet du cercle chromatique (un bloc musical envoie la hauteur ÷ 24). Avec un count plus élevé, la couleur est aléatoire
  • entity_effect — la couleur provient de l'argument alpha-RGB

Donc /particle note ~ ~1 ~ 0.5 0 0 1 0 n'est pas une particule rapide — le 0.5 et le speed 1 ensemble lui donnent une couleur différente.

Les particules avec leurs propres arguments

/particle dust{color:[1.0,0.0,0.0],scale:1} ~ ~ ~ 0 0 0 0 1
/particle block{block_state:"minecraft:stone"} ~ ~ ~ 0.3 0.3 0.3 0 10
/particle dust_color_transition{from_color:[1,0,0],to_color:[0,0,1],scale:1} ~ ~ ~ 0 0 0 0 1

Le bloc d'arguments se place immédiatement après le nom de la particule, avant les coordonnées. Le mettre à la fin est l'erreur de syntaxe habituelle.

force et le spectateur

La commande se termine par un mode et un joueur facultatifs :

/particle flame ~ ~ ~ 0 0 0 0 1 force @a

normal respecte le réglage de particules de chaque client et une limite de visibilité de 32 blocs. force affiche la particule quoi qu'il arrive et jusqu'à 512 blocs. Pour tout ce qu'un joueur doit voir — une annonce de boss, un marqueur de quête — force est indispensable, et c'est pourquoi vos particules fonctionnent pour vous et pas pour quelqu'un ayant réduit les particules.

Performances

Les particules sont du rendu côté client, donc le coût retombe sur les joueurs, pas sur le serveur. Un count de 200 par tick par joueur fera chuter la fréquence d'images sur du matériel modeste, même si les TPS du serveur restent intacts. Répartissez les émissions sur plusieurs ticks plutôt que d'envoyer un seul count énorme.

Parcourez tous les types de particules et plus de 1 900 ids de sons avec des commandes prêtes à l'emploi dans la Galerie de particules et de sons.

Galerie de particules et de sons →

Plus de guides

Tout voir →