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

    Kegan187

    I was using v0.5.2 and yea, I got quite a few plugins, but none that should be interfering with it.
     
  3. Offline

    Timberjaw

    @Kegan187 I can't reproduce this on 271 with no other plugins installed. If you have something like Essentials installed that may be interfering.
     
  4. Offline

    Bees

    Got a weird one for you. Since installing this plugin, which as far as I can see works fine, people connecting to my server have complained that when they logged in since the plugin was installed, they would spawn at the global spawn, even though behavior_join is set to 0 (i made sure this was the case by setting this command when no-one else was on the server) and with items missing from their inventory, or even a completely empty inventory. Does that sound like something that your plugin would cause? From what I can tell, this only happens the first time they log in since the plugin was installed, any other time after that and it's normal.
     
  5. Offline

    Timberjaw

    @Bees That's the expected behavior if their main group is 'Default' and they're logging in for the first time. It initializes their home location to the global spawn and respawns them there. It's the most reliable method for detecting 'new' players that I could find; otherwise new players wouldn't end up at the exact global spawn.
     
  6. Offline

    Kegan187

    Ill have to look into what I may be doing wrong, but how did you tag me? I've seen people doing that, but I've never found out how to do it.
     
  7. Offline

    Timberjaw

    @Kegan187 You just enter the @ symbol and then the user's name. e.g. @Timberjaw
    The forum does the rest.

    I'm not sure how you tag someone whose name has a space in it though.
     
  8. Offline

    Kegan187

    Oh okay, ty
     
  9. Offline

    Spark

    I implanted your mod. I can't log in. Connection Refused: Connect.

    [​IMG]
     
  10. Offline

    KiithSomtaaw

    a setting to make compass point to spawn, or group spawn, or home, or global would be good too :D
     
  11. Offline

    Timberjaw

    @Spark Your CraftBukkit is probably out of date. Update to 271 or newer.

    @KiithSomtaaw Yeah that would be nice. :)
     
  12. Offline

    Spark

    I'm using a plugin called bukkitup. It automatically updates my bukkit to the latest version

    [BukkitUp]: Checking for updates to CraftBukkit...
    [BukkitUp]: CraftBukkit is up to date!


    Code:
    2011-02-08 23:46:55 [INFO] [SpawnControl]: No global spawn found, setting global spawn to world spawn.
     Feb 8, 2011 11:46:55 PM org.bukkit.craftbukkit.CraftServer loadPlugins
    SEVERE: org.bukkit.Server.getWorlds()Ljava/util/List; (Is it up to date?)
    java.lang.NoSuchMethodError: org.bukkit.Server.getWorlds()Ljava/util/List;
        at com.bukkit.timberjaw.spawncontrol.SpawnControl.initDB(SpawnControl.java:169)
        at com.bukkit.timberjaw.spawncontrol.SpawnControl.onEnable(SpawnControl.java:227)
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:135)
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:394)
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:175)
        at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:64)
        at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:45)
        at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:156)
        at net.minecraft.server.MinecraftServer.c(MinecraftServer.java:143)
        at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:104)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:186)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:512)
    
     
  13. Offline

    Timberjaw

    @Spark what's the build #? Use the version command in the console.
     
  14. Offline

    Spark

    This server is running Craftbukkit version git-Bukkit-0.0.0-336-g76c531d-b262 (MC: 1.2_01)
    This server is also sporting some funky dev build of Bukkit!
     
  15. Offline

    Timberjaw

    @Spark Like I said, you need to update to 271. You're on 262.
     
  16. Offline

    Spark

    Oh dear! Thank you for spotting that! I think I'm going to get rid of the updatr plugin, since it isnt doing it's job.
     
  17. Offline

    Bees

    I thought that was the case. Any idea why people would spawn with no inventory items? Or items missing? It only seemed to happen that one time they logged in after I set the plugin up. Not sure if it's related to your plugin or not. Other plugins I'm running with SpawnControl is rTriggers and HeroicDeath, which have never caused this type of issue before.

    Either way, love the plugin! :)
     
  18. Offline

    Timberjaw

    @Bees SpawnControl contains no inventory-related code whatsoever. Must be something else.
     
  19. If players don't log out before a server is shut down, there is the risk of loosing their position and inventory, i've had this happen to me several times when testing different plugins, basically they just need to log out before a server shutdown to prevent it. Don't take my word for it though, it's just my experience.
     
  20. Offline

    Spark

    For some reason, I cant use the version command anymore..

    I replaced my craftbucket with the download version, and im still getting the errors, and i cant check whether the version is wrong.
     
  21. Offline

    Timberjaw

    @Spark It should also show the version info in the console when you start the server.
     
  22. Offline

    Spark

    ok i'm definitly on 271 now, Im still getting errors and still can't log in.

     
  23. Offline

    Timberjaw

    @Spark Did you download the sqlitejdbc file in the installation instructions?
     
  24. Offline

    SirScotalot

    Getting the following error:
    Code:
    [SpawnControl]: Table 'settings' not found, creating.
    [initDB] DB ERROR - SQL logic error or missing database | SQLState: null | Error Code: 0
    
    And, obviously, since the settings table is missing:
    Code:
    [WARNING] [SpawnControl] DB Error: no such table: settings
    java.sql.SQLException: no such table: settings
    
    (whenever you try to connect or use any of the SpawnControl commands)

    Needless to say, none of the commands work. I'm on build 271, and, again, this only happens on my Linux host, NOT Windows. Porting over the DB file to Windows to create the table didn't work, either, as soon as I try using that DB on Linux again, I get incompatibility errors.

    Here's my DB file to investigate:
    http://dl.dropbox.com/u/13125597/spawncontrol.db
     
  25. Offline

    Bees

    That would actually make sense... Thanks for that!
     
  26. Offline

    Spark

    @Timberjaw Thanks. I did have the file, but had delted it when trying to see if removing the plugin files would let me connect.

    Everything loads now, without errors. Still can't connect, so it's not a plugin related issue. Restarting system to see if it fixes problem.

    Thank you so much for your time!
     
  27. Offline

    Kegan187

    Hey Timber, turns out that SpawnControl will not load on startup for me. Any idea why?
     
  28. Offline

    Timberjaw

    @SirScotalot If you have the sqlite3 shell, try opening up a copy of the db and running this query:
    Code:
    CREATE TABLE `settings` (`setting` varchar(32) PRIMARY KEY, `value` INT, `updated` INTEGER, `updated_by` varchar(32));
    If it works, there's probably an issue with the SpawnControl code. If it doesn't work, there's something weird going on with sqlite3 on Linux vs. Windows.
    --- merged: Feb 8, 2011 11:27 AM ---
    Are you getting an error message?
     
  29. Offline

    Kegan187

    I am getting no error message. I have the plugin in my plugins folder and whenever I try and start my server, it loads a few of them, but a lot of them don't load.
     
  30. Offline

    Timberjaw

    @Kegan187 Can you post all the text that comes up when you first start the server?
     
  31. Offline

    Kegan187

    sure
    Code:
    2011-02-08 14:21:32 [INFO] Starting minecraft server version Beta 1.2_01
    
    Okay, yea not even half of my plugins are loading.
    --- merged: Feb 8, 2011 11:31 AM ---
    wait
    --- merged: Feb 8, 2011 11:32 AM ---
    Code:
    2011-02-08 14:21:32 [INFO] Starting minecraft server version Beta 1.2_01
    2011-02-08 14:21:32 [INFO] Loading properties
    2011-02-08 14:21:32 [INFO] Starting Minecraft server on *:25565
    2011-02-08 14:21:32 [WARNING] **** SERVER IS RUNNING IN OFFLINE/INSECURE MODE!
    2011-02-08 14:21:32 [WARNING] The server will make no attempt to authenticate usernames. Beware.
    2011-02-08 14:21:32 [WARNING] While this makes the game possible to play without internet access, it also opens up the ability for hackers to connect with any username they choose.
    2011-02-08 14:21:32 [WARNING] To change this, set "online-mode" to "true" in the server.settings file.
    2011-02-08 14:21:32 [INFO] This server is running Craftbukkit version git-Bukkit-0.0.0-360-gf5b151f-b271 (MC: 1.2_01)
    2011-02-08 14:21:32 [INFO] Preparing level "world"
    2011-02-08 14:21:32 [INFO] Preparing start region
    2011-02-08 14:21:34 [INFO] Preparing spawn area: 52%
    2011-02-08 14:21:34 [INFO] [iChat] version [1.5] (Maria Holic) loaded
    2011-02-08 14:21:34 [INFO] [AntiBuild] version [1.0] (Reborn) loaded
    2011-02-08 14:21:34 [INFO] [Cleaner] version [1.6] (Night) loaded
    2011-02-08 14:21:34 [INFO] [Permissions] version [2.0] (Handler) loaded
    2011-02-08 14:21:35 [INFO] WorldEdit 3.2.2 loaded.
    2011-02-08 14:21:35 [INFO] WorldEdit: Permissions plugin detected! Using Permissions plugin for permissions.
    2011-02-08 14:21:35 [INFO] WorldGuard 3.2.2 loaded.
    2011-02-08 14:21:35 [INFO] WorldGuard: Permissions plugin detected! Using Permissions plugin for permissions.
    2011-02-08 14:21:35 [INFO] WorldGuard: Blacklist loaded.
    2011-02-08 14:21:35 [INFO] WorldGuard: Single session is enforced.
    2011-02-08 14:21:35 [INFO] WorldGuard: TNT ignition is blocked.
    2011-02-08 14:21:35 [INFO] WorldGuard: Lighters are PERMITTED.
    2011-02-08 14:21:35 [INFO] WorldGuard: Lava fire is blocked.
    2011-02-08 14:21:35 [INFO] WorldGuard: All fire spread is disabled.
    2011-02-08 14:21:35 [INFO] WorldEdit: Permissions plugin detected! Using Permissions plugin for permissions.
    2011-02-08 14:21:35 [INFO] WorldGuard: Permissions plugin detected! Using Permissions plugin for permissions.
    2011-02-08 14:21:36 [SEVERE] [BBROTHER] Could not establish SQL connection. Disabling BigBrother
    2011-02-08 14:21:36 [INFO] SpawnMob version 1.4.1 enabled.
    2011-02-08 14:21:36 [INFO] [SpawnMob] Permission system enabled.
    2011-02-08 14:21:36 [INFO] [MultiVerse] - Version 0.1 Enabled
    2011-02-08 14:21:36 [INFO] Done! For help, type "help" or "?"
     

Share This Page