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.
@raum
Thanks raum, just fixed it. usePerms made me confused; i thought true on that made it use the perm-plugin, and NOT the config.
@bjornleijdstrom
The item will still SHOW Craftable because the recipe still exists (unless you completely disable them). They will not be allowed to actually craft, however - It will say 'You don't have the knowledge to craft that!' or something of that nature when you try to actually craft the item (pull it out of the craft window).
@dickwick I'll fix that in the release I'm getting ready to upload (1.8.8.4). It should be giving you a 'can't find that horse' error - but because of the null, it's erroring that out first. ;)
Hey, I've tryed to use permissions to disable the ability to craft sadles etc, but no success. Also tryed to disable perms and just use config, but same problem there. all users can still craft every recipes.
What to do?
@raum
It's there, looks like its only happening for old horses
@Tritek
You can find the language.yml in the Stables folder were you install your plugins. I think the Localization Tab on the Bukkit page has been deleted including the translated files. If Raum has a backup from this page you could ask him if the Polish file is still available for you.
@dutchy1001
I have done localization file on bukkit dev... Where is it?
@dickwick
It looks like it's not finding the world the horse is stored in, for some reason ... I see you're using the version that (should have) corrected the SQL issue with the add column - are you able to check your horse database and see if in the xx_horses table, there is a column called 'world'?
People are trying to find their horses in the wilderness, but this keeps poping out in console:
20:08:22 [INFO] Laranto issued server command: /stables find Semik
20:08:22 [SEVERE] null
org.bukkit.command.CommandException: Unhandled exception executing command 'stables' in plugin stables v1.8.8.1
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46)
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:192)
at org.bukkit.craftbukkit.v1_6_R2.CraftServer.dispatchCommand(CraftServer.java:527)
at net.minecraft.server.v1_6_R2.PlayerConnection.handleCommand(PlayerConnection.java:971)
at net.minecraft.server.v1_6_R2.PlayerConnection.chat(PlayerConnection.java:882)
at net.minecraft.server.v1_6_R2.PlayerConnection.a(PlayerConnection.java:829)
at net.minecraft.server.v1_6_R2.Packet3Chat.handle(SourceFile:49)
at org.spigotmc.netty.NettyNetworkManager.b(NettyNetworkManager.java:230)
at net.minecraft.server.v1_6_R2.PlayerConnection.e(PlayerConnection.java:116)
at net.minecraft.server.v1_6_R2.ServerConnection.b(SourceFile:37)
at org.spigotmc.netty.NettyServerConnection.b(NettyServerConnection.java:132)
at net.minecraft.server.v1_6_R2.MinecraftServer.t(MinecraftServer.java:592)
at net.minecraft.server.v1_6_R2.DedicatedServer.t(DedicatedServer.java:239)
at net.minecraft.server.v1_6_R2.MinecraftServer.s(MinecraftServer.java:481)
at net.minecraft.server.v1_6_R2.MinecraftServer.run(MinecraftServer.java:413)
at net.minecraft.server.v1_6_R2.ThreadServerApplication.run(SourceFile:582)
Caused by: java.lang.IllegalArgumentException: Name cannot be null
at org.apache.commons.lang.Validate.notNull(Validate.java:192)
at org.bukkit.craftbukkit.v1_6_R2.CraftServer.getWorld(CraftServer.java:850)
at com.ivalicemud.stables.Stables.getHorseLocation(Stables.java:1641)
at com.ivalicemud.stables.Stables.onCommand(Stables.java:806)
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44)
... 15 more
@Tritek
you need to translate the language.yml to get it in Polish. Unfortunaly I only know dutch and english.
The dutch language.yml is ready for anyone that wants it.
Where can I set language to PL?
@dutchy1001
Yeah, I can't select what languages show on the localization page ... What's there is what Bukkit (well, Curse really) allows to be there .. not sure why they don't let it be customizable. Maybe they do and I just haven't figured it out. :P
If you want to send me a link to the Dutch file - maybe a Google Doc or something - I can add it to one of the pages for quick download to anyone who wants it, and you'd still be able to update it when necessary, should you want. :)
@raum
I thought it would have been added to the Localization page, Dutch never showed up there so I thought it wasnt there .... yet.
If any (Dutch) server owner needs the dutch localization file I'm more than happy to send it.
I have an UK based server so I didn't need the translation, just wanted to help out.
@dutchy1001
Dutch was added in ... I want to say 1.7? Did I forget to put it in the patch notes? :P But yeah .. no longer are specific localization required - which is great, as we won't have to keep pestering people to update the localization lists whenever a new phrase is added - you can do it on your own time! :)
@raum
you still haven't add the dutch Localization
EDIT: With the new language config it's not needed anymore
I changed how Localization works - it will now just create a file of all the phrases that can be edited. I figured that'd be an easy way to do things and won't require updates to add a new language. :)
@Tritek
I'll add it for an upcoming release - Please note: There are several new phrases that will be added soon, and additional translation will be needed. :)
@xxtreepuncherxx
Make a ticket with all of the information requested on the template - I'm not reproducing this in my reset server.
Players dupping horses with the /stables recover command. Is there something i'm doing wrong?
http://paste.punchcraft.us/batofedoyu.coffee
Can you add Polish translate? All 28 phrases is translated.
Hi, sometimes the plugins can't connect to the database (query db error) and I have to /reload to make it works again.