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
Is it possible to make it so that you select a horse by looking at it or clicking it? (like we do with LWC)
It's cool that you can name a horse by taming it, but it's not exactly how it's supposed to be. You normally have to get nametags and use those on the horse right? I would like to lock the horse upon taming it, but without setting a name on them. Then I would like to be able to give other players permissions to ride it without using it's inventory if possible, maybe by tying something like /myhorse allow [name of player to allow] then punch or right-click the horse.
Is this possible?
If you can't control who uses the inventory, then I guess we can live with trusting the players to not steal the armor\inventory of the horse :)
Thanks in advance!
Does not work on plotme :( :(
My Suggest
Please make horse can teleport to other world. because we need it :D
Thanks
@DoggyOnFire
Thanks for your fast response! The english.yml is gone, but now I get an internal error when trying to use /myhose.
Serverlog says: "[MyHorse v0.0.7] Could not load english.yml from the /lang folder. 2013-07-26 14:26:05 [INFO] [MyHorse v0.0.7] Will NOT download from DogOnFire. Please place a valid language file in your /lang folder!"
I will download the language file manually now.
EDIT: stupid me, I disabled the downloads from your homepage. Nevermind. :D
@Richardarkless
Good thinking, I will implement a /myhorse <command> <id> for doing commands on a particular horse. currently, bukkit does not seem to have handles for detecting whether a horse is tamed or not or even untaming/taming it :/ But I will find a way.
@m10653
It already exists :P
@Amealthea
If you see a "xxx MISSING" message, just delete the lang/english.yml file and let the plugin re-download it. I am constantly changing and adding to the plugin text.
I have similiar issues to OrionEvermore. Everything I do with this mod is "missing". UseGotoCommand MISSING, SetHorseName MISSING, YouSelectedHorse MISSING ... All commands say this. But they still work perfectly ... What to do? :)
Great plugin however I got a few suggestions
plz ADD a ./myhorse select <id> comand ! and also add args to all of the commands like myhorse come here <id>and or selected if no args are there and the same with owner and all of that stuff plz :) and a my horse locate
@DoggyOnFire
then why is there a return for to faraway?
(ps: bug you need to made your plugin under stand null if you dont put a arg you get photom null named horses also if you name a horse null it derps every thing up
The myhorse.bypass.mount permission node is not working. I have the permission, but cannot get on other peoples' horses.
This is very good!
But I want some function to this.These is mine ideas... How about you?
1 : Horse is can takes a damage and die. But he can rebirth.
2 : I can limit the number to Player, in config file.
You're doing a great job on this plugin DoggyOnFire. Working better and better every time!
Whenever a horse is bought, it says YouBoughtHorse MISSING.
I tried adding it to the lang file, but didn't help. Just throwing that out there if it wasn't mentioned yet.
Is it possible to limit how many horses a player can protect?
What are the default permissions?
@ander23
Players with op can select and kill any horse.
@m10653
It does.
@Bobcat00
Leash protection, yes
Un-leash protection, not yet