Stables
What does it do?
Stables is a plugin that assists with Horse ownership, protection, and other horse related things. Vanilla has no ownership or tracking of horses, only if it has been broken or not. Stables changes this behavior.
Important MC1.11 Notes!
This new version (1.9.11) MAY NOT WORK WITH OLDER MC VERSIONS! It has ONLY been tested with MC 1.11!
MC 1.11 changed a lot with horses. As of Stables v1.9.11, some changes must be made in order to accommodate Llamas, Donkeys, Mules, Zombie horses and Skeleton Horses. In your config.yml, In the "animals" section, you MUST add these to the "allowed" list. Anything NOT in the allowed list will NOT be covered by Stables! (example: allowed: HORSE, ZOMBIE_HORSE, SKELETON_HORSE, LLAMA, DONKEY)
Again, as far as 1.11 is concerned Mules, Donkeys, Zombie/Skeleton horses are NOT Horses, and must be entered SEPARATELY into the config!
As of right this moment, Llama carpet does NOT save. Testing of this version has been VERY limited. Please report any and all bugs via tickets - Be as specific in your reports as possible!
Another note: v1.9.11 will create a new table in your database for stored/stabled horses, and copy all the values over, converting what needs to be converted. For safety purposes, the old table will NOT be removed. It will just no longer be used. I would suggest NOT deleting it yourself for a bit, in case you need to restore a previous version.
All localization messages are still 'Horse' and 'Steed' specific. New default messages will be added in time. As always, you can edit them yourself in the 'language.yml' file.
Requirements
- To use COST based virtual stables, Vault is required. Free storage does not require any additional plugins.
Current Features
- Protect Horses from configurable outside damages, including PVP, Environmental (falling/lava) and Monsters
- Adds recipes for Horse Armor (Barding), Name Tags and Saddles
- Now has customizable recipes for these items!
- Adds 'ownership' to horses so others cannot steal them - Use a name tag on a horse to claim it!
- Store horses in virtual stables, and recover them!
- Abilities for Admin/Staff to Remove Ownership
- Sets a max amount of horses one player can own
- Anyone with the stables.admin permission can use horses without permission
- Allow a friend to ride a claimed horse
- Lure a horse from the wild using an item (defaults Golden Carrot - Other suggestions would be Emeralds, Golden Apples)
- Horse Spawning, including ZOMBIE and SKELETON horses!
- Teleport, Summon and Locate your claimed Horses!
- Allows staff to rename horses without changing ownership
- UUID storage for databases -
- Uses connections to 'api.mojang.com' and 'sessionserver.mojang.com' if UUID cannot be resolved on the server.
What's in store for new releases?
- Horse Trading
- (NPC) Races
- Horse purchasing (from NPC)
Permissions & Commands
Please see the Permissions & Config Page here.
How does it work?
Name a horse to claim it as your own. Hit it (as the owner) with a new Name Tag (un-renamed) to free it!
- To name a horse, you have to get a NAME TAG. Use the NAME TAG in an ANVIL and change it's name to what you want the horse to be called. Then USE (Right Click) The Horse with the NAMED NAME TAG to name it. This is a VANILLA MINECRAFT feature - it is not included with Stables. This action, however, is what will claim a horse with the Stables plugin.
- You can also set the config to 'AutoOwn = true' - This will automatically claim a horse as soon as it is tamed!
Stables also prevents horses from being killed by players, mobs, environmental, or any combination of these. All options are 100% toggle-able through the config.
Virtual Stables
This feature can be disabled by the admins by setting the 'allowCommand' config option to false, and then just not creating any stable signs.
To create a stable, simply place a sign with [stables] as the first line. Stables will take over from there. If 'allowCommand' is disabled, you can ONLY use the Virtual Stables feature with a sign. Punch the sign, or type /stables store to store a horse. Please note: Storage does *NOT* save chests right now, nor will it save saddles. This is a known bug.
- Please note: The stables does *NOT* save Horse Speed. This is a Minecraft/Bukkit shortfall, and will be addressed as soon as there is a way to do so.
The Config
Please see the Permissions & Config Page here.
Recipes
Stables makes several items craftable - specifically Saddles, Barding (Horse Armor) and Name Tags.
Setting the config option for hard mode recipes will change all ingots/bars to blocks instead.
Localization & Custom Messages
Upon the first run, a file called 'language.yml' will be generated. This will have all the phrases, in English. You may change the phrases to whatever you'd like, or any language you'd like.
Looks great! I'll be running on my server.
@Plumeex
You'd have to test that I guess.
Would it be possible that OP's have the ability to give a horse a name for a player?
if i tp to somewhere far will the horse come too?
@Plumeex
Correct. They would keep all horses currently created, but couldn't add any more. The permission is only checked when the ownership is being added.
Let's suppose a player has the VIP2 permission and protects 30 horses. What will happen if his/her VIP rank expires? He/she'll keep the protected horses?
Thanks. :)
If you can add Norwegian to localization I can do that :)
@Penguinchao
It's already in the config to allow you to disable them. Just change teh 'true' to 'false' (no quotes)
The severals update offer you no respite ! No spam in my server log, just in game i see the protection was not active. Work perfectly with the 1.4e jar, tanks for your Update :)
Would it be at all possible to add the ability to disable the new crafting recipes?
@AudimanBzh
It could be because of the error people were reporting. Are you getting console spam?
Long story short, 1.6.2 changed how one of the functions worked - I didn't catch this when I uploaded the most recent version. Here's a corrected version:
http://dev.bukkit.org/bukkit-plugins/stables/files/14-stables-1-4e/
On my 1.6.2 spigot server, the plugin doesn't work, all horses are free of user and not protected. Everyone have the same problem ?
I'm happy to discover the new feature ;)
If you use a name tag on any pet it thinks it's a horse.
Can you fix that? It's annoying! Also, could you make the admin permissions give infinity mobs?
(I also want protection for cats/dogs, if you want to set that up too, I bet you won't do it, but maybe?)
For the config the "MaxedOwnedVIP1,2,3," could you add more to that (we can?)
(Repost!)
Webman97 u can wait for the developer to fix this ... that's on you... explain that to your users while they wait... developers have other life's and cant always get to fixes stuff..so we do what we can till the come out with a fix...but u wait while I use my ghetto fix..but remember every horse that's gets a nametag doesn't get added to the database.. and each day a users has a chance to lose his horse...now that's ghetto..
hey I downloaded dirtyjoe editor and opened stables.class (take stables.class from the jar) click on the constant pool tab and just search for R1...double click on each one and change to R2.i beleave there was 2 to change ..and hit save.. bukkit changed the name for the folder in their jar so that's what is making the prob... easy fix..
I got this spamming my console. http://pastebin.com/yn3PkygX
@howy7214
I submitted a ticket with the full log here: http://dev.bukkit.org/bukkit-plugins/stables/tickets/9-broken-for-1-6-2/
Getting this error when using 1.6.2
2013-07-09 14:18:49 [SEVERE] Could not pass event EntityDamageByBlockEvent to stables v1.4c
org.bukkit.event.EventException
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427)
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477)
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462)
at net.minecraft.server.v1_6_R2.Entity.z(Entity.java:349)
at net.minecraft.server.v1_6_R2.Entity.x(Entity.java:318)
at net.minecraft.server.v1_6_R2.EntityLiving.x(EntityLiving.java:144)
at net.minecraft.server.v1_6_R2.EntityInsentient.x(EntityInsentient.java:108)
at net.minecraft.server.v1_6_R2.Entity.l_(Entity.java:230)
at net.minecraft.server.v1_6_R2.EntityLiving.l_(EntityLiving.java:1220)
at net.minecraft.server.v1_6_R2.EntityInsentient.l_(EntityInsentient.java:147)
at net.minecraft.server.v1_6_R2.World.entityJoinedWorld(World.java:1354)
at net.minecraft.server.v1_6_R2.World.playerJoinedWorld(World.java:1335)
at net.minecraft.server.v1_6_R2.World.tickEntities(World.java:1223)
at net.minecraft.server.v1_6_R2.WorldServer.tickEntities(WorldServer.java:480)
at net.minecraft.server.v1_6_R2.MinecraftServer.t(MinecraftServer.java:572)
at net.minecraft.server.v1_6_R2.DedicatedServer.t(DedicatedServer.java:226)
at net.minecraft.server.v1_6_R2.MinecraftServer.s(MinecraftServer.java:486)
at net.minecraft.server.v1_6_R2.MinecraftServer.run(MinecraftServer.java:419)
at net.minecraft.server.v1_6_R2.ThreadServerApplication.run(SourceFile:582)
Caused by: java.lang.NoClassDefFoundError org/bukkit/craftbukkit/v1_6_R1/entity/CraftAnimals
at com.ivalicemud.stables.Stables.onEntityDamage(Stables.java:653)
at sun.reflect.GeneratedMethodAccessor28.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425)
... 19 more
@raum Thanks for you help. it seem to work on one of my server for now... and the other, i will have to tyr the /stables removeowner command.
That is not listed in your list of command above.