Better Pets features
What counts as a pet
Any animal that has been tamed and has an owner: wolves, cats, parrots, horses, donkeys, mules, llamas, camels, nautiluses, and tamable animals from other mods. Pets show up in your list the first time the server sees them after the mod is installed, so pets you tamed long ago appear as soon as their chunk loads once.
The pet list
/pets (or /pets list) prints one line per pet:
- Number and name. Unnamed pets show their species (Cat, Horse). Hover the name for the species and health.
- Health as current/max, then sitting or on lead when that applies.
- Distance and compass direction from where you stand, like 7 m SE or 5.7 km NW. Pets in another dimension say in the nether. Hover for the exact coordinates; click to copy them.
- Buttons: [find], [call] and [name] run the commands below for that pet. [name] fills in the command and waits for you to type the new name.
Pets far away
The server only knows about animals in loaded chunks. Better Pets remembers each pet's last known spot, health and state, so the list keeps working when you are thousands of blocks away. Those lines end with when the pet was last seen, e.g. (2 h ago). The list is saved with the world, so it survives restarts.
Finding a pet
/pets find <pet> does two things for 30 seconds:
- The pet glows, so you can see it through walls and across the field.
- An arrow and distance appear above your hotbar: Rex ↑→ 23 m. The arrow is relative to where you look (↑ straight ahead, ↑→ ahead and to the right, ↓ behind you). A ▲4 or ▼4 means the pet is that many blocks above or below you.
The arrow stops with Found Rex! once you are next to the pet. A pet in an unloaded chunk cannot glow, so the arrow points to where it was last seen instead.
Calling a pet
/pets call <pet> teleports a pet to a safe spot next to you, the same way a following dog catches up. It works when the pet is in a loaded chunk in your dimension; otherwise you are told where it is so you can go and get it. Calling unhooks the pet from a fence post and from a boat. One call per 30 seconds by default.
Naming a pet
/pets name <pet> <new name> renames it on the spot: no name tag, no anvil, no levels. Unnamed pets go by their list number, so /pets name 2 Luna names the second pet. Names can have spaces and up to 50 characters. A named pet never despawns, same as with a name tag. The pet has to be in a loaded chunk.
Giving a pet away
/pets give <pet> <player> makes another online player the owner. It moves to their list, follows them, and obeys them. Both of you get a message. The pet has to be in a loaded chunk.
Safe from you
Your own attacks no longer hurt your own pets: a stray sword sweep in a fight, an arrow that hits the dog in front of you, a trident thrown into the pack. Other players and mobs can still hurt them as normal. If you do want to hit your own pet, sneak while attacking.
Leads that do not snap
In vanilla, a lead breaks when the animal ends up more than 12 blocks away, which happens all the time with a sprint, an elytra glide or a fall. When you hold the lead of your pet, Better Pets pulls the pet to you once it is 8 blocks away instead, so the lead holds. Leads tied to fence posts, and leads on animals that are not your pets, behave like vanilla.
Death alerts
When a pet dies, you get its exact location in chat (click the coordinates to copy them), on top of vanilla's death message. The pet stays in your list, marked ☠ died; hover it for the cause. [forget] removes it.
Picking a pet in commands
Every <pet> takes either the pet's name or its number from /pets. Names ignore case and can be shortened to a unique start (bis for Biscuit). Put names with spaces in quotes: /pets find "Sir Barks". Tab completion suggests your pets.
Multiplayer and performance
Everything happens on the server, so vanilla clients get every feature, including the clickable buttons. Each player sees only their own pets. The mod looks at loaded animals once a second and saves the pet list every five minutes and on shutdown, to <world>/data/betterpets.json.