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!
I've gotten set home and set named homes worked out but for some reason when players attempt to use the home command it is saying a home for the given player does not exist. Anyone this problem?
@falget12
Try changing the core.newPlayerStrategy. The default is PLAYER_DAT which checks for the UUID file in the main map folder, maybe that's not working on your server for some reason. The most reliable method should be ORIGINAL. I don't use it by default because lots of admins like to test new player strategies by removing their .DAT file, so I leave the default setting as PLAYER_DAT.
I tried on all versions of the plugin, at the moment I'm using the latest version to recommended.
[06:25:40 INFO]: HomeSpawnPlus version 2.0-beta3-b588
[06:25:40 INFO]: Author: andune
[06:25:41 INFO]: This server is running Cauldron-MCPC-Plus version git-Cauldron-MCPC-Plus-1.7.10-1.1236.06.211 (MC: 1.7.10) (Implementing API version 1.7.10-R0.1-SNAPSHOT)
I also tried to spigot 1.7.10 and it also counts every player is a new player, about spawnLastLocation I understood.
@falget12
What version of HSP are you using? 1.7 series has known issues with newPlayer detection because of UUIDs (I think - or maybe that was the last thing I fixed?). In any case, knowing the version of HSP you are using is very important to me being able to help troubleshoot. The version of your server environment is also important.
I'm fairly positive onNewPlayer and spawnLocalRandom are working in the latest dev builds you can get from Jenkins.
As for onJoin and spawnLastLocation - Bukkit already records the last location, so just use default - that will fall off of HSP's rules and hit Bukkit which will do what you want.
spawnLastLocation actually only records teleports, not the logout location, except under a very specific set of circumstances. I've seen lots of HSP admins trying to use it like you are, which implies it's name/usage is intuitively something different than the current behavior, so it's long been on my todo list to update the code to work like people seem to intuitively be expecting it to.
But in the mean time, the correct non-intuitive thing to do is just use "default" and Bukkit will take care of spawning the player wherever they last logged out at.
@SanCarlo
Yes, the command syntax is:
Where "foo" is the world you want to purge. You can also purge players with this command, run /hsp purge by itself to get a help syntax.
Is there a way to delete all homes from one certain world? We have a farm-world which changes the seed frequently and we want that player lose there homes when we reset the world?
Аnswer to my comment lower, please.
For those experiencing name change issues, this was reported as a ticket and has been resolved. Github ticket here:
https://github.com/andune/HomeSpawnPlus/issues/34
The fix works well in all my local tests, but if you do have any problems with this not working, please either report it on that ticket or open a new ticket.
@DarkRyuZ7
I had the same experience with 2 players that changed their names. Old homes are gone and get the "No player found" message when I try to do /homelistother with their old name.
I'm using the newer 2.0 versions btw. which are fine until the name change ;)
Homes & Namechanges seem not to work...
User changed his Minecraft name... then there was no home.
And when i look for his old name, it says "No player found" ....
The cooldown code is probably the most complex feature in HSP because of all the variations that are possible (most of which I suspect aren't used). I recall trying to do some cleanup to make it more maintainable as part of 2.0, but because it's so complex there's no way I was able to adequately test everything. It's entirely possible it's broken right now in 2.0.
Please open an issue (on github) describing what you expect to happen and any details around what is or isn't happening instead. Please link your cooldown configs which I can than replicate in a local test environment to reproduce the issue and then fix any bugs that may have been introduced.
@cindy_k
The same issue here no matter how I structure my config, either about CooldownsPerPermission or CooldownsPerWorld.
Cooldown permissions I can't make them work at all
http://paste.md-5.net/mimewonuhe.avrasm
Hello do not work correctly event when written:
onJoin:
- spawnLastLocation
onNewPlayer:
- spawnLocalRandom
Always works only onNewPlayer and indifferent whether it's new or not. onJoin ignored. The plugin is always thinking that either player is a new player.
UPD:
Plugin not remember the last location, and using strategies:
onJoin:
- spawnLastLocation
nothing happens, the console says that the player did not have last location.
Sorry for my bad English.
economy.yml isn't being created by default
I had to go thru the code this morning to figure out where to move my cost section too. Thanks!
@keytastic
Beta3 is the most stable release right now. Beta2 and Beta1 have known bugs (such as the one you mention), so I'd generally recommend everyone should be running beta3 and if you have a problem running it, please open an issue so I can fix it.
I can't speak to Spigot 1.7, I don't happen to have a JAR laying around and there isn't any documentation on how to use the new "BuildTools" method to produce one and I'm not motivated enough to try to hand roll one myself from source. But I do test HSP builds against both CraftBukkit 1.7 and Spigot 1.8 and in my tests, beta3 is working well on both.
EDIT I should add that although I test HSP 2.0 on both CB 1.7 and Spigot 1.8: 1.8 is actually the "target" platform and therefore the most tested and supported. This is particularly important when it comes to HSP's integrations - many plugins are either 1.7 or 1.8-compatible, but not both (such as latest WorldGuard, Vault, etc). Where this happens I'm integrating against the 1.8 versions of these plugins, and for 1.7 these integrations would no longer work.
Another way of saying it: HSP 2.0 will run on CB 1.7 and the core plugin will work, but features that require integrations with other plugins may or may not work depending on how those plugins have changed between 1.7 and 1.8.
@Z3dd7
Yes I'm managing tickets in github and much prefer issues to be reported there. If I find a bug as a result of a reported issue, it's very easy for me to associate the fix with the issue when I check in the code, and you'll also get faster feedback on bug fixes as the code is checked in. I still check comments here on DBO but not as often. (I'll look at your ticket and try to reproduce the problem and respond to you on github)
Can anyone confirm whether Beta 3 runs on Spigot 1.7.10?
Beta 1 doesn't support UUIDs, so I updated to Beta 2 (still with Spigot 1.7.10) and it mostly works, but sometimes players do /spawn or /home and nothing happens.
Hi, I'm using HSP since a while now and I particulary like the random spawning feature.
But since I updated HSP to 2.0 beta 1,2 and 3, this stopped working. Now the portals linked with HSP behave like standart portals.
Here are the console logs : http://pastebin.com/XmSWqxtx
We can see that both WorldBorder and MultiversePortals are loading fine, but HSP didn't linked with WorldBorder.
Here are the concerned parts of my config (core and events are separated in two config files) : http://pastebin.com/m400t0mi
So, is it a fail in my config or a bug in HSP ?
Thanks for fixing/helping, Z3dd7.
(I also created a ticket but I don't know if you are managing them)
@andune
EDIT: Updating to beta2 fixed it.