HomeSpawnPlus
HomeSpawnPlus (HSP) / SpawnControl: the most advanced Home/Spawn plugin for Bukkit. HSP has flexible events and strategies that you can customize for your unique needs. If you just want dead-simple home/spawn management, HSP can do that too, but you might find some other plugin easier to setup or understand. If you want full control and maximum flexibility to do whatever YOU want and not be limited by just basic /home and /spawn functionality, then HSP might be for you.
HSP's events and strategies, custom commands and integrations with plugins like WorldGuard and Multiverse allow you to completely control every aspect of spawns and homes, so that unique edge or setup you want, chances are good that HSP can do it for you.
Please read the FAQ before posting questions or tickets (especially Essentials users). Also there are Examples.
Versions
- Official releases are on the Files tab of this page
- Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk. Jenkins
HomeSpawnPlus has these Features:
- Multi-world homes (one-home per world, multiple homes per world or even just one global home, your choice)
- Specific control as to what happens on events such as player login, player death, typing /spawn or /home commands using strategies. Should the user always stay on the same world? Spawn at the nearest of multiple spawns (ie. graveyard concept)? Maybe they always go to a specific group spawn on that world (for PvP factions, perhaps)? Your choice.
- Ability to set a one-time new player spawn point
- Cooldowns and warmups Can be set to cancel on movement or damage. Advanced details here.
- Economy support (via Vault) to optionally charge players for commands
- Home limits, definable per-group or per-permission. More documentation.
- Configurable per-world or per-permission for just about every option (events, cooldowns, warmups, costs, homeLimits)
- Define your own custom commands Documentation here
- WorldGuard region-spawn support (allow people to spawn at WG region spawn when inside that WG region)
- Ability to visit homes other people have set, on any world (controlled by Permissions)
- Language localization Also you can customize any message in HSP. Details here.
- Home invites - documentation here
- Set homes by clicking on a bed: read bed-related options documentation.
- Dynmap integration built in, very configurable to meet your own needs
- Persistence choice: Sqlite (default), MySQL or YAML
- Standard YML config.yml: with live reloading in-game (/hsp rc)
- Import home data from other plugins (Essentials 2.9, CommandBook 2.1 and SpawnControl v0.8)
Installation:
- Download HomeSpawnPlus.jar and put it in your Bukkit plugins folder
- Startup Bukkit, HomeSpawnPlus will automatically put the default config.yml into plugins/HomeSpawnPlus/config.yml
- Configure config.yml to your liking, then either '/hsp rc' to live reload the config, or restart your server.
Additional info
This plugin was designed to work with Vault, WEPIF, PEX, Permissions 2.x/3.x, or any Superperms-compatible plugin. Please read more about permissions here.
Under the hood: How HSP works
Examples
Spawn strategy documentation
Advanced Cooldown and Warmup information
User Command Reference
Admin Command Reference
Permissions
Changelog
Source Code
Metrics plugin
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 plugins/Plugin Metrics/config.yml and changing opt-out to true.
Have an issue? Got a new idea?
If you find a bug or have an enhancement request, please create a ticket so I don't lose track of the request or issue in a comment stream. If you have a basic question, feel free to post in the comments here or visit the forums on forums.bukkit.org.
Thanks to @Timberjaw for the awesome work on SpawnControl that gave me a great base to start from!
-
View User Profile
-
Send Message
Posted Feb 23, 2012@fragger505
Yes this is easily possible and no, there are no performance implications to this. The performance implications are if you use a superperms plugin (such as PermissionsBukkit) without a wrapper interface like Vault and you want to use the "groupspawn" feature. Superperms has no concept of groups, so the only way to "ask" superperms what group a person is in is to iterate through every single permission (of possibly hundreds) checking for any node that starts with "group.".
To accomplish what you're looking for, something like:
After this, assigning homeLimits.1 or homeLimits.5 to a user or group will result in the matching limit being applied. Please note that the first one found wins, so if you want a user who has both a ".1" and ".5" permission to have the 5, then you need to list the limit5 first in your config.yml
-
View User Profile
-
Send Message
Posted Feb 23, 2012@Zazeca
This message (with respect to 5.2) is actually a bug that is fixed in the next version (dropbox link in comments below, release soon). The intent of the message was to tell people running on old 4.7x versions that WEPIF was no longer supported on those versions, since the authors of WorldEdit changed the way WEPIF worked between versions. Unfortunately, there was a bug in HSP that results the message printing on release versions (5.1, 5.2) that has since been fixed; your version of WE is plenty current.
Separately, instead of getting snippety with the authors of plugins ("I don't need to be told when to update my other plugins, I am quite capable of browsing all the BukkitDev pages of the plugins ") who spend their free time writing plugins that you enjoy using, I suggest a more productive course of action would be that you learn to code and fix these "irritations" yourself and send a patch. Not only would that fix the issue but it would be a nice way of saying thank you to the authors by contributing back to what they've given you freely.
-
View User Profile
-
Send Message
Posted Feb 23, 2012Why is the plugin saying this when there is not yet a (non-DEV) update for WorldEdit? WE 5.2 is the latest available version that I've found on their BukkitDev page.
It's a great plugin that I've used for some time and will continue using but I don't need to be told when to update my other plugins, I am quite capable of browsing all the BukkitDev pages of the plugins I have installed each night without much hassle.
I don't really see how this message is necessary, please forgive me if it is.
Thanks!
-
View User Profile
-
Send Message
Posted Feb 23, 2012Is it possible to implement home limits via custom permission node?
Example:
homeLimits.1 #Limits the player to 1 home
homeLimits.2 #Limits the player to 2 homes
homeLimits.5 #Limits the player to 5 homes
homeLimits.10 #Limits the player to 10 homes
I believe I read somewhere that the server would have to make too many permission check queries - or something like that~
-
View User Profile
-
Send Message
Posted Feb 23, 2012@dogbig
There is a ticket open for adding MyHome support, but it's only ever been voted down. I think the general consensus is people would rather I spend my time building new features than working on that import.
That said, there are imports from Essentials and SpawnControl which would serve as great examples for someone that wanted to write a MyHome import; the only think you really have to code is the ability to read the MyHome data format to do the import, everything else is already there.
-
View User Profile
-
Send Message
Posted Feb 23, 2012Hi buddy, will it be possible to import data from MyHome? Because MyHome seems to be discontinued and will not work in R5+.
Thanks for response
EDIT: will change to your plugin, because we will wipe our map on 1.2.. :)
-
View User Profile
-
Send Message
Posted Feb 22, 2012@andune
Just tested 1.4.2-dev build against latest dev bukkit, not getting any errors, but when trying to use as non-op player i don't have any permissions. Don't think that is anything to do with hsp though, permissionbukkit is not working seemingly. ?
-
View User Profile
-
Send Message
Posted Feb 22, 2012@andune
In fact, I've gone ahead and bundled it up as 1.4.2-dev for now, you can access it at the Dropbox link. I understand the latest Bukkit dev builds are already breaking the old event model (ie. R5 pre-release), so if a few folks want to test this new version against the latest dev builds and report back here, I will promote it to the release version if it's A-OK.
-
View User Profile
-
Send Message
Posted Feb 22, 2012@thernztrom
The released version (1.4.1), is not R5-ready no. However, I've already made and checked in the necessary changes to the github repository so I will release a new version when needed.
-
View User Profile
-
Send Message
Posted Feb 22, 2012@andune
Is your plugin ready for RB5, aka using the new event system?
-
View User Profile
-
Send Message
Posted Feb 20, 2012Hello,
Your code contains deprecated functions that will be removed in R5 (and as a result, this plugin will be broken).
Major features: Old event system
-
View User Profile
-
Send Message
Posted Feb 19, 2012I KEEP GETTING ERRORS!!!!!!!!
config.yml http://pastebin.com/sUkqxULs
Console: http://pastebin.com/tKCwBgma
NVM. USED DEFAULT CONFIG.YML
-
View User Profile
-
Send Message
Posted Feb 19, 2012@SouthPark16
This means there will be a stack trace in your server.log. Please use pastebin.com to upload the stack trace and put a link here. I can then take a look at the problem and begin to tell you what might be going on.
-
View User Profile
-
Send Message
Posted Feb 19, 2012Hi Well. When i do /setspawn it says an internal error occured
-
View User Profile
-
Send Message
Posted Feb 18, 2012@LEOcab
I haven't tested the Essentials conversion since Essentials 2.3. It's entirely possible/likely the format has changed since then. I used to be an Essentials user long ago (oh the shame), which is why I wrote the conversion in the first place.
The class that manages the conversions is well-encapsulated, so if you want to take a crack at updating it for Essentials 2.8, please feel free:
https://github.com/morganm/HomeSpawnPlus/blob/master/src/main/java/org/morganm/homespawnplus/convert/Essentials23.java
You're also welcome to post an enhancement request for an updated conversion if you can't write it yourself and if I get enough votes I might consider updating it.
-
View User Profile
-
Send Message
Posted Feb 18, 2012Hi! How come /hspconvert essentials doesn't work? I'm using the latest versions of both plugins. I wish to switch to HSP from Essentials because of its handy multi-world spawn points feature which Essentials' /spawn command lacks, but I need to be able to convert all of my player's homes over to the new format. I run it as OP and it just says 'Finished converting 0 homes'. Does "Essentials 2.3" literally mean 2.3? I'm using 2.8.2...
I could just use Essentials' /home and HSP's /spawn but... I wanna keep it in sync, haha.
Thanks! :)
-
View User Profile
-
Send Message
Posted Feb 17, 2012@LtSich
It's possible that's a bug with fresh install. HSP has code that helps existing users upgrade from one version of the DB to others. I haven't tested fresh install in a bit; last I tested it worked fine, but perhaps a bug creeped in.
It's a little odd that this would be the first report since I've seen since it's been a while since I last upgraded the DB, but looking at your error, that shouldn't happen in any case. What I would recommend is deleting your "plugins/HomeSpawnPlus/HomeSpawnPlus.db" file (while the server is offline) and restarting; I'm assuming you're not using MySQL in your bukkit.yml.
If, after doing that, it's still returning the error, then please report back and I'll do some testing on my side and see if I can reproduce the issue.
-
View User Profile
-
Send Message
Posted Feb 17, 2012@andune
that did the trick, thanks for the help!
-
View User Profile
-
Send Message
Posted Feb 17, 2012fresh install on my side....
I have this error : http://ks380391.kimsufi.com/server.log
and nothing to do, I can't have the right permission... I use PEX, the permissions are ok, but ingame I can't use the command... Any idea ?
Sich
-
View User Profile
-
Send Message
Posted Feb 17, 2012@jefe323
HSP "by-permission" sections are "first found permission wins". This is the documented behavior, however a bug a previous version (<1.3 I think) had this backwards, such that it was looping through all permissions and the last permission won.
It's likely if you are using PEX group inheritance (most people do), that all permissions are propagating upward and this is usually what you want. However, this also means "group.Guest" is inherited by every group up the chain. This can be a good thing, but in this case it means that even your Admin group has "group.Guest" permission, so HSP starts evaluating per-permission, sees "group.Guest" on your Admin user, and thus your Admin has 0,0.
The way to fix is just to reverse the order listed. Start with your highest precedent permission first (Owner, Admin, Moderator, etc). You don't even have to change the "limit" names, HSP doesn't care about those. Just put limit14 at the top and so on down and it should work as you are expecting it to.
Also it's worth noting you can simplify your config (if you want to) like so:
Which is just pointing out that if the perWorld/global are the same (as in this example), you can just list all the permissions in one entry. Both work fine so up to you how you want to manage it. :)