HorseStats

HorseStats

21.3k Downloads

banner


Overview

This project is no longer actively maintained.

Features

Stat Display

  • The core purpose of HorseStats is to display a horse's information in your chat window. Simply punch a horse with a lead in your hand to view it's information in your chat window.
  • As of version 5.0, stats also save to the item lore of the lead stack the horse was punched with.
  • The item for the stat display is configurable in the HorseStats configuration file.

HorseStats item stack output

Teleportation

  • HorseStats has horse teleportation capabilities. Punching a horse with an Ender Pearl in your hand will select or deselect that horse for teleporting. After a horse has been selected, you can use the command /htp to teleport the horse.
  • The teleport function Bukkit/Spigot provides does not work if the entity's containing chunk is unloaded.
  • The horse will not "deselect" after one teleport operation, meaning you can chain multiple teleports over long distances. If your teleport fails for some reason however, it will deselect to prevent further problems.
  • The item for teleporting is configurable in the HorseStats configuration file.

HorseStats Internal Permissions

  • HorseStats has a permissions system that manages who has permission to access a player's horses.
  • This is not to be confused with the normal permissions system that a server uses; it is a separate, internal, HorseStats-only system!
  • The command for viewing and managing who has permission to access your horses is /hperm.
  • Permissions are separated into two types: damage and interaction.
  • While permitted players are effectively treated as co-owners, they are not allowed to use /untame or /setowner.

Anarchy Mode

  • Anarchy mode is a configuration setting that will bypass all ownership safeguards.
  • If you are a grief or anarchy server, or you just don't believe in locking down animals, then enabling this will disable the HorseStats Internal Permissions system and make all horses fair game.
  • This will also disable the SQL connection from initiating.

Owner Tracking

  • On occasion the vanilla game or another plugin can create a horse that has the tamed flag set, but no owner assigned.
  • HorseStats can detect and correct this by force untaming these horses so that they can be re-tamed and have a proper owner assigned.
  • This action is triggered when a player punches a horse with the stat display item.
  • Skeleton horses that spawn in from lightning strikes are always flagged as tame without an owner. Because the above behavior would render them un-rideable, the lead user is instead made the owner immediately.

Language Support

  • HorseStats ships with one language pack included for US English, with the file name "en-us.yml".
  • If you would like to translate it for your own use, make a copy of the file and edit it as you wish. Then change the language-pack setting in your configuration to match.
  • Note that using a custom language pack means you must manually update it. HorseStats will automatically update the en-us.yml language pack, but no others.
  • If you would like to submit a language pack to be distributed with HorseStats, contact me via PM here on BukkitDev.

Update Notifier

  • HorseStats uses the Updater provided by Gravity to check for updates. It communicates with Curse to check for newer versions of HorseStats.
  • The update notifier does not automatically download updates.
  • Any players with the HorseStats.plugin-alerts permission will be told that a new version is available upon joining the server.
  • The update notifier can be disabled via the config setting update-checks.

Commands and Permissions


Configuration Settings


Installation

  • If this is your first time, simply download the HorseStats build that matches your server, and drop it in your plugins folder.
  • If you are updating HorseStats, download the new version, delete the old HorseStats jar from your plugins folder, and drop in the new version. Check your server console at startup. If HorseStats says your configuration file or language pack is out of date, you may need to rename your current files so that new ones can generate and you can copy over your old settings.

Data Storage

  • HorseStats utilizes SQL to store data for the HorseStats Internal Permissions system.
  • If you have no idea about SQL, that's perfectly fine! You can run HorseStats out-of-the-box and the SQL will take care of itself.
  • Supported drivers are MySQL and SQLite.

Known Issues and Bugs

  • Teleporting a horse from one world to another at one point corrupted a huge amount of horse data on my test server. I have not been able to reproduce this behavior other than the one time it happened, back in MC 1.6. For safety, teleporting from one world to another is disabled by default in the config, but can be enabled if desired.