uHome
uHome - The Ultimate Multi-Home Plugin
Is teleporting to your homes making you suffocate? Having trouble getting in and out of minecarts? Update to v1.5.3 and set loadChunks: true in your uHome config.yml!
Introduction
uHome is a fork of the wonderful MyHome plugin by tkelly and spathizilla, modified to provide multiple homes to players that are simple to use and easy for server operators to control. Developed for use on my server, Ultimate Minecraft, some features have been removed that were previously available in MyHome, namely publicizing of homes and economy support, which were removed as they were not needed on the server. Currently, economy support is implemented in v1.5a and above, and will be available in release versions shortly.
Version Support
uHome 1.5.3 is known to be compatible with all releases of CraftBukkit 1.4.7.
Feature Summary
- Creation of multiple private homes (warps) for each player.
- Bukkit SuperPerms support, including permissions variables.
- Works out of the box without config changes and no permissions plugin necessary
- Home creation limit, with support for different levels through permissions nodes.
- Command cool-downs and warm-ups, also variable according to permissions nodes.
- MySQL and SQLite support.
- Simple default home support - players can use /sethome and /home, without parameters, to warp to a default named home.
- Importing of homes from MyHome.
- Inviting of players to homes.
- Locale Support - customise uHome to talk your language, or fit your server's theme.
- Multi-world support, you decide if players can move between worlds with their homes.
- Auto completion of home names when warping.
- All commands work with online and offline players, case insensitively.
- Use Minecraft's vanilla command blocks with uHome to make teleporters in your world!
Installation & Setup
Simply download and place the uHome.jar into your plugins folder in your Bukkit directory. A configuration file is generated when running the plugin for the first time, which contains many options to adjust the behaviour of the plugin to your needs. Hopefully, the defaults provided should prove a good basis for most users. Easy permissions setup is possible by giving your players 'uhome.own' and your admins 'uhome.admin'. A 'uhome.all' node is provided that will also give the group/player no limits in addition to the player and admin command rights. If you're not a user of permissions, uHome allows all players to do basic actions by default, while giving ops full access.
For information on setting up permissions based (per group) limits, see the section entitled "Other Permissions" below.
For more configuration information, check out the Configuration page.
Need Help?
If you have any queries, you can use the comments section below and I should reply fairly quickly, as I check this page almost daily. If you'd like live support, you can ask me in IRC, either in #bukkit or #uhome under the username 'ks'. If you come across bugs, or have a feature request, create a ticket using the "Tickets" tab at the top of the page.
Live Support: irc.esper.net #uhome (May not be online, sorry!)
Commands & Permissions
Basic Commands: /home - (uhome.own.warp) - Takes you to your "home" home. /home set - (uhome.own.set) - Sets your "home" home to your current position. /home delete - (uhome.own.delete) - Deletes your home "home". /home help - Display help Multihome Commands: /home <name> - (uhome.own.warp) - Takes you to your home with the name <name>. /home list - (uhome.own.list) - Displays the homes you own. /home set <name> - (uhome.own.set) - Sets a home called <name> to your current position. /home delete <name> - (uhome.own.delete) - Deletes your home named <name>. /home limit - (uhome.own.set) - Displays the number of homes you can set. /home warp <name> - (uhome.own.warp) - Takes you to your home with the name <name>, avoiding conflicts with other commands. Invite Commands: /home invite <player> <name> - (uhome.own.invite) - Allows <player> to warp to your home called <name>. /home uninvite <player> <name> - (uhome.own.uninvite) - Removes <player> from <name>'s invited players list. /home invites [page] - (uhome.own.listinvites) - Displays the homes that you have been invited to. /home requests [page] - (uhome.own.listinvites) - Displays the players that you have invited to your homes. /home lock <name> - (uhome.own.unlock) - Locks a home, so that only those invited can warp to it. (Default behaviour.) /home unlock <name> - (uhome.own.unlock) - Unlocks a home, so that anybody who knows the name of the home may warp to it. Admin Commands: /home <player> - (uhome.admin.warp) - Warps to a player's default home (provided you have no homes with similar names). /home list <player> - (uhome.admin.list) - Lists a player's homes. /home delete <player> <name> - (uhome.admin.delete) - Delete's a player's home. /home reload - (uhome.admin.reload) - Reload uHome's configuration - Do not use this for swapping to MySQL /home <player> <name> - (uhome.admin.warp) - Takes you to the home of <player> called <name>. /home set <player> <name> - (uhome.admin.set) - Sets another player's home to your location. /home limit <player> - (uhome.admin.list) - Displays the maximum number of homes <player> can set. /home invites <player> - (uhome.admin.listinvites) - Displays the invites <player> has received. /home requests <player> - (uhome.admin.listinvites) - Displays the invites <player> has sent. /home info <player> <name> - (uhome.admin.info) - Displays information on the given home, including it's co-ordinates. /home debug - **(Console Only)** - Toggles debug logging to investigate permissions errors. Can create a lot of messages. /home <player> <owner> <name> (uhome.admin.send and uhome.admin.warp) - Sends the given player to another player's home. Can be used from the console, and from command blocks!
Other Permissions
Variable Permissions: (uhome.limit.[a-e]) - Gives the player the home limit reflected by the config. E.g. if limitB=10, and the player has the permission "uhome.limit.b", the player can make up to 10 homes. (uhome.cooldown.[a-e]) - Gives the player the cooldown time reflected by the config, as above. (uhome.warmup.[a-e]) - Gives the player the warmup time reflected by the config, as above. Bypassing Timers/Limits Permisions: (uhome.bypass) - Bypass all limits (cooldowns, warmups, bed usage and home limit) (uhome.bypass.cooldown) - Permission to bypass /home cooldowns (uhome.bypass.warmup) - Permission to bypass /home warmup (uhome.bypass.warmup.damage) - Permission to ignore damage when warming-up (uhome.bypass.warmup.movement) - Permission to ignore movement when warming-up (uhome.bypass.bed) - Permission to use /sethome when bed usage is forced. (uhome.crossworld) - Allows a player to move between worlds with homes. Admin Permissions: (uhome.all) - Has access to all commands in uHome (uhome.admin.reload) - Is able to reload uHome config.
Limits Explained
Limits and variable permissions are powerful and actually very simple to use. However, they may seem confusing at first, so for information on how to use them visit the Configuration page.
Importing From Other Plugins
uHome v1.5a and above support importing homes from both CommandBook and MyHome. For information on how to do this, please read the page Importing From Other Plugins. Would you like to see import support from other home plugins? Create a ticket!
Current Usage Stats
Stats provided from v1.5 and above only!
Credits
A huge thankyou to the original authors - tkelly and spathizilla, for their work on the base plugin. :)
Thanks to CubeNation for adding economy implementation via Vault.
Thanks to linkinkov & Schmarotzer for the Russian translation.
Another thanks to those users who consistently send good feedback, bug reports and feature requests. You know who you are!
Source code available on GitHub, feel free to fork, butcher and re-release to your liking. https:github.com/ks07/uHome
Want to see it in action? Visit Ultimate Minecraft
@ks07
I ended up fixing it somehow, can't remember how lol.
Sorry about that forgot that
Was wondering is there a way or could you add a way when a user is in a particular world when they die they go to the worlds spawn rather than there home....
(I have disabled uhome for the world but they go to their old world home) But I want them to still use home teles for other worlds such as end and nether.
@erdrickk
No ETA right now, bogged down with other commitments and I don't want to release a version of 1.5 calling it stable and then finding it has 99 problems (no female dogs included).
Sometime in the next week I'll upload the latest version as a beta, although I have a few more bugs that need to be ironed out.
any ETA on the next update? it's been a while. Don't take that as a Slam, I love what you are doing here, I am just really excited.
@josip1
Hey josip1, could you pastebin the entire error message(s) you are getting in the console when the delete command fails? Also, I need to know what version you are using.
A world I had was deleted...on purpose and now any homes on it are bugged how can I fix this? When anyone trys to delete the home even with admin command internal error occers.
Apologies, Using your latest jar and latest RB bukkit.
@chaseoes
Odd. Have you tried enabling the debug log and checking what is failing? If the permission check shows as true, and it's not working, then it's something wrong my end. If it shows as false, then for whatever reason op is interfering.
@Brock_Blocking: Maybe I missed a message. (You didn't say what version you're using!) Created a ticket and will look into it soon.
@ks07
I'm using uHome v1.5a.4. I'm using PermissionsBukkit and as far as I know does not deal with OP's. It's easily tested too - if I leave myself in my admins group (full permissions and all the correct uHome nodes), and /deop myself, I can correctly set a home and teleport to it. As soon as I OP myself again, when attempting to use /home or /home set, nothing happens at all (no messages at all in the chat).
I'll play around with some different things though, thanks.
Hmm, There's no confirm pop up when first making the home. It's confusing some people on the server. Would be nice to have a confirm sent to chat window.
@erdrickk
The very latest jar is available at http:www.ultimateminecraft.net/dev/uHome.jar. I forget if I fixed the last import error yet or not, it's been a while since I worked on it, so please excuse me if it still doesn't work. (./end excuses)
@ks07
Any ETA on the new .Jar ? I would love to help test it out for you. I am dying to get rid of Myhome lol
@chaseoes
Do you have default permissions set to true in the config? (If using the new development versions.) Otherwise, check your permissions plugin settings, some of them override defaults/op, so an op'd player will be treated the same as a normal player.
You can also try using the debug log setting in the config to show all permissions checks in the console. Then you can more easily see what permissions nodes aren't setup as expected.
@erdrickk
In theory yes, but currently it will cause errors and fail due to changes I missed when updating the table schema. These should be fixed, but I haven't released a new jar to try.
fast question with uHome v1.5a.4
so going from MyHome using MySQL to uHome MySQL - is it possible now just to set the uHome database to the same info of the MyHhome database and have it auto convert or do I still need to manually edit the tables?
Why can't OP's use /home or /home set?
@Puremin0rez
Not currently. There's a ticket open for it already, if you'd like to have a gander.
Is there a way to disable multiple home support so I can do partial player names like I was able to in MyHome?
@Puremin0rez
Ah right, I think I know what the issue is there. Will attempt a fix later today.
@ks07
I tried what you told me to do, I can get uHome working perfectly fine when doing a fresh MySQL install HOWEVER doing an upgrade the way you told me gave me this... It appears as if it's not creating the table when it converts?
http://pastie.org/private/syrv8avjfuytobhj4f7w
@Puremin0rez Hey Puremin0rez,
This should be possible already, although it is a little tricky as it will be converted on first run only. Steps are as follows:
If you come across any problems while doing this, post any errors you receive here. Don't forget to backup your database before doing any of the above!