Inactive [GEN] SpawnControl v0.8.3 - Per-Player/Group Spawns (Now on DevBukkit) [1060]

Discussion in 'Inactive/Unsupported Plugins' started by Timberjaw, Jan 21, 2011.

  1. Offline

    Timberjaw

    SpawnControl v0.8.3

    Announcement:
    SpawnControl is being superseded by HomeSpawnPlus, a more advanced plugin that supports all of SC's features, and many more. Your homes and spawns can be imported directly from SpawnControl into HomeSpawnPlus.
    Feel free to contact me with questions/concerns/complaints.




    Tested with CraftBukkit 1060.

    DevBukkit Page: SpawnControl
    Bug Reports: SpawnControl Issue Tracker

    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:
    Installation:
    1. Download SpawnControl.jar and place it in your bukkit plugins folder
    Optional Installation Steps (for Permissions support):
    1. Download the Permissions plugin and install it
    2. 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
    Downloads:

    Known Issues:

    • None?
    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 pull to support Bukkit's native permissions
    • Full changelog
     
    Michonne, Huddl, BadgerLove and 5 others like this.
  2. Offline

    Timberjaw

    On closer inspection, in your Default group you have:
    Code:
    permissions:
                permissions:
    Try removing that second line.
     
  3. Offline

    cnx4mia123

    thaanks so much for the help, i was transfering plugins and fixing since the 1.2 minecraft update and i copied and pasted the permissions a few times, so i guess i failed along the way thanks tho! Goodluck
     
  4. Offline

    Olat

    Still getting that spawnX error with .6.2, and that loading error is whats causing WorldGuard to not work... Same as last time. With Spawncontrol installed Worldguard refuses to load.
     
  5. Offline

    Timberjaw

    I haven't updated yet... ?
     
  6. Offline

    Olat

    LOl i saw a new version and hoped.. im hitting F5 constantly This and Factions are the last 2 i need updated for my server to be functional game
     
  7. Offline

    Timberjaw

  8. Offline

    Olat

    @Timberjaw
    BINGO!
    Spawncontrol works, and worldguard is loaded! Thank you sooo much!
     
  9. Offline

    Robby Stolle

    2011-02-23 21:54:59 [INFO] Starting minecraft server version Beta 1.3
    2011-02-23 21:54:59 [INFO] Loading properties
    2011-02-23 21:54:59 [INFO] Starting Minecraft server on *:25565
    2011-02-23 21:54:59 [INFO] This server is running Craftbukkit version git-Bukkit
    -0.0.0-450-gd3c1ba4-b432jnks (MC: 1.3)
    2011-02-23 21:54:59 [INFO] Preparing level "world"
    2011-02-23 21:54:59 [INFO] Preparing start region
    2011-02-23 21:54:59 [WARNING] Using the stupidly long constructor com.griefcraft
    .FriendlyCreepers(PluginLoader, Server, PluginDescriptionFile, File, File, Class
    Loader) is no longer recommended. Go nag the plugin author of FriendlyCreepers t
    o remove it! (Nothing is broken, we just like to keep code clean.)
    2011-02-23 21:55:00 [INFO] CraftBukkitUpToDate version 1.3 is enabled!
    2011-02-23 21:55:00 [INFO] CraftBukkitUpToDate: CraftBukkit is up to Date
    2011-02-23 21:55:00 [INFO] [FriendlyCreepers] -> ENTITY_EXPLODE
    2011-02-23 21:55:00 [INFO] [FriendlyCreepers] Creepers are: Neutralized
    2011-02-23 21:55:00 [INFO] [FriendlyCreepers] TNT is: Enabled
    2011-02-23 21:55:00 [INFO] [HeroicDeath] 1.4.1.135 enabled.
    2011-02-23 21:55:00 [INFO] [Permissions] version [2.1] (Handler) loaded
    2011-02-23 21:55:00 [INFO] Initialisation
    2011-02-23 21:55:00 [INFO] [ServerPort] Read gameport from server.PROPERTIES fil
    e: 25565
    2011-02-23 21:55:00 [INFO] [Serverport] Unable to open gate file: serverport.txt

    2011-02-23 21:55:00 [INFO] Custom gates defined:
    2011-02-23 21:55:00 [INFO] bindstone
    2011-02-23 21:55:00 [INFO] nether
    2011-02-23 21:55:00 [INFO] temple
    2011-02-23 21:55:00 [INFO] watercurtain
    2011-02-23 21:55:00 [INFO] [Serverport] peer server database file doesn't exist
    2011-02-23 21:55:00 [INFO] [Serverport] no servers have been configured
    2011-02-23 21:55:00 [INFO] [ServerPort] Global hostname detection:
    2011-02-23 21:55:00 [INFO] [ServerPort] c-68-42-5-40.hsd1.de.comcast.net
    2011-02-23 21:55:00 [INFO] [ServerPort] use /serverport globalhostname to set a
    particular hostname
    2011-02-23 21:55:00 [INFO] [ServerPort] Bound to port 25465 correctly
    2011-02-23 21:55:00 [INFO] Server Port version 257 is enabled!
    2011-02-23 21:55:00 [INFO] [SpawnControl] version [0.6.3] loaded
    2011-02-23 21:55:00 [INFO] Done (1712071227ns)! For help, type "help" or "?"
    2011-02-23 21:55:10 [INFO] 143 recipes
    2011-02-23 21:55:10 [INFO] Robby0328 [/192.168.2.1:49786] logged in with entity
    id 85
    2011-02-23 21:55:11 [INFO] Loaded world: world
    2011-02-23 21:55:11 [SEVERE] Could not pass event PLAYER_JOIN to SpawnControl
    java.lang.NullPointerException
    at com.aranai.spawncontrol.SCPlayerListener.onPlayerJoin(SCPlayerListene
    r.java:257)
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja
    va:130)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
    at net.minecraft.server.ServerConfigurationManager.a(ServerConfiguration
    Manager.java:97)
    at net.minecraft.server.NetLoginHandler.b(NetLoginHandler.java:87)
    at net.minecraft.server.NetLoginHandler.a(NetLoginHandler.java:27)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:87)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:338)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)


    it all worked before I updated. I had spawn set before I updated and now when I do /spawn it says I don't have the permission.
     
  10. Offline

    Timberjaw

    Please post a link to your permissions config file (pastebin or attachment).
     
  11. Offline

    Robby Stolle

    # Supports "Default" and "GroupUsers"
    plugin:
    permissions:
    system: default

    ##
    # Groups can contain inheritance.
    # To make a group inherit the permissions from another
    # group simply place the groups name in the "inheritance:"
    # field seperated by commas.
    #
    # Example: inheritance: Default,Admins,
    ##
    # All permissions including the asterisks must be placed in single quotes.
    # like so:
    #
    # - 'general.spawn'
    #
    # Otherwise errors will happen!
    ##
    # Globalized Permission settings:
    #
    # If a permission contains periods (.) you can denote a globalized parameter:
    #
    # - 'general.*'
    #
    # This will allow you to use all general commands.
    #
    ##
    #
    # Single Asterisk denotes all commands:
    #
    # - '*'
    ##
    groups:
    Default:
    default: true
    info:
    prefix:
    suffix:
    build: true
    inheritance:
    permissions:
    - 'general.spawn'
    Moderator:
    default: false
    info:
    prefix:
    suffix:
    build: true
    inheritance:
    - Default
    permissions:
    - 'general.time'
    - 'general.teleport'
    - 'general.teleport.here'
    - 'general.player-info'
    Admins:
    default: false
    info:
    prefix:
    suffix:
    build: true
    inheritance:
    - Moderator
    permissions:
    - '*'

    ##
    # DarkGrave has control over all commands.
    # sk89q can use /spawn & /time
    ##
    users:
    robby0328:
    group: Admins
    permissions:
    sk89q:
    group: Default
    permissions:
    - 'general.time'



    on a side note any tuts on using this file? added the txt version as well.
     

    Attached Files:

  12. Offline

    Timberjaw

    I really need a pastebin or a link to the file itself. Pasting it here doesn't maintain spaces, which are very important in yml files.
     
  13. Offline

    Robby Stolle

  14. Offline

    Timberjaw

    Yep, thanks.

    File looks fine. This is world.yml, right? The only thing I can figure is that SpawnControl is unable to access Permissions for some reason. It's very puzzling.
     
  15. Offline

    Robby Stolle

    Within the plugins/Permissions folder it's named config.yml should it be world.yml?
     
  16. Offline

    Timberjaw

    Yeah as of 2.1 it needs to match the name of the world. So if your world is 'world' (the default), the file should be renamed to world.yml. I believe it's to allow different configurations for each world.
     
  17. Offline

    Robby Stolle

    Thank you that would explain all the issues
     
  18. Offline

    Olat

    @Timberjaw

    Just wondering since Ninji quit are you going to convert to Group Manager?
    Im using Group Manager and his Fakepermissions plugin and its like not following the GroupSpawn, but im sure thats because of Group Manager and not your plugin.
     
  19. Offline

    Timberjaw

    I'm hoping that an official group system for Bukkit will be incorporated soon. NathanWolf has been working on one that can actually integrate with the built-in permissions system. Will see if the Bukkit devs decide to use it, which would be fantastic (no more competing group and permissions plugins!).

    Basically, in my opinion plugin developers shouldn't be relying on other plugin developers for something as core as group management and permissions. Obviously I understand the need for compromise in the interim (thus SpawnControl's support for Permissions), and appreciate the work Nijikokun and others have done to support their fellow developers in Bukkit's rough early state, but it's not ideal (for plugin developers or server admins).
     
  20. Offline

    Olat

    @Timberjaw
    Ya, I understand but it just sucks cause group spawn is not working and im sure its due to Group Manager. I totally agree with a built in permissions, and I do respect Niji for his effort in the early days, but i need a work around lol.. :) Anyways thanks for getting back at me so quickly and letting me test your fix out. If you need anything else tested lemme know. I try to keep a good repoire (sp?) with the plugin developers.
     
  21. Offline

    Cave_Digger

    Im running latest bukkit, fresh permissions install (only tweak is im set as admin with '*' as commands), and a fresh install of SpawnControle, when i log in i get
    2011-02-24 17:17:12 [SEVERE] Could not pass event PLAYER_JOIN to SpawnControl
    java.lang.NullPointerException
    blah
    blah
    blah

    and when i try to /setspawn i get "you do not have permission" but im set as admin with access to all comands.

    i know how to use permissions, i had a stable build before the update, but it blew up and broke all my plugins. i tried using essentials, but ever since he broke it into different .jar files, it hasn't been working for me. if you need anything from me just ask, and im sorry ahead of time if its a stupid simple fix :p thanks :)
     
  22. Offline

    Timberjaw

    @Cave_Digger Most likely it's a permissions config issue. Are you using Permissions 2.1 and SpawnControl 0.6.3? Did you rename your permissions config to world.yml (or whatever your world name is)?
     
  23. Offline

    Cave_Digger

    i did not!
    thank you so much! :) my users will be very happy to have these commands back :) i did this on my test build, i will make the same changes on my live server. i will let you know if i have any problems. im sure this was posted earlier in the thread, sorry for making you repeat yourself :)
     
  24. Offline

    Daveyo

    same. I heard that 2.0 is working perfectly well, but maybe this addon requires 2.1?
     
  25. Might be just me, but I can't figure out how to configure the permissions for this in Permissions 2.1. A how-to guide would be nice. Thanks to anyone who is willing to help me on this. (There is o error, I just can't seem to figure this out, I've been at getting this to work for an hour and its really getting irritating.)
     
  26. Offline

    phaed

    How about leaving Permissions 2.1 in the grave along with hMod where it belongs and adding GroupManager support?
     
  27. Offline

    Timberjaw

    GroupManager claims to be fully Permissions-compatible, so it should already be working. ;)
     
  28. Offline

    phaed

    For now....
     
  29. Offline

    Etalyx

    I don't think it's a problem with this plugin but wanted to ask anyway. New players in my server spawn at 0,0 even though my setspawn is across the map! The only way they get to my set spawn is by dieing and then respawning again. Is there any way I can fix this? Running CB432. Thanks!
     
  30. Offline

    Olat

    @Timberjaw
    With GroupManagers and Spawncontrol my GroupSpawns are not working. I just attributed it with Groupmanager / permissions 2.1 conflicts *shrug* If you could get it working or find out why thatd be swell
     
  31. Offline

    diegokilla

    quick question: is there anyway to set a hierarchy for spawning ie:
    plugin checks to see if user is in group that has grpspawn if yes-> spawn at group spawn, if no ->check is user has personal spawn if yes ->spawn there, if no then check if global spawn is set, if yes spawn there, if no then spawn at vanilla spawn

    edit: it would do the checks on death
     

Share This Page