[INACTIVE][ADMN/GEN] Reserved v2.2.2b - The ultimate slot reservation plugin [490]

Discussion in 'Inactive/Unsupported Plugins' started by 8e8, Jan 30, 2011.

  1. Offline

    8e8

    Reserved The ultimate slot reservation plugin
    v2.2.2b [490]
    Download [JAR | config.yml] - Donate
    Updated: 3/8/2011 - 8:55pm EST
    Previous: v2.2.1b [490], v2.2b [490], v2.1b [440], v2.0.2 [232]

    Reserved is an extensive slot handling plugin designed to suit your needs. It currently supports multiple methods of reservation, including hMod's.
    Configuration (open)

    Download Permissions
    plugins/Reserved/plugin.yml
    Code:
    config:
      # The method to be used in reserving seats for players
      # default - If a player is on the reserve[Groups] list they can connect at anytime, and do not count towards max-players
      # hmod     - If a player on the reserve list connects when the server is full they are allowed
      # kick    - If a player on the reserve list connects when the server is full they are allowed, and someone is kicked* to make room for them
      # * If no one can be kicked then the connecting player is denied
      reserveMethod: hmod
    
      # The time a seat is reserved for when a player leaves (0 = disabled)
      holdSeats: 0
    
      # Log commands to server.log?
      logCommands: true
    
      # Log when the server is full?
      logOnFull: true
    
      # Log when a reserved player joins?
      logOnReserved: true
    
    # Players from this list will be allowed to connect when the server is full
    reserve:
      players:
        - 8e8
        - Player
      groups:
        - Admins
        - Moderators
    
    # A player from this list will be kicked when the server is full if reservedMethod: kick
    kick:
      # The players get searched first
      players:
        - 8e8
        - Player
      # The groups get searched in the order
      groups:
        - Members
        - Default
    
    # Players from this list will be immune* to drops due to slot reservation when the server is full and reservedMethod: kick
    # * Unless no one else can be kicked
    save:
      # The players get searched last
      players:
        - 8e8
        - Player
      # The groups get searched in order
      groups:
        - Admins
        - Moderators
    
    Special Thanks (open)

    @Kainzo @bleem313 @Synicyde : for lending me their servers for testing.
    @Jobsti @uncovery @Odjit @oliverw92 : for helping make this plugin what it is now. Your suggestions have been turned into features.
    @SquallSeeD31 : for pointing out the conflict with Whitelist

    @ Everyone who's supporting this plugin and trying to break it. Without you I'd be clueless about whether or not it really works.
    Changelog (open)

    v2.2.2b
    v2.2.1b
    v2.2b
    v2.1.1b
    v2.1b
    v2.0.2
    v2.0.1
    v2.0
    v1.1
    v1.0
     
  2. Offline

    8e8

    Sorry, I've been quite busy with things and haven't had a chance to check up on this. To those who're reporting a server full error when it obviously isn't full, PLEASE tell me how you have the plugin configured, as well as the names of any other plugins you're using (preferrably those like Whitelist). Without this I can't know for sure if it's a problem with the plugin or just your configuration, and without knowing what the problem is I wouldn't know where to begin looking. I would like to help, but more information is required. Also, information such as uptime, and activity (the joining/leaving of players) would help.

    Chances are many of you may have the plugin configured incorrectly (which is partly my fault). You can only use one of the reservation methods. Meaning if you have hMod reserve enabled, do not enable kick, and vice versa.

    @ExplosiveBacoN make sure that you have the config set up properly (syntax matters) and that there are players on the server who can be kicked. Top level players (those on the reserve [group] list) will not be kicked to make room, resulting in a server full message for the connecting player.

    I may not be able to get around to this for awhile, but I will look into it.
     
  3. Offline

    Mister Tickles

    Hey, is this going to be updated for 1.3?
     
  4. Offline

    Jobsti

    @8e8
    An update would be nice, because the consolemessage "Stupidly long constructor...blah blah" ;)
     
  5. @8e8 This message was twitter by CraftBukkit today:
    Will you be able to update your plugin ?
     
  6. Offline

    bLazem

    Keen for a fix also please.... Great plugin btw.
     
  7. Offline

    Pulec

    The main problem is that after few hours of uptime slots somehow get reduced.
    I have max players set to 48, at first player connect it takes a slot and same if reserved player connects and it should add a slot when player disconnects. I guess it does not add when player disconnects as connection reset error or other way. I cant watch the server log whole time, but after few hours it is:

    Slots: 8 Player:24 Reserved:5

    Which is max players 37, right?

    And after few minutes of connects/disconnects:

    Slots: 5 Player:24 Reserved:4

    Only 33

    Restarts fixes it, maybe even reload, but if the plugin somehow restarted its counter it could fix the problem maybe?

    added config
    Code:
    #
    # Configuration
    #
    config:
      ## The location of your server.properties file
      # (in reference to where your craftbukkit is stored)
      properties: server.properties
    
      ## Use hMod style reservation
      # (Reserved players can join past max-players, but count as taking up a slot)
      useHModReserve: false
    
      ## Kick a player when the server is full to make room for the joining reserved player
      # (DO NOT enable this if you're using hMod's reservation method)
      kick: false
    
      ## If a player leaves while the server is full their seat will be held for x seconds
      # (If 0, seats are disabled)
      useSeats: 0
    
      ## Use Permissions for reserving/kicking members of groups
      usePermissions: false
    
      ## Names of groups which will be reserved
      # Ordered from first-last. Falls back to safelist
      reserveGroups:
        - Admins
    
      ## The Permissions groups which will be searched for a player to kick
      # Ordered from first-last. Falls back to safelist
      kickGroups:
        - Default
    
    # Names of players which will be reserved
    reserveList:
      - lots.of.players
    
    ## Names of players immune to being kicked due to reservation
    # (A player will be randomly chosen for kick if no one else can be)
    safeList:
      - same.list.with.lots.of.players
        
     
  8. Offline

    8e8

    I'm going to be reviewing the source tonight since I have some time. I can do a quick fix, but I don't know when I'll be able to fix it the bigger errors, hopefully soon. Please post your configs when reporting an error.
     
  9. Offline

    bLazem

    Be cool if you could get it working for CB 450 :)
     
  10. Offline

    NEO

    just curious, when a player is kicked for a reserve listed player to join what message does the kicked player get?
     
  11. Offline

    Shady Gamer

    Hoping and wondering if this plugin works for minecraft 1.3 or any CraftBukkit version 400+
     
  12. Offline

    bLazem

    We reverted back to 439 and it's working
     
  13. Offline

    Shady Gamer

    Does this eat up any ram ? or use extra resourceS?
     
  14. Offline

    8e8

    Very minimal. It stores only names and settings.


    Been trying to juggle java into my free time, but it hasn't been easy. I'll see what I can do tonight.
    --- merged: Mar 3, 2011 3:55 AM ---
    Reserved has been updated to work with Craftbukkit #440. I have completely rewritten the code, and hopefully made things easier to understand for anyone looking (as well as myself). That being said -- I haven't been able to test said code properly, but that will be up to you. Report anything shady, and include your config file along with your findings.

    This is a BETA release. Be aware.
     
  15. Offline

    Rocik

    Can you update for newer versions 290+?
     
  16. Offline

    stkeroro

    Thanks for update your great plugin 8e8, i reinstall it next reboot [​IMG], now the next step will be recommended build 493
     
  17. Offline

    Etalyx

    I love this plugin but it doesn't seem to be working on the new recommended build :\
     
  18. Offline

    bLazem

    Did it work ok on 440? I had errors but didn't copy the log has been over written
    --- merged: Mar 5, 2011 6:01 AM ---
    So im getting this error when users on the Reserve list log in.

    Code:
    java.lang.NullPointerException
            at com.eighty8.bukkit.reserved.Reserved.getGroup(Reserved.java:122)
            at com.eighty8.bukkit.reserved.Reserved.registerPlayer(Reserved.java:186)
            at com.eighty8.bukkit.reserved.Listener.onPlayerLogin(Listener.java:20)
            at org.bukkit.plugin.java.JavaPluginLoader$11.execute(JavaPluginLoader.java:180)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:225)
            at net.minecraft.server.ServerConfigurationManager.a(ServerConfigurationManager.java:142)
            at net.minecraft.server.NetLoginHandler.b(NetLoginHandler.java:76)
            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)
    
    CB 440
     
  19. Offline

    8e8

    @bLazem
    Thanks for reporting that. For some reason I wasn't getting this error in testing (not that I was thorough). I found the error and have updated the plugin with a fix. It was because of me trying to get the world of a player before they even connect. It should now registers groups properly
     
  20. Offline

    bLazem

    still the same man.... 440 btw
     
  21. Offline

    Etalyx

    Thanks for fixing this it seems to be working. Keep up the great work!
     
  22. Offline

    chilldy

    Quick question. Am I able to just add the groups? Or do I have to add the groups and players? I have over 700 people and 9 different groups on my server and listing on the names will be a pain.
    --- merged: Mar 6, 2011 4:10 AM ---
    Anyone?
     
  23. Offline

    8e8

    If you want particular members of a group to have Reserved access, you put their names. If you want the groups to have access, you put the group name.

    @bLazem
    I'll have to look into it later. I was unable to recreate the error this time around. I tried multiple group names, multiworlds, and still wasn't getting the error. I did, however, get a similar error involving getGroup, but it was because of the BlockBreakEvent and Permissions itself. Nothing I can do about that. You might wanna try updating. Reserved uses #490 now.
     
  24. Offline

    bLazem

    Cool ok. Not sure we ready to upgrade yet to 490 yet have to check all our plugins are updated for it. We've slowed down on the CB updates lately cause of all the breaks we've had.

    Cheers!
     
  25. Offline

    mixxit

    How does it know which world to get the groups from like Default?
     
  26. Offline

    kazeen

    so this is working on 493?
     
  27. Offline

    8e8

    It get the player's world name when it checks the group. I'm not exactly sure how Permissions' multi-world support works but it should be fine.

    @kazeen
    Although I haven't built this plugin on the recommended build *yet* it should still work fine.
     
  28. Offline

    mixxit

    tyvm!
     
  29. Offline

    clownfish

    Using: craftbukkit #493 (recommended) & Reserved 2.2.1b only
    Note: in plugins/Reserved/config.yml ( carefully added my player name to reserve: players:
    Result: Reserved works great as expected with the combination above.

    Using: craftbukkit #493 & Reserved 2.2.1b & Essentials 2.0b (Revision 803 latest)
    Note: (same as above)in plugins/Reserved/config.yml ( carefully added my player name to reserve: players:
    Result: Reserved shows partial signs of working in console, but fails to allow names in reserved list in and gives the standard 'Server is full message'.

    From my console:
    @8e8 - Awesome plugin! [​IMG] Your reserved list looks to be one of the best available. Can you please update it so it works with the latest 'Essentials' plugin?

    Even better, perhaps you could join 'Essentials' and add Reserved to the Essentials collection. In light of this, it appear as though AnjoCaido has joined the Essentials team as well and has added his 'GroupManger' plugin to the Essentials collection (but continues to keep a separate thread and develop it)
     
  30. we (essentials) can interface. Will take a look later
     
  31. Offline

    Nqoba

    This is the error I get

    Code:
    2011-03-08 16:52:03 [SEVERE] Could not pass event PLAYER_LOGIN to Reserved
    java.lang.NoSuchMethodError: com.nijiko.permissions.PermissionHandler.getGroup(Ljava/lang/String;Ljava/lang/StringLjava/lang/String;
    at com.eighty8.bukkit.reserved.Reserved.getGroup(Reserved.java:125)
    at com.eighty8.bukkit.reserved.Reserved.registerPlayer(Reserved.java:179)
    at com.eighty8.bukkit.reserved.Listener.onPlayerLogin(Listener.java:20)
    at org.bukkit.plugin.java.JavaPluginLoader$11.execute(JavaPluginLoader.java:180)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:59)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:225)
    at net.minecraft.server.ServerConfigurationManager.a(ServerConfigurationManager.java:142)
    at net.minecraft.server.NetLoginHandler.b(NetLoginHandler.java:76)
    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)
    Craftbukkit #440
    Reserved v2.1.1b
     

Share This Page