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 Mar 18, 2012@andune
okay thx. sounds wierd, guess i have to investigate some more, dont really think i have any other plugin that messes with where users spawn, maybe its a bukkit issue.
-
View User Profile
-
Send Message
Posted Mar 18, 2012I used /spawn thrice, and got this error dump, almost identical to what it was before: http://pastebin.com/5QzXdeW0
My config:
http://pastebin.com/sjUVVr2F
I am using MC 1.2.3
-
View User Profile
-
Send Message
Posted Mar 18, 2012@chrisjon
Alright, you previously defined issue #1 as:
1. Default users is always teleported back to spawn when they rejoin the server.
So I'm going to assume by your post that you've fixed issue #2 and that this issue #1 is still happening. In which case, according to the log you posted, you'll see that HSP finished the evaluation chain with "location = null", this means that HSP took NO action. If that player is being teleported to spawn instead of where they last logged out, it's not HSP's doing.
I looked over your other plugins and I don't see one that stands out to me that's doing the spawn teleport, but you might try turning them off one at a time until you find it.
-
View User Profile
-
Send Message
Posted Mar 18, 2012@andune
Okay i fixed my /home issue
and here is log of 1 default player joining the server.
http://pastebin.com/z7rx3Fug
-
View User Profile
-
Send Message
Posted Mar 18, 2012@harryjamesuk
Please read some of the online documentation, there is a wealth of it that covers your questions. Try these:
http://dev.bukkit.org/server-mods/homespawnplus/pages/strategy-doc/ http://dev.bukkit.org/server-mods/homespawnplus/pages/examples/
There are events and strategies that cover your exact scenario.
-
View User Profile
-
Send Message
Posted Mar 18, 2012Hi,
I need a bit of help. How would you change the spawn for a player that has died? And I want it so that whatever world they are in, they will all spawn at a specific world.
Hope you can help!
-
View User Profile
-
Send Message
Posted Mar 18, 2012@Wookieguy
Enable "core.verboseStrategyLogging: true" and HSP will log detailed messages to your server.log as it is processing strategies. So then run your /spawn command and see what it is doing. Feel free to pastebin the output and your config here if you need help figuring it out or think you may have tripped on a bug.
Also note that the group names are case sensitive.
-
View User Profile
-
Send Message
Posted Mar 17, 2012@Wookieguy
One way you could do it is like so:
on arcanian_world, you would /setgroupspawn Arcanian. on vanguard_world, you would /setgroupspawn Vanguard.
The result is that when someone with permission "Arcanian" types /spawn, the first strategy will result in looking for a groupspawn "Arcanian" in arcanian_world, which will be found and the Arcanian will be sent there.
When a Vanguard types /spawn, a groupspawn "Vanguard" will be searched for on arcanian_world, and since you haven't set one there, HSP will move on to the next strategy which will check for groupspawn "Vanguard" on vanguard_world, where the Vanguard will then be teleported to.
Another way to accomplish the same thing is to use per-permission events, where you could have a spawn chain specific to each Vanguard or Arcanian in case you wanted to something crazy. ie. perhaps when an Arcanian dies on "vanguard_world", you want them to "spawnNearestSpawn" (ie. graveyard concept), but when they're on their home world, they go to their home instead. All that is possible too.
-
View User Profile
-
Send Message
Posted Mar 17, 2012I see what you mean, and this is actually what I had figured out on my own. I wish I had been more clear in my question, sorry. Unfortunately, I am fairly new at permissions, and I can't quite wrap my head around what scheme I would need to cook up to get the result I desire. If you would be so kind as to recommend a method to do this, I will show my setup.
I have two main groups on my server so far, the Vanguard and the Arcanians. All players will either be in the Arcanian, or Vanguard permissions group (bPermissions) on all worlds. I have set all of the group permissions on all my worlds to synchronise to one world. I have three worlds of significance that are involved here, I shall refer to them as "main_world'', "arcanian_world" and "vanguard_world". I would like an Arcanian in any of the three worlds to always spawn in "arcanian_world", and for a vanguard to always spawn in "vanguard_world".
Feel free to answer at your leisure, this is not the most pressing issue on my hands for my server anyways.
-
View User Profile
-
Send Message
Posted Mar 17, 2012@Wookieguy
I believe what you are looking for is the "spawnGroupSpecificWorld:myworld" strategy. The reason is that groupSpawns are specific to a world, and "spawnGroup" just operates on the local world, so on another world it won't find anything.
So for example, let's say you have 3 worlds: "world", "creative" and "new-lands". Let's say you have done "/setgroupspawn redspawn" in world, and have given some players the "redspawn" permission. With example config:
events: onSpawnCommand: - spawnGroup - spawnLocalWorldplayers with redspawn permission on world will go to redspawn, while other players would go to whatever the default spawn is set to for that world. However, on world "creative" or "new-lands", everyone will go to the localspawn since there is no redspawn you've defined on those worlds.
Changing the first strategy to spawnGroupSpecificWorld:world will make it so redspawn players will always go to redspawn on world no matter which world they are on and non-redspawn players will fall through to spawnLocalWorld as before.
Note that if you have a perm system that can have different permissions on different worlds, HSP respects that and checks the permission of the TARGET world (world in this example).
-
View User Profile
-
Send Message
Posted Mar 17, 2012Unfortunately, this questions sounds like one that will have an "obvious" answer. I have set up my config to take you to the group's spawn when you type /spawn. That works fine, when you are in the same world. When you are in a different world, the console says the plugin can't find a spawn for that group. I assume that it is not detecting the spawn that has been set for the group I am in the other world.
What do I have to do to resolve this issue?
(I see a similar issue in the last commenter's post, but that is for homes and not spawns it seems to me. There is not a spawngroupallworlds or whatnot))
-
View User Profile
-
Send Message
Posted Mar 16, 2012@chrisjon
Regarding #1, try turning on "core.verboseStrategyLogging". HSP will log the strategies it runs (such as when player logs in) and you can see where it is trying to send them. For example, if HSP's result is to send the player to "0,80,0" and your players are ending up on "400,80,-200", then you know some other plugin you have is also set to "Highest" event priority and is overriding HSP.
2. This is because your "onHomeCommand" event chain has one strategy: "homeMultiWorld". This means HSP will check for a home on the local world ("explore") and then in the default world ("world_main"). Since you say they have a home on "world", it's not being checked. Since you are using 1 home per user, I'd suggest using the "homeAnyWorld" strategy instead, which would find the home on "world" in your example.
-
View User Profile
-
Send Message
Posted Mar 16, 2012Hey andune im having 2 issues with my homespawnplus.
1. Default users is always teleported back to spawn when they rejoin the server.
2. we have 4 worlds: world, world_main, explore, nether and i have set world_main as default world in the config. we use global homes 1 home per user total. and when they sethome in (world) they cant /home to it if they are located in explore world.
here is my config> http://pastebin.com/nkzsXMDT ps i use bukkit 1.2.3 beta 2 + these plugins http://pastebin.com/Ahuq0KXc
-
View User Profile
-
Send Message
Posted Mar 15, 2012@webname
There is not, though I know someone asked for it before. I don't see an open ticket for it so maybe it was in a comment thread long since lost. Please open an enhancement ticket for this feature. Can't promise I'll get to it anytime soon, but at least it'll be in the list for me to consider next time I have some free time to work on HSP features.
-
View User Profile
-
Send Message
Posted Mar 13, 2012Is there some option to enable checking if target is a safe spot. Ive relocated a bunch of buildings and such. Problem is some homeset points are now in solids teleporting into solid = not good :) some option to either abort or appear at a higher free space ?
thanks
-
View User Profile
-
Send Message
Posted Mar 13, 2012@tremor77
This is not a HomeSpawnPlus message:
> cd src/HomeSpawnPlus > grep -ri obstruct src >-
View User Profile
-
Send Message
Posted Mar 12, 2012I have this set to spawn in default world after death where players can't set homes... when I respawn it says "Your home bed was missing or obstructed". Is this from HSP - if so, how to get rid of it?
-
View User Profile
-
Send Message
Posted Mar 12, 2012@Digitalink2008
1. I don't see discontinuing it anytime soon. I use it on my server and my server has been around for a year. I won't make any promises, but almost a year so far and no intentions at this point to stop. Worst case, it's part of the reason everything I make it open source, if I ever disappear, someone else can easily take over.
2. HSP does not interact with a jail plugin at all. In theory it wouldn't be much different than my WG interface, but I tend to be pretty lazy when it comes to adding new features because my time is at a premium. So I'd say you're probably best off to just use the WG feature and put one around your jail with a spawn point in the jail. You're also welcome to open an enhancement request for a jail plugin and maybe I'll eventually get to it, or even more welcome to cut some Java yourself and write the code and push it back to me.
-
View User Profile
-
Send Message
Posted Mar 12, 2012Hey andune,
couple quick questions. Since I'm unsure of what Tux2 is panning for his mods ( hes been inactive on the ones i use ) I'm looking for a replacement of MultiSpawn.
1. You plan on continuing your plugin for a while? I try to pick long life plugins for the server :)
2. Tux was able to not take over the spawning of players that were jailed by simplejail. I'm willing to bet that your plugin would do so thought ya? We ran into jailed players dying then spawning back at the world spawn point.
Digi
-
View User Profile
-
Send Message
Posted Mar 11, 2012@DQone
The only plugins supported for import are SpawnControl and an old version of Essentials. There isn't a lot of demand for additional imports and I tend to spend the little free dev time I have building new features that are in higher demand. That said, the import process is pretty straightforward and there are some good examples if you understand Java, so you can look at the HSP source and write your own and contribute it back if you are so motivated.
Optionally, HSP does have a backup/import format. You can install HSP, create a few homes and then run "/hsp backup". This will create the file "plugins/HomeSpawnPlus/backup.yml". You can then look at the details of this file for the format. If you know how to write a script (perl, ruby, powershell, etc) you could convert your "MultiHome" format into HSP's backup format and then just run a restore to load up all your old homes.