HorseHome
Introduction
HorseHome is a simple plugin that allows users teleport horses to a previously set home. Many servers allow players to teleport to homes or to spawn, but what about your horse? HorseHome aims to solve this problem as efficiently as possible, without unnecessarily giving players additional warps/teleports.
Notes
- Before upgrading HorseHome (if you are currently using an earlier version, aka v1.2 and down), delete the whole HorseHome folder to make sure everything works fine. Just for the first time, after that there should be no problems.
- The plugin has been rewritten! I, Lazini, built the plugin from the ground up, so it should work perfectly. Please report any bugs you come across.
- If you want to make sure the horse gets teleported back to its home, have another player at that specific home's location (in order to ensure that the chunk is loaded).
- This plugin may contain (v1.3 and before) an unused, deprecated Metrics class file. It is not used at all and it is just a residue from the plugin's early development. Please ignore it, as it will be deleted in the next updates.
Commands
- /sethorsehome [name] - Sets a home for a horse where the player is located.
- /horsehome [name] - While riding a horse, dismounts the player and sends the horse to the previously set horse home named "home" unless the home has been specified, in which case the horse is sent there.
- /delhorsehome [name] - Used to delete horse homes.
- /horsehomes - Lists all horse homes.
Configuration file
An example of it is this:
HorseHomes:
- admin - 5
- vip - 3
- member - 1
Where the rank is e.g. 'admin' and the max allowed horse homes are respectively 5.
Warning! The spaces between the ranks and the allowed horse homes are required!!
So the permissions would then be:
For an admin: horsehomes.admin
For a vip: horsehomes.vip
For a member: horsehomes.member
General permissions
horsehome.horsehome - Used both for the /horsehome command & the /horsehomes command.
horsehome.sethorsehome - Used for the /sethorsehome command.
horsehome.delhorsehome - Used for the /delhorsehome command.
Known Caveats
- Teleporting horses between worlds is temporarily disabled (v1.0.1 and up)
- If the horse is mounted on something else it won't teleport anywhere.
- Teleporting horses into walls is possible.
TODO List
Multiple horse homes per player (with permissions)Added in v1.1!- Ability to claim horses for one or more players and prevent players from riding/interacting with horses claimed by other players.
- Ability to see the statistics (speed, jump height, & health) of a horse using a command.
- Config option to allow for players teleporting with the horse.
- Config option for optional cool downs between /horsehome uses.
- Config (Permissions?) option to only let players teleport tamed horses.
- If you have any feature requests let me know in the comments!
- Add permissions check before teleporting horses, IE, if user is trying to send horse to a 5th home, make sure user has permission for at least 5 homes.
HorseHome v1.3 fixed the issue that was mentioned by Quavelen
Enjoy!
@Lazini
It seems that HorseHome has ceased functioning for MCL+. Attempting to run one of the commands, simply spits out a red 'Internal server error' message. We're on the latest version of 1.11.2 Spigot, if that helps.
@ViciousCircleMC
I am terribly sorry you had to deal with this issue. I personally have tried to deal with it without any luck. I talked to another developer/friend of mine, and he tried to fix it too. No luck. We have concluded that it is a server side problem. Over the months, I also tried to use some sort of work around but none of what I tried worked.
As it seems, the server doesn't handle entities' teleportation as good as players'. Hence, preparing a chunk for an entity to be teleported there is all done by the server, which leaves me with empty hands.
One work around is to have someone just stand near the place where the horse home is, so that the chunk is loaded, and then teleport the horse there.
Again, I sincerely apologize for this circumstance and I truly hope you now have a clear understanding of the situation.
Regards.
The issue I'm having with this plugin is that if the chunk the horse home is set in is not loaded and you use /horsehome the horse just vanishes never to be seen again. This makes the plugin rather pointless to use.
@fungreenfox
I don't think you'd have to delete any entities, there's an option to repair world files in mcedit, that should fix it. Sounds like you got it working though.
I have a ton of homework to do in the following few weeks, so it may be a while before I get a chance to work on HorseHome. I'm sorry about this, but school comes first. If anyone knows how to fix this issue please let me know, it will speed things up a lot if I know exactly what to do.
@MechaTech84
So i have to delete what types of entities? I have removed some horses wich is conserned this, but no luck. I have used multiverse /mv purge all all, (last "all" will purge from all worlds). It seems to have done the trick. No errors since the purge.
@fungreenfox
I've started trying to fix the problem, but I want to test it extensively before I release it and say the issue is resolved, especially since I thought I fixed it last time and it didn't work.
I've done some basic research and it looks like it's a problem is with chunks getting slightly corrupted. You should be able to use mcedit's repair feature to fix the issues, but make sure you make backups just in case.
@MechaTech84
Yes it is, and spamming 20 lines per minute. craftbukkit 164 and HH v. 1.1
Even when plugin is uninstalled, it keeps spamming those two lines.
http://dev.bukkit.org/paste/8716/
The guy who made "echo pet", made same mistake. It took several months before it stopped spamming the console, so i am a bit worried now.
@fungreenfox
Is this happening in the most recent version? I thought I fixed that for v1.1...
I keep getting an error while the horse was actually in place, but the plugin seems trying keeping track of something.
19:52:57 [WARNING] Wrong location for EntityHorse['Foxy'/30477, l='delwinstown', x=2212.00, y=64.00, z=661.00] in world 'delwinstown'!
19:52:57 [WARNING] Entity is at 2212.0,661.0 (chunk 138,41) but was stored in chunk -37,-17
19:53:32 [WARNING] Wrong location for EntityHorse['Foxy'/31966, l='delwinstown', x=2212.00, y=64.00, z=661.00] in world 'delwinstown'!
19:53:32 [WARNING] Entity is at 2212.0,661.0 (chunk 138,41) but was stored in chunk -37,-17
and spamming keeps on and on.
@ExcellentYong
I can add in a config toggle to only allow teleporting tamed horses, that shouldn't be too hard to program.
@baker826
I'll look into it, but honestly it's probably not going to work out. Lots and lots of ways things can go wrong.
Also how about a couple second of wait time while teleporting, during which the horse cannot move or else the teleport will be aborted. This makes it so players can only teleport home tamed horses.
@MechaTech84
ok thanks. keep me updated.
@technolians
The most recent version should do that already, I'll do some tests and see if I can figure out why it didn't.
@MechaTech84
when i loaded the plugin onto the server it created the "config" file but it was empty. although as you have above, it is configurable but doesnt show it automtically and i had to manually input them
@ExcellentYong good idea, but it could also have config for a "cost per use" via vault(default off)
@baker826 love that idea
@MechaTech84
Great, I'll be looking forward to your next release. Won't be using the current version for my server yet, don't want players to get used to unlimited uses :)
maybe you can add a call horse option as to where you can call your horse to your location
@ExcellentYong
Good idea, I'll try to add it in for the next release. I'll make it configurable though.
Any future plans to set cooldown for horse teleport so it doesnt encourage too much laziness from players?