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 Dec 27, 2012Here's a bit more awkwardness:
Since I couldn't get the cooldown/warmup exempt nodes working, I tried to do per permission cooldowns/warmups. Here's a snip of my config.yml:
This works as it is, but I couldn't make the cooldowns 0. If I set them to 0, moderators had 5 minute cooldowns. They inherit that permission so I'm assuming that's why. If I then negated the group.veteran and group.citizen node from moderators, the cooldowns went back to 30 minutes (default). So for whatever reason, it isn't liking not having a cooldown.
The same exact thing happened with the warmups, 1 second works, 0 seconds doesn't.
Again this may not be a HSP issue, but its an oddity and somewhat of a workaround if someone is having similar problems.
Again I am running CB 1.4.6 beta, bPermissions 2.9.25c, and HSP 1.7.3.2 (no Vault)
-
View User Profile
-
Send Message
Posted Dec 27, 2012@andune
Ok, thank you.
-
View User Profile
-
Send Message
Posted Dec 27, 2012@Favorlock
The second section is part of HSP's config file and is it's per-permission configuration. You can define your HSP events/strategies specific to permissions (or groups if you define them that way).
You can read more about it in the How HSP works documentation.
-
View User Profile
-
Send Message
Posted Dec 27, 2012@andune
Thanks, that helps very much.
I noticed this on one of the pages:
is the second part in the permissions file? or is this some sort of permissions configuration in the config itself?
-
View User Profile
-
Send Message
Posted Dec 27, 2012@Favorlock
The concept of 'group' isn't universal, it was left out of Superperms (much to plugin devs dismay) and every permission plugin since then has had to add it's own concept of group. Fortunately Vault makes it easy for plugin authors to access this.
However, one thing is fairly universal about groups; plugin systems support "per-world" groups/permissions and thus your group on one world might not be the same on another. For example, on a creative world, you might be in a creative group, whereas on a normal world you might be in a member group.
Therefore the question of "What group is player X is in?" depends on what world you're talking about. So it follows that HSP's groupSpawn feature is world specific. The regular spawnGroup strategy (which the /groupspawn command uses) only checks the CURRENT world. So to spawn someone into a groupSpawn on another world, you need to use the spawnGroupSpecificWorld:myworld strategy.
So what if you have groupSpawn's on different worlds for different groups that you want to work universally across all your worlds & groups? The simplest thing would be something like so:
In this scenario, when someone types /groupspawn, HSP will first check world1 to see what their group is on world1, and if there is a groupspawn for them, it will spawn them there. If not, it moves on to world2, and so forth. So if your VIP group had a groupspawn set on world1 and your Members group had their groupspawn on world2, the above would accomplish that fine.
-
View User Profile
-
Send Message
Posted Dec 27, 2012How exactly could I make multi world group spawning work? Whenever I type /groupspawn it cannot find the group spawn in another world.
-
View User Profile
-
Send Message
Posted Dec 24, 2012Concerning the issue from cheracc:
With 1.4.6-R0.1 testing I've initial also experienced that some permission parts of hsp did not worked for non ops (I am using bPermissions + Vault).
With some evaluation and checking the bukkit homepage I think it's not related exclusive to hsp but a kind of general 1.4.6-R0.1 vs. permissions item. See for example the comments and tickets at the bpermission page as well as the comments of the Craftbukkit 1.4.6-R0.1 announcement forum thread.
To point out that I don't want to blame any stated part it seems to me that other permission systems even have much more issues than bpermissions (1.4.6-R0.1 forum thread). I think there have been major changes with 1.4.5-R1.0/1.4.6-R0.1 and everything needs to be aligned again.
-
View User Profile
-
Send Message
Posted Dec 24, 2012@andune Thanks for your assistance.
I just gave my moderator group "hsp.CooldownExempt.home" and "hsp.CooldownExempt.spawn" (as well as the Warmup ones) but they are still getting cooldowns. I initially used hsp.CooldownExempt.* because your documentation advised that to remove cooldowns for all commands.
I myself had op, so I think that's why I wasn't getting cooldowns/warmups. When i de-opped myself, I had the cooldowns despite the hsp.* and hsp.admin permissions.
I am using bPermissions, and have been for some time. I know the hsp.admin node is working because I can /hsp reloadconfig when i'm not op. Players also have access to /home, /sethome, and /spawn which are given by permission nodes. For whatever reason, it doesn't seem to be recognizing the cooldown/warmup exempt nodes.
I've even tried deleting the config.yml and letting the plugin regenerate it in case something had changed in a recent version, but that had no effect.
Thanks for any further assistance you may offer, and thanks for the incredibly versatile plugin
-
View User Profile
-
Send Message
Posted Dec 23, 2012@JohnPulse
No worries, I don't consider kudos to be spam. :) I always appreciate hearing people are finding HSP useful. I put a lot of time into making a plugin that I would want to use as an admin (and I do use it on my own server), so I'm glad other people find it useful as well. Enjoy!
-
View User Profile
-
Send Message
Posted Dec 23, 2012@cheracc
It has not changed, here is the line that checks cooldown exemptions and isn't hasn't changed in a very long time.
I suspect your permission system might have changed. "*" permissions were never particularly well supported by Dinnerperms - they required plugin authors to explicitly list each individual node rather than just picking them up dynamically.
I suspect whatever permission system you were using before supported the old-style Perm2 "*" nodes while whatever Perm system you've upgraded to does not. I don't believe I explicitly iterate all the ".*" permissions for Warmup/Cooldowns in plugin.yml.
-
View User Profile
-
Send Message
Posted Dec 23, 2012Did the permissions change to exempt players from warmups and cooldowns?
I have the hsp.* permission, and I have none, but my other players whom I've given hsp.CooldownExempt.* and hsp.WarmupExempt.* to suddenly have cooldowns with the new update. I'm using v1.7.3.2 and CB 1.4.6 beta.
-
View User Profile
-
Send Message
Posted Dec 23, 2012I know it's spam, but I have to do it... Thanks for the exelent work on making this plugin andune, stable as always. Regards, John.
-
View User Profile
-
Send Message
Posted Dec 23, 2012Thanks for the reports of success with CB 1.4.6. I see a 1.4.6 beta is now available, so I've released an HSP version compatible with it, v1.7.3.2 It will appear in the files list whenever it is approved by the Bukkit admins.
-
View User Profile
-
Send Message
Posted Dec 23, 2012Actual Dev. works so far with latest 1.4.6.
Thanks andune!
-
View User Profile
-
Send Message
Posted Dec 20, 2012V1.7.3.2 dev build is a go for 1.4.6 R 0.1 #2551 no issues so far and im running a server with 45+ plugins
-
View User Profile
-
Send Message
Posted Dec 20, 2012@myhrmans
I will not provide a release for a single CraftBukkit dev build that's only been out for a day (it's 1.4.6-R0.1).
However, since it's only 1 line of code I have to change, I do have a version of HSP built that is compiled against v1.4.6, you can download it from the Changelog page if you want to test against Bukkit dev builds. I provide no support for this whatsoever - I will provide an official release when the first 1.4.6 beta build has been released.
-
View User Profile
-
Send Message
Posted Dec 20, 2012Will you release a update for R0.2 ? :)
-
View User Profile
-
Send Message
Posted Dec 20, 2012When I started it up with CB 1.4.5-R1.0 I got an error. This one -> (!)
-
View User Profile
-
Send Message
Posted Dec 19, 2012@simlhawk
Yes, all bed home options are documented:
http://dev.bukkit.org/server-mods/homespawnplus/pages/bed-homes/
Note these are global server options and not per-world, with the exception of the 'modeRequiresBed' option which can be combined with events (and therefore per-permission or per-world) however you like.
-
View User Profile
-
Send Message
Posted Dec 19, 2012@andune
Thanks! I really like the plugin. It allows me to keep a few worlds separate.
That being said, one of my worlds is supposed to have a full vanilla feel. Is there any way to make the bed set as home on the first click?