Skip to content

Companions

Companions are purely cosmetic mini-mobs that follow the player. They do not exist in the world: they are shown to nearby players through network packets (via PacketEvents). They cannot be hit, cannot block anything, and do not cost server resources like real entities would.

The default config.yml contains 127 companions split into four rarities:

Rarity Default color Draw weight Bundled companions
Common (commun) #B9C4D0 60 51
Rare (rare) #6FC3FF 28 41
Epic (epique) #C77DFF 10 23
Legendary (legendaire) #FFD84A 2 12

It includes mini versions of most mobs (allay, axolotl, bee, blaze…), babies, 8 jockeys (a mob riding a mount: skeleton rider, strider jockey, ravager captain…) and a mini ender dragon shown as a floating dragon head.

Smooth following

The companion stays behind the player, slightly to the side, with smoothed movement and facing its walking direction. When more than 8 blocks behind, it snaps back instantly.

Flying mobs

Companions marked flotte fly about 1.2 blocks above the ground.

Visibility

It is shown to players in the same world within 48 blocks who can see its owner.

Discretion

It disappears while its owner is dead, in spectator mode or vanished, and comes back afterwards. It also follows teleports and world changes.

A player equips one companion at a time. The choice is stored in the LuckPerms meta compagnon and restored on join.

Players open their companions with /compagnon or the “Companions” tab of the wardrobe. Owned companions are sorted by rarity (highest first) then by name, with their colored rarity in the description. A click equips or puts away the companion; “Remove all” puts away the active one.

config.yml
compagnons:
raretes:
commun: {nom: "Commun", couleur: "#B9C4D0", chance: 60}
rare: {nom: "Rare", couleur: "#6FC3FF", chance: 28}
epique: {nom: "Épique", couleur: "#C77DFF", chance: 10}
legendaire: {nom: "Légendaire", couleur: "#FFD84A", chance: 2}
catalogue:
mini_allay:
nom: "Mini allay"
mob: ALLAY # Minecraft entity type
taille: 0.8 # scale between 0.0625 and 1.0
flotte: true # flies above the ground
rarete: epique
bebe_sur_cochon:
nom: "Bébé zombie sur cochon"
mob: ZOMBIE
bebe: true # baby version of the mob
taille: 0.7
monture: # ridden mob (jockey)
mob: PIG
taille: 0.7
rarete: rare
mini_ender_dragon:
nom: "Mini ender dragon"
objet: DRAGON_HEAD # an item shown instead of a mob
taille: 0.5
flotte: true
rarete: legendaire
Field Required Description
nom no Display name (defaults to the ID)
mob or objet yes, one of them Living entity type, or material shown as an item
taille no Scale from 0.0625 to 1.0 (default 1.0)
bebe no Baby version (mobs that have one)
flotte no Flies above the ground
monture no Sub-section mob, bebe, taille: the jockey’s mount
rarete yes commun, rare, epique or legendaire
/compagnon give <player> <id>
/compagnon give <player> aleatoire
/compagnon give <player> aleatoire:<rarity>
/compagnon remove <player> <id|tous>
  1. aleatoire first draws a rarity using the configured weights (60/28/10/2 by default), then a random companion of that rarity.
  2. aleatoire:<rarity> (for example aleatoire:legendaire) draws directly within the given rarity — handy for crates or vote rewards.
  3. Ownership is the cobaltia.compagnon.<id> permission, added permanently (works offline).
  4. remove … tous removes every companion; if the equipped one is among them, it is put away.

All these sub-commands require cobaltia.compagnon.admin. The player gets a message with the companion name colored by rarity.