MyHorse
MyHorse let's your players have more control over their horses!
Simple, easy and lightweight.
- Name your horse
- Protect it from stealing & inventory theft
- Protect it from dying (Owned horses are invulnerable)
- Protect it from being unleashed by others
- Simple transfer of ownership of horses (great for buying/selling!)
- Put your horse for sale (Right-click to buy it)
- Keep a list of your owned horses
- Teleport to your owned horses
- Teleport your owned horses to you
- Option to allow putting a chest on any type of horse
Select your horse
Simply mount your horse to select it as your currently selected horse.
By default, only the owner can mount his horse.
Naming
To name your selected horse simply use the command:
/myhorse name <horsename>
When your horse has a name, it is only ridable by you
Anti Theft
After taming your horse, the horse is "locked" and can only be used and accessed by its owner. To allow others to use your horse, use the commands:
/myhorse lock /myhorse unlock
Come here!
After selecting your horse, you can summon it to you with the command:
/myhorse comehere
My horses?
See a list of your owned horses with the command:
/myhorse list
How cool is my horse?
Check out the info about your selected horse with the command:
/myhorse info
Goto my horse!
After seeing the list of your horses, you can goto any of them with command:
/myhorse goto <id>
Note that this command is disabled in config.yml by default
Set a new owner for your horse
After selecting your horse, you can set a new owner for it with the command:
/myhorse setowner <ownername>
Go away!
Set your selected horse free with the command:
/myhorse goaway
Sell that horse
Set your selected horse for sale with the command:
/myhorse sell <price>
Any player with the myhorse.buy permission node can now right-click to buy the horse.
(Note that Vault is required for this feature)
Spawn a horse
Admin can spawn any type of horse with the command:
/myhorse spawn <normal|mule|undead|skeleton> <baby>
Multiple Worlds
Set the worlds you wish to enable MyHorse in the config.yml file:
Worlds: - world - world_nether - world_the_end
Damage Types
Configure the types of damage which owned horses should be protected from in the config.yml file:
DamageProtection: - PROJECTILE - POISON - MELTING - MAGIC - CUSTOM - DROWNING - FIRE - FIRE_TICK - ENTITY_ATTACK - BLOCK_EXPLOSION - ENTITY_EXPLOSION - LIGHTNING - LAVA
All valid damage types and their descriptions can be found here
Permission Groups
You can set certain values for MyHorse for your groups in the config.yml file:
default: HorseNameColor: WHITE MaximumHorses: 3 Member: HorseNameColor: GOLD MaximumHorses: 10
All valid colors can be found here
Note that MyHorse will automatically detect your permission groups and write default settings in your config.yml.
Text
Not happy with the text of the plugin?
Just change the file /lang/english.yml to whatever you want!
Note that MyHorse auto-downloads the language file from my server at www.doggycraft.dk.
This can be disabled by using the DownloadLanguageFile setting in the config.yml.
Installation
Put the MyHorse.jar file in your /plugins folder and you are ready to go!
Commands
| Command | Description |
|---|---|
| myhorse | Show the basic info |
| myhorse name | Gives your selected horse a name |
| myhorse comehere | Teleports your selected horse to you |
| myhorse goaway | Sets your selecte horse free |
| myhorse list | Lists all your owned horses |
| myhorse goto <id> | Teleports to a specific horse from the list |
| myhorse setowner <playername> | Sets a new owner for your selected horse |
| myhorse addfriend <playername> | Adds a friend for your selected horse |
| myhorse removefriend <playername> | Removes a friend for your selected horse |
| myhorse kill | Kills your selected horse |
| myhorse reload | Reloads configuration from disk |
| myhorse sell <amount> | Sets your selected horse for sale |
| myhorse claim | Claims the horse you have mounted |
| myhorse select <id> | Selects a horse from your list |
| myhorse spawn <horsetype> <baby> | Spawn a horse of a specific type |
Permission Nodes
- myhorse.* - Player can do everything below
- myhorse.list - Player can see a list of his owned horses
- myhorse.goto - Player can teleport to his owned horses
- myhorse.comehere - Player can teleport his selected horse to himself
- myhorse.lock - Player can lock his horse
- myhorse.unlock - Player can unlock his horse
- myhorse.name - Player can name his horse
- myhorse.setowner - Player can set new owner for his horse
- myhorse.addfriend - Player can add friends for his horse
- myhorse.removefriend - Player can remove friends for his horse
- myhorse.info - Player can display info about his horse
- myhorse.buy - Player can buy horses
- myhorse.sell - Player can sell horses
- myhorse.goaway - Player can set his selected horse free
- myhorse.kill - Player can kill his selected horse
- myhorse.claim - Player can claim un-owned horses
- myhorse.select - Player can select a horse from his list of owned horses
- myhorse.help - Player can see the help page
- myhorse.bypass.mount - Player can bypass mount protection
- myhorse.bypass.leash - Player can bypass leash protection
- myhorse.bypass.inventory - Player can bypass inventory protection
- myhorse.admin - Player can operate on a horse owned by any player
- myhorse.spawn - Player can spawn horses
- myhorse.updates - Player gets notifications about updates to MyHorse
Configuration
| Setting | Description | Default Value |
|---|---|---|
| Settings.ServerName | Name of the server | "Your Server" |
| Settings.Worlds | List of worlds in which MyHorse is enabled | <list of world names> |
| Settings.DamageProtection | What types of damage are horses protected from? | <list> |
| Settings.AllowChestsOnAllHorses | Players are able to put a chest on any type of horse | false |
| Settings.DownloadLanguageFile | Should MyHorse auto-download language file? | true |
| Settings.MetricsOptOut | Do not send metrics to mcstats.org | false |
| Settings.DisplayUpdateNotifications | Show notifications about new updates to MyHorse | true |
Disclaimers
This plugin contacts curse.com and checks for newer versions by using the Curse ServerMOD API.
Opting out of this service can be done by editing config.yml and changing DisplayUpdateNotifications to false.
This plugin utilises Hidendra's plugin metrics system, which means that the following information is collected and sent to mcstats.org:
A unique identifier
The server's version of Java
Whether the server is in offline or online mode
The plugin's version
The server's version
The OS version/name and architecture
The core count for the CPU
The number of players online
The Metrics version
Opting out of this service can be done by editing config.yml and changing MetricsOptOut to true.
Want to contribute? MyHorse is open source!
Check out the official repository on github
-
View User Profile
-
Send Message
Posted Aug 6, 2013Permissions seem to be ignored on my server for basic things. Players can teleport to their horse, change the name and all sorts of things without giving them the proper permissions.
-
View User Profile
-
Send Message
Posted Aug 5, 2013hi is there a plugin like LWC so i can lock horse's becous i have tried myhorse but it is not the best plugin
-
View User Profile
-
Send Message
Posted Aug 4, 2013-
View User Profile
-
Send Message
Posted Aug 4, 2013So what are all the color options for the horse names? Is it just WHITE & GOLD? I tried a few other basic colors and it blew up at me.
-
View User Profile
-
Send Message
Posted Aug 4, 2013@DoggyOnFire
Thank you for teaching an answer kindly!
-
View User Profile
-
Send Message
Posted Aug 4, 2013@DoggyOnFire
Are you going to consider implementing any of my other ideas, such as an LWC-styled protection system?
If you want, I can submit a ticket for you.
-
View User Profile
-
Send Message
Posted Aug 4, 2013@Author11
Yes, just add these to the DamageProtection list:
-
View User Profile
-
Send Message
Posted Aug 4, 2013@DoggyOnFire
Thank you for the answer.
However, can the damage which is not written to the configuration file be prevented?
For example, they are a fall damage and a damage which touches a cactus. I am using the configuration file in the default state.
-
View User Profile
-
Send Message
Posted Aug 4, 2013@Author11
Just all types of damage protection from the list. Then your horse is perfectly protected.
-
View User Profile
-
Send Message
Posted Aug 4, 2013I have an excellent horse. I do not want him to die. Are you planning perfect protection?
-
View User Profile
-
Send Message
Posted Aug 4, 2013Awesome idea!
-
View User Profile
-
Send Message
Posted Aug 4, 20131.Commands not working. 2. Claim not responding Help me please
-
View User Profile
-
Send Message
Posted Aug 4, 2013Keep the feedback coming!
Here is the latest version
-
View User Profile
-
Send Message
Posted Aug 3, 2013Keep going :D
-
View User Profile
-
Send Message
Posted Aug 3, 2013Forgot to mention this, but I really don't like the idea of all owned horses being invulnerable. Too many plugins have this, and this is clearly overpowered. It would be better if "horse invulnerability" were a flag that you could apply to certain horses and not others, allowing for much greater flexibility. You could even break this flag down into multiple "sub-flags" to make "horse invulnerability" more specific, such as being invulnerable only to a certain damage type (like lava or firetick or player-caused), which means even more flexibility.
@spathizilla
Actually, I meant both "addfriend/removefriend" and "addowner/removeowner". I forgot about the "friend" part. The difference between the two would be that every owner has equal permissions to do what they want with the horse (set it free, kill it, tp to it, etc.), whereas a "friend" only has the ability to ride it. Thanks for reminding me.
-
View User Profile
-
Send Message
Posted Aug 3, 2013@CommodoreAlpha
You mean like:
/myhorse addfriend
/myhorse removefriend
-
View User Profile
-
Send Message
Posted Aug 3, 2013You should take a more "LWC" approach to locking horses. For example, having "public" horses, or horses that anyone can ride but no one can own, would be great. Or being able to "share" horses, via commands like "addowner/removeowner" instead of just "setowner" would also be great.
And of course, it would be nice if protected horses had their leads (if they're connected to one) protected in the same exact fashion as the horse is protected. So if a horse is only owned by "Steve", only Steve can break that horse's lead. If a horse is owned by "Steve" and "Joe", both players can break that horse's lead. And so on.
A "/myhorse stay" command would be really, really helpful (it would have the same effect as right clicking a tamed wolf). I know that leads and fenceposts can achieve this purpose, but let's face it, we don't always remember to bring a lead and a fencepost.
"/myhorse list" should also list each horse's coordinates. Or you could add in a "/myhorse whereis <id>".
The ability to have your horse teleport with you, when you use another plugin to teleport yourself elsewhere. This would be really handy to have.
And if you want, I can put all this into a ticket for you.
-
View User Profile
-
Send Message
Posted Aug 3, 2013In the config if you have a world which is loaded AFTER the MyHorse plugin (for whatever reason), the plugin will throw an NPE:
This will make the plugin stop working ingame completely. The only way to get it working again is to remove the worlds loaded after the plugin from the config. Obviously this sucks.
In my case I use Multiverse to load the extra worlds and that is loaded after MyHorse. When MyHorse tries to get the uid for the world it is given an error by Bukkit.
The possible fix is to put this in plugin.yml:
-
View User Profile
-
Send Message
Posted Aug 3, 2013Most items in the change log for 0.1.0 haven't been changed:
I'm also getting this error: [MyHorse v0.1.0] Could not get horse name color from player group in config.yml!
-
View User Profile
-
Send Message
Posted Aug 3, 2013If someone does ./killall will it kill the horse?