SpawnControl
SpawnControl
Announcement: SpawnControl Discontinued
I've been in communication with morganm, creator of an advanced fork (well beyond a fork at this point, actually) of SpawnControl: HomeSpawnPlus. Based on my initial testing of HSP, and comparison of feature sets, I'm going to recommend that existing SpawnControl users switch to HSP. HSP can import existing SpawnControl home, spawn, and group spawn information. It also supports many of the advanced features SC users have been requesting for a while: world forwarding, command warmups, bed support, etc. Permissions, GroupManager and PEX are supported, as well as limited OP permissions.
Given the limited development time at my disposal, and the existence of a superior (and compatible) alternative, it makes more sense for myself and the SpawnControl userbase to switch. Apologies for the inconvenience.
If you have questions about the conversion process, feel free to direct them to myself or morganm. If you have concerns or complaints, direct them to me. :)
Features:
- Per-player /home and /sethome
- Per-group /groupspawn
- Precise /spawn and /setspawn override
- Per-world global, group, and player spawns
- [NEW] Cooldowns for /home, /sethome, /groupspawn, and /spawn
- Optional respawn on death
- Optional respawn on join
- Toggles for home, groupspawn, and globalspawn features
- Imports player homes from spawncontrol-players.properties
- Imports group spawns from spawncontrol-groups.properties
Details:
This is a more full-featured release by far. Group spawns and global spawn are now supported. I'm detecting 'new' players (for global spawn) by checking their group (new players will be in Default) and looking for an existing home entry. If no home entry is found, the player will be teleported to the global spawn and their home will be set to the global spawn location. If someone has a better method for detecting this, I'd love to hear it.
The following permissions are available:
- SpawnControl.sethome.basic
- SpawnControl.sethome.proxy
- SpawnControl.home.basic
- SpawnControl.spawn.use
- SpawnControl.spawn.set
- SpawnControl.groupspawn.use
- SpawnControl.groupspawn.set
- SpawnControl.CooldownExempt.* (Sub-nodes: *, home, sethome, groupspawn, spawn)
- SpawnControl.config (for /sc_config [setting] [value])
- SpawnControl.import (for /scimportconfig and /scimportgroupconfig)
Dependencies:
The Permissions (Phoenix) fork by TheYeti is optionally supported.
The PermissionsBukkit plugin by SpaceManiac is optionally supported.
Installation:
- Download SpawnControl.jar and place it in your bukkit plugins folder
-
Optional Installation Steps (for Permissions support):
- Download the Permissions plugin and install it
- Add SpawnControl entries to your Permissions config as desired
Commands:
- /spawn - go to global spawn
- /setspawn - set the global spawn to your current location
- /home - go home
- /sethome - set your home to your current location
- /groupspawn - go to your group spawn
- /setgroupspawn [group] - set the group spawn for the specified group to your current location
- /sc_config [setting] [value] - alter a configuration setting
Settings:
- enable_home - Enables or disables /home and /sethome (0 = disabled; 1 = enabled) [Default: 1]
- enable_groupspawn - Enables or disables /setgroupspawn and /groupspawn (0 = disabled; 1= enabled) [Default: 1]
- enable_globalspawn - Enables or disables /setspawn, /spawn, and /globalspawn (0 = disabled; 1 = enabled) [Default: 1]
- behavior_death - Specifies the behavior when a player dies (0 = disabled - user returns to vanilla spawn; 1 = home; 2 = group spawn; 3 = global spawn) [Default: 3]
- behavior_join - Specifies the behavior when a player joins the server (0 = disabled - user spawns at last position; 1 = home; 2 = group spawn; 3 = global spawn) [Default: 0]
- behavior_spawn - Specifies the behavior of the /spawn command (0 = global spawn; 1 = group spawn; 2 = home)
- behavior_globalspawn - EXPERIMENTAL - Specifies the behavior when setting spawn (0 = does not override map spawn, 1 = overrides map spawn)
- cooldown_home [seconds] - Sets a cooldown in seconds for the /home command
- cooldown_sethome [seconds] - Sets a cooldown in seconds for the /sethome command
- cooldown_groupspawn [seconds] - Sets a cooldown in seconds for the /groupspawn command
- cooldown_spawn [seconds] - Sets a cooldown in seconds for the /spawn and /globalspawn commands
Source:
Changelog:
- 0.1 - First Bukkit release. Basic /home and /sethome support
- 0.2 - Group and global spawns, Permissions integration
- 0.3 - Working respawn on death; respawn on join (optional); configuration options
- 0.4 - Updated to use new OnCommand system
- 0.5 - Now uses PLAYER_RESPAWN; added basic multiworld support; added experimental (optional) globalspawn behavior; added missing /globalspawn command
- 0.6 - Proper multi-world support with per-world spawns
- 0.7 - Added command cooldowns; Permissions is now optional
- 0.8 - Fixed multiworld spawns; recompiled against CB #617; removed deprecated method calls
- 0.8.1 - Updated deprecated world loading method; tweaked spawn log message
- 0.8.2 - Switched cooldown time handling from server time to system time
- 0.8.3 - Added Hidendra's native Bukkit permissions pull
- 0.8.5 - Added Hidendra's pull for fixed package naming; Added phrstbrn's pull for SuperPerms; updated for MC 1.0.0
I'm an utter noob at this, but when any non-op person attempts to use any of the commands (/sethome /home), it says, "You do not have permission to do that"
I'm running CB 1493 1.0.0
<<reply 440860="">>
No, but it supports Permissions if available. Group spawns won't work without Permissions.
Does this require permissions?
Also see morganm's advanced fork of SpawnControl, HomeSpawnPlus. Very impressive stuff. Depending on how you, the SC users, feel about HSP, it may take over in SC's stead. I'm very interested to hear feedback.
Minor update for the package naming conflict, SuperPerms support, and MC 1.0.0 support.
Download v0.8.5
The main download link above is broken, because DevBukkit doesn't currently support 1.0.0 versions as far as I can tell.
excelent precise plugin-.- but cannot user :( it conflicts with MyHome (/home etc.)
It's almost perfect! All it's missing is the ability to let players respawn at the bed they last slept in, if it's not missing or obstructed.
How to login group?
@Timberjaw
I notice a few requests here (and on the forums) for features that I have added in a fork I made of this plugin a few months back. BTW, thanks for the great base to start from; I'd offer to push my changes upstream but I'm honestly not sure you'd recognize it now since I took some liberties in experimenting with new plugin dev stuff for me.
I made the fork to add some features I wanted at the time, but I've seen many requests since for those features here and on the forums. I don't know what proper etiquette is for naming plugins on another plugin page, even if in this case it was originally a fork, so I'll refrain from mentioning it here. But I'm happy to pick up some of these requests if you aren't planning to maintain SpawnControl anymore or don't want to do the work here since I've done it elsewhere already.
Hi Can you add PermissionsEx?
what would be nice would be to have a nearest pawn feature for this mod, other than that I am varry mutch satesfied so far.
euei
Might I suggest changing this plugin to use a Bukkit Configuration file? Then we can change settings without being in the game and your code would probably be simpler too.
I'm getting a lot of unhandled exceptions with 1185 and 0.8.3
Great plugin ! Just one question... what's the difference beetwin : SpawnControl.sethome.basic SpawnControl.sethome.proxy
I can't find any explication about it... thank you !
It would be cool if we could have a spawn for every world, or per 3-4 worls. For example, you could define a spawn on world1 and every person who die in world1, world2 or world3 would be spawned on world1... That would be cool!
Confirming that the test version with changes for PermissionsBukkit works well. I don't bother with /home but the spawn related features are fine.
Great plugin! I'm just letting you know that you left some debug messages in there:
[INFO] [SpawnControl] DEBUG: Respawn Location: Location{world=CraftWorld{name=world}x=-682.71365629866y=72.0z=-526.7154346508979pitch=6.3000484yaw=273.1504}
Not that they bother me, but you should take them out, or put an option to disable them.